我是一名独自开发的游戏开发者,已经在学习Godot约3-4个月了,我正在制作一款2D的Metroidvania游戏,名为SoulReaper。这是一个关于我工作的短小的游戏画面,展示了我正在工作的运动和战斗。经过学习,我发现我非常喜欢快速响亮的运动,所以我正在探索这个原型。 我很想听听你的意见,关于运动和战斗的感觉。动作是否响应和令人满意?战斗流程是否在第一次观看时有意义?我特别感兴趣的是,运动是否太快或突然,还是快节奏的风格对你有吸引力。 在艺术方面,我也在过去几个月里学习了像素艺术。选择像素艺术是部分实用的决定,因为我目前没有想要的非像素艺术设备。像素艺术与鼠标工作流程相符,而线性艺术需要更多的实践。它并不是像素艺术更容易的意思,而是它更适合我的当前情况。 对于有兴趣的人来说:我的主要编程原则是:“系统产生事实。其他系统解释事实。”我试图让每个系统负责特定的工作,信息流动在可预测的方向,而不是让每个系统直接控制所有其他系统。 我使用.tres资源作为不可变的定义,例如动作、转换、视觉效果和战斗设置,保持可变状态在分离的运行时容器和控制器实例中。 在更广泛的层面,架构遵循GlobalController > MapController > Entities。全局控制器管理整个游戏和当前地图,地图控制器管理当前地图和其实体,每个实体都通过特殊系统处理自己的游戏玩法。玩家是我最复杂的实体,我已经花了几乎三个月的时间学习、设计和工作它的架构。玩家根部协调更新,通过收集事实和事件,传递相关上下文给ActionController。ActionController根据当前动作、阶段和事实评估可能的转换。 After resolving a transition, it signals the new action and phase through two StringName identifiers, which other systems use to look up their own definitions and handle their responsibilities independently. The enemy shown in the video follows the same philosophy with a lighter setup. Its database groups the relevant action, visual, combat, and other configurations together, while reusing the same runtime controller code through separate instances for each entity. 我也希望听到关于总体架构本身的反馈。责任的分离和数据流是否有意义?是否有潜在的问题或架构决策你会做得不同?
[学习] 我正在用Godot开发2D的Metroidvania游戏,寻求关于移动和战斗的反馈
评论 (0)