Fish Fight
Introduction
Fish Fight is a tactical 2D shooter, played by up to 4 players online or on a shared screen. Aim either left or right; the rest is up to clever movement and positioning in this fish-on-fish brawler! For more information about our origin story (Duck Game et.al.) and big-picture plans, see our design document.
Key Features (WIP)
- 2 to 4 players in either Local Multiplayer or Online Play
- Easy to pick up, emphasizing strategy over twitch reaction
- Customize characters with hats, saved to your cross-platform profile
- Create & explore user-made weapons, levels, audio and other scripted extensions
- Smart level creation tools
- Tournaments & matchmaking built in
Status
The game is fully playable:
https://twitter.com/fishfightgame/status/1424084016467226624
Community
Contributing
Anyone involved in the Fish Fight community must follow our code of conduct.
If you'd like to make something for Fish Fight, check out our help-wanted issues or just ask us on Discord. We'll soon post an updated roadmap for the next month or two of work ahead.
Before committing and opening a PR, please run the following commands and follow their instructions:
cargo clippy -- -W clippy::correctness -D warnings
cargo fmt
Learning Materials
- https://macroquad.rs/tutorials/fish-tutorial/
- https://not-fl3.github.io/platformer-book/intro.html
- https://sokoban.iolivia.me/ (we do not use an ECS)
- https://pragprog.com/titles/hwrust/hands-on-rust/
Install & play
- Install Rust with Rustup.rs
cargo run
We'll start distributing executables shortly!
Default key bindings
Keyboard left:
- movement: arrow keys
↑
,←
,↓
,→
- pick/drop:
K
- attack:
L
- toggle AI:
0
Keyboard right:
- movement:
W
,A
,S
,D
(&Space
for jump) - pick/drop:
C
- attack:
V
&LeftCtrl
- toogle AI:
1
Gamepad:
- movement: direction axis
- pick/drop:
X
- attack:
B
- jump:
A
- slide:
Down
+Y
Credits
- Input Icons: Kadith's Icons by Kadith