site banner

Tinker Tuesday for January 21, 2025

This thread is for anyone working on personal projects to share their progress, and hold themselves somewhat accountable to a group of peers.

Post your project, your progress from last week, and what you hope to accomplish this week.

If you want to be pinged with a reminder asking about your project, let me know, and I'll harass you each week until you cancel the service

3
Jump in the discussion.

No email address required.

Note: Meandering post as much to get my thoughts in order as to share.

Been bopping along on my roguelite (Basically the core idea is Hades gameplay meets Path of Exile/DotA style build diversity. You start with 1 character unlocked and the rest as NPCs and unlock more as you progress). Currently working on getting a dialogue system setup, and deciding how much player choice I want to provide. I'm kinda in an awkward spot because the whole point of a story heavy rogue-lite is that you keep playing the same save. You experience the story over the course of a lot of runs, and playing more runs, rather than starting a new save, is where the replayability value comes from. Which is great, and the original intent, but it does mean that it's very unlikely players will ever see the results of a second dialogue choice.

I'm considering ways to get around this, because I really like the idea of fleshing out character relationships and giving people choices for how to roleplay the characters. But it would mean really altering the design of the game and doing something like giving you a permadeath failure condition, or letting you start the game as multiple characters, instead of making them all unlockable over time on one save. But permadeath defeats the purpose of a progression focused roguelite (You'd lose all those unlocked weapons and trinkets!), and playing clean runs as different characters doesn't actually solve the multiple choice dialogue only getting seen once issue, since I'd get to write a fuck-ton of dialogue from everyone's perspective and you still probably only have 1 save per character.

I'm probably gonna add dialogue choice options for normal conversations anyway, but they'll end up being mostly for flavor and largely useless. Maybe a couple for 'makes unlocking character easier/harder depending on if you read their personality right' or 'choose between rewards/different character's favor'. I need dialogue choice as a concept anyway for hub and spoke style 'ask character about things' interactions, and I'm big on choice and customization in general.

Anyway, after I write the integration for that (Using Inkle's Ink and it's simple unity api. Everything else was too big and writing my own fancy GUI looked unfun, so I'm just gonna build features off Ink tags), I'll be working on simplifying my code for melee attacks. They're a slightly awkward feature because I built them within my framework for 'abilities'. That works well for things like attacks where you charge and hold, and one off attacks, but it's kinda weird for attacks that have mechanics like a 3 hit combo (Because mana cost and cast time is configured at the ability level, but I might want different costs or delays per attack in the combo). Also the way I handle animations currently isn't very flexible, so I need to figure out exactly how I'm handling animators and animation clip swapping between enemies/players.

Anyway, once I get all that done I'll be swapping over to art mode for a bit to flesh out the first biome and it's first miniboss. And add some clothes, so I can take screenshots and not have nude humanoid models everywhere.

Why not integrate some small 7b LLM chatbot to handle all the weird permutations roguedeath introduces? Inject game state and prior conversation outcomes into the context buffer on reload.

Cause it's actually super hard to get consistently good output doing that. I might be able to get good 'Hey, X killed you last run' conversations, but even then, with perhaps the easiest scenario, the LLM would have no hope of providing advice like 'Kite ghouls, they're slow and do high melee dps', because it has no context for what the enemy in question is. And it's even more tricky for anything story relevant, since the LLM would need to know its role, so to speak. Its one of those ideas a lot of game devs have an eye on, but even if you can run a decent local bot on the player's machine its something the game needs to be built around, not just a plug and play solution to having good dialogue.

Frankly, I'd be way more likely to write all the dialogue myself and then use AI as a solution for voice acting, since that would actually be a huge labor saver and not have big game design implications.

In general, if you want AI to write a character's dialogue, you probably need the whole character to be proc gen and inconsequential anyway. Like a Dragon's Dogma pawn, not a shopkeeper or alternate playable character with a fixed personality.