Godot Game Dev – Weekend code sprint results

My (chronic) depression hit me quite hard this weekend, so I didn´t get the results I wanted. Luckily I have mental strategies to get work done, I just need to focus on the boring, tedious stuff (ironically), and wait with any coding that requires more focus. I´ll still check off the list I posted last thursday, for reference.

Finish inventory item system

  1. Give item to NPC NOT DONE
  2. Remove item from inventory NOT DONE
  3. Update inventory UI to reflect this NOT DONE
  4. Add to game data/update character dialogue (event system needs update) NOT DONE
  5. Give all NPCs an array (npcInventory?) containing items they carry. Can be used by event/dialogue system to determine current event/dialogue NOT DONE
  6. pop_inventory() needs to be run every time a change is done NOT DONE

Finish dynamic calendar

  1. add event icons (replace event ID) DONE
  2. Clicking event icons should expand and show more information NOT DONE

Start phone UI

  1. Setup rudimentary phone UI, which the usual homeicons DONE
  2. Functional icons that take you to contacts and a dummy internet browser PARTLY DONE
  3. Sending someone a message should close the phone_ui and play an animation of the message being sent NOT DONE

Start notifications system

  1. Should popup when a game event is run, or when receiving a text NOT DONE
  2. Notifications literally pop into view, growing from small to full size, while animating opacity until opaque NOT DONE
  3. If there is a notification in the queue already, it moves down, before the new notification is fully popped. I´d like a subtle “plup” sound NOT DONE

Have another go at the dialogue editor

  1. code traversing an existing dialogue tree visually NOT DONE
  2. select and load NPC/dialogue from the left menu NOT DONE
  3. create a new dialogue tree NOT DONE

Spice up the UI

  1. Add opacity tween to UI overlays, so that they slowly become opaque as they move up from below (maybe animate size as well). PARTLY DONE
  2. Animate talk/think-bubble, so that it looks less static (make more handdrawn looking?) NOT DONE
  3. Add close-buttons to all UI overlay windows. NOT DONE

Fix UI inconsistencies

  1. Some UI overlays seem to not set UI_blocking to true, allowing player to move/cursor to change NOT DONE

Add character animation

  1. make character level with floor DONE
  2. it´s only a placeholder mesh, but would like to see how the walkcycle looks animated (it´s also less boring to look at) NOT DONE

Code cleanup

The most boring part of planning, but important for future scaleability. There are bits of code written over the last couple of weeks that´s crude and messy (and duplicating functionality), and could be turned into reusable functions. Messy code is fine during prototyping, but it´s important to address this as early as possible, once the functionality works. DONE

Comment code

Inline comments help both me and others understand what I was really thinking when writing the code 😛 PARTLY DONE

On a first glance it would appear not much has been DONE, but I would argue that looks are deceiving, since some of the above bulletpoints take a lot more work than others.

The Phone UI overlay for one, took more time than I had anticipated, but now we have a homescreen with 6 app icons, of which one, the contacts app, is semi-working(loading contacts from dictionary and displays on screen), and another, the gallery app, is almost done.

The gallery app was the most work, due to me basically creating an imageviewer from scratch 😛 The code for reading images from a folder is dynamic, so you could theoretically delete an image from the app and the gallery will update to reflect this. I´ve also coded a paging system, so that you could (for now) have up to 6 pages with 6 pictures. Full size pictures are not supported yet.

I´ve also been working on the game settings menu, with a lot of inspiration from Ren´Py. What can I say, it´s just a good interface 😛

On top of that I added

  • an ambient background music player (just because)
  • scene transitions – when load_scene(), grab a screenshot, fill screen, and tween opacity down to 0
  • storing screenshots as save thumbs
  • a cute little effect when giving a rose to Ellie 🙂

As always, you can  follow my commits here.

Let´s hope that next weekend will be more productive, but more important than anything – at least one commit a day, no matter how small, as long as it adds some functionality or fixes bugs, is a step towards a finished game. Consistency is what will take this project to completion, eventually.

Have a good one,


Written by Ape

I always wanted to do something creative, but just never got around to doing more than drawing and write down ideas. This site is my way of finally doing something with those ideas.

Leave Comment

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.