This week, so far, I´ve continued work on the event system. It´s till not complete, but I would estimate that we are about 95% there. I still want to this system as solid as possible, so next step will be to create a test case to try it out with, as the default scene I´m using right now doesn´t include much of the planned functionality.
That will be addressed this weekend, before we finish up the event system.
Last couple of days thoughts have been focused on a dialogue and event editor. This is pretty much essential for any game dev, especially this game, since it´s so json-reliant.
In my last blog post I linked to this Google doc:
and that´s pretty much still valid, but is mostly about structure in the editor, so I started another Google doc contemplating the UX.
I already started coding the UI, and the current incarnation you can see below:
Looks like a work of modern art! but somethings are missing, right? I decided that before coding any advanced functionality, I should focus on the simplest possible functionality first. So – empty boxes 🙂 An explanation is in order, as this is a very specialized UI.
The central focus point is the big dialogue window in the (well, almost) center of the screen. All the boxes immediately around it are instances of the same dialogue window scene. The one on the left is the previous dialogue, middle is the current (active) dialogue, and to the right a dialogue window for every possible reply. Clicking on any of these will move it to the center, displacing the other windows. This is the most direct way of navigating the dialogue tree (I plan to also add the ability to zoom out for better overview, and then as soon as you click on any node/window the UI will automatically zoom in again)
To the left we have two columns, which will contain (left) dialogue files, and (right) dialogue branches within the file. They scroll with the mousewheel, and when you click on any of them it will take you to that part of the nodetree.
I´m pretty sure this will be awesome, once it´s done 🙂
Now, I have another long, creative weekend planned, and these are my preliminary game dev plans.
- Hook UI up to the Input map, so that you can open Game settings, Inventory, Phone, and Map UI overlays with a keypress (half-done already. Reason it´s not done is because I encountered a bug with the dialogue UI that needs to be addressed first. Maybe half an hours work)
- Create a test case scene to validate event system functionality, and determine what needs to be done/fixed.
- Create a custom mousepointer (which will change appearance depending on what you hover over)
- Create semi-functional inventory
- replace calendar placeholder art with a generated map, based on the gameEvents dictionary, with event notes, and possibly event icons.
- Finish navigation functionality in dialogue editor.
Sounds ambitious, doesn´t it? Well, it´s good to have goals, and there will always be unforseen complications, but this is what I strive to do, and if it doesn´t happen100% like that, it´s fine too 🙂
Have a good one,