
Prev | Project Journal Entries | Github | Next
It is the fall of 2025 and I am currently on a job search. I've spent the past 6 years of my career in the Salesforce ecosystem. Many of the skills I have built are general and transferrable to working with any technology. I built skills in leadership, people management, Agile project management, scalable design and architecture, mentorship, conflict resolution, project planning, thorough documentation, reusability patterns and more. But a large portion of my time and energy was also spent learning skills very specific to Salesforce. Because that energy was not available for other pursuits, it's time to brush up on some other widely accepted cloud / SaaS technologies. I've identified two areas of learning that I want to target first with this project. First, I want to learn more about LLMs and how to leverage them in specific applications - I want to build an agent. Second, I want to increase my comfort level with React. Although there are many similar frameworks out there, React is widely used and a good starting point for me to brush up on the more common web development tools.
I wanted to bring these two learning objectives together with something fun to kindle the passion for development I've had since I was ten years old. My love for childhood video games was likely a precursor to my love of computer science, so I am going right back to the start. My favourite childhood game was Final Fantasy for the Nintendo Entertainment System (NES). My vision is to have the ability to play the game on the open source FCEUX emulator (legally of course, by dumping the ROM from my physical cartridge) with a second "Final Fantasy Bot" application (I'll call it the "bot app" for convenience going forward) open on another screen. The bot app will have full context on what is happening in the game and will interact with an LLM that has been trained on Final Fantasy NES guides available for free on the internet. The bot app will provide a few services described next.
The bot app will provide advice on what to do next based on what is happening in the game. This might mean advice on where the player should explore next, or if the player is in a battle, advice on how to best defeat the enemies.
Final Fantasy has some annoying, monotonous, time consuming tasks that detract from the game experience. Two notable examples:
For a little fun, let's see what else we can get the bot to do for us. Maybe ask for stronger weapons and armor than we should normally be allowed early in the game, change a characters class dynamically (normally a characters class is set at the beginning of a playthrough and is unchangeable thereafter), or just make ourselves invincible. Who knows what we might be able to figure out how to do.
In order to accomplish all of this, the bot app will need the following.