《我在美国学游戏设计》笔记

从情感体验出发,探索出最合适的机制来表达情感。 ...

September 27, 2021 · 1 min · 猫猫

This Week In Moeif 14

这周中秋,回老家了,没有做太多事情,只是把服务器排行榜,用户数据,膜拜等功能写完了。 ...

September 27, 2021 · 1 min · 猫猫

为什么没有大公司推动 P2P 文件分享

现在已经是2021年了,如果你拍摄了100张度假的照片,想分享给我,如何分享? ...

September 26, 2021 · 1 min · 猫猫

This Week In Moeif 13

这周主要在学习使用Rust和Rocket Web框架写Web逻辑。这将用于ZombieDash以及其他游戏的排行榜,以前只是把功能堆起来,这一次重新看这些内容,清晰了许多,至于不至于头痛了。看文档也有点头绪了,目前用户部分的逻辑已经写完了,接下来就是把分数逻辑加上就可以了,下周应该可以搞完,顺别把UI重构一下,争取这个月底能够提交到AppStore并且审核通过。还有两周,时间还是挺紧的。 这周还收到了诗仙与诗魔游戏的软著证书,但是发现并没有什么太大的用处,要上架国内的一些Android平台,还得接入各个平台的SDK,一个免费游戏,真是醉了… 中秋了,明天回家… 项目进度 音乐与僵尸(ZombieDash) 客户端添加了背景音乐,确定了大概的UI重构方式,以及音乐播放逻辑。服务器的写完确定,下周可以搞完。 动物旅行 上周主要的流程逻辑已经写完,这周主要做了一点UI视觉方面接入的工作,UI逻辑进行中。 pinmaker 横盘中… 本周电影 好家伙 GoodFellas (1990) 本周书籍 《大师谈游戏设计:创意与节奏》(已读完) 《写给大家看的设计书》(已读完) 下周初步计划 完成音乐与僵尸的UI重工作 完成音乐与僵尸的服务器逻辑 完成继续动物旅行的UI逻辑

September 19, 2021 · 1 min · 猫猫

This Week In Moeif 12

这周开始看一书关于游戏设计,游戏节奏方面的书籍和相关资料,觉得有必要系统地科学得去学习一下游戏设计,学习一下前辈们积累的丰富经验。玩游戏是一会事,做游戏,把握好游戏的节奏,明白某个点为什么要那样设计,就是另一会事了。单纯参考(抄)其他游戏的设计,总觉得云里雾里的,无法做到极致。 项目进度 诗仙与诗魔 这周收到软件著作权的证书,国内的几个商店提交了一下,目前正在审核中。作为独立开发者,感觉国内的市场环境还是有点难。 音乐与僵尸(ZombieDash) 这周把核心的流程跑通了,Node的位置也改变了一下,放到了两边,临时的UI也加了进去,录了Demo视频上传到了B站和Youtube。下周开始调整节奏,以及看一下UI怎么布局,怎么设计。 动物旅行 这周把核心玩法的逻辑框架搞完了,数据的恢复逻辑也可以了,接下来开始一边加入UI,一边完善整个逻辑。 pinmaker 重新调整了一下程序,目前一共有3W的本金在跑,上个月因为调整过本金,收益没法算了,这个月月底看一下。 本周电影 本能 Basic Instinct (1992) 下周初步计划 音乐与僵尸节奏体验调整,UI设计 动物旅行UI逻辑

September 12, 2021 · 1 min · 猫猫

This Week In Moeif 11

