Baldur's Gate 3 tool discovers there's around 1,888 characters with dialogue in the game—though 'justice for Karlach was actually the main reason' it was made

Karlach and Tav in Baldur's Gate 3 share a tender moment, tieflings of opposing colours in a hazy city-scape.
(Image credit: Larian Studios)

Baldur's Gate 3 has a lot of words—and even 'a lot of words' is a major understatement. In a Steam post before the game's release, it was revealed the game's total script is about 2 million words long. For context, all five books in the current Game of Thrones series add up to about 1.7 million words. Big. It's a big game.

Which is why I was pretty damn impressed to find this tool casually popping up on the game's subreddit, able to show which character had the most changes to their dialogue since launch. It's Wyll, which is interesting—but not a huge surprise, seeing as his story stands the most to gain from some added nattering (we still like him, though). Still, I wanted to know how the heck something like this was built, so I reached out to the tool's creator.

Total amount of changes & added lines per character from r/BaldursGate3

They go by the name of Invuska on Reddit, GitHub, the Larian Forums and Discord, and they credit the BG3 Patch Dialogue Difference Tool's existence to a shared effort by other modders in the community. "The extractor (by Norbyte), multi-tool (ShinyHobo), dialog parser (roksik-dnd & anonymous collaborator), and the dialog difference tool (me)—all of the prior work is what made development of this tool (and many others) manageable."

More on Baldur's Gate 3

Gale the wizard grins

(Image credit: Larian)

Baldur's Gate 3 guide: Everything you need
Baldur's Gate 3 tips: Be prepared
Baldur's Gate 3 classes: Which to choose
Baldur's Gate 3 multiclass builds: Coolest combos
Baldur's Gate 3 romance: Who to pursue
Baldur's Gate 3 co-op: How multiplayer works

While Invuska mentions that without the collaborative effort this thing could've been easily "twice the amount of work", they've also got some compliments for Larian Studios itself. "Each line contained 'character codes' for which line was associated with which character and was structured in a way that I could fairly easily pick it apart … a data scientist loves nothing more than already very well structured and clean data to work with."

As for their own personal observations, Invuska's only just finished their first playthrough, which means they haven't been diving too deep into the script beyond a broad, numbers-based overview. Instead, they've been staggered—again—by how mammoth of a game Baldur's Gate 3 is.

"There are approximately [over] 1,888 characters with dialog in the game, even more considering some dialog may be misattributed and that this count doesn't include generic dialog (e.g. generic group of goblins). I definitely have not talked to 1,888 characters."

They also have a pretty good idea of how many lines—which could be multi-sentenced—the game has. "From what the internal code of the tool gathers there are 114,921 lines [in Patch 5]," compared to "110,869 on launch day." While the tool does highlight a ton of typo fixes, as Invuska mentions: "It's easy to think from the difference tool that there are a lot of typos in the script, but notice how in-game you don't even see them! That just goes to show how massive this game is."

As for why Invuska would put this all together, that's down to one simple reason: justice for our big lady. "Justice for Karlach was actually the main reason why the tool was created, with more primitive code being created sometime in September after Patch 2 … many of us on Reddit, Discord, and in the Larian Forums thread for Karlach were/are quite hungry for an Infernal Engine fix of some sort that didn't necessitate her becoming a mindflayer or her having to go back to the Hells."

This means the tool started out targeting one specific character, then expanded to the whole cast: "I started working on simpler versions of the tool to satiate some of my curiosity/anticipation. A few others seemed to share the same curiosity and were interested in its development. Seeing how this tool may be useful for characters outside of just Karlach, I fleshed out my small collection of scripts for a more 'everyone-ready' version that you see today."

I live for this stuff. While some might take a dim view of data mining, it's clear that stats wizardry has a lot in common with speedrunning communities. Neither is trying to 'break' a game—instead, finding all the hidden secrets in between lines of code. 

It's an expression of love, kinda like how you might wear out your favourite bit of hardware. In regards to the tool itself, Invuska's happy to share. "[I'm] planning to create more mods and tools in the future, so stay tuned. Also, the tool is open source on an MIT licence for anyone who is interested in forking/extending/etc. Go wild."

Harvey Randall
Staff Writer

