ECSpanse - an Entity Component System framework for Elixir

Thanks!
So yes. The map editor part stores the maps in Postgres. But I export them to JSON files to load in the game. They are loaded into Ecspanse and stored globally so multiple games can use them and not require separate copies.

And yes the map is BablylonJS and LiveView for the rest. I’m trying to keep the BabylonJs stuff as simple as possible for the game. It just renders the maps, knows how to draw units, and reports on what items get clicked on.

LiveView handles the UI state, and sends orders into Ecspanse, and when I get notifications from the Projections I just push the unit data into BabylonJS through a LiveView hook.

I will keep you in the loop for sure. Just couple of more features and I will work on getting it deployed… same old story lol. Thanks for the library and support!

4 Likes