网页游戏源码webgame小小西游完整源码(SERVER+CLIENT+地编+工具...
webgame小小西游完整源码(SERVER+CLIENT+地编+工具) 包括所有客户端,服务器 和 地图编辑器 和 工具代码,此项目是RPG+SLG的结合。 前端纯as3实现,使用aswing,后台跨平台C++,lua,网络库boost asio,服务器三层结构, DataServer,GameServer,GateServer(多个),代码结构极其简单,极易维护。游戏系统创新实现: 元神出窍,将玩家分为在线和离线两个角色,玩家离线后元神可在线 元神队伍,就是队友不必要在线,你可以控制你的队友。 奴隶系统,战胜对方,即可抓对方为奴隶,奴隶可作为宝宝参战 情人系统,任何玩家在游戏中将会有个身价,只要有人出价超过你的身价即可将你买为情人 真实飞行,飞行地图和行走地图分开 天上人间,在天上建建筑,建筑可单个被占领掠夺,单个建筑可设置守卫。 全系技能消耗生命,天生自带“同归于尽”技能。 全lua脚本控制,怪的行为和强弱控制不用重启服务器。角色和怪采用矢量图,可很容易改成位图 战斗可在线战斗,离线战斗,自动,手动,系统控制结合 关于服务器有个重点知识,其核心原理都是“简单”: 1.设计模式的使用,用得最多的是设计模式中最简单的模式:“单件模式”。 2.lua的使用,几乎抛弃一切lua的新特性,只使用最简单的函数,但已经相当灵活。 3.网关服务器(GateServer)的设计,核心代码区区几十行,与腾讯的TGW类似,但有决定性能的广播和组播功能,通过多开管理10万级别连接的能力。 4.数据服务器(DataServer)的设计,多级缓存技术,以访问时间和所占总内存为主导,定期清理。 5.游戏服务器(GameServer)的设计,简化,将Player类分级实现,方便代码管理,核心代码结构十分简单。游戏服务器实现的重点思想是无阻塞操作,整个代码没有使用锁,底层boost asio保证了超高的网络性能,逻辑代码只要没有锁,没有大内存拷贝,没有频繁内存分配和释放,没有IO操作等,就是无阻塞的,性能相当惊人。核心三个线程:1.网络线程,2.逻辑线程,3.loger写入线程(文件IO操作)。 6.如果是页游,根据实际情况,其实使用单进程多线程结构是比较理想的,我新的项目可能会使用单进程多线程,进一步将工程简化,缩短开发时间。
页:
[1]