addict悔的设计迷。 一个月内我们如何制作“ IT Alchemy”游戏

-哈Hello! 我叫Zhenya,我是项目迷。
-(票数不一致)您好,珍雅!

经过这样的介绍之后,通常会参考工作,直到工作日深夜和周末整天,计数吃掉的公斤垃圾食品,在截止日期之前对不眠之夜进行丰富多彩的描述,最后得出项目结束后出现的空虚和超脱……所有这些将在本文中进一步介绍,但首先要介绍一些背景知识。



我是Dodo Pizza Engineering的开发人员。 我们团队中的许多人都参与了各种附带项目。 例如,去年是关于CMAN快递的电报查询 ,该快递专门用于Moscow DotNext 2018 。 今年,我们决定延续传统并在DotNext 2019之前制作另一款游戏。所以是9月,会议召开还有几个月,我们急需一个计划。
仅供参考:这是有关IT炼金术的文章的第一部分。 下一部分将是游戏开发的技术细节。

理想的项目计划


我们知道,重复去年的故事是行不通的。 首先,这是第一次,从定义上来说,第一次是独一无二的。 其次,这可能是最重要的事情-该项目已经开发了几个月。 在活动开始前的几个星期,开发人员通常会全职从事这项工作。

好吧,我们的目标更加谦虚:我们的人员更少,截止日期更短,并且在工作时间内无法进行大量主要工作。 在一次共同的头脑风暴会议中,有人建议多年前创建流行游戏Alchemy的IT版本。

让我为那些没有找到那些时间的人简要提醒您:玩家拥有初始数量的元素(通常为4个),通过组合这些元素,您可以收集越来越多越来越难的新元素。 玩家的任务:打开所有元素。 在最初的《炼金术》中,有限数量的元素达到了数万个。


同一Alchemy 2013的屏幕截图

在我看来,我们的想法对于一个月来说是一个理想的项目,其原因有三个:

  1. 技术上明确的任务:部署后端服务器,为电话编写客户端,绘制界面和元素图片。
  2. 要求将IT主题中的单词彼此组合(呵呵,如果只有的话)。
  3. 我个人为自己设定的任务是:仅在业余时间,周末进行游戏,而不会造成太大的负担。 我们绝对不想重复去年的经历。

组装规则:30天之内


一个月内完成一个可行的项目,首先需要做什么? 是的-缩小范围! 实际上,我们的所有工作都完美地分为四个部分:

  1. 后端服务器。 为CMAN设计后端的Misha Kumachev( Ceridan )对此负责。
  2. 适用于Android和iOS的Unity客户端。 这部分是关于我的,因为我已经在Google Play上拥有十几个原型和两个已发布的游戏。
  3. 界面和图标的设计由Tanya Turmanidze完成。
  4. 还有...游戏内容。 但是这个区块已经很久没有所有者了。 那也许是我们最重要(也是最明显)的错误。




我们的基本概念与原始2013年没什么不同:播放器有4个基本元素,总共可以收集另外N个元素。 每个元素应具有:名称,图片和艺术品说明。 任何新项目仅从其他两个先前打开的项目中收集。


为了防止欺诈,我们将所有有关元素组合的信息存储在后端。 客户端从播放器尝试连接的两个元素的ID中发送了一个请求,服务器返回了此组合是否成功。 如果成功,则向客户端发送新元素的ID,其名称和描述。 顾名思义,客户找到了所需的图片,并且播放器中出现了一个新元素。 也就是说,游戏所需的所有数据均由后端存储。

我们还为获得奖金的前20名选手计划了一个记录表,因为为每个收集到的物品分配了一定数量的积分。 实际上,仅此而已。

锻炼自己的热情,克服做太多事情的诱惑


自然地,在众多讨论过程中,想到了各种各样的愿望清单,我们谨慎地拒绝了。 以下是其中一些:

  1. 当玩家收集元素的某些分支,复杂的元素或集合时,有一种添加成就系统的想法。 在意识到元素的发明之后,事情远没有我们预期的那么乐观,我们放弃了这个想法。 成就在上千个元素中是有意义的,但实际上,我们所拥有的更少。
  2. 有人建议以特殊的方式突出显示那些不再可以组合使用的元素。 但是,初步测试表明这不是必需的。
  3. 技术时刻。 在最终实现中,所有图片均在Unity客户端中受到保护。 即,为了更新或补充内容,必须更新商店中的组件。 有一种将图片传输到CDN的想法,以便客户端从后端提取数据,并从CDN提取图片。 这样,它将几乎是一个具有良好界面的“瘦”客户端。 如果我们能够做到这一点,那么游戏将可以无限扩展,并有不断的机会加载一些新的元素集。 但是我们为这个游戏创建了两天而感到震惊……虽然有诱惑,但我们成功地克服了它。

