Blog Post #11


Milestone #We Finished This Semesters Project!

This week’s post will be short, since we officially wrapped up Milestone 5 last week.

I want to give a quick summary of what I accomplished, what’s coming next, and a brief reflection.


The Summ-AI-ry

Over the course of Milestones 1–5, I researched, built, tested, and polished the first version of my intelligent NPC prototype in Unreal Engine.

I started by grounding myself in the current academic and industry landscape of generative AI in games, then moved into hands-on experimentation.

I set up a working local pipeline using Unreal Engine, VaRest, and Ollama, and built out a functioning system where the game sends player input to a local LLM and receives an in-engine NPC response.

From there, I created UI elements, connected them to the Blueprint logic, added guardrails, fixed multiple payload/JSON issues, debugged the request-and-response chain, and implemented the beginnings of personality bounding for my “Jenny Applebaum” Intelligent NPC.

By the end of Milestone 5, the prototype was stable, interactive, and ready for deeper narrative and systems work next semester.


Looking AI-head

Jenny will make her debut this weekend at the Clark IGDA Game Expo. The Expo is a great opportunity for lots of play-testing and feedback.

I haven’t added anything new to the prototype on purpose. I’ve recently learned from the book, A Playful Production Process, that the goal of a prototype isn’t to be full or perfect, but simply to demonstrate an idea or a core piece of functionality.

I’m really curious to see how people interact with Jenny: whether the setup feels clear, whether it’s fun, and how well the LLM responds to a range of prompts (in other words… not just mine!).


A(I) Short Reflection

Looking back over this semester, I’m realizing just how much I’ve learned, not only about developing this specific idea and understanding the industry conversations around it, but also about my own capabilities to take on a project like this.

When I first started, the idea of building an “intelligent NPC” felt huge and abstract. I didn’t know how the pieces fit together or how much of it I could realistically do on my own. However, working through each milestone step-by-step showed me that I can build something complex if I break it down, iterate, and let myself learn through the process.

A lot of this semester was debugging, revising, and rebuilding things that didn’t work the first time (or the fifth time!). Each fix made me more confident with Unreal, with JSON and payload structures, with how LLMs behave, and with designing an intentional, player-facing interaction. In other words: development.

The biggest shift for me was realizing how much joy I found in this project. I didn’t expect to love creating logic, designing a character, or doing what felt like bringing a machine to life. I had always shied away from the development side of game-making, never fully immersing myself because I worried I “didn’t belong there” without a formal coding background.

How wrong I was.

Anyone with determination, creativity, and dedication can learn to develop something like this-or anything their heart wants to build! The most valuable thing I gained from this project was the understanding that I should never hold myself back in game development just because I think I don’t have the traditional background.

Overall, I’m not only proud of where Jenny is right now, I’m excited to see how people respond to her at the Expo. I’m proud that I set a goal that felt ambitious and a little wild, and actually reached it! I feel like I’m working on the edge of new technology and pushing the boundaries of my game education in the best ways possible to grow as both a designer and a developer.


See Ya Next Year!

For now this blog will be on pause until next semester starts and a new project begins!

I am still brainstorming on what I would like to do, so stay tuned for more after this commercial break.

Until next time,

~Lauren


Leave a Comment

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