前言
17源码网已提供相应的源码。
相信不少人已经获取了七星源代码,但其搭建过程需要具备一定的编程基础。
本文将简要介绍如何在本地搭建七星源码环境,方便进行二次开发调试,加速发现错误与异常。
一、工具
由于该源码基于 JavaScript 开发,推荐使用 WebStorm 作为开发工具。
二、环境准备
-
Node.js 环境安装
在本地安装 Node.js 环境。根据操作系统下载相应版本:Node.js 下载。
安装完成后,通过命令行检查是否安装成功:
node -v npm -v
确保 Node.js 和 npm 都已正确安装。
PS D:\Project\backstate> node -v v12.12.0 PS D:\Project\backstate> npm -v 6.11.3
安装 Pomelo 的步骤:
-
使用 npm 全局安装 Pomelo:
npm install -g pomelo
-
验证安装是否成功:
pomelo -v
确保返回版本号表示已成功安装。
-
创建新的 Pomelo 项目结构:
pomelo init myProject cd myProject npm install
安装好后我们导入代码
这是我的项目目录,大家可以根据自己的需求选择合适的后台目录进行导入。我的目录包含了完整的后台文件,包括测试代码、管理后台、定时任务以及其他各种文件。
2. 添加启动项
为项目添加 Node.js 启动项。参考如下示例:
点击此配置项即可。我这里已经完成了配置示例,供大家参考
如上图所示,首先点击“+”号以新建 Node.js 配置项。
选择服务端的项目目录,我的服务端目录为 game-server
,这是 Pomelo 项目的默认名称。
选择项目根目录下的 app.js
作为启动文件。添加启动参数,这些参数会在代码中使用。对于 Linux 系统,这些参数通常使用环境变量,而在本地调试时则需要手动添加。启动参数会影响环境的不同配置。
3. 代码配置项
首先,需要安装 MySQL 数据库。可在云服务器上安装,或在本地进行安装,并导入源码提供的 SQL 数据文件,这部分不再赘述。
代码的数据库配置文件位于 config
目录中,该目录包含不同环境的配置文件。根据之前启动参数设置的 shaoyang
,此处会加载 shaoyang
目录下的配置文件。
按照示例配置 mysql.js
文件。
确保在 config
目录下正确设置 mysql.js
文件,填写数据库的连接信息,包括主机、端口、用户名、密码和数据库名称等。示例如下
module.exports = {
host: 'localhost',
user: 'your_username',
password: 'your_password',
database: 'your_database',
port: 3306
};
我这里的截图并未完全展示,具体细节可自行查看。在 mysql.js
文件中,涉及到分库配置,按示例填写即可,使用时填写自己数据库的具体信息。
Redis 配置
我使用的是默认的 6379 端口,无需密码。确保已安装并启动 Redis。对应的配置在 redis.js
文件中,按需调整即可。
服务器 IP 配置
在 server.js
文件中进行 IP 和端口的配置,确保填写你自己的服务器信息。
module.exports = {
host: ['192.168.31.194'],
port: [16010, 16011]
};
游戏服务器的配置
master.json
和 servers.json
是 Pomelo 框架的配置文件,用于轻松配置多个服务器节点,以支持服务器扩展。在测试阶段,我们只需配置一台服务器即可。
master.json 配置示例
确保 master.json
文件中填写主服务器的配置,如下所示:
{
"host": "127.0.0.1",
"port": 3005
}
根据实际环境调整 host
和 port
,以匹配测试环境的需求。
{
"shaoyang": {"id": "jtcfgame", "host": "192.168.31.194", "port": 3005},
"field-test": {"id": "jtcfgame", "host": "127.0.0.1", "port": 3005}
————————————————
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/pingziaaa/article/details/127974361
"shaoyang": {
"pkmaster": [
{"restart-force": false, "auto-restart": false, "id": "pkmaster", "host": "192.168.31.194", "port": 3006}
],
"pkcon": [
{"restart-force": true, "auto-restart": true, "id": "pkcon000", "host": "192.168.31.194", "port": 15000, "clientPort": 16010, "frontend": true},
{"restart-force": true, "auto-restart": true, "id": "pkcon001", "host": "192.168.31.194", "port": 15001, "clientPort": 16011, "frontend": true}
],
"pkplayer": [
{"restart-force": false, "auto-restart": false, "id": "pkplayer000", "host": "192.168.31.194", "port": 15100}
],
"pkclub": [
{"restart-force": false, "auto-restart": false, "id": "pkclub000", "host": "192.168.31.194", "port": 15200}
],
"pkleague": [
{"restart-force": false, "auto-restart": false, "id": "pkleague000", "host": "192.168.31.194", "port": 15250}
],
"pkroom": [
{"restart-force": false, "auto-restart": false, "id": "pkroom000", "host": "192.168.31.194", "port": 15300}
]
}
此处的配置涵盖了不同类型的服务器,包括连接服务器、玩家登录服务器、亲友圈服务器、大联盟服务器和房间服务器。需要确保每个服务器节点配置了正确的 IP
和 端口
。
同时,JSON 配置中的 shaoyang
需要与环境变量 env
对应,以确保加载正确的配置。
至此,服务器配置已完成,接下来即可进行启动操作。
[2022-11-11 11:08:44.716] [INFO] LOG - [响应][127.0.0.1] {"code":0,"message":"success","env":"shaoyang"}
[2022-11-11 11:09:02.262] [INFO] LOG - jtcfgame listening at 127.0.0.1::::3005
[2022-11-11 11:09:07.015] [INFO] LOG - pkclub000 listening at 127.0.0.1::::15200
[2022-11-11 11:09:06.985] [INFO] LOG - pkleague000 listening at 127.0.0.1::::15250
[2022-11-11 11:09:07.322] [INFO] LOG - pkplayer000 listening at 127.0.0.1::::15100
[2022-11-11 11:09:06.688] [INFO] LOG - pkcon000 listening at 127.0.0.1::::15000
[2022-11-11 11:09:06.936] [INFO] LOG - pkcon001 listening at 127.0.0.1::::15001
[2022-11-11 11:09:08.384] [ERROR] LOG - 闯关配置未找到!!!
[2022-11-11 11:09:08.392] [INFO] LOG - 虚拟亲友圈列表 []
[2022-11-11 11:09:08.449] [INFO] LOG - COMMON_CHANNEL 初始化成功
[2022-11-11 11:09:08.450] [INFO] LOG - 初始化系统参数成功 pkplayer000
[2022-11-11 11:09:06.742] [INFO] LOG - pkmaster listening at 127.0.0.1::::3006
[2022-11-11 11:09:08.477] [INFO] LOG - redis mq subscribe QUEUE_WRITE_PLAYBACK_GAME
[2022-11-11 11:09:08.478] [INFO] LOG - redis mq subscribe QUEUE_WRITE_ANALYSIS
[2022-11-11 11:09:08.478] [INFO] LOG - redis mq subscribe QUEUE_WRITE_STANDINGS_IMAGE
[2022-11-11 11:09:08.682] [INFO] LOG - game-http server listening at port 9990
[2022-11-11 11:09:13.481] [INFO] LOG - env shaoyang
[2022-11-11 11:09:13.481] [INFO] LOG - redis 127.0.0.1 6379
[2022-11-11 11:09:13.481] [INFO] LOG - mysql-master 127.0.0.1 field
[2022-11-11 11:09:13.481] [INFO] LOG - mysql-slave 127.0.0.1 field
[2022-11-11 11:09:13.482] [INFO] LOG - mysql-beta 127.0.0.1 field
[2022-11-11 11:09:13.482] [INFO] LOG - mongo mongodb://39.108.11.211:27017/dev
[2022-11-11 11:09:13.497] [ERROR] LOG - { inspect: [Function: inspect] }
[2022-11-11 11:09:07.069] [INFO] LOG - pkroom000 listening at 127.0.0.1::::15300
[2022-11-11 11:09:17.946] [INFO] LOG - 文件读取成功 pkroom000 耗时 00:10
[2022-11-11 11:09:19.850] [INFO] LOG - 初始化系统参数成功 pkroom000
[2022-11-11 11:09:19.851] [ERROR] LOG - 闯关配置未找到!!
这样启动就完成了,很高兴跟大家分享