◆ 《多人联机休闲 RPG》| Unity
架构:Unity 客户端 + LoginServer(9999)登录服 + GameServer(8888)游戏服,自研 TCP + JSON 协议,客户端 NetworkManager 统一收发消息与事件分发。
账号与数据:登录服使用 BCrypt 哈希存储密码,MySQL 持久化用户与金币;游戏服按房间隔离对局,最后一名玩家离开自动销毁房间并清零状态。
同步方案:敌人采用 Owner 权威,首个注册客户端负责巡逻并上报位置,服务器维护权威血量;Owner / 出怪端掉线自动转移,新玩家进房重放存活敌人与血量,远程玩家用 Lerp 插值平滑。
战斗与结算:5 技能含冷却、蓝耗与遮罩,火球通过 OverlapSphereNonAlloc + LayerMask 做范围命中;服务器判定致命一击并结算金币,命中 / 技能特效广播时排除发送者。
玩法与界面:角色创建、登录 / 房间 / 战斗场景切换、敌人 AI、40 格可堆叠背包、血蓝条 / 城堡血量 / 金币 UI、恢复道具;使用 TextMeshPro + DOTween 完成 UI 与动效。
表现:接入 Epic Toon FX 完善打击、爆炸与技能特效。
◆ 《植物大战僵尸》| Unity C# 复刻
纯 Unity 客户端单人塔防,关卡波次与僵尸类型外置为 JSON(StreamingAssets + LevelData / WaveData),ZombieManager 按配置顺序刷怪,新增关卡无需修改代码。
植物端:向日葵阳光生产,豌豆 / 双发 / 机枪 / 寒冰射手弹道,寒冰可叠加减速层数并触发冰冻;另有坚果墙三段血量、土豆地雷、樱桃炸弹等 8+ 种植物。
僵尸端:基于 IZombieState 状态模式实现移动 / 攻击 / 流血 / 死亡,配合 Animator 驱动动画;子弹使用 Stack<Bullet> 对象池复用,减少 GC 开销。
界面:卡牌 Disabled / Cooldown / WaitingSun / Ready 四态与冷却遮罩、铲子铲除、波次与“大波僵尸”提示、胜负与下一关流程;DOTween 实现阳光飞入与界面淡入。
音频:BGM / SFX 分离管理,按种植、射击、啃食、冰冻、胜负等场景播放对应音效。