A wholesome 3D space game in the rings of Jupiter https://codeberg.org/hut/outfly
Find a file
2024-03-31 04:10:54 +02:00
assets add reaction wheel sound 2024-03-31 01:35:37 +01:00
doc add another screenshot to readme 2024-03-22 16:25:40 +01:00
src add "light" command, add cozy illumination to pizza place 2024-03-31 04:10:54 +02:00
.gitignore ignore "extra" directory 2024-03-22 11:45:57 +01:00
Cargo.lock bump bevy version to 0.13.1 2024-03-30 19:14:01 +01:00
Cargo.toml add "collider mesh" command, generating the collider from the scene 2024-03-31 01:35:45 +01:00
README.md add reaction wheel sound 2024-03-31 01:35:37 +01:00

OutFly

screenshot

OutFly is an atmospheric, open world, 100% hard sci-fi 3D game that throws you into the main ring of Jupiter, hundreds of years into the future.

Key features:

  • Open source forever
  • Open world, realistic hard sci-fi, atmospheric, deadly
  • Accurate star chart. Can you spot the constellations?
  • Cross platform (verified on Linux & Windows)
  • Written in Rust with the Bevy game engine
  • Status: Early access, not much content

screenshot

Key Bindings

  • Space: stop moving
  • AWSD: accelerate
  • Shift and Ctrl: accelerate up and down
  • e: open communication channel to nearby astronauts
  • t: toggle music (NOTE: currently no music is included in the git repo)
  • m: mute sound effects
  • q: enter/exit vehicle
  • r: rotate (hold r while moving the mouse)
  • f: toggle 3rd person view
  • TAB: toggle augmented reality overlay (HUD, low-light amplifier)

Extra key bindings for mouseless playing:

  • j: look left
  • i: look up
  • k: look down
  • l: look right
  • u: rotate left
  • o: rotate right

System Requirements

  • Screen, keyboard
  • Operating System: Linux, Windows, MacOS
  • Ideally, a graphics card with vulkan support

If your GPU does not support vulkan, try rendering with OpenGL by setting the environment variable WGPU_BACKEND to gl, like:

WGPU_BACKEND=gl ./outfly
or
WGPU_BACKEND=gl cargo run

However, this may result in poor performance and visual glitches.

Building

General notes

For development, it's recommended to use --features dev to enable dynamic linking, e.g. like this:

cargo [run|build] --features dev

On Linux

To run the pre-compiled version on Arch Linux, you need some basic libs:

pacman -S glibc libcap gcc-libs alsa-lib systemd-libs

To build the game on Arch Linux yourself, you need these, although you can replace rust with rustup:

pacman -S rust libx11 pkgconf alsa-lib

Then run the following commands, replacing [URL] with the clone URL of the git repository:

git clone [URL]
cd outfly
cargo run --release

NOTE: Audio is muted by default when run through cargo run, unless you add --release

Building for Windows on Linux

rustup target add x86_64-pc-windows-gnu
pacman -S mingw-w64-toolchain  # on ArchLinux. other distros have their equivalent package
cargo build --target=x86_64-pc-windows-gnu --release

More information here: https://bevy-cheatbook.github.io/setup/cross/linux-windows.html

Building on Mac OS

Install homebrew, and then get the following dependencies:

brew install pkg-config molten-vk rustup
rustup-init

Download, compile and run the game:

git clone [URL]
cd outfly
cargo run --release

Credits