Thetawave is a physics-based space shooter with procedurally generated levels, diverse foes, and distinct characters. As an open-source project, it invites collaboration and creativity from the community, allowing enthusiasts and developers to contribute to its evolution. This aspect of open-source development adds a unique dimension to Thetawave, as it grows and diversifies with inputs from its user base. Engaging in both gameplay and development, players and developers alike can experience the thrill of space combat while shaping the game's future.
Action | Keyboard ๐ฎ | Controller ๐ฎ |
---|---|---|
๐น๏ธ Movement | 'WASD' / Arrow Keys | D-Pad |
๐ซ Fire Weapon | Left Click / Spacebar | Right Bumper (RB) |
๐ฅ Special Ability | Right Click / Shift | Left Bumper (LB) |
Objective: Protect the planet from invading enemies!
Game Over Conditions:
Power-Ups:
![]() |
Wrenches restore health. |
![]() |
Gems increase fire rate. |
![]() |
Armor negates damage. |
![]() |
Energy orbs give additional projectiles. |
Special Mechanics:
While you can play in the browser (works best on Google Chrome...for now), you can play offline in a few ways. The simplest way to play a native build of the game offline is to download the latest Github release for Windows or Linux. Then run the executable.
To run the game after compiling locally, do the following.
Clone the repository git clone https://github.com/thetawavegame/thetawave.git
Download our assets.
One way is to download a recent Linux .tar.gz
release, and extract the assets/
directory in the tarball into your
local assets/
directory. We do so in the following Bash command. In Windows, just copy the files manually. Replace
the link with that of a build from the latest release,
especially if you are running off of the main
branch.
curl -Ls https://github.com/thetawavegame/thetawave/releases/download/v0.2.0/thetawave-0.2.0-x86_64-unknown-linux-gnu.tar.gz \
| tar -xz -C assets/ --strip-components=2 --wildcards "*/assets/*"
If when running the main
branch you still have missing assets, it means that we are using assets that are not yet
published in a release. In that case, you might checkout the latest tag. Find it by running git tag
and then
execute, for example, git checkout v0.2.0
.
Compile/run using Cargo as follows.
cargo run --release
Enable the install features you want. Our install features are as follows.
cli
- Enables start up parameters on the built thetawave
executable.storage
- Enables writing user stats to a local SQLite database.arcade
- Enables arcade-specific features, namely through serial communication to a microcontroller.One can run using install features as follows.
cargo run --release --features "storage,cli,arcade"
We welcome contributions from all community members. Your insights and improvements help us grow.
For complete guidelines on contributing, please see our Contributing Guide. It includes all the necessary information on how you can participate in shaping Thetawave.
@cdsupina ๐ก Role: Creative Director Contribution: Visionary leadership and creative oversight. |
|
@varoonp123 ๐ป Role: Lead Programmer Contribution: Architect of the game's deployment and technical features. |
|
@LordDeatHunter ๐จ Role: Lead Artist Contribution: Key driver of the game's visual style and artistic assets. |
Joel Schuman - Original Game Soundtrack
Space Ultimate Megapack - Comprehensive Space Audio Collection
Kadith's icons - Game Iconography
Space Madness - Font Design by Rose Frye