This week I finished implementation of wild animals and started with economy.

Animals

It is now possible to hunt down animals. The CombatSystem module provides components provides components that can be used to mark entities that can be hurt. Deer will spawn outside cities and can be killed now. They will drop meat when killed.

Rail Carts

While investigating #39 and #45, I came across a lot more networking issues in the module. For example these two:

I've drawn up an issue for the first GIF. The second one needs more investigating.

Back to the issues that I set out to solve. I could not replicate #39. There are other issues with carts, the order in which carts are clicked matters and causes unpredictable joint creation/breakage, but none causes the crash in #39. I had more luck pinpointing #45. Here is the function which mounts a player to the cart:

This works only at the host and not at other clients. Things work as expected in both cases till MovementMode.NONE is set. Only the Location.attachChild doesn't work at the client. Finding out why that happens is where I hit a dead end. Seeing I wasn't going anywhere with Rails, I decided to move on to Economy.

Economy

Currency and trading will be one of the greatest additions in the module. I have already implemented a basic currency resource and a player wallet to show it. Here is the wallet UI on the HUD to the left.

The Economy module will contain only a basic framework. Actual generation and handling will be orchestrated by the MetalRenegades module. Markets will need more systems, like the TutorialDynamicCities module, to handle currency.

PRs

WIP:
- Economy #10

Merged:
- DynamicCities #47
- CombatSystem #40
- WildAnimals #29
- MetalRenegades #12

To Do

  • Work with economy. Finish implementation of currency
  • Start with the trading UI