轩辕剑定位微信生态内的武侠大型多人在线RPG,核心场景包括门派养成、武学招式、轻功探索、野外刷怪、副本推图、帮派战、论剑PK、奇遇任务和世界聊天。微信小游戏相比原生App更强调轻量启动、弱网重连、微信账号体系和小包体运营,但仍需要长连接场景同步与高并发对战。项目采用Skynet轻量Actor、场景、战斗和社交逻辑,用Lua写业务规则和活动配置以支持热更快速迭代;MongoDB存储角色、背包、任务、日志等半结构化数据,Redis承担在线会话、缓存、排行榜、分布式锁和临时状态,整体在Linux部署并配合微信登录与支付回调。
01.微信账号与网关:微信code换session、openid绑定、Token下发、防重登、WebSocket/TCP网关、心跳、断线重连、消息拆包限流。
02.角色与大厅:创角、门派/职业、属性、背包、虚拟货币、邮件、好友、黑名单、签到与运营活动配置。
03.武侠世界与场景:多地图场景服务,怪物/NPC/采集/奇遇点管理,AOI视野同步,传送、轻功移动、地图动态加载。
04.武学战斗:技能释放、招式连段、Buff/Debuff、内力气血结算、命中闪避、仇恨、单/群攻、PVP/PK、战斗日志回放。
05.副本与组队:组队匹配、副本实例隔离、Boss刷新、波次掉落、通关结算、失败重入。
06.任务与成长:主线/支线/日常/奇遇/成就,经验、等级、心法、装备强化/洗练/镶嵌、坐骑/灵宠养成接口。
07.经济与交易:银两/元宝等虚拟货币、绑定/不绑定道具、商店、拍卖行、玩家交易、产出消耗监控与防刷控制。
08.帮派与社交:世界/门派/队伍/私聊、敏感词过滤、帮派职位/贡献、帮战/论剑、等级战力副本排行榜。
09.GM运营后台:封禁解封、道具发放、活动开关、数值参数、充值订单查询、行为/对局日志审计。
10.监控与稳定:服务健康、慢协议告警、异常日志、Lua热更灰度、落库失败重试、合服/回档工具。
服务端基于Linux部署Skynet,按“网关—登录—Agent—场景—战斗—社会—全局—数据—GM”拆分服务。Gate服务用Skynet处理WebSocket,完成鉴权透传、心跳、粘包拆包、断线重连和流量限流;Login服务对接微信开放平台,用登录code换取openid,生成Token写入Redis,返回可用gate地址,客户端带Token重连入局。
进入游戏后由Agent服务绑定玩家会话,按模块处理角色、背包、任务、社交和Activity逻辑;每个玩家会话可做串行消息队列,同玩家请求串行、跨玩家并行,降低并发竞态。场景服务按地图或副本实例启动,使用九宫格/距离桶等AOI管理附近玩家、怪物、NPC,只向视野内推送移动、交互和战斗状态;大地图可多场景进程分片,跨图传送通过实体状态序列化迁移。
数据层采用MongoDB+Redis二级存储:玩家登录从MongoDB加载角色档案、背包、任务进度等文档数据,在线热数据放入Agent;属性、会话、token、排行榜、限流计数、分布式锁走Redis,角色全量存档、日志、运营审计落MongoDB。关键写操作按标脏批量落库,重要交易用Redis锁或事务化校验防止超发;排行榜用Redis有序集合,行为日志、充值日志、GM操作日志用MongoDB文档存储便于按条件查询。 协议用Protobuf,减少小游戏带宽和解析开销;运维侧用Shell管理启停、日志切割、监控告警,Nginx反代微信登录回调、支付通知和GM,整体支持开服、合服、跨服活动与Lua灰度热更。
声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!

下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态
评论