这周把原来的台式机各个部件挂闲鱼卖了,还有 2015 年的 MacBook Pro 也卖了,然后换成了一台 Macmini M1 和一个 Philips 的4K显示器。整体的体验,比原来的PC好了很多。家里工作的位置也换了一下,换到了靠近窗边的位置,感觉整体效率提高了许多。所以这周就没怎么写逻辑,配置了一下环境。 项目进度 诗仙与诗魔 软著的审核终于有动静了,现在处于待发放的状态,预计下周可以收到。这样可以把国内各大Android 市场上一下。 音乐与僵尸 这周加入了僵尸的资源,修改了歌曲的难度逻辑。开始搭建基本的 UI 界面。 动物旅行 今天把游戏核心Action的逻辑重新构建了一下,为了做数据的保存以及恢复,重新整理了一下数据结构。 本周电影 尸骨无存3:零号病人 Cabin Fever: Patient Zero (2014) 神秘感染 Contracted (2013) 神秘感染:第二阶段 Contracted: Phase II (2015) 下周初步计划 音乐与僵尸的UI搭建 动物旅行核心Action逻辑写完

September 5, 2021 · 1 min · 猫猫

This Week In Moeif 10

这周的整体进度还可以,首先新的苹果账号已经可以用了,诗仙与诗魔也上架了AppStore,审核通过居然只用了一天。 ...

August 29, 2021 · 1 min · 猫猫

如何开发一个问答类游戏

问答类游戏,在开发过程中还算是比较简单的一个分类,核心的内容就是问题与答案。抽象来讲,问题可能是文字,也可以是图片,也可以是声音等等,而对应玩家可以选择的答案,也可以不同的表现形式。例如看电影海报猜电影名字,听音乐片段猜歌曲等等 【诗仙与诗魔】,是一个诗词挑战类游戏,本质上也算是一个答类游戏,问题变成了某一首诗中的某一句,而答案就是从给定的类似诗句中选择正确的那一句。接下来我将从技术有角度来解析一下这个游戏的整个开发过程。 这个游戏现在可以直接从商店下载体验,在 AppStore 或 TapTap 搜索 诗仙与诗魔 即可找到。 这个游戏现在可以直接从商店下载体验,在 AppStore 或 TapTap 搜索 诗仙与诗魔 即可找到。 iOS 下载连接: https://apps.apple.com/app/id1583234447 Android 下载连接: https://www.taptap.com/app/222178 先解析一下这个游戏,诗仙与诗魔有三种玩法,独自练习,就是关卡模式。无尽冲榜,就是不断地累积得分,然后进行排行榜。匹配挑战,是可以与其他玩家进行联网匹配的玩法,这一个涉及到服务器部分的开发。 客户端的部分 客户端在启动后,会先去一个固定的域名,拉取一些必要的配置信息,例如服务器的状态,排行榜和匹配服务器的连接地址,服务器的状态等等。这个可以自己根据需求配置各种各样的信息,只有这些必要的信息拉到后,游戏才会继续下一步。 接下来会从本地尝试读取用户数据,如果本地没有,则会从服务器尝试请求,如果服务器也没有,则认为这是一个新玩家。弹出玩家昵称输入界面,玩家确定后,会将用户的ID和昵称等数据发到服务器,并且在本地存档,然后就会进入游戏。如果本地没有用户数据,但是服务器有,就会使用服务器保存的用户数据,进行数据恢复,然后在本地存档。 接下来就进入了主界面,可以选择三种不同的玩法。先说一下诗词数据。诗词数据是使用 flatbuffers 存储在游戏包里的。每一个记录,保存了一首诗的ID,名字,作者,内容等。游戏启动后,会读取所有的诗词数据,进行结构化存储。每一首诗,会创建一个 Poem 对象,里面保存了这首诗的内容,以及额外的数据,例如这首诗有几句,每一句的字数,这些数据会用于随机生成问题,以及根据字数,从其他诗词中选择类似的诗句,用作答案。 关卡模式,就是罗列出诗词配置表中的每一首诗,作为一个关卡,当玩家作答完毕后,会记录所用时间。在关卡界面,所以看到每一首作答过的诗词所用的时间。 无尽冲榜,首先进入时会消耗体力,对于每一个新玩家,会给予默认300体力,还有2个复活道具,5个刷新道具。在冲榜模式中,每一首诗会有10秒的倒计时,在过程中,玩家可以选择使用一个刷新道具,换一首诗作答,以此不终断冲榜过程。冲榜结束后,会给出得分,客户端会得得分提交到服务器。对于头衔,是由得分计算出来的,这个直接在客户端计算。游戏没有作作弊方面的处理,对于这个游戏来说,没什么必要。如果失败,则必须消耗一个复活道具,才能继续从失败的地方继续冲榜。如果道具或体力不足,则可以通完看广告获得。 匹配挑战,匹配挑战同样会消耗体力,进入后,首先会向服务器发送匹配消息,服务器会在根据匹配的等待时间,根据玩家的 elo 分值,进行实力相当的匹配,如果最后没有真实玩家,则会匹配一个机器人,与玩家一起玩。每一局匹配挑战由10首诗构成,由哪10首诗,以及每一首诗的可选择答案,则由服务器生成,以此保证两个玩家使用的挑战数据是一致的,保证公平性。 匹配挑战的分得计算,每一首诗为1000分,如果答错,则0分。如果答对,先得500分,剩下的500分,根据作答速度,剩余时间的百分比,进行得分。得分由服务器计算,一定程度上受网络影响。 服务器的部分 服务器可以分为三部分,服务器及用户基础数据,排行榜,匹配,这三部分是使用不同的方式实现的。 服务器及用户基础数据 这一部分使用 aws 的 DynamoDB、Lambda、 API gateway 实现的。通过API gateway 调用 lambda 读写 DynamoDB的数据,可以根据网上一些视频教程来操作来下。逻辑很简单,主要是配置各种权限的时候稍微麻烦一点,也还好。 排行榜 排行榜放在了 aws 的免费 ec2上,因为游戏的量不大,所以免费的也够用,数据直接放在了 Redis 中,API 逻辑是使用 Rust 来写的。 匹配 匹配部分也是放在 aws 的免费 ec2 上。也是使用 Rust 写的。连接模块使用了 message-io 的 websocket。客户端和服务器使用了简单的 json 交互,因为数据比较简单,就没有使用更复杂的协议。期中,匹配开了两个线程,一个用于监听客户端的连接,收到连接后,会将连接数据发往另一个线程,数据的交互是使用了 rust 的 channel。游戏管理器收到新的连接,就会加入到客户端的列表。收到客户端发来的消息后,会进行解析,然后进行逻辑处理。...

