Modding

Modders should have access to the same API as the developers of the game and the Bevy engine. This would open up access to modifying and extending any element of the game by defining additional Bevy plugins, but the drawback would be the requirement to use Rust and the potential execution of unsafe code.

We can mitigate this to some extent by doing it in the spirit of Rust. Mods will be in the form of source code that will be compiled by the Rust compiler included with the game. This would make the problems with ABI differences disappear because the architecture and compiler versions would be identical.

Additional security and accessibility should be provided by a public mod repository used by the mod manager, where each mod would have to pass a review process. Advanced users should be able to switch to a different repository or even load mods directly from filesysyem.