https://github.com/aleokdev/platformer-test
Platformer template
https://github.com/aleokdev/platformer-test
2d-game game rust template
Last synced: about 1 year ago
JSON representation
Platformer template
- Host: GitHub
- URL: https://github.com/aleokdev/platformer-test
- Owner: aleokdev
- Created: 2022-03-02T11:17:56.000Z (about 4 years ago)
- Default Branch: main
- Last Pushed: 2022-05-14T19:11:52.000Z (almost 4 years ago)
- Last Synced: 2025-01-23T22:24:30.315Z (about 1 year ago)
- Topics: 2d-game, game, rust, template
- Language: Rust
- Homepage:
- Size: 898 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Platformer test

A platformer template made in Rust, using `bevy` as its engine and `ldtk_rust` for loading levels.
May evolve into a game at some point; This repo is going to serve as the base for one of my future projects.
## Controls
Left & Right arrow keys OR left controller stick: Move left/right respectively
Space OR south action button: Jump (Hold to jump higher)
You can rebind these controls by modifying `assets/input.ron`.
You can press Ctrl+I to bring up the player properties window.
If the "jumps available" setting is over 1, you can press the jump button in midair to jump again.
If the "wall sliding" setting is enabled, you can slide down walls simply by touching them once. You
can stop sliding by moving on the opposite direction.
If the "wall jumping" setting is enabled, press the jump button while sliding down a wall to perform
a walljump.
## Current / TODO Mechanics
### Level
- [x] Load a single level
- [x] Display multiple tile layers
- [x] Load multiple levels (rooms) from a ldtk project
- [x] Navigation around multiple rooms
- [x] Camera movement within a single room
- [ ] Minimap / Display map within pause menu
### Controls
- [x] Basic player movement
- [x] Control rebinding
- [x] Gamepad support
### Mechanics
- [x] Simple AABB collision
- [x] Multijump
- [x] Sliding down walls
- [x] Walljump
- [x] One-Way Platforms
- [ ] Sticking to walls
- [ ] Gravity switching
### Graphics
- [ ] Player animation (Walking, jumping, etc)
- [ ] Tile animation
- [ ] Support for externally defined (non-hardcoded) animation data
### Enemies
- [ ] Basic enemy AI (Walking left-right until collision)
- [ ] Player/enemy health & damage system
- [ ] Basic proyectile weapons
### Extra
- [ ] Simple pause menu
- [ ] Scripting support
- [ ] Cutscene utils