在精彩的会议上进行技术互动。 第二部分



第一部分中,我谈到了重力瀑布迷展台上的一台笔记本电脑,我在2-3年前参加了几次科幻电影节。 今年,该团队的灵感来自一部关于Jumanji的新电影,并决定在这个世界上站稳脚跟。 我对他的态度不是很清楚,但是那部旧电影和该系列电影都很好。 当开始进行互动时,我决定为节日游客制作棋盘游戏的移动模拟产品,并有可能在展台上一起玩并解决难题。 削减-我的实施产生了什么以及它如何看待Starcon 2018音乐节。

棋盘游戏Jumanji


在原始电影中,玩家(最多4人,按游戏中的人物数量)掷骰子,他们的人物移至适当的值,并且在游戏中心出现了一个谜。 他们花了几秒钟的时间来了解她在说什么,然后开始执行写作。 蝙蝠飞进来,出现了野生动物-所有这些都从游戏中传到了我们的世界。

一时的疑问
从理论上讲,玩家可以立即按照优先顺序进行下一步,并很快完成游戏。 实际上,每个谜语都给继续进行这一过程带来了新的困难。 该系列中有一个不同的原理,没有这样的问题。

在动画系列中,游戏的行为有所不同-即使在那里出现了相同的人物和领域,但实际上并不重要。 无论游戏时在场附近有多少人(或其他生物)出现,他们都在谜语出现后全部向内吸引-直到他们在游戏世界中解决它,然后大声说出答案。

棋盘游戏实施


想法很简单-结合使用这些选项。 玩家掷骰子,移动,然后在场中央出现一个谜语。 在给出答案之前,下一个玩家将无法走路。 由于我不是程序员而是弹坑,所以我决定将游戏制作为移动设备的应用程序。

我了解到,这种互动会给访问者带来一定的不便。 如果游客在节日的每个展位上下载新的应用程序,在设备上花费流量,电池和空间,那么很快他就会厌倦它。 最后,并不是每个人都有移动设备,剥夺人们的潜在娱乐机会是不公平的。 因此,我决定制作两个版本,移动版(在线)和固定版(离线),直接在平板电脑上输入答案。 尽管我对该移动电话寄予了很高的期望,但该移动电话仅应被用作附加的交互性。

离线版本


使用客户端的脱机版本,一切都变得非常简单。 我的妻子绘制了图形,我在Unity中制作了一个原型-图形在板上移动,显示了谜语。 美女! 我不会在界面上花费很多精力,毕竟,该应用程序应该只工作了两天,并且主要执行了向访客传达问题的功能,但是我不能完全放弃它。 添加了创建播放器(最多四个)的操作,以指示名称,摄像头方法以及各种小东西。 在第一个版本中,电影中的问题都是硬连线的。 了解了应用商店的政策后,我决定提前布局此版本,以便我可以慢慢解决一些问题-毕竟,该游戏是使用知名电影制作的,尽管没有任何获利和广告收入,但版权仍归发行者所有。 然后我的担心就没有实现-最初是Google Play ,后来App Store确认了该应用程序没有任何问题,与此同时,我开始改进服务器和客户端以进行在线工作。



Google Play的最高评价


我没有添加本地化,​​因为 我没想到其他人会使用该应用程序,除非是节日的访客,但是请记住,来宾可能来自不同的国家,所以我没有在游戏中添加区域限制。 我从未发布过第一个版本的链接(除了我们的测试人员团队中的测试之外),但是令我惊讶的是, Google Play的评论仍然开始出现。 在第一批评论中,外国人本着“回答什么问题? 收视率低,我无法打通游戏。 我担心即使是那些可以在音乐节上安装该应用程序的访问者,较低的评分也会吓跑他们,并决定在下一个版本中添加游戏模式“ 无问题” ,如果设备语言不同于俄语,则默认情况下将其激活。 在这种模式下,本着“ 掷骰子,由N个单元前进,无论谁快到终点线-赢得了胜利 ”的精神,游戏变成了最简单的棋盘游戏,但是这种评论很少(其他评论出现了,下面更多内容)。

在线版


实际上,我甚至在脱机版本之前就开始在服务器端工作。 我知道Laravel并不是最适合游戏服务器的平台,但在我看来,在其上制作原型并通过网站填充问题数据库比较容易。 该站点有封闭的部分,我可以在其中添加问题,创建在线游戏并管理其过程(在所有参与者选择完数字后开始游戏,确认问题的答案,完成游戏)。



实现了API以连接到游戏,选择形状和掷骰子。 通过邮递员进行测试,并切换到客户端。

