• Stars
    star
    202
  • Rank 193,691 (Top 4 %)
  • Language
    Rust
  • Created over 4 years ago
  • Updated 4 months ago

Reviews

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

Repository Details

Open source terminal arcade game with audio - based off of the classic "Space Invaders"

Invaders

Invaders is an open source terminal arcade game with audio, based off of the "Space Invaders" classic arcade game.

This game was initially developed for a presentation at OSCON Open Source Software Superstream Series: Live Codingโ€”Go, Rust, and Python and then adapted for inclusion as an example project for the 2020 version of Ultimate Rust Crash Course. The tags part-1, part-2, etc. correspond to the various stages of the original presentation.

Since the original presentations, folks continue to tinker and improve the game. Feel free to fork this repository, make a change, and submit a pull request if you have a good idea!

Sound Files

If you want the sound files used in the course video, but don't want to clone the repository, here are all the sounds in two different archive formats (the sound files are the same):

Notice the new path to the sound files used in the course. It is now under audio > original. All new contributions can be placed under audio > contributions.

We have now a new set of instrumental music sound files in MP3 format. You may listen to the sounds on Musescore.com.

Dependencies on Linux

Audio should work out-of-the-box on macOS, Windows, and iOS. For Linux, the downstream package for actually playing sound ([CPAL]) requires the Alsa development libraries to be installed.

CentOS

sudo yum install -y alsa-lib-devel

Debian/Ubuntu

sudo apt install libasound2-dev pkg-config

Community Games!

Were you inspired to make your own terminal-based game? Open a PR to add it to the list here!

Contribution

All contributions are assumed to be dual-licensed under MIT/Apache-2.

License

Distributed under the terms of both the MIT license and the Apache License (Version 2.0).

See license/APACHE and license/MIT.

Sponsor

Star this repository and sponsor me to support projects like this. ๐Ÿ’–

More Repositories

1

ultimate_rust_crash_course

Rust Programming Fundamentals - one course to rule them all, one course to find them...
Rust
1,925
star
2

green

Green is a clean, colorful, fast python test runner.
Python
795
star
3

rusty_engine

2D game engine for learning Rust
Rust
366
star
4

ultimate_rust2

The best Intermediate Rust course out there!
Rust
256
star
5

rust_programming

Rust Programming: A Crash Course
68
star
6

rusty_sword_arena

Rusty Sword Arena: A Crash Course in Rust (Companion repository to the OSCON tutorial)
Rust
48
star
7

headtail

head and tail simultaneously
Rust
43
star
8

bevy_template

Compile-time optimized Bevy project template
Shell
27
star
9

rusty_sword

Rusty Sword: Game of Infamy!
Rust
14
star
10

rusty_audio

Fun & easy audio playback library.
Rust
9
star
11

bevy_rapier2d_assets

A plugin to make it easy to load 2d physics assets from disk
Rust
9
star
12

pipeviewer

Companion project for the hands-on Rust course I produced for Packt
Rust
9
star
13

shooting_stars

On a starry night, in a field, shooting stars fall from the sky...and Ferris (and his friends) compete to catch them.
Rust
9
star
14

UnrealEngineHelper

Settings, templates, workflow information. Things that help when working with UnrealEngine.
Python
6
star
15

cleancut

6
star
16

bevy_cleancut

Random utility stuff for bevy for my personal use. You're welcome to use it, too, if you like.
Rust
4
star
17

punchball

Punch Ball
Rust
4
star
18

examine

Practice creating grpc services and clients with buf.build, Rust, and tonic
Rust
3
star
19

vc

vc is an implementation of Git in Rust
Rust
3
star
20

rusty_racing

Rusty Racing: A Crash Course in Rust (Companion repository to the OSCON 2020 tutorial)
3
star
21

rusty_textui

Library for creating simple text user interfaces, like text arcade games in the terminal
Rust
3
star
22

duel

An independent re-write of the client for Rusty Sword Arena, with tags for the various stages. This repository will be deleted if RSA gets refactored.
Rust
3
star
23

bevy_pause

A very simple pause plugin for Bevy
Rust
3
star
24

shell_cmds

Port Apple's various shell commands from C to Rust
Rust
2
star
25

dotfiles

My dotfiles
Shell
2
star
26

spaceblasters

A space wars-like game prototype created for the Utah Rust User Group's mini-game jam
Rust
2
star
27

leafwingbug

Demonstrate a bug
Rust
1
star
28

rusty_time

A simple timer
Rust
1
star
29

r_circlegauntlet

Open source game using Rusty Engine: Blue circle trying to reach green circle without touching red circles
Rust
1
star
30

cirena

Circles in an arena. A simple game prototype.
Rust
1
star
31

rolling

Quick demo of a rolling game
Rust
1
star
32

typing

Playing around with teaching typing
Shell
1
star
33

chat_app

just doing a ruby on rails tutorial
Ruby
1
star