🌱 Journey of finishing what was meant to be done in 2 weeks ✨- Version 0.1


 πŸ‘‰ View Blog Post in Notion πŸ‘ˆ

Final

It took me a couple more hours to bring the game in a state I can leave it at.

With this at the finish line for me for now.

Here is all the messy code I created to build this πŸ˜„:

https://github.com/KANAjetzt/GardenRescue

And here you go to the game page:

🌱 Garden Rescue

Thinks I added

βœ… Sound Effects βœ… Particle Effects βœ… Music βœ… Ambient Sounds βœ… One Animation βœ… One Light βœ… Save / Load System βœ… Pause Menu βœ… Main Menu βœ… Settings Menu βœ… Ropes on the Main Menu πŸ˜…

Thinks I didn’t do

❎ Added no new system ( plant health / watering etc. ) ❎ Didn’t rework the mouse interaction ( clicking like a maniac is still the most efficient ) ❎ Added no customers ❎ Added no decorations


And all of this

Thinks I learned

πŸ’‘ Use Resources!

I’m glad I decided to implement the save games. It was a massive pain but I learned so much. I revamped most of my code after learning about resources and how to create and use them.

This is the Video I started with. At the end I had:

  1. game_store to save all global game related data i want to save
  2. plant_store all the plants there state and location
  3. invetory_shack
  4. inventory_store

I had a ton of bugs after loading the game:


Fix Inventory's not loading correctly

  • There are a lot more of this todos πŸ˜„

Creating Sound Is Hard

I didn’t think it will be easy so I was mentally prepared to struggle a lot πŸ˜…

Music

The music part by far the worst - In the future I need some one to do this for me πŸ‘€

I used this, as a starting point:

SFX


I enjoyed creating these a lot more πŸ˜€ I used this free short course to get me somewhat ready:

Blipsounds

How do create a β€œrope”


  • I used the tutorial on top to create most of it and then struggled for a howl day to put it on the title sign πŸ˜…

  • Thats what I ended up with:


    Added 2 Pin Joins to the TitleBoard

    func _ready(): var rope_l = Rope.instance() var rope_r = Rope.instance()  # Connect the joins to the last RopePiece ropes.add_child(rope_l) rope_l.rope_end_joint = jl rope_l.get_node("RopeEndPiece").queue_free() rope_l.spawn_rope(rope_start_l.position, jl.position)  ropes.add_child(rope_r) rope_r.rope_end_joint = jr rope_r.get_node("RopeEndPiece").queue_free() rope_r.spawn_rope(rope_start_r.position, jr.position)  
  • If someone can help make it more rope and less bouncy, it would be much appreciated πŸ˜€

Enhance the MainMenu

The godot input flow

  • I ignored the issue of inputs going through the buildings and interacting with the ground behind them until the last day πŸ˜„

  • On the search for a solution I found this handy chart:


    https://gdscript.com/solutions/godot-event-handling/

  • Because the Buildings are Area2Ds with collision shapes the input gets handled after everyting else, even the Unhandled Input on the Plant / Ground Layer.

  • So after trying to bend this to my will, I ended up just putting some gravel behind the buildings πŸ˜„

  • That’s the easiest and cleanest solution I can think off πŸ˜…

Thinks I try to do next time

At the end

Feedback on the buy and sell prices and everything else would be much appreciated πŸ™‚

Thanks a lot for organizing this great game jam and I’m looking forward to the winter edition πŸ‘

Cheers


Files

WebGL.zip Play in browser
Jul 17, 2022
windows.zip 14 MB
Jul 18, 2022
Mac.zip 30 MB
Jul 18, 2022
Linux.zip 17 MB
Jul 18, 2022

Get 🌱 Garden Rescue

Leave a comment

Log in with itch.io to leave a comment.