当然,每N秒与客户端轮询服务器不是您应该在2018年引以为豪的实现,但是这种简单的机制可以按预期运行。 我创建了一个基于小型资产的保存系统,并为应用程序添加了设置,您可以在其中选择游戏模式并从服务器下载当前问题数据库。 有几个列表-基本问题列表(第一版中存在的电影问题),固定版本问题列表和在线版本问题列表。 该问题可以一次出现在多个列表中,但通常只能出现在一个列表中。 该按钮还允许您从站点下载最新版本的问题。 在这4种游戏模式中,有3种基于脱机版本工作(有两个不同的问题列表+一个没有问题的模式),最后一个需要主持人从看台上初步创建游戏并且不能在自动模式下启动。 那些想了解更多有关在线版本操作原理的人可以阅读下一个破坏者,我试图在其中最大化(甚至可能不必要地)详细描述所有内容。

在线版本如何工作
首先,访客(1至4人一组)带着安装了应用程序的设备来到演示者。 在设置中,选择游戏模式。 现在,当游戏开始时,客户端上会出现一个4位代码输入窗口。 游戏主机从他的设备进入该站点,并在封闭区域中的服务器上创建游戏,此后他显示唯一的游戏代码。 在正常情况下,这是玩家需要输入的唯一代码(名称除外)。 因此,所有玩家都输入游戏代码,并在客户端上显示用于选择人物和输入玩家名称的字段。 同时,服务器开始轮询(基于游戏代码)是否存在被占用的人物-例如,如果玩家彼得选择了一只猴子,则接下来的三个服务器投票将仅允许剩余的三个人物可供Judy玩家使用。 如果JudyPeter选择了猴子之后,但在更新可用图形列表之前尝试选择猴子,则会给她一个错误,需要再次尝试。



选择好角色之后,玩家进入待机模式,并且唯一的7位标识符返回给客户端,该标识符不会显示在任何地方,而是用于识别玩家发送的请求。 再次,服务器开始轮询,但不是为了获取免费图形,而是为了获取有关游戏的详细信息,包括其状态。 只要状态与未决匹配,此过程就会继续。 有关游戏的信息还包括带有最后更新日期的字段。 此字段还会在请求中传输给服务器,以便仅在日期更改时才提供完整信息,而在其他情况下,仅发送所有内容均相同的通知。 最后,当所有玩家都选择了棋子时,主机将游戏状态从他的设备更改为活动状态。

下次更新信息时,访问者将打开比赛场地。 玩家按先后顺序移动(先前选择过一个棋子),如果双倍骰子落在骰子上,则当前玩家仍在移动。 在线版本中有两种问题。

  • 第一种是在相应字段中输入答案的问题,类似于固定版本中的问题。 当您单击“ 答复”按钮时,将向服务器发出请求,在此确定答案是否正确。 大多数情况下,可能有几个有效的不区分大小写的选项。
  • 第二类是需要确认的问题。 除了重新显示问题外,没有其他按钮。 玩家在谜语中满足相关条件后,领导者必须在网站上的游戏页面上单击“ 计数”答案 ,并告知领导者。 之后,按优先级顺序对下一个玩家可用移动,依此类推,直到有人到达场地中心为止。 正式地,此后,主机将必须单击站点上的“ 完成”按钮,此后游戏将从活动列表中消失,并且尝试使用此代码与客户端重新连接将返回警告,表明游戏已经结束。



重新连接到游戏的可能性也得到了实现。 如果访客启动了在线游戏,然后进入菜单,选择了其他模式,玩了离线版本,并决定再次连接到旧游戏,或者甚至决定在另一台设备上继续游戏,则他可以使用辅助器来完成此操作。 。 首先,他还输入一个4位数的游戏代码,然后,他需要单击“ 输入玩家代码”按钮,而不是选择免费的棋子。 前面提到的7位玩家代码未在游戏界面中以纯文本显示,但在主机上的封闭区域中对主机可见,并且与玩家的姓名和人物一起可见,因此玩家将可以识别自己的身份并输入此附加代码。 如果已经开始游戏,则在输入游戏代码后,将立即要求访问者输入现有玩家的代码。 此功能已经过测试,但是在音乐节上从未使用过,因此仍然多余。

突如其来的困难


该应用程序最终版本的完成花费的时间比我想象的要长,并且更新仅在大会召开前几天才投放市场。 而且,当然, App Store阻止了它=)当然,这是我的错-我以为使用电影的名称可能不正确,但是它仅在风扇架的背景下使用,并且该应用程序的第一个版本没有问题,所以我放松了。 最初,只有图标被阻止,在对其进行更改并重新检查后,市场上已经有描述(在第一个版本中已经存在),并且发出通知,下次检查应用程序将花费更多时间。 通常,对于我来说,更新被拒绝是很奇怪的,而已经下载的带有“错误”描述和图标的第一个版本却要下载,但至少可以下载。 我有些恐慌-加上几天的验证,该应用程序将不再适用,并且所有使用iOS的访问者都会在节上因互动的在线版本而中断。 我不知道是否要等待一份愉快的确认信,在会议召开的前一天,我疯狂地添加了一个在线文本版本-虽然不是很漂亮,但是效率很高,所有可以访问网络的设备所有者都可以通过该文本进行交互。



