V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
rapiz
V2EX  ›  分享创造

我的大一 C 课设, DungeonRush,觉得做的还不错,分享一下~

  rapiz ·
rapiz1 · 2020-03-02 19:29:37 +08:00 · 15265 次点击
这是一个创建于 1729 天前的主题,其中的信息可能已经有所发展或是发生改变。

screenshot.gif weapon.gif

大一 C 语言课设老师给了一个策划,要求实现一个游戏设定比较多的贪吃蛇。我觉得那份设定不够有趣,想搞点花的。

那一阵子又和室友打元气骑士打得比较多,于是就想,能不能让 英雄 作为贪吃蛇的节,然后做一个 Roughlike 地牢闯关的游戏呢?

于是就有了 DungeonRush元 气 贪 吃 蛇(划掉)

游戏有四种角色(都在菜单界面显示出来啦),他们的血量、攻击方式各不相同。怪物死亡后还有概率掉落武器。所以他们还可以装备不同的武器~比如法师甚至可以捡起 boss 武器,进行范围 AOE 落雷。骑士可以装备圣剑,攻击有概率触发全队受到伤害减半,免疫一切负面效果的圣盾Buff

甚至支持本机双人对战。和室友实测可玩性较高。挺好玩的。 也有一个室友沉迷单人 insane 难度,非要打通。

GPL 开源。

GitHub 链接:Rapiz1/DungeonRush

欢迎 Star,Fork ~

欢迎 Star,Fork ~

欢迎 Star,Fork ~

下载

Windows

Linux

第 1 条附言  ·  2020-03-03 10:55:28 +08:00
感谢 @zjsxwc 修复了在 Debian 系上编译的兼容性问题。
第 2 条附言  ·  2020-03-04 18:50:22 +08:00

非常感谢大家的支持!从来没想过它会登上 GitHub Trending 😃

GitHubTrending.png

第 3 条附言  ·  2020-07-28 21:09:30 +08:00
这是我的博客里对游戏设计历程的记录 https://rapiz.me/2020/dungeonrush/
136 条回复    2020-04-17 12:22:02 +08:00
1  2  
quietjosen
    1
quietjosen  
   2020-03-02 19:33:41 +08:00   ❤️ 3
大一…
augustheart
    2
augustheart  
   2020-03-02 19:36:04 +08:00
哎……想想自己大一的时候……
好吧,我学化工的……
fenglala
    3
fenglala  
   2020-03-02 19:36:07 +08:00 via Android
给 v2er 丢脸了......
大一就能整出这......
xff1874
    4
xff1874  
   2020-03-02 19:37:58 +08:00
做的不错,可以考虑开发一个 app 版本的,或者小程序。
mimzy
    5
mimzy  
   2020-03-02 19:39:48 +08:00   ❤️ 4
