Return to Monkey Island came out today! I worked on it as a programmer from June 2021 to June 2022 to take a break from Mr. Sun’s Hatbox. It was a really cool opportunity! I learned a great deal from my time there and I worked with a lot of amazing people. Most of my work was in programming overarching gameplay systems, so I’ve had my hands on basically every corner of the game. Below is a list of everything I worked on, I’m keeping things very general so there aren’t any spoilers or specifics about what happens in the game.
Hint System
I wrote and implemented almost all of the hints in the game. The hints are all in a huge dialogue tree, which I wrote in the engine’s narrative scripting language, called Yack. They dynamically react to the player’s game state and try to determine the most relevant information to display. Yack is closely integrated with the engine’s gameplay scripting language, called Dinky, which made it very easy to access in-game variables related to the player’s progress.
Gamepad Code
I did most of the scripting for the gamepad controls. Every interface or interaction in the game that required different behavior between mouse and controller needed custom code. Player movement and object selection were a big part of it. Internally it was called Direct Drive, since it allows the player to control Guybrush directly with the left stick (as opposed to controlling a virtual mouse, which most mouse-based point & click adventure games seem to do).
Tutorials
I wrote and programmed all of the tutorial prompts in the game. Additionally, I did most of the programming work in the main tutorial area (internally called the Playground). You’ll probably skim or skip through these parts, oh well.
UI Programming
I wrote a lot of code for the game’s UI, particularly the options screen. There is no visual editor for the UI, it’s all generated and positioned manually in code.
Trivia Book
One of my first tasks on the project was to implement the Trivia Book, an in-game collectibles system. Throughout the game you’ll find Trivia Cards scattered around. If you pick them up, they’ll get added to a book in your inventory, where you can look at them and answer trivia questions about Monkey Island and Lucasfilm Games.
Remunging Art & Animation
A lot of my time working on the game was bringing in assets from the artists and animators into various areas of the game. The artists and animators did not have access to the engine or git repository, so any changes they made would have to go through a programmer to bring it into the game. The word “remunge” was thrown around a lot, which basically meant a programmer running a python script to convert PSD’s or animations into files that the engine could use. Then, we’d manually place each asset in-game through an editor interface.
Puzzle Programming
I programmed the last major chain of puzzles in the game. I also implemented a few of the Hard Mode variations of a few puzzles.
Cutscene Programming
I scripted most of the interstitial cutscenes in the second half of the game (cutscenes introduced with ‘Meanwhile…’ text).