总结
豆包 AI 助手文章总结

从零学习开源项目系列(二) 最后一战概况

爱谁谁
发布: 2025-05-13 13:06:17
原创
466人浏览过

这份代码是我偶然从朋友那里得来的,他说也是从网络上获取的。最初的服务器端代码是linux版本的,但被一位技术高超的大神修改为可以在windows上运行。如果无意中侵犯了您的版权,请联系我删除。值得庆幸的是,这份代码中的大部分方法和接口都是跨windows和linux平台的,因此linux开发者们无需感到不适。我们学习这份代码,更多的是要掌握其思路和原理,而非纠结于细节。

使用Visual Studio打开游戏主solution文件后,界面如下图所示:

从零学习开源项目系列(二) 最后一战概况

这里总共有10个工程项目,模块较多。我们该从哪里开始呢?我们先来看一下源码目录:

从零学习开源项目系列(二) 最后一战概况

我们进入Server目录,发现如下一个文件:

从零学习开源项目系列(二) 最后一战概况

我们打开看看内容:

cd Bin\x64\Release
start.bat
登录后复制

这段代码会进入Bin\x64\Release目录,并执行另一个start.bat。我们进入该目录查看start.bat文件内容:

taskkill /f /t /im redis-server.exe
taskkill /f /t /im CSBattleMgr.exe
taskkill /f /t /im SSBattleMgr.exe
taskkill /f /t /im GSConsole.exe
taskkill /f /t /im BalanceServer.exe
taskkill /f /t /im LoginServer.exe
taskkill /f /t /im GSKernel.exe
taskkill /f /t /im RobotConsole.exe
taskkill /f /t /im LogServer.exe
ping -n 1 127.0>nul
start /min "redis-server" "redis-server.exe" redis.conf
ping -n 1 127.0>nul
start /min "redis-Logicserver" "redis-server.exe" redis-logic.conf
ping -n 1 127.0>nul
echo "start CSBattleMgr.exe"
start /min "CSBattleMgr" "CSBattleMgr.exe"
ping -n 1 127.0>nul
echo "start SSBattleMgr.exe"
start /min "SSBattleMgr" "SSBattleMgr.exe"
ping -n 1 127.0>nul
echo "start GSKernel.exe"
start /min "GSKernel" "GSKernel.exe"
ping -n 1 127.0>nul
echo "start BalanceServer.exe"
start /min "BalanceServer" "BalanceServer.exe"
ping -n 1 127.0>nul
echo "start LoginServer.exe"
start /min "LoginServer" "LoginServer.exe"
ping -n 1 127.0>nul
echo "start LogServer.exe"
start /min "LogServer" "LogServer.exe"
登录后复制

通过这个脚本,我们可以了解到这个服务器项目由以下服务组成:

  • redis-server(启动两个)
  • CSBattleMgr
  • SSBattleMgr
  • GSKernel
  • BalanceServer
  • LoginServer
  • LogServer

这些服务器具体做什么,目前我还不清楚,之后我们会教大家如何阅读代码。

另外,在Bin/x64/Release/dbsql目录下,我们发现了一些SQL文件:

从零学习开源项目系列(二) 最后一战概况

我们打开建表的createdb.sql文件:

drop database if exists fball_gamedb;
drop database if exists fball_logdb;
drop database if exists fball_accountdb;
create database fball_accountdb character set utf8;
drop database if exists fball_chargedb;
create database fball_chargedb character set utf8;
drop database if exists fball_robedb;
create database fball_robedb character set utf8;
drop database if exists fball_gamedb_1;
create database fball_gamedb_1 character set utf8;
drop database if exists fball_gamedb_2;
create database fball_gamedb_2 character set utf8;
drop database if exists fball_gamedb_3;
create database fball_gamedb_3 character set utf8;
drop database if exists fball_logdb_1;
create database fball_logdb_1 character set utf8;
drop database if exists fball_logdb_2;
create database fball_logdb_2 character set utf8;
drop database if exists fball_logdb_3;
create database fball_logdb_3 character set utf8;
登录后复制

也就是说,这套服务需要使用MySQL。我们需要安装一个MySQL,并执行Rebuild.bat来创建这些数据库。Rebuild.bat内容如下:

@echo off
:begin
@echo ----------1, create all game database------------
mysql -uroot -p123321 < createdb.sql
mysql fball_accountdb < fball_accountdb.sql
mysql fball_chargedb < fball_chargedb.sql
mysql fball_gamedb < fball_gamedb.sql
mysql fball_gamedb_1 < fball_gamedb_1.sql
mysql fball_gamedb_2 < fball_gamedb_2.sql
mysql fball_gamedb_3 < fball_gamedb_3.sql
mysql fball_logdb < fball_logdb.sql
mysql fball_logdb_1 < fball_logdb_1.sql
mysql fball_logdb_2 < fball_logdb_2.sql
mysql fball_logdb_3 < fball_logdb_3.sql
mysql fball_robedb < fball_robedb.sql
登录后复制

通过这个脚本,我们发现MySQL的root用户密码是123321。在创建MySQL时,建议将密码也设置为这个。

我们可以下载MySQL社区版(免费),下载地址为:

https://www.php.cn/link/06d86297d6e28d4637d60c86c2a2f5b6

选择Microsoft版本:

从零学习开源项目系列(二) 最后一战概况

注意,这套服务也使用了Redis。我们无需专门下载和编译Redis的Windows版本,因为程序目录下已经提供了Windows版本的Redis服务程序和配置文件:

从零学习开源项目系列(二) 最后一战概况

以上就是从零学习开源项目系列(二) 最后一战概况的详细内容,更多请关注php中文网其它相关文章!

最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
豆包 AI 助手文章总结
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号