Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/ewpratten/ludum-dare-48
Deep Breath is a game build over a weekend for Ludum Dare 48, written in Rust, made with raylib.
https://github.com/ewpratten/ludum-dare-48
game game-jam ludum-dare ludum-dare-48 raylib raylib-rust rust
Last synced: about 2 months ago
JSON representation
Deep Breath is a game build over a weekend for Ludum Dare 48, written in Rust, made with raylib.
- Host: GitHub
- URL: https://github.com/ewpratten/ludum-dare-48
- Owner: ewpratten
- License: gpl-3.0
- Archived: true
- Created: 2021-04-05T16:14:14.000Z (over 3 years ago)
- Default Branch: master
- Last Pushed: 2021-04-27T00:29:19.000Z (over 3 years ago)
- Last Synced: 2024-09-21T15:02:16.003Z (about 2 months ago)
- Topics: game, game-jam, ludum-dare, ludum-dare-48, raylib, raylib-rust, rust
- Language: Rust
- Homepage: https://ldjam.com/events/ludum-dare/48/$236526
- Size: 19.3 MB
- Stars: 4
- Watchers: 5
- Forks: 1
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Deep Breath
[![Build](https://github.com/Ewpratten/ludum-dare-48/actions/workflows/build.yml/badge.svg)](https://github.com/Ewpratten/ludum-dare-48/actions/workflows/build.yml)
[![Bundle](https://github.com/Ewpratten/ludum-dare-48/actions/workflows/bundle.yml/badge.svg)](https://github.com/Ewpratten/ludum-dare-48/actions/workflows/bundle.yml)
[![Ludum Dare 48](https://img.shields.io/badge/Ludum%20Dare-48-orange)](https://ldjam.com/events/ludum-dare/48/$236526)
[![Rust 1.51](https://img.shields.io/badge/Rust-1.51-orange)](https://www.rust-lang.org/)
[![Made with Raylib](https://img.shields.io/badge/Made%20With-raylib-blue)](https://www.raylib.com/)**Deep Breath** is an exploration game where you explore an underwater cave in hopes of finding your lost transponder. Items and upgrades can be acquired along the way to assist your search.
This game was written in [Rust](https://www.rust-lang.org/), on top of [Rust bindings](https://github.com/deltaphc/raylib-rs) to the [`raylib`](https://github.com/raysan5/raylib) graphics library. For most of the team, this has been our first big Rust project.
This has been our second game produced for Ludum Dare. Check out the first [here](https://ldjam.com/events/ludum-dare/46/micromanaged-mike).
## Development Resources
Documentation:
- [Raylib C documentation](https://www.raylib.com/cheatsheet/cheatsheet.html)
- [Raylib C examples](https://www.raylib.com/examples.html)
- [Raylib Rust documentation](https://docs.rs/raylib/3.5.0/raylib/)
- [Raylib Rust examples](https://github.com/deltaphc/raylib-rs/tree/master/samples)
- ["Are We Game Yet?"](https://arewegameyet.rs/#ecosystem)
- [`cross` cross-compiler tool](https://github.com/rust-embedded/cross)Core libraries:
- [`raylib-rs`](https://github.com/deltaphc/raylib-rs)
- [`serde`](https://serde.rs/)
- [`serialstudio-rs`](https://github.com/Ewpratten/serialstudio-rs)Sound Samples:
- [JavierZumer](https://freesound.org/people/JavierZumer/sounds/257236/)
- [Noted451](https://freesound.org/people/Noted451/sounds/531015/)### VSCode Setup
If using VSCode, disable the `Rust` extension, and install everything in the **Workspace Recommendations** (You will see this list by searching `@recommended` in the extensions panel)
### Attaching to the in-game profiler
When the game is ran in its `dev` profile (using `cargo run`), the internal profiler is exposed on `127.0.0.1:8019`.
To connect to this, install [Serial Studio](https://www.alex-spataru.com/serial-studio.html) from [here](https://github.com/Serial-Studio/Serial-Studio/releases/tag/v1.0.20), and point it at `127.0.0.1:8019` by selecting the `auto` communication mode, then selecting `Network>TCP` for the connection type.
### Cross-compiling builds for other platforms
On linux, you can run `./bundle/create-releases.sh` to automatically cross-compile to all supported platforms as long as you have [`cross`](https://github.com/rust-embedded/cross) installed on your system. This is also done by the [Bundle CI task](https://github.com/Ewpratten/ludum-dare-48/actions/workflows/bundle.yml) every time code is pushed to `master`.