Exothium World Updates W30-W31

TL;DR
- POC live on https://world.exothium.com
- Diminishing returns proposal for ingame producer objects
- New Terrain Tiles
- New Visual Concepts for Crafting | Loot | Item Tooltip
- Rethought HUD
- SDK Structure proposal
- Action plan for the next weeks
POC is live
Exothium World is now live and we can taste some features already. You can try to create a dimension with different combinations of terrain parameters, and move your character to the adjacent tiles. In each movement you will encounter specific objects and animals depending on the biome you explored.

In this image, we can see that I found a special creature, a sandworm 😲 This kind of animal can only be caught on sandy terrain and they are rare.
Diminishing Returns
To give a more natural feeling to the game and to its objects and resources we will apply diminishing returns on resource productions.
Every object that can be used to extract resources will have a curve that will be used to know how much we can grab at one specific point in time.
This will be used to allow trees to re-grow more branches and bushes to re-grow more berries but to slow down at certain threshold.

New Terrain Tiles
Tiles with almost unnoticeable borders. With this new tileset, we can see a homogeneous ground between the terrains with green terrain. We choose this because it's more immersive if you don't see the tile borders.

Rethought HUD
We removed the bag and sleep button from HUD because we need more activities associated with the character like Eat and Sleep and it makes more sense to put it on a separated menu.

The focus here was to show only the important information, but because we don't show the hunger levels we will show visual notifications on top of the character's head to warn him.
By clicking on the character head, the CharacterMenuWindow will pop.
Character Menu Window
Of course, we need more ways to see hunger levels and to make our character sleep, and because of that, we create a Menu that encompasses every important health data plus inventory and crafting.
It will enable you to see everything about the character's health plus feed him by dragging food to his mouth or sending him to sleep on a click of a button.

We can now navigate to the craft section and inside it we have a new left panel that that shows all the recipes available to help the beginners understand what they can build or need to search for in order to make awesome new items.


Loot Window
Because looting is one of the most satisfying actions in a game we are starting to work on a nice window to show the items earned and a related image to that action.

Item Tooltip
We created a window where the player can see all the information about the items. After discussing the versions of the item tooltip, the team was undecided about what version to choose. So, we create a voting poll for the community to choose. The version that won is a horizontal tooltip that shows the item image inside the tooltip and its attributes.

Reworked TileActionWindow
This window is the one responsible to show a more detailed view of the objects or creatures that you want to interact with.
For example by clicking on a group of wolfs on the left panel we have to select one in particular on the middle panel to attack.
This view will encompass every attribute of the creature or object and will enable the player to take action. This actions can be hunting, harvesting, mining, chopping, or fishing.

Every action can have an auxiliary item to improve its success and even sleep can use items like bedroll and we have to show cooldowns and other pieces of information we thought that can be fruitful to create a component that can be used in every action possible. That component will be named ActionCard.
Action Card
We can use a ActionCard component in every possible in-game action and can have this data inside it:
- action name
- drops
- stamina cost
- item (to be used)
- cooldown (time wasted on that action)
- success rate %
SDK Structuring proposal

ExothiumWorldClient
This typescript library will be used to facilitate the interaction with the game server. Enabling developers to participate and create new:
- game interfaces
- plugins
- real-time dashboards
Using WebSockets we will provide state updates via broadcast and we will provide functions for every possible in-game action. The goal is to create a library that can be used to play the game or access game data easily. At the same time, we know that this codebase will be very similar to what we will need to have to interact with StarkNet, because of that we are structuring everything to be used in the same way.
ExothiumWorldStarkNet
This tool will enable developers to use our contracts to deploy new dimensions to be played on StarkNet. Create easily new game objects or even game mods. We will use Nile at the base for testing and deployments.
- Deploy Dimensions
- Create New Game Objects or Items
- Create Game mods


ExothiumWorldStarkNetClient
This typescript client will mirror all the functions that ExothiumWorldClient has but, instead of interacting with a server, it will interact with StarkNet via starknet.js and will be our chosen library used to interact with our contracts.
Decisions:
We will need a lobby or entrance scene that will encompass all the ongoing dimensions. That scene will be called MainMenu which will have a list of available dimensions and a button to create a new one.

If you want to create a dimension and play the flow will be:
- MainMenu
- DimensionCreator
- MainMenu (Select your dimension)
- CharacterCreator
- Play
If you only want to play in a dimension already created you simply go:
- MainMenu (Select your dimension)
- CharacterCreator
- Play
New Screens:
- MainMenu
- Dimension List
- Add Dimension Button
- CharacterCreator
- DimensionCreator
Action plan for the next weeks
Developer Group:
Phaser Components:
- Action Component Structure
- Item Component
- Item Tooltip
- Character Menu Component
- HUD Character Component
Design Group:
- Create Action Card
- Rework that screens:
- - Tile Info Plus Window + Tile Move Window
- Create Concepts:
- - MainMenu
- - DimensionCreator
- -- Dimension Lists
- -- Add Dimension
- -- CharacterCreator
- Update:
- - Wireframe
- - Seafile
- - Excel