本作品提供传奇游戏完整服务端逻辑源码,采用易语言编写,由新宇工作室精心打造和分享,适合开发者学习与研究游戏服务器架构。
原本计划等到教程录制完毕后再开源发布,但因时间紧迫未能如愿。为了不让大家久候,决定先将项目开放源代码。大家可以先行研究使用,在我有空余时间的时候会录一段流程讲解视频,方便大家修改源码。
下面简单介绍服务器和客户端的交互流程:
服务器线程分类包括:玩家更新、怪物更新、数据接收、地图更新、数据库管理以及界面更新等。
在“玩家类”的更新与“怪物类”中的内容大致相同,主要涉及攻击是否命中计算伤害值及buff到期时间处理等情况不在即时生效的内容都在这些类别中进行操作。
服务器设计思路清晰明确,到目前为止未出现内存方面的问题(例如数组越界错误),但部分玩法尚未稳定测试完成暂时关闭:行会争霸、团战以及摆摊和交易系统。
玩家视野的设计每个地图格子用一个整数数组来存放玩家或怪物的编号。其中怪物以大于0开始编号,而玩家则为小于0。当角色移动时,每次都会在地图类中取得新的视野范围。
服务器上的菜单选项包括“刷怪控制”和“管理”,但这两个功能尚未经过测试可能存在错误,请注意自行修复。
本项目设计的安全性很高,杜绝了任何作弊手段如加速、锁血等挂机行为的发生。因为所有的计算都在服务端进行,确保了公平性和效率性。
有人可能会质疑性能问题,比如CPU占用过高,在带几十个用户时出现卡顿现象。这主要是由于使用易语言调试运行本身会慢5-10倍左右导致的,建议编译后再次测试其性能表现。
关于微端的问题:直接将RES资源下载到客户端目录下,并屏蔽掉微端连接即可正常使用,不需要再使用微端功能了。
附上以前版本的客户端供大家参考。