Python游戏

创建于:2016-10-12

创建人: Linpean

2 信息 35 成员
使用Pygame引擎制作游戏, 使用现有的Evennia框架开发Python联网MUD
小组导航
Linpean 2016-10-12

在这里留一个帖子的位置,以做指南和参考。

一. 参考文档

  1. Evennia中文站,http://www.evenniacn.com/,Evennia是一款开源的MUD类游戏的服务器软件,它基于Python开发,使用BSD许可协议发布,对商业应用友好。
  2. Pygame官方文档,http://www.pygame.org/docs/
  3. Pygame中文文档[未完成],http://bbs.fishc.com/thread-62164-1-1.html

二. 演示游戏

  1. 游乐园http://cn.muddery.org/webclient/webclient.html

 










Memory Puzzle游戏设计&三消游戏设计要点
Linpean 2016-10-13

#### 设计要点 ####
1.营造紧张的氛围。
输入大量的压力就需要在游戏过程中营造出紧张的氛围。首先,背景音乐上就要有由缓入急的感觉,并保持较强烈的节奏感。其次可以辅以时间条等要素,增加紧张的气氛。特别是在时间行将结束的时候,背景要素的变化会给玩家带来强烈的紧张感。而这种紧张感正是消除类游戏的最大魅力。
Blowup!! By Cravemob Co.,Ltd

2.有张有弛。
尽管需要营造紧张的氛围,但我不赞同让玩家在高强度下进行长时间的操作,这样会对玩家的身心都造成极大的负担,会迅速导致玩家疲倦乃至厌烦。所以我更倾向将消除游戏设计的富有节奏感。例如在玩家完成一组消除或进入下一关时,应该通过展示消除动画等方法给予短暂的休息时间。这样可以使玩家的精神始终处于一张一弛的情境之中,从此获得快感。
Birzzle Pandora By Enfeel Inc.

3.鲜明的模块。
知觉心理学上很著名的一句话就是「眼睛喜欢走捷径」。尤其是在高强度下,玩家会要求快速的对屏幕上出现的模块进行分类。因此,不同类型的模块需要在视觉上体现出截然不同的差别。建议无论是颜色、形状还是图案上,都将它们区分开来。特别是颜色,我不建议不同类型模块使用同一色系。
Azkend 2 HD - The World Beneath By 10tons Ltd

4.夸张的视觉效果。
前几年,有人将移动平台上获得巨大好评的几款游戏。例如愤怒的小鸟、水果忍者等拉出来进行分析,发现它们的共通点之一便是拥有极为夸张的视觉效果。比如水果切开时夸张的分离效果,便会给玩家带来巨大的满足感。而这一点,在消除类游戏上尤为重要。因为模块消除时夸张的视觉特效是帮助玩家输出压力的重要方法之一。至于具体效果,自然见仁见智。个人偏爱爆破类,因为有释放的隐喻在里面。
Fruit Ninja By Halfbrick Studios

5.「音效!音效!」。
我用了两个惊叹号,因为我认为音效在消除类游戏中的地位太重要了。消除是个立体的感受,失去音效就仿佛将一个三维图形投影为二维图像一般。至于音效设计上的技巧,还是要参考名作「宝石迷阵」。比如在消除时使用音阶递增来增强效果,我最初便是在「宝石迷阵」上发现的。
http://v.youku.com/v_show/id_XMjE5NzY0MDgw.html

6.类型创新。
最后一点。我觉得还是类型创新。玩法简单,人气又高,因此消除类游戏即便是名作也是不胜枚举。如何从中突围,关键还是类型创新。特别是在与其它类型游戏的融合上,还是很有潜力可挖了。具体的例子便是去年大获成功的「智龙迷城(パズドラ)」。关于这款游戏的讨论有很多,比如在知乎上就可以参考 @韩文楷 的问答,我就不多说了。

