DDraceNetwork(DDNet)——免费合作闯关 2D 平台跳跃游戏
DDNet 是 Teeworlds 的一个模组,源自 DDRace,是一款免费的合作型 2D 平台跳...
mari0 · Stabyourself/mari0
mari0 是一款使用 Lua 编写、运行于 LÖVE 11.4 的 2D 平台跳跃游戏,把《超级马里奥》式的横版闯关玩法与《传送门》的传送枪机制结合起来,玩家可在关卡中放置成对传送门。仓库以 MIT 许可证开源;README 目前只说明运行环境与许可信息,...
《Double Damnation》是一个把「仅限双人合作」当作设计前提、而不是可选模式的银河恶魔城(Metroidvania)平台跳跃项目。仓库主页用一张速通玩家炫技的 GIF 开场,并把两段视频链接摆在最显眼的位置:一段展示合作玩法,一段展示「如《任天堂明星大乱斗 Melee》般顺滑」的移动手感。也就是说,这个项目最想传达的是两点——第一,它必须两个人一起玩;第二,角色的移动与操控手感被当作核心卖点来打磨,而不是让平台跳跃成为探索地图时的附属品。README 明确写出作品已上架 Steam,同时通过 GitHub Releases 分发可执行版本,因此它并不是一个只停留在原型阶段的仓库,而是已经可被玩家直接下载游玩的成品。
从代码组织结构可以看出合作玩法的技术诉求。仓库中保留着一个名为 Co-Op Prototype 的目录,其脚本按职能划分为 Player(WarriorMovement、MageBehaviour)、Enemy AI(EnemyBehaviour)与 Camera(MultipleTargetCamera)等子目录。两位玩家角色各有独立的移动逻辑与行为脚本,而摄像机需要同时跟踪多个目标,这正是双人同屏平台游戏必须额外解决的问题:镜头既不能只跟随其中一人,也不能让两人的视野被拉扯到看不清平台边缘。敌人 AI 脚本则单独成体系,说明关卡中存在需要被应对的敌对单位。作者在 README 里点名的四个「最难读」的类,恰好就是上述这几个脚本,反过来说明它们承担了项目中逻辑最密集的部分。
技术栈方面,项目使用 Unity 引擎与 C# 语言开发,属于典型的 Unity 2D/3D 混合工程(仓库话题中同时出现了 unity2d 与 unity3d)。源码构建流程非常具体:下载并安装 Unity 2018.1.1f1(Windows 版本),用该版本打开仓库根目录,然后执行构建。README 中还有一段被 HTML 注释包裹的旧步骤,提到若要构建非 Steam 的本地版本,需要修改 Steamworks.NET 里的 SteamManager.cs;这暗示工程内集成了 Steamworks 的联网/平台层,但由于该段内容已被注释,当前版本是否仍需此操作、以及联机的具体实现方式,需要以实际代码为准,不宜凭 README 断定。
版权与授权是这个仓库值得单独注意的一点,因为它把代码与素材分得很清楚。作者本人编写的代码采用 GNU GPL v3,范围明确限定在 Assets/Co-Op Prototype/Scripts 与 Assets/Editor/Tools 两个目录下、且文件类型为 .cs;其余路径中的代码在文件头标注了原作者。美术方面,玩家一的角色(Fool/Fisherman)、玩家二的角色(Fiend/Friend)以及所有怪物的精灵图与动画,分别由 Caitlin G Cooke、Zhelisko 与作者本人制作,采用 CC BY-SA 4.0 授权;音乐由 Kerry Joiner 创作并持有,需要使用需另行向其申请;音效大多来自 freesound.org;Double Damnation 相关的 IP(角色组合、Darkwind 等)归 The Yellow Architect 所有。作者用一大段话说明素材底线:可以在不进行任何形式变现的前提下用于原型,但不能用在含内购或盈利的游戏中。
项目对社区贡献的态度也比较坦率。作者欢迎两类 Pull Request:修 bug 和重构丑陋的代码。他同时提醒新人避开 EnemyBehaviour、WarriorMovement、MageBehaviour、MultipleTargetCamera 这几个类,因为它们是整个代码库中最臃肿、最难读的部分,连作者自己在不知道基本设计原则的时期写下的代码如今也难以维护——文中还附上一篇关于游戏开发与「现代博学家」的博客链接作为自述。这种坦白使得仓库既是一个可玩的游戏,也是一个带着真实历史包袱的工程样本,而不是教学式的干净模板。
适合从这个项目学习的内容包括:双人同屏平台游戏的角色操控与手感调校、多目标跟随摄像机的设计取舍、2D 精灵动画与状态切换、基础的敌人 AI 组织方式,以及一个完整 Unity 游戏从开发、上架 Steam 到通过 GitHub Releases 分发的落地流程。需要注意的地方同样明确:所需引擎版本停留在 2018.1.1f1,用新版 Unity 打开可能触发升级与兼容问题;工程内集成了第三方 Steamworks.NET 与商业引擎素材,代码与素材两套授权必须分开遵守;构建说明偏 Windows;README 未描述关卡数量、地图结构、联机是本地同屏还是在线,这些都需要实际运行或阅读代码确认。国内环境下,Unity 历史版本安装包、Steam 商店页面与 GitHub Releases 的下载速度、以及 Steamworks 相关依赖的获取都可能受影响,建议提前准备镜像或代理,具体可用性待核验。
DDNet 是 Teeworlds 的一个模组,源自 DDRace,是一款免费的合作型 2D 平台跳...
Frogatto & Friends 是一款 2D 横版动作冒险游戏,主角是一只青蛙;开发团队...
NBlood 是用 EDuke32 引擎技术与开发思路对 Build 引擎游戏所做的逆向工程移...
id Software 公开的初代 DOOM 源代码,限非盈利使用。README 说明:运行仍需...