Basic Concepts - Mundus: My first shot at game development

Article Source || GitLab Discussion

Due for rework


Created: 21 May 2020 || Edited: 25 November 2020

<< || < User Interface


Even though the game is quite unfinished, there are still a fair bit of mechanics I’ve developed.

Contents

  1. Tiles
  2. Layers and superlayers
  3. Inventory
  4. Crafting
  5. Event logs

Tiles

🔗

The in game world (map) is composed of squares, called tiles. Everything is a type of tile. There are two main categories of tiles: items and mobs. Mobs (mobile object for short) are the creatures in the game, while items are everything else, from the tools, to the trees.

There is only one type of mob tile and that is MobTiles. All mobs, with the exception of the player, have the same functionality and properties:

Items, however, are divided into:

Layers and superlayers

🔗

The in game world (map) is composed of superlayers. Superlayers represent each elevation level in the world. Conceptually, there are in total 5 superlayers: Space, Sky, Land, Underground and ???, although only Sky, Land and Underground are implemented.

Each superlayer is composed of 3 layers: Structure, Mob and Ground. Each one of them contains a specific type of tiles, meaning structure tiles are only stored in “structure” layer, ground tiles only in “ground” layer and mob tiles only in “mob” layer. Even though, they are different layers, there are some rules for the interaction between them:

Inventory

🔗

Each mob can store certain amount of item tiles. That is done in it’s inventory. The inventory is comprised of 4 parts:

Crafting

🔗

Creating new item tiles is done through crafting. Each craftable item requires one to five different materials in different quantities. The item tiles must be inside the “items” part of your inventory.

Event logs

🔗

Certain actions you do in the game are stored in memory as messages (logs). They are also used to give you information that you couldn’t get otherwise, for example, there is a log when you can’t climb up a superlayer because a mob is blocking the way, or when you damage/kill a structure or mob.

^