For the last week or so I've been working on a small farming game that could potentially be turned into a viable game. Kaan and I have been discussing and developing a few different mechanics and currently we're looking at expanding the scope of this small experiment into a full fledged game!
Current progress
To start with I was just messing around with ChatGPT and looking for something I could make. It suggested a small farming game with various crops and mechanics. This is something I've worked on in the past as far back as making a 2d farming game with monogame in 2018. I got to work on this and created a simple project to start with and modelled some simplistic starter models using Blender and also grabbed a few environment models from the unity store. I then rigged my player model using mixamo and grabbed a few animations. The next step was one I always dread for how repetitive and often troublesome it can be - a player controller script. This time however I gave the reigns to ChatGPT and it spit out an acceptable controller script (which i edited to fix some issues it had). This meant I was able to get into mechanics right away.
Grass cutting
The first real mechanic I looked at was cutting grass; this is something I had made before for a mechanic test a few years ago and so setting up the lawn mower with the particle effects was relatively pain free. The next step was a new one which was to not only remove grass when the mower went over the patches but to make the grass grow back over time (currently in the video its sped up for testing but would happen gradually in the game). This was achieved by affecting the scale size over time and resetting the scale to a small amount when the mower goes over the grass. Overall this mechanic was fun to make.
Lawn mower
Related to the grass mechanics but seperate was the lawn mower. Whilst visually this doesn't look like much the code for it is fairly in depth. For starters when grabbing the mower the players movement script will turn off whilst a nav mesh agent turns on and moves to the correct position and direction to grab the handles. The lawn mower script then activates an IK method on the player and sets the position for the hands to go and finally attaches the lawn mower to the hands of the player. This was quite frustrating at times to get right but the result definitely paid off!
Path finding
The latest mechanic that still needs some level of polish is the path finding. As the name suggests the player can hit a button and it will lead them to their current objective. It works by creating an empty object with a nav agent that then moves to the target dropping breadcrumbs along the way. The breadcrumbs then individually turn off when the player is closer to their target than the breadcrumb is or after x amount of time has passed. This mechanic will work great in future when the levels get more built up and has more polish to it.
What next
Whilst we don't have an entire game mapped out yet; we for sure know we want to mix the farming elements with a puzzle styled game. One interesting story element we have came up with is the player being trapped and having to use the farming as a method of both survival and completing puzzles. There's still a long way to go and expand before this becomes anything close to a full game - at the moment it is an idea that we're expanding slowly to ensure we make something great. Currently Kaan is working on an inventory system whilst I add planting seeds into the game and we should have more progress to give soon!