别人的大一(
Jabin
    6
Jabin  
   2020-03-02 19:41:32 +08:00
鼓励一下 当年我们也是贪吃蛇 全靠自己发挥
huruwo
    7
huruwo  
   2020-03-02 19:41:37 +08:00
我大一只会写计算器
gladuo
    8
gladuo  
   2020-03-02 19:50:11 +08:00
赞👍
kurtrossel
    9
kurtrossel  
   2020-03-02 19:52:41 +08:00
别人家的孩子,别人的大一......

期待见到楼主更好的作品
Mistwave
    10
Mistwave  
   2020-03-02 19:54:16 +08:00 via iPhone
太强了....
caowentao
    11
caowentao  
   2020-03-02 20:09:06 +08:00 via iPhone
优秀,游戏策划也很有创意
Newyorkcity
    12
Newyorkcity  
   2020-03-02 20:11:29 +08:00
强!
yafoo
    13
yafoo  
   2020-03-02 20:14:54 +08:00 via Android
大一,才学会了发邮件
imnaive
    14
imnaive  
   2020-03-02 20:15:42 +08:00
太强了,佩服
May725
    15
May725  
   2020-03-02 20:15:43 +08:00
别人家的大一,👍
drawstar
    16
drawstar  
   2020-03-02 20:17:01 +08:00
太强了,想当初我都是 XX 管理系统
bydgg
    17
bydgg  
   2020-03-02 20:25:08 +08:00
牛逼
TangMonk
    18
TangMonk  
   2020-03-02 20:26:43 +08:00
强,楼主牛逼
whahuzhihao
    19
whahuzhihao  
   2020-03-02 20:28:00 +08:00
强啊,这创意也不错
old9
    20
old9  
   2020-03-02 20:28:17 +08:00 via Android
想知道老师最后给几分
rapiz
    21
rapiz  
OP
   2020-03-02 20:31:22 +08:00
@old9 99。少一个保存当前游戏场景并可以恢复的功能没有实现。设计时没考虑支持序列化,代码里游戏对象指针乱飞,实现序列化不太现实。
FloatK
    22
FloatK  
   2020-03-02 20:31:35 +08:00
看了下楼主居然是 HUST 的,师弟啊,自愧不如,当年大一课设还是啥链表什么的,楼主流弊
bwangel
    23
bwangel  
   2020-03-02 20:34:37 +08:00
强啊。
secondwtq
    24
secondwtq  
   2020-03-02 20:43:37 +08:00
开源了太可惜,应该上 Steam 的
24bit
    25
24bit  
   2020-03-02 20:52:06 +08:00
别人的大一
singerll
    26
singerll  
   2020-03-02 20:53:26 +08:00 via Android
我大一只会 for 循环点亮流水灯。。。
shaohan0228
    27
shaohan0228  
   2020-03-02 20:55:26 +08:00
喜欢这个画风
zy5a59
    28
zy5a59  
   2020-03-02 20:55:28 +08:00
别人家的大一。。。想起我大一时候还在黑框里算加减乘除呢。。。
zmxnv123
    29
zmxnv123  
   2020-03-02 20:57:50 +08:00
orz
zmxnv123
    30
zmxnv123  
   2020-03-02 20:58:56 +08:00
想知道楼主几岁玩编程的
qakito
    31
qakito  
   2020-03-02 20:59:33 +08:00
大佬太凶了
mxdzs0612
    32
mxdzs0612  
   2020-03-02 21:05:21 +08:00 via Android
作为同校学长自愧不如……
14night
    33
14night  
   2020-03-02 21:20:31 +08:00
美术咋搞的?
old9
    34
old9  
   2020-03-02 21:21:27 +08:00 via Android
@rapiz 老师很严格了
rapiz
    35
rapiz  
OP
   2020-03-02 21:22:47 +08:00
@14night google pixel game resource 有很多免费的美术资源,绝大部分都发布在 CC 协议下。我在 GitHub 上写了部分资源的出处。也有不少是我自己画的 :)
jeffciu
    36
jeffciu  
   2020-03-02 21:25:23 +08:00
