by tommo
Date: 十一月 5th, 2008
Cate: 文章, 翻译
Tags: , ,  

Sol的Ludum Dare 48小时生存法则

Sol’s “rules” for surviving Ludum Dare 48h
image002

Katharine Hepburn – 遵守所有的法则,你将错过所有的乐趣

原文地址:http://sol.gfxile.net/ldsurvival.html

Ludum Dare48个人游戏开发竞赛 :http://ludumdare.com/

译者按:

这是一篇LD48参加者写下的”攻略”,读一读还是挺好玩的。LD48是一个社区自发开展的个人游 戏开发竞赛,你可以在他们的网站上看到更多详细的介绍。LD48于2002年开始,每年至少举行一次。其间也会有一些别的子竞赛可以参加,比如 MiniLD。由于时间短,而且只允许个人参加,在开发的工具/资源方面也有严格的限定,LD的作品可能不太容易让人觉得出众,但真正享受这个竞赛的,是 参加竞赛的创作者们,他们可以从中得到创造的快感,也可以得到不错的经验。所以才会有这么多人乐此不疲,才会有这样有板有眼的所谓“攻略”了。:)

这里是我参加Ludum Dare 48小时游戏设计竞赛时试着去遵循的一些“基本法则”

1、竞赛前
几条最基本的,在竞赛开始前你必需做的法则

1-1 确定你有时间
如果你有很多的事务缠身、或者得去某个地方、或者今天是你的生日、婚礼、又或者别的什么原因以致于你没有办法分配出一天12小时的时间给竞赛,那么,可能你最好跳过这一次的竞赛。别担心,总会有其他的竞赛的。

1-2 准备好你的家伙
确认你的开发环境没有问题,还有所有你准备要用到的库。(注意竞赛规则对可以使用的工具和库作出了一些限制,确认你没有犯规!)
这里并不仅仅指你的编译工具链,还包括了图形和音频。如果你想要音效,确定你有一个麦克风或是什么声音合成器,并确定它们能正常工作。音乐创作工具也是一样,如果有的话。

1-3 竞赛前应该要买点什么?
食物!!尤其是你住得离商店很远的时候。买一堆的饮料:别买酒精,买软饮料,通常是些果汁。工作的时候尽量让你的手边有个什么东西可以抓起就喝,这可以让你的大脑保持清醒。不要买高脂的零食、它们有催眠效果……

2、开始的时间临近了
又是几条竞赛前的法则,开始前的最后几个小时里。


2-1 提先考虑主题时
投票列表里只剩下寥寥 无几的几个候选主题时,你或许要忍不住开始为你最喜欢的那个主题开始计划了。不过,押宝中大奖的机率总是令人惊奇的低,尽管如此,你也别顾虑太多:就计划 着吧。压抑自己的想象力不是很让人沮丧么?而且提前计划也可以让你的思路在主题宣布时高速进入状态。

2-2 睡觉去,听话!
这条法则取决于你所在的时区, 如果竞赛开始的时间恰好被放在“理智人群”所标出的“夜晚时间段”当中,你还是先睡吧,别管它是零晨1点还是午夜。就算比赛在晚上10点开始,你也可以考 虑一下是不是把竞赛放一边,来一个美容觉先。别在深夜里设一个闹钟叫你起来看主题的宣布,之后你绝没可能再睡着了。甚至别考虑说从零晨四点开始奋战。睡眠 是决定性的。如果你累了(你最终一定会累的),你的大脑就将罢工,这将给你自己带来越来越多来不及解决的问题。


3-主题,还有设计
主题宣布后,该做些什么


3-1 主题

当你发现主题是什么时,别慌,别慌。也别开始写代码。去散个步。去淋个浴。吃点。铺铺床。遛遛狗。不要如临大敌,做些平常的事就好。将会一些什么在你耳边响起。抓住这些流进脑海直奔主题的东西。

3-2 设计上的考虑
一些设计时的要点

3-2-1 时间很短,要有针对性地设计。
实际来说,你将只有2/3个工作日的时间在握,因此,任何依赖于耗时因素的概念,你都应该抛弃掉。
概括地说来有:
- 内容。特别是3D内容
- 调整。 要把复杂的物理调整得有趣,这要很多时间。
- 关卡数据。 如果你的游戏需要聪明的关卡才能有趣,那么你就完了……
- 其他任何单调/耗时的东西。


3-2-2 目光放低

别害怕放低标准。无论何时,如果你想要增加一些细节或者是对游戏性进行微调平衡,那都是很耗时的事。归根结底,游戏性,要比闪亮的图形来得重要得多。后者是游戏的门面,而游戏性才是被玩家所记住的东西。

3-2-3 优先级
你的最高优先级应该是“首个可玩”的版本。你需要创建的最基本的物性是哪些?把这个放在脑子里,除此之外先不要去做别的东西,如果你还没有写出一个“可玩”的游戏。要知道,没有“可玩”的游戏,你最后就交不了差了。
另外,早点写出一个可以玩的游戏,你的士气将大大提升,这也可以带来产品性的上的提升。接下来,只要让你的游戏始终保持着“可以玩”的状态,最后你就有作品可以提交,不用担心中途会出什么妖蛾子。
在早期就完成一个“可玩“的版本,也可以最大化你用来微调游戏的时间。

