Skip to content

Latest commit

 

History

History
40 lines (20 loc) · 3.35 KB

File metadata and controls

40 lines (20 loc) · 3.35 KB

6.19

游戏部分基本完成,联机之后可以打,注意先启动AutoChessBattleServer,再启动GameServer,这个问题过两天我处理一下。

在尝试编写打牌机器人,平时自己打牌不觉得,现在要把策略写成代码的时候发现有点麻烦,所以这段时间进度会慢一些。。。

6.14

AutoChessGameServer已经public了,一并提交的还有AutoChessBattleServer, 在这两个工程根目录下执行npm start启动服务器,然后autoChess点击右下角游戏登录即可进入游戏,自己开两个页面可以互相打。

目前已完成的有:登录,开房间,金钱,经验,卡池抽卡,手牌,棋盘上npc的拖动,每回合战斗计算

未完成的内容:战斗失败扣血,连胜连败奖励,血量降为0的时候结算一局游戏,场上人口限制等

6.12

距离上一次写更新日志刚好一周,中间放假歇了两天,这段时间完成了 登录->创建房间->开始游戏->卡池抽卡 的内容

第一次写nodeJs,写游戏服务器也是第一回,基本也就是差不多能用的水平,没分网关服务器,暂时就是一个简单的房间服务器,node本身在处理网络连接上比较强,基本够用。

战斗方面准备另外启一个专门的node服务器,用来计算战斗结果,战斗回合房间服务器把双方阵容发给战斗服,战斗服算完结果之后返回给房间服务器,房间服务器再广播给房间内玩家,node在cpu计算上的性能还是比较让人意外的,i5-8400一个线程每秒能算8人口对局300场。(假期看到一张cpu计算性能比较图,以c语言1s为基准,v8是3.7,mono c#是3.8, java 1.7, lua jit 6.8)

GameServer做了基本的连接管理,然后消息分发到对应的房间/玩家,服务器和客户端的连接使用了websocket,传输是json,没有做重连和用户数据的持久化,所以socket断开就连不进来了(主要还是想尽快玩起来)

目前还差购买卡牌,手牌显示,手牌移动到棋盘,棋盘上移动,收回卡牌,卖掉,回合结算,东西不多,在当前工程结构上也很好写,主要是客户端的ui要花些功夫,这周末应该能把这块做出来,然后这个小游戏就可以玩了。

关于后面的计划,动作和技能特效的渲染比较依赖美术资源,先放一放,打牌机器人准备写一个行为树,然后搞个行为树编辑器自己连一连策略,陪自己打打牌。

平衡性测试方面,之前做过一些纯随机的阵容生成算法,然后用这些生成阵容去验证数值配置,也不能说完全没效果,但是总觉得少点什么,所以调了一版数值后放在那里了,想先进游戏上手玩玩看效果。

6.5

创建了一个GameServer,用于实现游戏回合轮转,多人在线战斗的发卡,抽卡,升级经验等,使得这个小玩意可以玩起来。

目前GameServer还是私有状态,因为刚开始写并没有什么内容,甚至不一定能运行起来 -.-!!

关于GameServer的进展,我会写在这个update文件里,当GameServer差不多能运行时,我会将GameServer的状态改为public。

这段时间AutoChess会有一些提交,但是主要应该是跟GameServer相关,比如建立连接,开游戏房间,卡池和游戏的界面等,在缺失GameServer的情况下这些功能将暂时不可用。