August 29, 2021 · 1 min · 猫猫

Unity 2D 游戏背景适配

在开发2D游戏的时候,不同的设备分辨率下,经常需要将背景以高或以宽来适配。如果以高适配,即背景图的高度填充整个屏幕,然后去缩放宽度。最终效果图如下 ...

August 22, 2021 · 1 min · 猫猫

This Week In Moeif 9

这周上架了诗仙与诗魔项目,不过没有多少玩家,国内只上架了TapTap,其他的Android商店等待著作权下来。这周有了一个新的项目构思,一个模拟养成的游戏,具体还在构思中,细节比较多。音乐与僵尸游戏进入了Demo阶段的开发流程。 这周还整理了一下博客,换了一下主题,回到了以内容为中心的模式。后面会慢慢提高写作输入的频率。 项目进度 诗仙与诗魔 国内已上架了TapTap,国外上架了GooglePlay,以及一些其他的商店,像华为,三星,小米,APKPure等。国内其他的Android商店等待著作权。 音乐与僵尸 开始了核心玩法的Demo逻辑开发,目前完成了Node点的逻辑。Beat点的规则下周再确定一下。预计这个月底可以完成整个核心玩法Demo的开发,然后就可以开始加音乐和做UI逻辑。 动物旅行 动物旅行目前只有周末会开发一天,今天写了一下数据方面的结构,游戏状态的描述逻辑基本上确定了,写了一些基类,下周可以继续填充细节。UI方面的资源有一些缺失,暂时先放一下,等待补全。 本周电影 第四公民 Citizenfour (2014) 黑白魔女库伊拉 Cruella (2021) 下周初步计划 音乐与僵尸游戏Demo逻辑 动物旅行游戏核心玩法逻辑

August 22, 2021 · 1 min · 猫猫