Skip to content

Village milestone

No due date 94% complete

A single village should be able to be simulated. People are assigned random names, can use goods to accomplish tasks such as constructing a building, farming, or herding animals.

People should be smart enough to plow, take care of, and harvest fields as well as knowing when to increase the amount of fields they have. They can also construct buildings to s…

A single village should be able to be simulated. People are assigned random names, can use goods to accomplish tasks such as constructing a building, farming, or herding animals.

People should be smart enough to plow, take care of, and harvest fields as well as knowing when to increase the amount of fields they have. They can also construct buildings to store goods, to live in or to keep their animals inside. Basic functions such as people dying, marrying, and eating should be implemented at appropriate rates. The amount of food people eat should also be tracked to check if they are malnourished and apply appropriate effects. Each person should have a certain number of actions that they can perform per day to complete actions like plowing, building, etc. A family also needs to be capable of feeding their animals and if they are starving they should slaughter some of the animals they have to survive.

Animals should behave in a similar way to people. In the way that they need to be fed each day, can die and give birth. Animals should also be able to have actions performed on them such as milking them or shearing sheep that can only be done one every certain amount of months. Animals also should have the ability to be slaughtered and give meat and animal specific things such as leather or horns.

Goods should be able to have different purposes like being eaten and providing sustenance, be used as tools that are given context to what they can be used for, or being used to produce other goods. Occupations will allow people to work faster on specific tasks.

Behavior trees should dictate how people act. All behavior trees should be exposed to Lua to enable new trees to be created and to make quick changes. The amount of goods a family starts off with should also be declared in Lua in two ways. The first declares a certain percentage of a village to run a Lua function to determine their goods, the second way declares a certain amount of people in the village that will use a certain Lua function, or a percentage only if the village is of a certain size.

A basic GUI system should be implemented that is capable of displaying text, having widgets being selectable, and having containers that dictate how its children are positioned. These basic widgets should all be exposed to Lua.

Other basic features such as logging, hash tables, linked lists, should also be implemented.

Loading