节日的第一天


现在,公约的日子到了。 到那时,我已经知道我的互动应用程序不是唯一的应用程序-Megaphone仍然在Starkon进行全球性搜索的主要应用程序。 我希望我的应用程序的存在不会给组织者带来任何不便,但至少我还没有听说过。 但是游戏的固定版本可以集成到主要任务中。 其含义是,安装了Starkon应用程序的访客走到展位周围,执行独特的任务,并在成功完成后收到每个展位特有的代码(由展位的参与者输入以避免分发),并从参与图纸的所有展位收集代码奖品。 在Jumanji的展位上,我自愿负责此任务。 作为我们立场的一项任务,我建议通过一个非常简单的问题来浏览我的游戏的脱机版本。 那些谁愿意将应用程序下载到他们的设备上,然后按照自己的节奏进行操作,以后向我展示一个成功的结果,或者在我的指导下从平板电脑上“ 与Alan Parrish玩Jumanji ”。 当然,这在过去的节日中并不像旧笔记本电脑那样规范,但是用Jumanji笔下的平板电脑保护壳看起来还不错。



在线游戏是一个单独的,独立的交互功能。 对于她来说,访问者必须安装该应用程序(或使用在线文本版本,但每个人都选择了该应用程序)。 由于未确认新的iOS应用程序而使情况更加恶化,并且在App Store中您只能找到第一个版本,而没有在线游戏,甚至不能下载问题的当前版本。 此外,在音乐节的第一天,像往常一样,有更多的访客,包括想要进行正式任务的访客,因此,结果只有一小部分装有Android的人在第一天就开始了在线任务,但他们在最初的谜语中就放弃了。 我有点不高兴,因为在线版本耗费了很多精力,根本不体验它会很可惜。 但我希望第二天在这方面会更成功-发生了。

节日的第二天


第二天从令人鼓舞的消息开始-App Store最终确认了该应用程序的新版本,并写信,如果有类似的需求(以我的信为理由,我严格在某些日期需要该应用程序,以致于我回信),检查速度更快(说实话,从那时起,我就不再澄清这一点了,因为不再有这种需要了)。 在这一天,感觉要进行全球任务的访客减少了,我经常建议通过我的游戏的在线版本。 在线游戏的难题更为复杂,通常会在节日中描述节日的其他立场,而玩家必须了解所涉及的立场,了解并向主持人进行描述(或展示此立场的照片)。 从1到4个球员的团队可以参加,即使每个人都按照自己的身材参加比赛,他们也需要像本系列赛一样共同解决难题。 如有必要,主持人可以给出提示(如果访客完全不知道谜语中的摊位宇宙,但您不想对所有选项进行排序)。 在这一天,有更多这样的人,几乎每个人都完成了整个任务,对此我感到非常高兴。 总的来说,大约有十个成功的玩家,比我预期的要少,但是在最后一天之后,人数明显增加。 我特别记得那个女孩,她在音乐节的第一部分就独自开始了在线游戏,然后又回来了,并在接近尾声时受到了审问,当时我们担心她放弃了这个任务。 原来她只是无法解决其中一个谜,但最终她成功完成了所有工作!)
我以为作为完成在线版本的特别奖励,我将颁发一个徽章,并且只奖励团队中的谁能更快地到达该领域的中心,但是参与者很少,因此所有人都获得了奖励,并且为奖励基金补充了手工制作的手绘丙烯酸磁铁以Jumanji的风格。 我希望交互式的参与者对奖品和游戏本身都感到满意。



未来的一课


似乎是时候让我早就明白了,此类项目中的内容通常比其呈现的形式更为重要。 我犯的错误之一是专注于损害谜语的应用。 当然,我设法写了许多谜题,但是我在通向Expoforum的途中从电话上将它们添加到了公共汽车上,这可能会影响它们的原创性和数量-几乎可以肯定,当重复游戏时,它们会重复出现。 但是有趣的难题是他们对Jumanji的期望。 将来,需要花更多的时间来处理这些重要的事情。

总结


自节日以来已经过去了半年。 在这段时间里,我不再更新游戏-我计划只在音乐节那天才需要它,并且不再指望进一步的支持。 奇怪的是,我仍然继续收到来自Google Play的新评论。 尽管大多数语言都是阿拉伯语,但要求添加阿拉伯语言(也许我对Jumanji一词的词源不了解?我发现它具有更多的非洲渊源),但有关在线版本的疑问仍然不断出现。 如果将来有时间,我将执行更多操作,以便在没有我直接干预的情况下运行游戏,但是,我认为它已经完成了其主要任务。 对我而言,这是一次独特的体验-看着您的任务在应用程序的帮助下进行得非常好。 , — , , , , , . , =)



. 第一部分

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


All Articles