Fish Game will be fully moddable, enabling players to make and share custom maps, weapons and most importantly: hats! ๐Ÿ‘’

This level of moddability lends itself exceptionally well to open source practices with which we are exceedingly familiar. Hence our belief that we can level up what Duck Game currently is.

Learning & Modding

We've written an extensive tutorial on Making a multiplayer game in Rust with Nakama, which details from beginning to end how an earlier iteration of this game was made.

By building a scripting system based on WebAssembly, we aim to eventually support any WASM-friendly programming language. For our proof-of-concept, we'll be starting with TypeScript (AssemblyScript).

Technical Implementation

WASM as scripting sandbox

WASM as a Platform for Abstraction

https://tirania.org/blog/archive/2020/Mar-02.html

<aside> ๐Ÿ—ฃ๏ธ WebAssembly was popularized by the Web crowd, and it offers a number of capabilities that neither JavaScript, Application Domains (.NET) or other scripting languages solve very well for scripting applications.

Outside of the Web browser domain, WebAssembly checks all of the boxes in my book:

</aside>

Proofs of Concept

Wasm modding by alec-deason ยท Pull Request #7 ยท heroiclabs/fishgame-macroquad

https://gist.github.com/alec-deason/2a0c47e33a499a7a2b49c6a7b9819b6a

https://book.veloren.net/contributors/modders/writing-a-plugin.html

https://rr-docs.readthedocs.io/en/latest/technical-details.html

https://www.reddit.com/r/rust/comments/hgtuu5/announcement_wasiprocess_run_wasi_modules_as/