All Projects → amethyst → Space Menace

amethyst / Space Menace

Licence: mit
An action 2D platformer made with Amethyst game engine

Programming Languages

rust
11053 projects

Projects that are alternatives of or similar to Space Menace

Theta Wave
A space shooter game made with Amethyst and Rust.
Stars: ✭ 144 (-7.69%)
Mutual labels:  game-dev, showcase
Hfsm2
High-Performance Hierarchical Finite State Machine Framework
Stars: ✭ 134 (-14.1%)
Mutual labels:  game-dev
Unity Solutions
Use Firebase tools to incorporate common features into your games!
Stars: ✭ 95 (-39.1%)
Mutual labels:  game-dev
03 buildingescape
A simple First Person game to learn level building, lighting, Unreal Editor, C++ game logic, basic Blueprint and more. (ref: BE_URC) http://gdev.tv/urcgithub
Stars: ✭ 127 (-18.59%)
Mutual labels:  game-dev
Arcadevehiclephysics
A framework for creating an arcade inspired physics system for vehicles in Unity
Stars: ✭ 103 (-33.97%)
Mutual labels:  game-dev
Made With Webassembly
A showcase of awesome production applications, side projects, and use cases made with WebAssembly (Wasm). 👷
Stars: ✭ 132 (-15.38%)
Mutual labels:  showcase
Langaw
A sample project for following along a tutorial found on jap.alekhin.io.
Stars: ✭ 90 (-42.31%)
Mutual labels:  game-dev
Gibbed.borderlandsoz
Tools & code for use with Borderlands: The Pre-Sequel!
Stars: ✭ 138 (-11.54%)
Mutual labels:  game-dev
Robe React Ui
Robe React UI Components
Stars: ✭ 133 (-14.74%)
Mutual labels:  showcase
Examples
Store all egg examples in one place
Stars: ✭ 1,668 (+969.23%)
Mutual labels:  showcase
O2
2D Game Engine with visual WYSIWYG editor
Stars: ✭ 121 (-22.44%)
Mutual labels:  game-dev
Lumberyard
Amazon Lumberyard is a free AAA game engine deeply integrated with AWS and Twitch – with full source.
Stars: ✭ 1,785 (+1044.23%)
Mutual labels:  game-dev
Laravel Seo
SEO package made for maximum customization and flexibility
Stars: ✭ 130 (-16.67%)
Mutual labels:  showcase
Slidingintoview
Simple Sliding Intro View [DEPRECATED]
Stars: ✭ 96 (-38.46%)
Mutual labels:  showcase
Laravel Queue Monitor
Monitoring Laravel Jobs with your Database
Stars: ✭ 136 (-12.82%)
Mutual labels:  showcase
Is Engine
SFML C++ game engine that allows to create games on Web (HTML 5 - CSS 3), Android and PC
Stars: ✭ 94 (-39.74%)
Mutual labels:  game-dev
Reldens
Reldens - You can make it - Open Source MMORPG Platform
Stars: ✭ 130 (-16.67%)
Mutual labels:  game-dev
Gamedev Resources
🎮 🎲 A wonderful list of Game Development resources.
Stars: ✭ 2,054 (+1216.67%)
Mutual labels:  game-dev
Automatic Gatsbyjs App Landing Page
Automatic GatsbyJS App Landing Page - Automatically generate iOS app landing page using GatsbyJS
Stars: ✭ 137 (-12.18%)
Mutual labels:  showcase
Kickmaterial
Crowdfunding app concept for Android. Created to showcase new trends in Android development with strong focus on Material Design.
Stars: ✭ 1,649 (+957.05%)
Mutual labels:  showcase

Space Menace

An action 2D platformer made with the Amethyst game engine.

This is my firstish attempt at a game (I did write a basic snake game some time back). Through this project, I aim to get better at coding in Rust, get familiar with the Amethyst game engine and start learning game development in general. I also hope that this project will help other Amethyst and game dev beginners like me in some way or the other.

Currently, it is a ⚠️WORK IN PROGRESS⚠️ and there is still a lot to be done before it reaches a playable state. Also, the code is far from perfect and there is a lot of scope for improvement. I will keep enhancing the code incrementally, as I go along.

Configure Cargo.toml

The default render target feature is set to metal for macOS users.

# Cargo.toml

[features]
default = ["metal"]
metal = ["amethyst/metal"]
vulkan = ["amethyst/vulkan"]

If you are on Windows or Linux, you will have to set that default to vulkan:

# Cargo.toml

[features]
default = ["vulkan"]
# ...

Running the game

Note: This game requires Rust nightly

# Clone the repo
git clone https://github.com/amethyst/space-menace.git
cd space-menace

# Set the toolchain to nightly for the current directory
rustup override set nightly

# Run
cargo run —release

Game controls

Use the left arrow key and right arrow key to move the player and the up arrow key to jump. Use spacebar to fire.

Features:

  • [x] Basic map using Tiled
  • [x] Animation using prefabs (Main character run, jump, shoot, etc.)
  • [x] Basic 2D physics (gravity, velocity, collision detection, etc.)
  • [x] Lazy spawning of entities
  • [x] Parallax
  • [ ] One complete level (enemies, full map, etc.)
  • [ ] Start, Pause and Game Over screens
  • [ ] Game mechanics / rules (points, lives, etc.)
  • [ ] Audio
  • [ ] Consider nphysics integration (using specs-physics)
  • [ ] Documentation
  • [ ] Tests

More details about the features, roadmap and the game in general can be found here on Amethyst's discourse.

Contributions:

Any and all kinds of contributions are more than welcome, whether it be feature implementation, bug fix, art assets creation, documentation, issue logging or simply ideas, suggestions and feedback.

If you are new to Rust or Game Development and are looking for issues to get started, I have added few good first issues.

In case you have any doubts or have an idea / feedback that you want to discuss, feel free to log an issue or drop me a message on Discord. You can find me on the Amethyst channel.

Credits / Thanks:

  • The awesome Amethyst community for helping me out whenever I got stuck. Special thanks to Ben, doomy, JoshMcguigan, Alve, azriel, Dispersia, Moxinilian, torkleyy, Jojolepro, kel, jaynus, Frizi.
  • ansimuz for all the cool assets used in this game.
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].