outfly/README.md

143 lines
4.6 KiB
Markdown
Raw Normal View History

2024-03-22 14:41:10 +00:00
# OutFly
![screenshot](doc/images/screenshot1.jpg)
2024-03-22 15:06:28 +00:00
OutFly is an atmospheric, open world, 100% hard sci-fi 3D game that throws you into the [main ring](https://en.wikipedia.org/wiki/Rings_of_Jupiter#Main_ring) of Jupiter, hundreds of years into the future.
2024-03-22 15:29:37 +00:00
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](https://www.rust-lang.org) with the [Bevy game engine](https://bevyengine.org)
- Status: Early access, not much content
2024-03-22 15:06:28 +00:00
2024-03-22 15:15:43 +00:00
![screenshot](doc/images/screenshot2.jpg)
2024-03-22 15:38:31 +00:00
# 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
2024-03-30 18:14:59 +00:00
- r: rotate (hold r while moving the mouse)
- f: toggle 3rd person view
2024-03-22 15:38:31 +00:00
- 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
2024-03-22 15:06:28 +00:00
# System Requirements
- Screen, keyboard
2024-03-30 13:25:48 +00:00
- Operating System: Linux, Windows, MacOS
- Ideally, a graphics card with vulkan support
2024-03-22 15:06:28 +00:00
2024-03-30 13:25:48 +00:00
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.
2024-03-22 15:06:28 +00:00
# Running OutFly
1. Download a release for your operating system at https://codeberg.org/hut/outfly/releases
2. On Linux, you need the dependency packages: `glibc libcap gcc-libs alsa-lib systemd-libs`. These are the names for ArchLinux, they may differ on your distribution.
3. Unpack and run the outfly/outfly.exe executable.
1. On Windows, just double-click on outfly.exe
2. On Linux, open the console and type this:
```
cd [path-to-extracted-outfly-directory]
./outfly
```
# Building
2024-03-17 15:09:40 +00:00
If there is no package for the version or operating system that you need, or if you wish to tinker on the game, you can also build outfly yourself.
For development, it's recommended to use `--features dev` to enable dynamic linking for faster compile times, e.g. like this:
2024-03-17 15:09:40 +00:00
```
cargo [run|build] --features dev
2024-03-17 15:09:40 +00:00
```
## On Linux
Install the build dependencies. On ArchLinux, it's the following, though you can replace `rust` with `rustup`:
2024-03-17 15:09:40 +00:00
```
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
2024-03-17 15:09:40 +00:00
```
2024-03-18 01:24:52 +00:00
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
2024-03-30 12:52:15 +00:00
## 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
```
2024-03-18 01:24:52 +00:00
# Credits
- https://pixabay.com/sound-effects/typosonic-typing-192811
- https://pixabay.com/sound-effects/click-button-140881
2024-03-19 22:32:12 +00:00
- https://pixabay.com/sound-effects/data-transmission-sound-from-14664-72309
- https://pixabay.com/sound-effects/thrusters-loopwav-14699
2024-03-28 13:10:10 +00:00
- https://pixabay.com/sound-effects/rocket-loop-99748
- https://pixabay.com/sound-effects/350cc-bike-firing-32391
2024-03-29 03:48:48 +00:00
- https://pixabay.com/sound-effects/electricity-6353
- https://pixabay.com/sound-effects/ducati-696-monster-33217
- https://pixabay.com/sound-effects/high-energy-humming-195612
2024-03-29 15:58:42 +00:00
- https://pixabay.com/sound-effects/box-crash-106687
2024-03-31 00:07:35 +00:00
- https://pixabay.com/sound-effects/electric-fan-motor-blades-removed-13169
- Music: [Dead Space Style Ambient Music](https://pixabay.com/music/ambient-dead-space-style-ambient-music-184793) by [Sharvarian](https://www.fiverr.com/sharvarian)
2024-03-22 15:29:37 +00:00
- Star chart based on the [HYG Stellar database](https://github.com/astronexus/HYG-Database)
2024-03-22 13:35:07 +00:00
- Custom font Yupiter is based on:
- Noto Sans Symbols 2, Copyright 2022 The Noto Project Authors (https://github.com/notofonts/symbols)
- ZCOOL QingKe HuangYou, Copyright 2018 The ZCOOL QingKe HuangYou Project Authors (https://www.github.com/googlefonts/zcool-qingke-huangyou)
- Noto Sans SC, Copyright 2014-2021 Adobe (http://www.adobe.com/), with Reserved Font Name 'Source'.