好吧,我们完美地完成了技术任务,我们按时清晰地按时完成了工作,并且还留有余地。 节省了劳动时间,没有损害任何工作草案(这不能说关于我的晚上和周末)。


在看到内容发生什么之前的感觉

切勿与内容豆开玩笑


在游戏的第二个创造性要素-内容方面,对技术成分的信心发挥了作用。 在这里,我们犯了两个错误:我们没有选择负责任的人,而是选择了太多的话题来产生我们无法咀嚼的成对单词。 详细资料:

  1. 在第一次集思广益会议之后,我们决定将“炼金术”的元素与三个主题相关:IT,食品技术和来自Dodo的东西。 我们并没有立即放弃这个想法。 单词和组合词是在三个方向上同时生成的,尽管很有趣,但并没有立即意识到这三个主题都没有很多交点。 在某个时候,我们仍然意识到出了点问题,我们放下了脚踏板,将东西从Dodo(当然是披萨)上拿了下来。 此后,一些事情开始形成。 但是第二分钟在这里发挥了作用。
  2. 我在上面写道,内容编译过程没有所有者。 最初的说法是由各种各样的人发明的,他们刚刚想到的一切。 因此,在我们的清单上有诸如“ shkolota”,“ beans”或“我母亲女友的儿子”之类的奇怪东西。 (是的,有可能将“ beans”绘制到JavaBeans,但是……没有。)已经在项目中间,当我们的词树无法基于逻辑扎根时,出现了超限现象-Anton Bruzhmelyov,几乎淘汰了之前发明的所有词并做出了更合理的新组合。
  3. 但是以上两点导致了一个事实,即发明内容的时间太少了。 结果,我们只有128个元素。 的确,在面对同事的自愿测试人员的帮助下,只有一个女孩能够在几天之内收集所有要素。 它使我们放心。 但是,显然,我们没有考虑到参加会议争夺奖项的人们的毅力和决心。



这些豆子,还有网络蜜蜂(!),好奇心和日志。 当幻想赢得常识时会发生什么
内容是游戏中最重要的部分,它抓住或不粘住玩家。 内容方面的工作可以而且应该甚至在技术工作之前就开始。 好吧,总要有一个负责任的人,用他无情的手,将不必要的一切砍掉,只剩下构成整体的一切。

到目前为止到目前为止还是苹果存在问题


很久很短,但是在DotNext诞生十天之前,我们的IT炼金术开始变成了可行的产品。 我们终于得到了最终的单词组合。 设计师Tanya不必重新绘制图片10次。 后端一直做得很好,并且自信地走到了预期的功能,然后我完成了我们的Unity客户端。

现在该开始在商店中发布我们的应用程序了。 我没想到Google Play会出现任何问题,我已经有发布完整应用程序的经验,但是根据同事的故事判断,Apple Store开始引起人们的关注。 这些恐惧并没有白费。

我们发布了适用于Android和iOS的测试版本,首先我们自己进行了测试,然后邀请了更多同事。 我自己测试时发现了几乎所有错误。 没错,iOS设备上的动画速度存在一个问题,我无法长时间解决这个问题,因为在模拟器上一切正常。 但是我希望在我们项目的技术部分的第二篇文章中讨论这一点。

大多数必须纠正的问题都与布局有关-按钮上的“砰”声将插入,窗口在屏幕的不同纵横比下将无法正确拉伸。 这是一个沉闷而不是最有趣的部分,但是最后我们使设计与所有可能的屏幕保持一致。 不幸的是,我们将大部分时间都花在了游戏屏幕上,并翻阅了一个大门框……但是事实证明,它是如此愚蠢和灾难性,以至于值得一段落。

因此,在会议召开的前三天,我们收集了128个单词,现成的后端以及针对Android和iOS的客户端。 现在该发布公共版本了。 有了Google Play,一切都变得像发条一样。 但是有了Apple Store,我们遇到了无法预料的困难。


同时,在苹果公司:“您还会想些什么来阻止这些家伙发布?”

