《Invert》开发日志01:核心玩法设计
前面提过,这个游戏的核心玩法基于我做的第一个Unity游戏,名字就叫《Invert》,现在在应用宝上面还能搜到。不过那个游戏也不是我原创的,它的玩法设计来自github上的一个开源项目(https://github.com/gorried/inverter),那时候我正在上培训班,它本来是我的一个课下练习。当时主要是为了熟悉游戏从制作到发布的流程,所以几乎完全模仿了原项目的设计,连方块的配色都没改(因为我觉得那配色挺好看的,还特意用Photoshop取了人家的色值)。
但是现在回过头来看,这种设计其实是有待商榷的。前两天看了IndieACE上的一篇文章(http://www.indieace.com/topic/137),感触颇深。诚然,现在扁平风大行其道,极简风格的游戏受众也越来越多,但这只能说明用户越来越适应这种设计,并不能证明它本来就应该是这样的。我们停下来想一想,排除人造物品,自然界中哪种东西是由纯色的小方块整齐排列组成的?反正我是想不出来。我甚至可以作出一个大胆的假设:如今我们身边所有的东西都是四四方方的,大抵是由于人类早期生产活动形成的思维惯性。
我们文明刚刚迈入农耕时代的时候,使用“刀耕火种”的作业方式种植作物。而由于人体的生理基础,我们倾向于在负重的情况下走直线而非曲线,这就形成了我们对直线最初的好感。到后来我们使用木材作为建筑材料,因为树干大部分都是直线形的,建成的房子自然也就四四方方的了,我们开始习惯使用直线和矩形。手工业逐渐发展,我们很容易就发现直线形的切口是工艺上最简单的,立方形的材料也是用起来最方便,所以你会发现埃及金字塔是用Cube拼成的。今天跟埃及法老建金字塔的时候并没有太大差别,我们住在立方形的房子里,因为盖房子的钢筋是直线形的;我们拿着矩形的手机,因为矩形的模具更容易制作和量产……甚至在计算机的世界里也是如此,了解一点图形的朋友应该都清楚,计算机里所有的图片都是矩形,所谓的圆形图片其实只是它的边角部分像素alpha值为0而已。
我们再看这个游戏的玩法:

玩家点击红色标注区域获得反馈。排除人造物品,自然界中哪样任务是需要我们用手指点击一个面去完成的?我能想到的就是键盘和开关,可惜它们都是人造的。其中原因跟我们前面的讨论一脉相承,工业革命初期,为了操作方便发明了开关,于是开关的设计一直延续至今。但是电子游戏不是工业生产,矩形和开关节省不了多少成本,没有现实寓意的设计却很可能降低玩家的游戏体验。于是我想做这样的改变:

虽然还是点击操作,但是将交互区域从面转移到点上,由点的变化影响线的变化,由线的变化影响面的变化。其实从数学上看,这两种设计完全等价。但是点、线、面的联动更容易让人产生对现实世界的联想,同时也可以增加游戏表现上的层次感。我第一个联想到的就是农田和灌溉,虽然实际农业生产的情况肯定不是这样,但能映射到现实世界中的事物,总比单纯的思维游戏更容易让人接受。
这就是游戏的核心玩法,说白了其实就是一个平面几何领域的数学游戏。我总是倾向于避免把游戏变成人与人之间对抗的工具,首要原因当然是这样的强联网游戏需要服务器端的大量工作,不太适合独立开发;更重要的原因是我一直怀念当初单机时代的游戏体验,我总觉得电子游戏应该是作者思维和情感的具现,玩家经由游戏的玩法、剧情、画面、音乐与作者形成思想共鸣,最终完成个性化的解读和理解。就像一首歌,一本书,一部合格的电影。
核心玩法设计至此结束,接下来将确定游戏的整体表现风格……
《Invert》开发日志01:核心玩法设计的更多相关文章
- Rokid开发者社区skill之【历史上的今天】之简介+玩法+设计+实现+心得
Skill简介: 来源:好奇心.探索欲.趣味性: 资源:百度百科: 方式:实时获取,自动更新: 技能玩法: 想要进入历史上的今天这个skill,则对若琪说:若琪,打开历史上的今天. 想要了解某天的历史 ...
- 《Invert》开发日志00:缘起
按照所有程序员的惯例,编号从0开始.本系列日志将记录一款独立游戏 发起->构思->设计->实现->完善->测试(如果需要)->上线->后期维护(如果有人玩) ...
- 《Invert》开发日志03:一些想法
本来标题想写“详细设计”,但是由于独立游戏开发有很强的探索性,最终项目一定是经过原型调整迭代而来的,所以在实际效果出来之前把设计做得太细并没有太大意义,现在只能先陈列目前的一些想法,不能定义“它是什么 ...
- 基于Spring框架怎么构建游戏玩法服务
说明:本篇阐述的问题,是基于前面的游戏服务器架构设计的. 问题 众所周知,Spring最擅长的领域是无状态服务的构建,而游戏(尤其是玩法部分)是有状态的.以棋牌游戏为例,玩法服务里面大概涉及以下两类对 ...
- 《Invert》开发日志05:终止
今天终于看了久闻大名的<独立游戏大电影>,然后我就做了一个坑爹的决定:终止“Invert”项目的开发.没错,在还没正式开工之前,我就决定停掉这个项目,而且是永久终止.做这个决定并不是因为觉 ...
- [课程设计]任务进度条&开发日志目录
任务进度条&开发日志目录 周期 时间 任务 Sprint One 11.14 ● Scrum团队分工及明确任务1.0 Sprint One 11.15 ● Scr ...
- ExceptionLess新玩法 -- 审计日志
审计日志 这算是一个挺酷的功能,把每个请求都记录下来,之前在abp中看到过这个功能,配合可视化的界面,简直是在装逼 看到了exceptionless后,心念一动,我也可以根据它做一个审计日志的功能.这 ...
- ExceptionLess新玩法 — 记日志
ExceptionLess 之前也有介绍过这个框架,其实网上也有很多的资料,无论是部署还是一些详细的高级玩法都讲的很清楚也很棒,博主也学习了一些他们的博文,因为很多的东西比如本地部署别人已经写了,我再 ...
- 简单Elixir游戏服设计- 游戏玩法介绍
抄以前的,做了点修改. 到目前为止,我们完成了玩家的数据和进程建模,现在介绍游戏玩法. 为什么我们还不做客户端接入.协议指定呢?为什么还没有网关和数据存储呢.在我接手的游戏, 这些通常已经定下来了,我 ...
随机推荐
- Matter.js – 你不能错过的 2D 物理引擎
Matter.js 是一个 JavaScript 2D 刚体物理引擎的网页.Matter.Engine 模块包含用于创建和操作引擎的方法.这个引擎是一个管理更新和渲染世界的模拟控制器. Matter. ...
- 众人口中的JAVASCRIPT
目前所说的JAVASCRIPT=ECMAscript+DOM+BOM DOM全称:Document Object Model,造作网页内容的标准. BOM全称:Browse Object Model, ...
- Javascript Object、Function对象
1.Object对象 原型对象 原型是对象的一个属性,也就是prototype属性,每个对象都有这个内部属性,而且他本身也是一个对象. <script type="text/javas ...
- 刷新拜拜~gulp-livereload
早就想要自动自动自动刷新了啊,曾经用grunt实现过,但是是yeoman建好的..其中很多任务我是用不到的啊,为了干净还是得要自己写啊哈哈(现在我只想要自动刷新). 首先node是必须的了-就不说怎么 ...
- javscript闭包的准备工作 -- 作用域与作用域链
作用域是JavaScript最重要的概念之一,想要学好JavaScript就需要理解JavaScript作用域和作用域链的工作原理.今天这篇文章对JavaScript作用域和作用域链作简单的介绍,希望 ...
- ORACLE -- ArcSDE Lock request conflicts with an established lock【转】
具体的解决办法有如下三种 1.多半情况下关闭数据库连接可以解决这个问题,但有时候问题依然存在. 2. >1.关闭所有的ArcMap和ArcCatalog session. >2.开始——运 ...
- Sharepoint学习笔记—习题系列--70-576习题解析 -(Q1-Q3)
这里我把从网上搜集到的针对Sharepoint 70-576的有关练习进行系统的解析,整理成一个系列, 分期.分批次共享出来,供大家研究. 70-573考试注重的是"知道"相关知识 ...
- Android HTTP实例 发送请求和接收响应
Android HTTP实例 发送请求和接收响应 Android Http连接 实例:发送请求和接收响应 添加权限 首先要在manifest中加上访问网络的权限: <manifest ... & ...
- Android 友盟分享躺过的几个坑,大坑,坑爹啊
前言:公司上线了一个项目,做Android 客户端集成友盟分享,在做得过程中,遇到了下面3个问题,希望其他小伙伴注意. ) 错误1: 1.错误描述 我是照着友盟的集成文档一步一步的集成的,做完后,发现 ...
- maven编译java代码报“非法字符: \65279 ”错误的解决方法
前段时间开发一个项目,使用maven进行编译时报“非法字符: \65279 ”,但是眼睛看怎么都正确的,文件转成utf-8编码还是报错. 最后没办法,暴力解决了这个问,步骤如下 1.把文件内容复制出来 ...