Harvey's history with games started when he first begged his parents for a World of Warcraft subscription aged 12, though he's since been cursed with Final Fantasy 14-brain and a huge crush on G'raha Tia. He made his start as a freelancer, writing for websites like Techradar, The Escapist, Dicebreaker, The Gamer, Into the Spine—and of course, PC Gamer. He'll sink his teeth into anything that looks interesting, though he has a soft spot for RPGs, soulslikes, roguelikes, deckbuilders, MMOs, and weird indie titles. He also plays a shelf load of TTRPGs in his offline time. Don't ask him what his favourite system is, he has too many.

Read more
Shadowheart's eyes go white as she holds a glowing magic artifact
Baldur's Gate 3 modder says the community's been making 'huge strides' towards custom campaigns: 'I think we'll see many of them refined, improved, and released this year'
Baldur's Gate 3
2024 was still the year of Baldur's Gate 3: Why we're all still playing Larian's once-in-a-decade RPG 16 months later
An image of Alphinaud and Alisaie sitting together at a table. Alphinaud, a studious young elezen, takes a sip of his tea while Alisaie sulks into her chair.
Final Fantasy 14 data sleuth gathers more info on the game's script, finds Alphinaud is the king of yappers—though Wuk Lamat's in the top 3 after just 1 expansion
Astarion
Players are still finding edge-case Baldur's Gate 3 scenes, like one where you play as a kidnapped Astarion even if you made your own player-character
A man shouting while waving his sword in Kingdom Come: Deliverance 2.
Baldur's Gate 3 and Kingdom Come: Deliverance 2 show that the future of RPGs is in games way more ambitious, weird and unexpected than anything Bethesda and BioWare have to offer
Baldur's Gate 3 Gale romance - Gale sacrificing himself
Baldur's Gate 3's accidental PS5 release of Patch 8 has the theorycrafters in a flurry—though I'm just glad D&D's blade cantrips are officially here
Latest in Baldur's Gate
Baldur's Gate 3 player character made to resemble Geralt of Rivia from The Witcher.
Wait a minute, Geralt of Rivia actor Doug Cockle was in Baldur's Gate 3 this whole time
Half Orc wearing rare Bhaalist Armor in Baldur's Gate 3 standing in front of Astarion and Karlach
It turns out you can get Baldur's Gate 3's best assassin armor without killing a baby angel elephant and joining a cult, all you have to do is pickpocket a ghost
Gale, a wizard from Baldur's Gate 3, looks very bloodied and very sad at the player while a celestial midnight blooms behind his depressed mug.
Baldur's Gate 3's stress test update has, mercifully, made one of its new OP cantrips halfway balanced again—but it's really still quite good
Withers Big Naturals mod image - Withers with big naturals
Sure, why not, here's a guy beating Baldur's Gate 3 without a race or class at all
Baldur's Gate 3 - Lae'Zel looks disaproving
Lae'zel's voice actor Devora Wilde also auditioned for Shadowheart, Karlach, 'And probably Astarion?'
An Oathbreaker Paladin restoring their Oath in Baldur's Gate 3.
Baldur's Gate 3's Patch 8 is so big, it needed its own patch before it even released, and we're one step closer to a Permanent Booming Blade Economy
Latest in News
Henry from KCD2 wearing nice outfits
'Diversify your fashion endgame' with this Kingdom Come: Deliverance 2 mod that gives Henry fly new gambesons, pourpoints, and caftans
Masked Counter-Terrorist in helmet in forefront with sunglasses and beret-wearing CT in background touching headset
There's hope yet for Classic Offensive after its Steam rejection: The team behind the Counter-Strike 1.6 revival mod is in touch with Valve about its 'concerns'
Recently appointed Intel CEO Lip-Bu Tan.
Here comes Intel's new CEO: a semiconductor veteran that won the same prestigious award as Jensen Huang and Lisa Su
BURBANK, CALIFORNIA - AUGUST 15: Protestors attend the SAG-AFTRA Video Game Strike Picket on August 15, 2024 in Burbank, California. (Photo by Lila Seeley/Getty Images)
8 months into their strike, videogame voice actors say the industry's latest proposal is 'filled with alarming loopholes that will leave our members vulnerable to AI abuse'
Orithopter shooting down another in Dune
Dune: Awakening confirms air-to-air combat in ornithopters
live action Jimbo the Jester from Balatro holding a playing card and addressing the camera
LocalThunk forbids AI-generated art on the Balatro subreddit: 'I think it does real harm to artists of all kinds'