我被警告说,在一边布置东西太可怕了,但是我不知道要多少。 首先,我们被认为是赌博,然后由于一些非常奇怪的原因而被重定向:“您的应用程序不是应用程序,而是网络视图。” 在发表第三或第四篇社论后,我们只是开始回应:“不,这不是Web视图,不,我们有内容,应用程序做了一些有用的事情。”

在DotNext之前的最后一个晚上,也是最后一次发布该应用程序的尝试。 奇迹发生! 我的睡眠不好,就像生日前的童年一样。 我想醒来,查看Apple开发人员门户并在此处看到绿色的对勾。 las,奇迹没有发生。

关于fakapy和猫


  1. 从Apple启动屏幕并控制输入。

    这是我个人的痛苦。 因为他忽略了。 2000年代初期的游戏时代已经过去了,那时开始屏幕会复制带有棋盘游戏的架子或模拟游戏室。 但是,我们只有那样。

    启动屏幕原来是超载的。 无论是从游戏风格还是从他的直接目的上,他都完全脱颖而出,给了他尽快玩的机会。 即使按照我们设计工作的逻辑,播放器在注册过程中也只会看到一次启动屏幕。 当您重新启动它时,游戏主屏幕将立即打开。

    图片本身很棒,里面有细节,里面有只猫……而且它的输入框太小了,并不是每个人都可以看到的。 并非每个想要玩游戏的人都应对开始屏幕,因此我们在开始时已经失去了一定比例的玩家。

    但是,最不愉快的文件成为了苹果最后一次向我们注册的原因:在iPad(其纵横比比我们考虑的所有其他设备更接近正方形)上,缩放了起始图片,以便猫爬到“确定”按钮上,此人实际上无法点击它。


    iPad上的健康人猫和吸烟者

    当然,我们根本没想到我们的玩家会在iPad上玩游戏,但是不可否认的是猫的头挡住了游戏的开始。 为了不减少部分观众,我们必须采取更复杂的方式:我们诚实地宣布苹果采取了严厉的政策,他们重定向了我们,但邀请所有人注册进行公开测试并以这种方式参与游戏。

    最烦人的事情是,几乎在开发过程中,我始终使用最简单的启动屏幕,该启动屏幕具有黑色背景,较大的输入字段和“确定”按钮,没有任何阻碍。
    整个故事的寓意是什么? 在我们的情况下,我们花费了更多的精力并使所有情况变得更糟。 越好越容易。 您将能量引导到正确的方向并获得理想的结果,如果您开始变得明智,那么普遍因果报应就会来临并痛苦地击中您的头部。
  2. 第二次fakap发生在游戏中的元素数量有限的情况下。 正如我上面所写,几天后,我们所有测试人员中只有一个人收集了所有元素。 但是我们的测试人员在工作和晚上之间打了一些小插曲。 但是我们真正的DotNext玩家决心赢得大奖,因此在第一天(!)当天中旬,我们已经确定了全部三名决赛选手。 也就是说,这些人不遗余力地刺穿了所有128个或133个元素。

    糟糕,如果我之前一直谈论128,那么133在哪里? 作为一个狂热的项目迷,最后一刻我想在游戏中添加一些东西。 因此,设计师Tanya吸引了我,而我从其他项目参与者中秘密地添加了另外五个关于与游戏开发有某种联系的人的复活节彩蛋。 为了简单起见,对播放器显示的元素总数进行了硬编码。 结果,玩家仅收集了128个元素(这不是最大分数),并认为仅此而已。


    以复活节元素的形式华丽的五个。

而不是结尾


DotNext通过了。 对于Android,该游戏已有146人下载。 另有43人通过了iOS的公开Beta测试。 我们为玩家聊天 。 大多数玩家都感到满意(我们没有收到直接的负面评论),奖品找到了他们的赢家。 好吧,像往常一样,救济和破坏几乎总是降在我身上。

现在,一个多月后,我被放开了,我写了这篇验尸报告。 好吧,我们无法避免这种怪胎。 但是我们实现了目标-我们在一个月内实施了一个完整的项目,而没有中断工作,并在会议上成功启动了该项目。 这个故事教了我什么吗? 也许是时候停止并忙于设计工作了吗? 很难说,等待下一次会议!
在我们的“ IT炼金术”的离线版本中,没有记录表,没有固定的开始屏幕,您可以通过在Google Play上下载它来进行播放

Source: https://habr.com/ru/post/zh-CN481038/


All Articles