7.计分方式的递进设计
像宝石迷阵,主打的就是连续消除后所产生的巨大爽快感及对特殊宝石的期待与瞬间满足感,《求合体》(原型《Triple Town》)的优势在于递进式的消除、多种消除方式的结合及道具设计(但说实话,游戏还是有点难)
递进设计就当是其他游戏中的升级来理解就好了,放在消除里就是多消的计分方式、累计消除一定数量时所获得的特殊道具等等。求合体的多种消除方式指的是猫和树林两条路线的区分,并由此设计水晶和幽灵娃娃的道具。


## 1.1 如何玩Memory Puzzle游戏 ##  

典型的玩家对抗游戏系统的消除游戏,对,可以看作是消除类游戏。

百度百科对消除类游戏的定义:

>玩家游戏过程中主要是将一定量相同的游戏元素,如水果、宝石、动物头像、积木麻将牌等,使它们彼此相邻配对消除来获胜

#### 视觉设计 ####

形状:在我们的Memory Puzzle使用着原始的方块.

颜色:不同种类的方块使用不同的色系

不同形状和不同颜色的方块放在一起,会让玩家更直观的分辨,容易区分,来配对。

#### 历史 ###

消除类游戏起源于纸牌游戏,奠定游戏基础是《俄罗斯方块》,后来的《宝石迷阵》算是大成之作

#### 心理模型 ###

利用人类喜欢整理杂乱东西的天性

#### 数学模型 ###

在消除类游戏的关卡设计中的难度控制  

1. 关卡的基本地形

2. 关卡的目标

3. 关卡中的特殊元素

4. 关卡的限制条件(步数,时间等)

#### 基本规则:消除方块的原则[配对规则] ####  

在Memory Puzzle游戏中,白色的方块盖住所有图标,每种图标都有两个。  

玩家可以在方块上点击,点击后,将白色方块去掉,显示出图标,如何连续两次打开方块,且方块背后的图标是一样的,则这两个图标被成功配对,将保持打开的状态,如果两次打开的方块图标不一致,图标将被关闭。  

#### 基本目标:胜利失败的条件[结算规则] ####

当游戏板上的所有的方块都打开的时候,玩家就赢了,为了给玩家一个提示,在游戏每次开始的时候,所有的方块就快速的打开一遍。

#### 资源经济 ####

在一些消除类常常会对消除行为进行**计分**,另外还限制**步数**。  

这里的计分可以看过一种成就资源,不断累计得到成就达成的乐趣  

而步数则可以看是生命值,随着步数归0,游戏结束

#### 冲突导向 ####

递进的压力,不管是记忆力还是限制步数的

## 1.2 游戏编程 ##

### 嵌套的for循环(nested for loop) ###

即在for循环内再使用一个for循环,嵌套的for循环对遍历两个列表的每一种可能的组合很方便。

在Memory Puzzle代码中,我们用嵌套的for循环来遍历游戏板上X和Y坐标组合的每一种组合,并确保得到每一个组合。  

IN:  

    

    for x in [0, 1, 2, 3, 4]:

        for y in ['a', 'b', 'c']:

            print(x, y)

OUT:  

    0 a

    0 b

    0 c

    1 a

    1 b

    1 c

    2 a

    2 b

    2 c

    3 a

    3 b

    3 c

    4 a

    4 b

    4 c

注意:内部的for循环将会经过所有的迭代,然后才会进入外部的for循环的**下一次迭代**。 如果我们将x和y的内外部顺序过来,也会打印出同样的值,但是会以不同的顺序打印出来。  

IN:  

    for y in ['a', 'b', 'c']:

        for x in [0, 1, 2, 3, 4]:

            print x, y

OUT:  

    0 a

    1 a

    2 a

    3 a

    4 a

    0 b

    1 b

    2 b

    3 b

    4 b

    0 c

    1 c

    2 c

    3 c

    4 c

加入 indienova

  • 建立个人/工作室档案
  • 建立开发中的游戏档案
  • 关注个人/工作室动态
  • 寻找合作伙伴共同开发
  • 寻求线上发行
  • 更多服务……
登录/注册