a r b o r

A text-based, one-dimensional medieval simulation with a huge variety of items and possibilities.

“Arbor” is a text-based simulation game immersed in a medieval world. The game is designed around  tree-like hierarchical structure.

Every object in the game serves as a parent element containing smaller items

Player can freely explore large location elements like fortresses or meadows, which house smaller, interactable items such as swords or flowers.

Even these smaller objects, in turn, consist of subcomponents or materials.

To understand Arbor better, please watch the video below.

Interaction with Objects

A large portion of concrete nouns (tangible, physical items) in the English language are included as objects in the game.
There are around 15,000 objects organized into 13 main categories—such as artifacts, materials, location, plants, and animals—each further divided into 10-20 subcategories.
 

Some concrete nouns are excluded for practical reasons:
Organisms are limited to taxonomy kingdoms of animals and plants — no bacteria, Protozoa, Chromista or fungi.

The game also excludes most technology invented after the 19th century and modern materials like plastics.

Each object has properties like size, composition, and hardness, which affect the ways in which players can interact with them.

The game’s activities include holding, moving, and storing objects, as well as using them as weapons, food, or apparel. Players can also break them down or craft new ones using the right materials.

Modeling thousands of words into game objects was relatively straight forward using the WordNet dictionary.

WordNet is a lexical database that organizes words by their meanings and semantic relationships, like synonyms, hyponyms (specific terms), and meronyms (part-whole relationships). Words are grouped into “synsets,” which include definitions and usage examples, making it useful for understanding word relationships.

Arbor's size system

In Arbor, an object’s size is defined as the base-10 logarithm of its volume in cubic millimeters (mm³), calculated as if the object were compressed into a sphere.

For example, the size of a cat is 6.5, which is the logarithmic value of its volume when imagined as a sphere-shaped cat.

Using this system, smaller objects like a needle or a leaf have a size of 2. An apple or an axe is a size 5. A chair or a large dog is a 7. A small room or a whale would be a 10. A house is a 12, a town is 14, and so on..

Crafting

Crafting and processing objects from different materials happens in special workshops. For wood, logs are turned into lumber at lumbermills and then made into wooden objects at carpentry shops.

For metal, smelters and furnaces turn ore into metal bars, which are then shaped into metal objects at forges.
This system work for other industries like stone, clay, glass, textiles, alcohol, soap, meat, and more.

A simple object like an ax is made from two parts: a wooden handle and a metal blade.

More complex tools, like a cheese press machine, require more pieces such as a wooden frame, plates, levers, metal springs, and pivots.
Each part must first be built separately from the correct materials before being assembled into the final machine.

In cooking, different actions are performed at specific workshops, such as “Bake_Food” in a bakery, “Cook_Dairy_Product” at a creamery, or general “Cook_Dish” in a kitchen, where players combine various ingredients to create different dishes.

From around 2,000 food items, some are simple, while others are more complex, like gazpacho soup, which is made from tomatoes, cucumbers, peppers, bread, vinegar, and olive oil.

Arbor's industry map

Industry map show most of the crafting industries

Animals

In the game, we only have vertebrate animals:
  mammals, fish, birds, reptiles, and amphibians.
We’ve excluded smaller invertebrates like arthropods because their vast diversity makes them hard to model as game objects.
This way, we can include around 2,400 different species in the game.

Animals act and move based on events that occur every second. They can only do one action at a time, chosen by the following priority order: Flee, Eat, Assault, Chase, Sleep, and Stroll.

In the game, animal actions are determined by a Predator-Prey system based on diet and size.
Bigger carnivores hunt smaller omnivores and herbivores, while omnivores can hunt small herbivores or eat plants and fruits.

An animal’s choice to hunt depends on factors like fitness, hunger, and tiredness.

The anatomical structure has a tree-like hierarchy, where major components (like head, thorax, and limbs) contain smaller elements, such as organs.

For instance, the mammalian head includes the brain, which holds sub-parts like the limbic lobe, surrounded by layers like the dura mater, muscle, and skin.

The game lets players explore hundreds of parts, from the femur bone in the leg to the vitreous humor that fills the sclera in the eye.

Representing the anatomy of all 2,400 species is feasible because anatomical structures are mostly consistent within each animal class (like mammals or birds).
Within each order (e.g., Carnivora), species such as cats and bears have almost identical anatomies, differing mainly in size and minor features like dental formulas.

To manage these variations, we use 244 anatomy templates across animal orders and some suborders.

Animals have two key metrics—vitality and fitness—that influence health, behavior, strength, and mobility.

Vitality reflects overall health and is affected by factors like blood loss, organ damage, starvation, and suffocation.

Fitness, impacted by nerve, muscle, and bone damage, along with fatigue and hunger, influences strength, mobility, and combat ability.

Failure of vital organs, such as the heart, cervical vertebrae, or brain, leads to immediate death.

Plants

 

The game features a large plant library with around 4,000 species, divided into the categories: aquatic plants, ferns, succulents, herbs, vines, trees, and shrubs.

Each plant type is generated from a set of parameters stored in a single row of a dedicated dataframe.

These parameters include details such as the number of branches, twigs, trunks, and appendages like leaves, flowers, roots, and fruits, as well as the proportions of these parts relative to the plant’s base size.

Some plants have unique traits, and different parts can be used to make fibers, oil, resin, tannins, dyes, and more.

For example, light-brown dye comes from butternut walnut bark, and raffia fibers come from raffia palm leaves.

Some fruits are edible, while others are poisonous.

Project’s Purpose

The ultimate goal of this project is not to create game for humans to play, but to train AI through a life simulation that is rich in complexity but easy to compute, with the hope of helping AI understand human behavior on a deeper level.