返回首页

GameMaker:35岁成为独立开发者的方法

文章描述了Vladimir的道路,他35岁开始从零掌握游戏开发,使用Python和GameMaker。它涵盖了他的困难、在原型上的经验教训,以及最终成功在Steam上发布第一款游戏,为初学者独立开发者提供宝贵见解。

从梦想到Steam:一位35岁开始的独立开发者的故事
Advertisement 728x90

独立游戏开发之旅:35岁用GameMaker打造首款游戏

许多人梦想着制作自己的游戏,但最终能成功发布的却寥寥无几。本文详细记录了弗拉基米尔(Vladimir)的故事,他在35岁时,在没有受过正规教育或任何先验经验的情况下,在Steam上发布了他的第一款游戏。他分享了自己的见解,从Python编程的初步尝试,到选择GameMaker引擎,克服挑战和失败的原型,直至开发出一个完整的项目。这是一个关于坚持不懈、从错误中学习以及坚持到底的重要性的故事,专为那些寻求游戏开发灵感和实用经验的人士而设计。

从玩家到开发者:最初的脚步与梦想

制作自己游戏的梦想往往始于童年,由无数个小时沉浸在游戏机和电脑中而滋养。对许多人来说,这仅仅是一个梦想,但对于弗拉基米尔而言,他的故事始于90年代的Dendy和2000年代初的PlayStation 1,这个愿望成为了指引他的明星。早在游戏刚刚开始超越小众爱好时,他就已经设想自己是一个世界建造者,在那里“精灵、反派和宏大冒险”将在数字世界中栩栩如生。然而,没有电脑的乡村生活现实以及随后的大学学业,将这些抱负推向了幕后。即使在2014年拥有了个人电脑,最初也导致了两年的游戏马拉松,弥补了错过的最新发布,之后旧的梦想才重新浮现。

他首次尝试进入游戏开发领域,结果却令人沮丧。2016年,面对为Unity学习编程的需求,弗拉基米尔迅速转向了RPG Maker,但由于其在实现他设想的机制方面的局限性,也未能达到预期。这一时期提供了一个关键的教训:如果没有基本的编程知识和对工具的清晰理解,即使是强烈的愿望也无法带来成果。认识到这一差距成为了他系统化学习方法的催化剂。

Google AdInline article slot

深思熟虑的选择:Python与GameMaker

到2024年,经过几次不成功的尝试后,弗拉基米尔清楚地认识到,有针对性的学习对于实现目标至关重要。他选择了Python课程,尽管后来与组织者出现了一些问题,但这为他提供了基础的编程知识。这次经历强调了掌握新技能的结构化方法的重要性,即使这条道路崎岖不平。在此期间,他尝试了各种游戏库和引擎,如PyGame和RenPy,但他正在寻找更具可扩展性和灵活性的东西。

寻找合适游戏引擎的动力既源于抱负,也源于技术限制。一台配置一般的笔记本电脑排除了虚幻引擎(Unreal Engine),而Unity和Godot也无法稳定运行。最终,选择范围缩小到GameMaker和Construct。GameMaker之所以受到青睐,是因为它采用更传统的编程方法(与Construct的视觉脚本不同),以及其GML(GameMaker Language)语言,对于有Python背景的初学者来说,它相当友好。GML类似于JavaScript,提供了灵活性,让他能够专注于游戏逻辑,而不会被过于严格的语法所束缚。

学习GameMaker始于分析现有项目并尝试修改。这个阶段充满了持续的困难和放弃的冲动,但正是在这里,奠定了理解引擎架构和游戏循环原理的基础。一个关键的领悟是,游戏开发的学习过程不会轻松,但热情和纪律可以克服最严峻的障碍。

Google AdInline article slot

原型制作的经验:从射击游戏到大亨游戏

他在GameMaker中的第一个项目成为了磨练基本机制和理解引擎能力的试验场。弗拉基米尔将它们视为一系列实验,每个实验都提供了宝贵的经验:

  • 《我的银河入侵者》(射击游戏): 这个基于预装素材的项目让他掌握了玩家和物体移动、敌人生成以及UI实现(菜单、分数、生命值)的基础知识。主要结论是:即使是最简单的机制也需要仔细执行,而“弹幕射击游戏”看似简单的创建过程具有欺骗性。这为他掌握stepdraw事件以及理解坐标系打下了基础。
  • 《极品飞车2025》(跑酷游戏): 他的第二次尝试,这次使用了自选的图形素材,专注于添加新的游戏元素,如时间减速和道具收集。主要的教训是:调试和机制交互的复杂性。诸如时间减速期间生成中断等错误,凸显了系统化设计和测试游戏系统的重要性。这个项目也表明,并非所有想法都能轻易实现,有时需要搁置,直到积累更多经验。
  • 《大亨点击者》(经济策略游戏): 在动作游戏之后,弗拉基米尔尝试了一个需要更多逻辑和数学的类型。然而,这个项目揭示了新手开发者常犯的一个关键错误:在核心玩法尚未完善之前,早期阶段过度关注视觉效果。该项目最终被放弃,但这让他意识到,即使是“简单”的类型也隐藏着许多逻辑关联和陷阱,同时也证实了在一个不感兴趣的项目上工作很快会导致倦怠。

打造“那一款”游戏:专注于完成

原型制作的经验促使他做出一个有意识的决定:下一个项目必须完成并在Steam上发布。目标不是商业成功,而是完成开发周期,获得真实经验,并在实现梦想中找到满足感。弗拉基米尔放弃了盲目追随市场趋势的想法,转而选择了他个人喜欢的类型——一款2D俯视角动作角色扮演游戏,灵感来源于2000年代中期的手机游戏。

游戏名称“不朽者科谢伊”(Koschei the Immortal)成为了概念的起点。尽管使用了免费素材并面临持续的困难,但在这个项目上工作给他带来了乐趣。至关重要的是,作者真心喜欢玩他未完成的游戏,这支撑了他的动力。机制逐渐添加:移动、基本攻击、生命值系统,然后是更复杂的元素,如任务(尽管最初的任务系统后来被简化了)。这个开发阶段表明,对于独立开发者来说,关键不在于每个元素的完美无缺,而在于能够将项目带到可玩状态,并最终发布。

Google AdInline article slot

关键要点:

  • 从基础开始: 基础编程知识对于任何严肃的游戏开发项目都至关重要,即使你觉得可以没有它。
  • 明智选择游戏引擎: 评估你的技术能力和目标。最流行的引擎并非总是资源有限的独立开发者的最佳选择。
  • 原型开发的价值: 不成功的项目并非失败;它们是宝贵的经验教训。每个原型都帮助你掌握新机制、工具,并避免未来的错误。
  • 专注于完成: 对于独立开发者来说,将项目带到可玩状态并发布,比追求一个永远无法实现的理想更重要。
  • 个人兴趣: 制作你真正喜欢的类型的游戏。这会显著提升动力,并帮助你克服挑战。

— Editorial Team

Advertisement 728x90

继续阅读