• Stars
    star
    1,919
  • Rank 23,327 (Top 0.5 %)
  • Language
    C
  • License
    GNU General Publi...
  • Created over 4 years ago
  • Updated over 2 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

๐Ÿ‘พ๐Ÿ A opensource game inspired by Snake, written in pure C with SDL

DungeonRush

A game inspired by Snake, in pure C with SDL2. My piece of work from C assignment. Hope you like it :)

I work on the small project on my own so the code lacks of comments.

Download

Windows(64bit)

Windows(32bit)

Linux

Someone port it to android!

AppImage for Linux is also available in release page.

Archlinux AUR

yay -S dungeonrush

Archlinux AUR(git version)

yay -S dungeonrush-git

The game supports macOS but I don't have an Mac to compile for it.

The executable is called dungeon_rush

Release Note

v1.1-beta

  • Fix bugs

v1.0-beta

  • Fix bugs
  • Add Multiplayer / LAN mode

You can play with your friend via Internet! You need to be in the same network and can directly connect by IP

v1.0-alpha

Initial release

How to Play

Singleplayer

Use WASD to move.

Collect heros to enlarge your army while defending yourself from the monsters. Each level has a target length of the hero queue. Once it's reached, you will be sent to the next level and start over. There are lots of stuff that will be adjusted according to the level you're on, including factors of HP and damage, duration of Buffs and DeBuffs, the number and strength of monsters and so on.

Multiplayers

Use WASD and the arrow keys to move.

This mode is competitive. Defend yourself from the monsters and your friend!

Weapons

There are powerful weapons randomly dropped by the monsters. Different kinds of heros can be equipped with different kind of weapons.

My favorite is the ThunderStaff. A cool staff that makes your wizard summon thunder striking all enemies around.

Buff/DeBuff

There's a possibility that the attack from one with weapon triggers certain Buff on himself or DeBuff on the enemy.

  • IceSword can frozen enemies.
  • HolySword can give you a shield that absorbs damage and makes you immune to DeBuff.
  • GreatBow can increase the damage of all your heros' attack.
  • And so on.

For sure, some kinds of monsters have weapons that can put a DeBuff on you! (Like the troublesome muddy monsters can slow down your movement.)

Dependencies

The project requires no more than common SDL2 libraries. SDL2, SDL2-image, SDL2-mixer, SDL2-net, SDL2-ttf

For Arch

# pacman -S sdl2 sdl2_image sdl2_mixer sdl2_net sdl2_ttf --needed

For Debian

# apt install libsdl2-dev libsdl2-image-dev libsdl2-mixer-dev libsdl2-net-dev libsdl2-ttf-dev

For openSUSE

# zypper in libSDL2-devel libSDL2_image-devel libSDL2_mixer-devel libSDL2_net-devel libSDL2_ttf-devel

For MacOS

#  brew install sdl2 sdl2_image sdl2_mixer sdl2_net sdl2_ttf

For other OS

The names of packages should be similar. You can look for SDL tutorial to set up the environment.

Compilation

You should make sure all dependencies are installed before compiling

$ cmake -B build && cmake --build build

Known issues

Game speed too fast with some NVIDIA graphic cards on Linux

License and Credits

DungeonRush has mixed meida with various licenses. Unfortunately I failed to track them all. In other word, there are many stuff excluding code that comes with unknown license. You should not reuse any of audio, bitmaps, font in this project. If you insist, use at your own risk.

Code

GPL

Bitmap

Name License
DungeonTilesetII_v1.3 By 0x72 CC 0
Other stuff By rapiz CC BY-NC-SA 4.0

Music

Name License
Digital_Dream_Azureflux_Remix By Starbox CC BY-NC-SA 4.0
BOMB By Azureflux CC BY-NC-SA 4.0
Unknown BGM Unknown
The Essential Retro Video Game Sound Effects Collection By Juhani Junkala CC BY 3.0

More Repositories

1

rathole

A lightweight and high-performance reverse proxy for NAT traversal, written in Rust. An alternative to frp and ngrok.
Rust
7,423
star
2

catp

Print the output of a running process
Rust
1,158
star
3

cs-education

Courses and some other useful resources to teach oneself a university degree in CS
14
star
4

hnu-courses-to-ics

ไปŽๆน–ๅ—ๅคงๅญฆๆ•™ๅŠก็ณป็ปŸไธญๅฏผๅ‡บ ics ่ฏพ่กจ
Python
11
star
5

simple-shell

A simple shell implementation with built-in commands and coreutils
C
9
star
6

cppc

A skeleton C compiler in C++
C++
9
star
7

typography

A Hexo theme focused on clean format and elegant reading experience.
CSS
5
star
8

xv6-labs-2020

C
5
star
9

acm-code

Rapiz's Competitive Programming Codebase
C++
5
star
10

ss-pcap-visual

A Simple and Stupid Pcap Visualization application, with some fancy charts.
C++
5
star
11

Rapiz1

3
star
12

clox

Lox Interpreter in C++
C++
3
star
13

feeluown-notification-plugin

Show desktop notifications for FeelUOwn
Python
3
star
14

rustlings

Rust
3
star
15

gsoc2020-chapel-data-structures

GSoC 2020 Project - Chapel - Sequential Data Structures
Chapel
2
star
16

rust-switchable-transport-example

a example echo server in Rust, that shows how to implement switchable transport using generics
Rust
2
star
17

acit

Your Online Judge submissions crawler
Python
2
star
18

tiny_webdisk

C
2
star
19

AWEL

Personal themes.
Shell
1
star
20

chapel-envVariables

A module to manage environment variables for Chapel
Chapel
1
star
21

ics2020-pa

C
1
star
22

mpristest

minimal example for reproducing the issue in mpris-service
Python
1
star
23

openwrt-build

Shell
1
star
24

jos

C
1
star
25

chapel-heap

A module for chapel
Chapel
1
star
26

rapiz.me

GitHub Pages repository
HTML
1
star
27

monitor-site

A minimalistic uptime web dashboard
JavaScript
1
star
28

cri-api

Container Runtime Interface (CRI) โ€“ a plugin interface which enables kubelet to use a wide variety of container runtimes.
Go
1
star