2018 C语言大作业--21_Ekko制作教程

同学们实现的效果:

Ekko C语言大作业

 

以下是开发同学的相关文档:

 

《Ekko》设计报告

本组设计并编写的游戏《Ekko》,是一款引用了当下红火的网络游戏《英雄联盟》中的游戏角色Ekko为主角,由本组三名成员使用C语言编写的一款横屏动作闯关游戏。

 

一 设计思路

在选取游戏题材作为最终的课程设计目标时,一如许多组的同学一样,我们曾考虑过将一个现成的游戏拿来改编,但最后我们决定自己做一款游戏。而我们要做的第一步,则是明确我们要做一款什么样的游戏。受一款动作游戏《Super Hot》灵感,本组成员想要做一款主角拥有控制时间能力的动作游戏。

在《Super Hot》中,玩家操控的角色拥有一种令人着迷的能力:放慢时间,让原本正常的世界的时间流动速度变慢,从而拥有更强、更从容的反应能力来应对敌人。我们认为这是一个非常酷炫的游戏概念,并想要做一款能体现这一游戏概念的游戏。

受限于我们的知识储备,我们只能使用C语言来编写游戏,而与此同时,我们也只能用EasyX来进行绘图。因此,我们最终决定设计一款2D的动作游戏,而这款游戏能展现出令人着迷的控制时间的能力。

而在设计我们的主角的时候,我们亦曾想过做一个“能控制时间的忍者”,而之后我们注意到了在现今的网络游戏中大红大紫的竞技游戏《英雄联盟》之中,就有一个类似的能控制时间的角色:艾克(Ekko)。艾克是一名生长于名为祖安的城市的少年,拥有控制时间的能力,并利用这个能力惩奸除恶,践行自己的价值观,守护着祖安城。艾克的人设展现出令人钦佩的人性光彩,和他桀骜不羁的个性。我们几乎一拍即合,决定采用Ekko作为我们游戏的主角。

而在游戏构架的构思中,我们为了最大程度体现“控制时间”这一能力,决定设计一种关卡难度极大的游戏——需要玩家细腻的操作,并且正确地使用“时间暂停”这一能力。

谈及动作游戏的难度,最容易想到的有两点:1、地图的复杂性;2、敌人攻击的危险性。因此,在最初的构思中,我们决定给予主角仅仅一条生命——如同《超级马里奥》一般,被敌人的攻击命中,便会死亡。同时,我们会设计复杂而多变的地形,以及大量的敌人、更大量的弹幕。

而我们不能只关注游戏难度是否够高,而应同时关注玩家的游戏体验。所以我们必须将主角的操作细节设计得足够细腻——以回应玩家细腻的操作。

综上,我们的游戏的基本雏形便构建完毕——在祖安城内,一位名为Ekko的少年,在大量的敌人面前把玩着自己的控制时间的能力,灵巧地躲避敌人的各种攻击并前进,这就是我们想做出来的一款原创跑酷游戏。

二 功能描述

在我们组的《Ekko》的设计中,由我来担任Ekko的运动的编写,以及Ekko与地图中各种各样的互动。

以下为艾克——这名酷炫的时间刺客,需要具有什么样的基础功能,以及什么样的“画龙点睛”,才能给玩家一个不错的游戏体验。

1:显示素材。不可否认的是,对于计科专业的同学来说,期末课设最为直接的素材收集方式为搜索互联网。但是这对于我们组而言不可行——因为我们要做的游戏中,需要的元素大部分在网上找不到,原因则为我们游戏虽题材非原创,但游戏方式与界面却与原素材的相去甚远(比如英雄联盟中的3D建模下的艾克是无法应用在我们的游戏中的)。因此,我们组只能自己去绘制我们的素材。

此外,绘制好的素材需要放在特定文件夹内,以便编程时用代码读取这些素材;此外,我们组还需要学会如何利用EasyX,在游戏中显示透明的图层。

2:人物移动。在课程中,我们学习了最基本的人物移动方法:利用getchar函数和几个简单的判断,来实现人物坐标的改变。但这对于我们的Ekko是不够的——这个函数的读取模式

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值