我的大一 C 课设, DungeonRush,觉得做的还不错,分享一下~ - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
rapiz
V2EX    分享创造

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

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

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 iPhon
优秀,游戏策划也很有创意
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  
PRO
   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 站丢脸了
KMpAn8Obw1QhPoEP
    41
KMpAn8Obw1QhPoEP  
   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     Solana     5587 人在线   最高记录 6679       Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 37ms UTC 07:46 PVG 15:46 LAX 00:46 JFK 03:46
Do have faith in what you're doing.
ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86