做的很不错啊。我自从用上 C++后很久没用 C 了,通过楼主的发帖才知道 C 还有 SDL 图形库可以做游戏(暴露无知了,已 star 学习一下。我大一时学 C 的课程设计就是 xxx 管理系统(命令行界面),相比之下过于无趣。
InkAndBanner
    37
InkAndBanner  
   2020-03-02 21:25:58 +08:00   ❤️ 8
挺好, 我大一时候还在研究用 for 把*摆成一个三角形
registered
    38
registered  
   2020-03-02 21:30:32 +08:00
厉害了!我记得我当时上大学的时候,那个什么鸟 bird 游戏很火,也仿着做了一个
wyx119911
    39
wyx119911  
   2020-03-02 21:36:52 +08:00
很强大
Takuron
    40
Takuron  
   2020-03-02 21:40:07 +08:00 via Android
我退 v 站了,为 v 站丢脸了
enchilada2020
    41
enchilada2020  
   2020-03-02 21:48:56 +08:00 via Android
这是真正热爱编程的人才能鼓捣出来的东西 牛逼
ae86
    42
ae86  
   2020-03-02 21:55:34 +08:00
很厉害
IsaacYoung
    43
IsaacYoung  
   2020-03-02 22:05:24 +08:00
大。。。。。。。。。。。。
AngryPanda
    44
AngryPanda  
   2020-03-02 22:05:44 +08:00 via Android
卧槽🐮
tt67wq
    45
tt67wq  
   2020-03-02 22:31:15 +08:00 via iPhone
我毕业都没这水平
dragoonkiller
    46
dragoonkiller  
   2020-03-02 22:36:27 +08:00
同校大四老咸鱼强势围观一个....
(羡慕有室友一起打元气骑士(
JQM
    47
JQM  
   2020-03-02 22:38:22 +08:00 via iPhone
真正的大佬,膜,明早起床给 star
JQM
    48
JQM  
   2020-03-02 22:42:18 +08:00 via iPhone
靠原来你是我学弟基友😂,那我开小号给你点两份 star
HENQIGUAI
    49
HENQIGUAI  
   2020-03-02 22:46:18 +08:00
666
Kepontry
    50
Kepontry  
   2020-03-02 23:31:20 +08:00
同校软院学长,当年把愣是把贪吃蛇做成了 Minecraft
Kepontry
    51
Kepontry  
   2020-03-02 23:42:22 +08:00
ACM 金奖,膜,直系学长自愧不如
dexter
    52
dexter  
   2020-03-02 23:51:40 +08:00
可以随意移植到别的平台而不通知楼主么

(͡ ° ͜ʖ ͡ °)
rapiz
    53
rapiz  
OP
   2020-03-03 00:02:56 +08:00 via Android
@dexter GPL 协议要求修改过的代码也必须用 GPL 协议开源。当然你可以修改后发布一个商业版本,但必须开源。但这同时使得商业版本毫无意义,并且还会被骂(
dexter
    54
dexter  
   2020-03-03 00:11:49 +08:00
@rapiz 肯定开源的,嘿嘿
yilingersier
    55
yilingersier  
   2020-03-03 00:23:33 +08:00
很多大四 cs 专业的人都。。。。咳咳,牛皮
lovestudykid
    56
lovestudykid  
   2020-03-03 00:33:33 +08:00
我大一 C 大作业也是一个小游戏...棋盘上随机分布一些棋子,只能上下左右走,需要找到能吃完所有棋子的路径,有走法提示。丰富程度比楼主差远了...不过我是物理系😂
yangzhezjgs
    57
yangzhezjgs  
   2020-03-03 00:45:03 +08:00
对用 C 语言写游戏有兴趣的,可以看看这个课
http://www.icourse163.org/course/HHU-1206797807?from=timeline
merin96
    58
merin96  
   2020-03-03 00:46:53 +08:00   ❤️ 3
没有网络前:我最牛逼
有了网络后:我是傻逼
dexter
    59
dexter  
   2020-03-03 00:53:56 +08:00
@rapiz debian xfce4 编绎运行之后按键没用
lithiums
    60
lithiums  
   2020-03-03 01:04:12 +08:00
gcc --version
gcc (Ubuntu 7.5.0-3ubuntu1~18.04) 7.5.0

gcc src/*.c -lSDL2 -lSDL2_image -lSDL2_ttf -lSDL2_mixer -lm -g -Wall -o snake -DDBG
src/res.c:14:36: error: initializer element is not constant
const int SCREEN_TICKS_PER_FRAME = 1000/SCREEN_FPS;
wintercoder
    61
wintercoder  
   2020-03-03 01:14:34 +08:00
star 来以后给大一师弟灌鸡汤
evan6
    62
evan6  
   2020-03-03 01:35:42 +08:00 via iPhone
记得玩过一个手游 迅猛追击
Yvette
    63
Yvette  
   2020-03-03 02:21:27 +08:00
太屌了
laminux29
    64
laminux29  
   2020-03-03 07:53:10 +08:00   ❤️ 3
我同事有个表弟,大一写了飞机大战,还是网游,不仅编程,连美术与音乐音效全是自己原创的。

大四他做了个搜索引擎原型,能搜出百度和谷歌搜不出的东西。

他的徒弟在 bat 带队做项目。

可惜,他现在只是在事业单位混吃等死。
TangMonk
    65
TangMonk  
   2020-03-03 09:04:18 +08:00 via iPhone
@laminux29 事业单位才是最舒服的好吧
zjsxwc
    66
zjsxwc  
   2020-03-03 09:26:12 +08:00
挺好玩的
Linon
    67
Linon  
   2020-03-03 09:26:14 +08:00
牛 X 啊
zjsxwc
    68
zjsxwc  
   2020-03-03 09:28:37 +08:00
@lithiums

我也是 debian 系系统,改了下代码就能运行了

https://github.com/Rapiz1/DungeonRush/pull/2/files
Unclev21x
    69
Unclev21x  
   2020-03-03 09:29:19 +08:00
大一我都搞不清一个 long 占几个字节。惭愧。
14night
    70
14night  
   2020-03-03 09:35:16 +08:00
@rapiz 看的出是真的热爱编程, 大佬牛皮~
WilsonGGG
    71
WilsonGGG  
   2020-03-03 09:46:57 +08:00
大一...我大一的时候还在学怎么用 git
Dogergo
    72
Dogergo  
   2020-03-03 09:50:40 +08:00
我透啊,老哥是什么神仙
Harv
    73
Harv  
   2020-03-03 09:52:51 +08:00
还行,就比我大一写的 HelloWorld 好亿点。
insaneguy
    74
insaneguy  
   2020-03-03 10:05:41 +08:00
赞,太强了
iamwho
    75
iamwho  
   2020-03-03 10:17:20 +08:00
@rapiz #35

博客 navbar 的 PORTAL 拼写错了。
wuzhizuiguo
    76
wuzhizuiguo  
   2020-03-03 10:23:03 +08:00
优秀,强...
Phariel
    77
Phariel  
   2020-03-03 10:25:54 +08:00
我觉得你可以继续增加游戏 争取上 steam 的 indie game 啊 真的可以
rapiz
    78
rapiz  
OP
   2020-03-03 10:26:40 +08:00
@iamwho 谢谢。这么久了我也没注意到过。已经改过来了。
MichaelAbel
    79
MichaelAbel  
   2020-03-03 10:30:21 +08:00 via Android
太强了
rapiz
    80
rapiz  
OP
   2020-03-03 10:31:42 +08:00
@Phariel 其实我关于这个游戏还有一些想法。但我不是很有精力去增加新功能和重构它。这也是为什么我把它开源出来,如果真的有人很喜欢,可以继续它的开发。如果靠大家的兴趣使然能够让他真正的成为一款可以发行的、免费开源的游戏,我会比自己拿这个上架更开心。
Phariel
    81
Phariel  
   2020-03-03 10:33:35 +08:00
@rapiz #80 境界很高👍
ssshooter
    82
ssshooter  
   2020-03-03 10:41:51 +08:00
别人的大一,楼主学编程多久了😭
scriptB0y
    83
scriptB0y  
   2020-03-03 10:52:12 +08:00
赞,已 star,建议把游戏 demo 也放到 readme
fyqr
    84
fyqr  
   2020-03-03 10:52:59 +08:00
@laminux29 及时的认清了现实
hitmanx
    85
hitmanx  
   2020-03-03 11:04:36 +08:00
已 star。大一能做出这个游戏就很了不起了,但是比起编程更难得的是对于游戏的 taste。很看好未来楼主往独立游戏方向再努努力
humor66
    86
humor66  
   2020-03-03 11:08:57 +08:00
确实不错,继续学习,发挥个人才能
LittleControl
    87
LittleControl  
   2020-03-03 11:09:50 +08:00 via Android
我大二的时候写链表还不熟练,太惭愧了
oaix
    88
oaix  
   2020-03-03 11:23:36 +08:00
我们学的不是同一种功能 C 语言
onice
    89
onice  
   2020-03-03 11:34:31 +08:00
大一我就实现了书本最后那个命令行界面的图书管理系统就没碰 C 了,后来学 Java,就一路 J2EE 学着去了。毕业也是找的一份 java 开发工作。

楼主蛮厉害的,支持下。
Coltnagisa
    90
Coltnagisa  
   2020-03-03 11:39:57 +08:00 via iPhone
自闭了 我也大一 也是 zhengzhou 的😓
llussy
    91
llussy  
   2020-03-03 11:48:30 +08:00 via iPhone
我大一九九乘法表弄着都费劲
ivanyin
    92
ivanyin  
   2020-03-03 11:58:56 +08:00
楼主厉害
sicflre
    93
sicflre  
   2020-03-03 12:05:58 +08:00 via iPhone
啥时候上 steam 呢
meathill
    94
meathill  
   2020-03-03 12:08:45 +08:00
很厉害,赞一个
AllenHua
    95
AllenHua  
   2020-03-03 12:29:37 +08:00
楼主好强!羞愧到自闭
essicaj
    96
essicaj  
   2020-03-03 12:52:29 +08:00
比游戏开发更重要的是对游戏的想法,我觉得 LZ 的游戏完成度挺高的,说不定以后能走上独立开发游戏的道路
kkk0406
    97
kkk0406  
   2020-03-03 13:30:58 +08:00
已 star 很酷
blindie
    98
blindie  
   2020-03-03 13:51:37 +08:00
这套角色我也用过哈哈
yutou527
    99
yutou527  
   2020-03-03 13:58:16 +08:00
我们大一 C 语言作业都是 99 乘法表啊。。。。
XiaoxiaoPu
    100
XiaoxiaoPu  
   2020-03-03 14:07:18 +08:00
@laminux29 去搬砖要写一堆业务需求,在事业单位混还可以闲暇时间写自己想玩的项目,不是一般的爽啊
1  2  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1026 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 34ms · UTC 21:00 · PVG 05:00 · LAX 13:00 · JFK 16:00
Developed with CodeLauncher
♥ Do have faith in what you're doing.