昨天不知道犯了什么抽,突然想起了lol之前听说的lol私服,于是闲着无聊就去找了找,果真github上有个开源的服务器源码,然后配合4.2版本的客户端就可以游玩,不过有些英雄的技能有bug,应该是服务器脚本的问题吧。
通过编译运行这个lol私服,我觉得lol的架构设计还是蛮有意思的。
首先,你登陆账号然后匹配的那个界面是使用了类似于'浏览器套壳'的方式写的,至少马服是这样的。这样的好处就是lol大厅的特效还蛮多,而且很灵活,直播什么的都可以塞进去,最关键的是因为灵活,所以每个国家的界面都可以深度定制,这是lol和其他游戏非常不一样的一点。
然后就是真正的游戏客户端,也就是你选择英雄后启动的那个才是真正的游戏客户端。
这里总的说一下逻辑
大厅管理好友,活动,商城,已经选择英雄匹配等,都是在这里,这里和游戏真正的逻辑都是没关系的,真正的逻辑在于在于游戏开始时,启动器拉起客户端,传递游戏服务器的ip和用户的token,用户凭token连接到服务器,拉取对局信息和游戏地址等信息。而游戏模式,应该是在服务器的,也就是说什么无限火力还是大乱斗,都是服务器应用了不同的逻辑脚本而已,和客户端无关,客户端仅展示动画音效,和传递用户的操作。
github项目地址 https://github.com/LeagueSandbox/GameServer
就先说到这吧,我先折腾折腾,最后放一下游戏的截图


lol 私服初体验