3-2-4 玩家能明白你的心吗?
当你有 了你的可玩版,先玩一会儿,并想想一个新的玩家能不能在20秒里搞懂你的游戏。如果投票的人没有办法在短时间内弄明白你的游戏,那么很有可能他们也不会在 你的游戏里呆太久。要是这样的话,试着做点什么吧:游戏里的敌人是不是容易辨认?玩家需要收集什么?这些都清楚吗?你需要加点教程么?或者是弹出性的帮助 文本?或者是帮助页面?
帮助页面是个简单便捷的方案,不过是个单调的体力活。交互教程比较有趣,但需要时间去实现。休息的时候再好好想想你应该用哪种方式比较合适。

4 编程上的考虑
关于编程风格的种种

4-1 过程编程VS面向对象
这条大概是针对C/C++程序员说的;OOP和过程编程都有其各自的优点和缺点。选择你觉得最舒服的方法。

4-2  关于工具性的代码
相信我:你将不会重新使用在这个周末里写下的任何一条代码。所以你最好也不要去想做一把瑞士军刀,写那些你确切需要的东西。如果你不需要从容器里拿走物品,就别实现拿走的功能;如果圆圆方方在你的游戏里不会碰撞,那碰撞代码也就不需要了;诸如此类。

4-3 表达优先,不求速度
现在的电脑已经足够快了,所以你根本没有必要去优化你的LD作品。 不要在你写代码的过程当中尝试任何的优化,这会让你最终得到:a)混乱的代码 b)难以发现的Bug
为了可读性进行的优化则要好得多,这将帮助你节省查找BUG的时间。 当你写一些意义不直观的东西时,注释。忘记东西是很容易的,就算只有2天时间。


4-4 避免模糊的需求

为了最大化你的受众,尽量使用最常见通用的驱动,避免那些最新的东西(.net框架,最新版的dx等等)。如果你真的需要这些东西,记得尽可能让你的玩家可以很容易地明白他们需要什么驱动以及到哪里去获取它们。

5 “座右铭”
竞赛时的“做”与“不做”

5-1 睡觉!
再重复一次,你必须要睡觉。这与你的时区无关:在比赛时间内,你至少应该在工作时间段的间隔中睡足8小时(比如:睡眠-工作-睡眠-工作,而不是:睡眠-工作-工作-工作)还是要再次重申,这可以让你的大脑活着!
睡过一觉后的时间是完全不同的。睡眠是你在遇到棘手问题时的减震器,但不要太过依赖它。如果你能在比赛结束前10小时完成你的游戏,你就成功了。
如果你认为不睡觉就能节省时间的话,那你就上当了。

5-2 喝
记得随时保持手边有一些饮料。要多喝。就算是白开。果汁是最好的,不过一些软饮料也不错(像可乐)。不要喝酒精之类的会打乱你思维的东西。一场竞赛下来,你应该至少喝下了3-4升的饮料,也可能比这多得多。
还有一点,与平常的工作时间相比,你不需要更多的咖啡因。


5-3 休息

保持休息的频率。竞赛过程当中至少冲个澡。去走动一下。停下来吃些东西。如果你是在电脑前吃东西的话,别一边吃一边忙着干活,不如上IRC挂着。另外,如果你有记得时刻喝水,那么你就应该记得时刻去厕所解放自己……

5-4 别慌

如果你不觉得你的游戏有什么意思,别担心。毕竟你还有很多时间去测试和调整它。就算你没有办法搞掂,你也从中学到了不少。当你保持足够的休息、足够的睡眠、足够的果汁给你的大脑以足够的能量,那么你就处于一个理想的学习环境之中了。

5-5 日志
这并不只是乐趣,也可以在灾难性的情况发生时助你一臂之力,比如说死机毁了你最后版本的源代码……

5-6 备份
记得无时无刻都要备份,把备份放到别的机器上。这可以给你留下退路,当你把代码弄得一团糟或是发生了更可怕的事情时。

5-7 早发布,勤发布
要发布你的ALPHA/BETA版本给其他人试试。这些人总是在IRC频道上,有不少是在等着尝鲜。发布测试版可以让你在早期发现一些奇怪的兼容性上的问题,并且避免自己漏掉那些需要一起发布的DLL文件。


6 截止时间迫近了……

当截止时间到来时,你仍然不可以慌张。如果觉得有什么困惑的地方,试着小歇一会。哪怕短短五分钟也好。新鲜空气,淋浴一下。你的大脑会一直处于工作状态,就算问题不在你的手边。所有的代码都是你自己写出来的,你一定能够找到问题所在。把脑袋往键盘上砸不会解决任何问题。
最最重要的一点就是不能放弃。
还有,记得留下一点时间做最后的打包还有测试工作。


7 结束语

睡一觉,回想一番,写一篇“自我检讨”。试着从中学到点什么。如果你发现自己记下了如下的评语,那么说明你并没有遵守这些法则:
“睡太多了”
“休息的次数太多”
“建立环境时浪费了时间”
“目标太高”
“找错消耗了太多太多的时间“

无论结果如何,你一定学到了不少,下一次也将容易得多。


Ludum Dare见!

Leave a Reply

 Name

 Mail

 Home

[Name and Mail is required. Mail won't be published.]

*
To prove you're a person (not a spam script), type the security word shown in the picture.
Anti-spam image