GET LUCKY
GMTK Game Jam 2022 [Roll of the Die]
48 Hours | July 2022
Summary
Get Lucky is a graphic novel dating sim where the player attempts to persuade Lady Luck to let you pay for dinner. I was one of nine developers and acted as one of the two programmers. This Game Jam was only 48 hours.
​
Working with one other programmer, we each developed half the systems for the game and worked together at the end to link the two halves together.
​
My primary accomplishment was the dialogue system. The structure was easy to implement without sacrificing functionality. In addition, I streamlined the dialogue pipeline that saved valuable time for the writing.
​
Out of 6,147 entries, Get Lucky was ranked #407 overall and #163 in presentation!
Dialogue State Diagram
-
Once the game loop was decided, I got to work and drew diagrams for the game.
-
Having these diagrams while implementing the system ensured that they'd worked the first time and maximized our development time.
-
This state diagram mapped out what goals were needed from the system and how player input would be handled.
-
This also doubled for planning out how the UI flow would work.

Click to view in a higher resolution
Dialogue Manager
-
Having a well thought out manager and data structure for the dialogue was essential to completing the game in time.
- DialogueOption contained the writing and reaction images options for Lady Luck.
- DialoguePool held DialogueOptions in groups and would retrieve options when requested. It automatically repopulated itself when empty as well!
- DialogueManager was the main driver for the system, deciding which pools to use and when.
Auto Dialogue Parsing
-
With such little time, I wanted to ensure our writers had could focus on writing and proof reading without worrying about engine implementation.
-
I created a tool that would take in dialogue that automatically broke the text into 'lines' which fit inside the dialogue box without cutting off words.
-
This allowed out writers to quickly import their writing into one spot without worry of the dialogue being too long for the system to handle. We estimated that it saved 8 hours of testing and bug fixing in a 48 hour project.
- As it was compartmentalized, it was easy to add functionality such as changing text color based on the character speaking.