Categories
Game Dev Unity

Woodland Worth

Play It Here

Woodland Worth is another game I designed & programmed within Unity with my friend, Tahnee, for an assessment. Our artist, Savi, handled the look.
Our task was to mash together 2 popular styles of games with 3 themes mashed in.

Themes

  • Insurance
  • Trees
  • Chivalry

Mash-up

We chose a 2D Farming Sim/Tower Defence/Survival game with the goal of growing plants on a farm to give you the “motivation” and “zest for life” (i.e chivalry) to yell at pesky/clumsy insurance brokers who come to assess your house for insurance claims (damaging the building in the process) to leave you alone so you can peacefully tend your garden and live in nature.

Farming aspect
You must plant seeds and grow them into plants to regain “Chivalry” or repair your base.

Tower Defence
you must defend your base from waves of increasingly difficult assaults. Using your new-found knowledge of the land, instantly grow trees to impede, damage and put your assailants to sleep.

Survival
The map is open for exploration between waves, find resources to help you farm, heal and survive.


Farming

The farming system groundwork was laid by my teammate and was iterated upon by myself. We had 3 weeks to complete the project so we kept it pretty light.
Players, as long as they had seeds, could click on the land plots to plant seeds.
Left click for a Chivalry (stamina) replenishing plant.
Right click for a Health replenishing plant.

Stages of Health plant (Left), stages of Chivalry plant (Right)

Farming served as a form of stat replenishment for players, allowing them to survive longer.
When players ran out of Chivalry (stamina) they could no longer shout (attack), this gave players very high incentive to keep farming!

The plants were on a 4 stage cycle over 12 second and could be harvested at different stages for different stat regen amounts.

Seeds -> sprout: 4 seconds
Sprout -> sApling: 4 seconds
sapling -> grown: 4 seconds

We modelled the growth off the following chart found on an interesting blog about planting seeds, the times were arbitrary to better suit gameplay balance;

Demonstration

For initial tests, we had every click change the sprite and add to the player stats;

Testing the farm mechanic

In our final iteration you can see the time it takes for the full plant to blossom;

Farming in all it’s glory

Tower Defence

The tower defence aspect was to protect your farm from the insurers!

Enemies – insurers

Enemy behaviour was rather simplistic, I made a navigation script for them to cast a ray in front of them to detect colliders, if there was an obstacle, they were to choose a random 45 degree direction to avoid the object.
The direction they chose was weighted to keep them turning in the same direction to avoid complete randomness.

Enemies would either track towards the player or the base, to tell you about their latest policies (draining your energy); or, to assess the property for the best insurance to offer (damaging the base in the process).

Enemies avoid obstacles to seek the base
final look

Throughout development, other than the visuals, enemy behaviour was not iterated upon much. The key difference was we decided instead of have the insurers drop dead on zero health (this was very macabre), we had their behaviour set to a fleeing state based on the opposite direction of the player (this is demonstrated below in the attack section videos).

Player repertoire

The primary focus was on getting the insurers to leave.
To achieve this there were two things the player could do;

  • Shout (attack)
  • Place defences
Shout – Attack

Shouting was the players basic attack, this spent Chivalry (stamina) points every click.
This worked by casting a small sphere around the player to check if enemy objects were within range to damage them. it would stun them temporarily and had a slight knockback effect, so as to feel a bit better for the player.

Initial tests of player attack (no knockback)
Final player attack w/ knock back & visuals
Defence placement

Keeping with the themes of the project, there were three defences (in the form of trees) players could place down;

  • Damaging Defence (attacking tree)
  • Slowing Effect Defence (sleep spore tree)
  • Barrier Defence (barrier tree)

The attack tree would periodically cast a damaging sphere on passing enemies;
The sleep tree would constantly emit a slowing spore which would slow enemies dramatically, until they could clear the area and shake off the sleepiness;
The barrier tree would serve as an obstacle the enemies must circumvent.

Defences in action
Attack Tree – on enemies
Sleep Tree – on enemies
Barrier Tree – on enemies

Survival & The Rest

In between enemy waves, players could explore the map to find resources (health pickups & seeds) to help them farm and survive.
Resources would randomly spawn at pre-defined locations based on whether they were seeds or health.
Seeds would spawn mostly near trees.
Health would spawn in restful areas or near supplies.

The rest

Sound design, UI, balancing, particle systems, art style & look were all a collaborative effort.
We were happy with our efforts and pleased with the outcome! Have a look at some gameplay as a whole;

If you want to try it out yourself, check out our itch.io below;

https://university-assignments.itch.io/woodland-worth


Thanks for your time!