I talk about how the dialog files worked in Arcanum. You might want to review these two videos before watching this one: • Arcanum Generated Dialog • Arcanum Scripting
Yesterday I spent few hours mentally forcing myself to do at least few lines of code in my prototype. Your video in 10 mins motivated me for multiple hours of work!
First off Arcanum is a great game. The atmosphere, story, skills, attributes, the spells, schematics, combat all of it. But the sheer size of it. It is huge. And you were 14. They got 300 today on games. Your work was not just great but so much content. It is very very impressive.
In general, what I found to be the most convenient way to create data like that is this: I create entries in code and add them to a SQLite database, from where they are used. Both, my game and that project use the same classes to represent these objects. When I change something about these objects, the code immediately shows me bad parameters. It ensures that the data is input correctly. When I want to save some of that data into the database, I may have to convert them to strings or convert them from strings to classes (in code). I could even go and use raw byte arrays even. For each entry created I use a short named method like S(parameters). I can also use a builder pattern and define things more easily. I can also structure my code as I want - I could use own code files to represent one type of item, or put multiple into one. The end result is one SQLite database, which I'd just have to move into the game's files. It's much better than using some raw text files (I did that in the past, it was a hassle), Excel (also a hassle), own binary format, or write into a database directly.
On the off-chance you're reading comments and might answer questions, I've gotta ask: with all of the (relatively) recent remasters of classic CRPGs (like Beamdog's revisions of the old Infinity Engine games), I'd love to know what you'd like to change, add or remove to Arcanum if you ever got the chance to make an "enhanced edition" of it. And is there anything you'd want to do with Arcanum NOW that you would NOT have wanted to do with it 20 years ago, or vice versa? ....Maybe I'm asking too much. I dunno. Arcanum is one of my all-time favorite games and I just love listening to you talk about it. Please never stop.
That's a good question. I did a video on a Fallout remake, so I can certainly do one on an Arcanum remake. If you haven't watched it, I talk about Arcanum 2 System Extensions here: ua-cam.com/video/IPEe0s6fjdw/v-deo.htmlsi=LB7x9RZsv9Ztu34d
Awesome video, Tim! I love when things get technical! I noticed the absence of a header row; is that standard practice? Also, are things wildly different today, or the process of writing dialog is pretty much still the same? Just a final question: couldn't a column be added with binary values for PC in opposition to NPCs lines, so as not to rely on colors? Thanks!
These days there is an entire stand-alone tool for making dialogs, although the basic idea behind their structure is the same. And yes, we could have added a column to distinguish PC and NPC. We could have done a lot of things, but we were always pressed for time, so when something worked, we often moved on to the next thing that wasn't working.
I love all your videos but particularly the ones about Arcanum. Absolutely an underrated gem that changed the way I looked at games. There’s not nearly enough content out there about it, and getting this info from YOU means so much to me. Thank you!
I think this was a very nice showcase of a practical and powerful system that delivered what it had to using the tools you had available, it is probably still better than what most developers make today.
This is absolutely amazing!! Can you share, maybe in another video, what standalone tools you use today and whether there are any interesting functionalities you use that are not part of the excel roster? In any case, I love your technical videos!! Keep them up and have a wonderful day 😊
Great video Tim, thanks. I've started teaching myself how to make Arcanum mods and I found the dialogue system a little confusing, but this explains it really well!
Another awesome video. I'm finally caught up, I started from the oldest video and watched them all, and now I get to comment on one on the actual day it was released. This is such a great channel, thanks for sharing all this cool stuff with us Tim!
Do these scripts then get parsed and stored in some structure that you store along side the character, or did you just have some DialogueHandler master class that you query per npc to get the responses you need?
There was a dialog module (since this was coded in C, so no classes) that handled all dialog processing for a character, and a separate dialog UI module that handled displaying the dialog and getting the player's choices.
Man this makes me nostalgic. I still remember giving Virgil a bunch of cheat dialog that did different things. I'm really glad MES and DLG files were plain text, it allowed me to get into modding at a young age.
Thank you for sharing this, Tim. I know one can only dream, but I hope now that Activision is under MS that we get an Arcanum remaster. I would love-love-love to play it on my modern PC without having to resort to fan-made patches etc, plus it would be wonderful for the newer generation of gamers to experience it.
I do consulting, but I am trying to cut back...unless a project really speaks to me. I really am trying to retire. My Reddit and Facebook profiles are public facing. Feel free to send questions there.
I watch you so much dude, love the content. I somehow subconscioussly know when its close to 10 minutes on your video, then check the utube timer, then get sad when its true because the video is almost over 😥 . I do have a couple questions about your color blind attribute, first off, were you born with it? Have you ever tried those glasses that help color blind humans see color? If so, why do you not use them? I need more Tim Lore.
Hey Tim! Love the vid as always. I have a question with regards to game difficulty. In general, what are your opinions on this subject and what do you tend to ‘choose’ at the start of a game? But, specifically - from the perspective of a developer - what challenges have you faced over the years and do you have any advice for future devs? Cheers, Dean
the data model is ok, but I'm more interested in the testing and debugging infrastructure, especially with the choices resulting in the script execution. Did you have any fail saves for no "exit" option or circular link scenarios?
It's very interesting to see how you get dialog like this to work. Obsidian's conversation tool is pretty great, from what I've heard. How have your experiences with it been? I assume it was used in Outer Worlds.
tim cain, when are you going to talk about the prototypes of VTMB? and the dealings with Valve during the development of Source 1? Did the 2003 leak affect Troika in any way or so?
I must ask about Matt de'Cesare quest in Arcanum. This is by far the most unusual ( and unnerving) side questline in whole game. Who designed this one ? What was the insipration for this whole conspiracy ( outside of "Протоколы Сионских мудрецов" as this is obvious one ;) ). Was there ever any plan for followup, either cut due to lack of time or planed for a sequel ?
@@snakeplissken111 Bethesda confused two different types of RPGs there: traditional, with branching story/dialogue and ME-style prewritten protagonist story/dialogue. MEs dialogue didn't branch so much as the choices presented were actually impactful on how the story and character's lives unfolded; etc., so the player had less freedom in the actual dialogue wheel, but it worked for the kind of story ME wanted to tell. It isn't a bad dialogue system in and of itself, but simply wasn't appropriate to the franchise at hand. Just guessing Bethesda went that way due to the din of voices in the community demanding a voiced protagonist because they thought an unvoiced protagonist "dated". (:rollseyes:) IOW, they did something they thought their playerbase wanted and later discovered it wasn't the majority of the playerbase raising the din for a voiced protagonist. This is the first thing that comes to mind when I think (and say) that Bethesda listens *overmuch* to "feedback". They're obviously not getting the suggestions for improvement their core playerbase is offering, but are essentially catering to whims. Thus, you turn around in FO76 and see a player decked out in pink power armor with doughnut sprinkles on top. Oh, the horror! (Last thing I, personally, ever wanted to see in a Fallout game, but what are you going to do? lol)
Yeah I loved the game, was buggy etc but had such atmosphere. With microsoft buying blizzard we may see a sequel? though doubt they would ever do the game justice.
Please do a video about the characters and organizations of Arcanum and what they represent. I know the Elven Council is meant to be the United Nation, Gilbert Bates = Bill Gates. The Dark Elves are the Nazis. Is Kerghan meant to be Socrates?
Yesterday I spent few hours mentally forcing myself to do at least few lines of code in my prototype. Your video in 10 mins motivated me for multiple hours of work!
First off Arcanum is a great game. The atmosphere, story, skills, attributes, the spells, schematics, combat all of it. But the sheer size of it. It is huge. And you were 14. They got 300 today on games. Your work was not just great but so much content. It is very very impressive.
In general, what I found to be the most convenient way to create data like that is this: I create entries in code and add them to a SQLite database, from where they are used. Both, my game and that project use the same classes to represent these objects. When I change something about these objects, the code immediately shows me bad parameters. It ensures that the data is input correctly.
When I want to save some of that data into the database, I may have to convert them to strings or convert them from strings to classes (in code). I could even go and use raw byte arrays even. For each entry created I use a short named method like S(parameters). I can also use a builder pattern and define things more easily.
I can also structure my code as I want - I could use own code files to represent one type of item, or put multiple into one. The end result is one SQLite database, which I'd just have to move into the game's files.
It's much better than using some raw text files (I did that in the past, it was a hassle), Excel (also a hassle), own binary format, or write into a database directly.
On the off-chance you're reading comments and might answer questions, I've gotta ask: with all of the (relatively) recent remasters of classic CRPGs (like Beamdog's revisions of the old Infinity Engine games), I'd love to know what you'd like to change, add or remove to Arcanum if you ever got the chance to make an "enhanced edition" of it.
And is there anything you'd want to do with Arcanum NOW that you would NOT have wanted to do with it 20 years ago, or vice versa?
....Maybe I'm asking too much. I dunno. Arcanum is one of my all-time favorite games and I just love listening to you talk about it. Please never stop.
That's a good question. I did a video on a Fallout remake, so I can certainly do one on an Arcanum remake.
If you haven't watched it, I talk about Arcanum 2 System Extensions here: ua-cam.com/video/IPEe0s6fjdw/v-deo.htmlsi=LB7x9RZsv9Ztu34d
Awesome video, Tim! I love when things get technical! I noticed the absence of a header row; is that standard practice? Also, are things wildly different today, or the process of writing dialog is pretty much still the same? Just a final question: couldn't a column be added with binary values for PC in opposition to NPCs lines, so as not to rely on colors?
Thanks!
These days there is an entire stand-alone tool for making dialogs, although the basic idea behind their structure is the same. And yes, we could have added a column to distinguish PC and NPC. We could have done a lot of things, but we were always pressed for time, so when something worked, we often moved on to the next thing that wasn't working.
I love all your videos but particularly the ones about Arcanum. Absolutely an underrated gem that changed the way I looked at games. There’s not nearly enough content out there about it, and getting this info from YOU means so much to me. Thank you!
I think this was a very nice showcase of a practical and powerful system that delivered what it had to using the tools you had available, it is probably still better than what most developers make today.
Thank you, Tim! Dialogs were the last thing I was developing before I quit working on the OpenArcanum. This makes me want to revive that project :)
I have had a lot of fun modding dialogs in Arcanum.
This is absolutely amazing!! Can you share, maybe in another video, what standalone tools you use today and whether there are any interesting functionalities you use that are not part of the excel roster?
In any case, I love your technical videos!! Keep them up and have a wonderful day 😊
Unfortunately the dialog tools I used at companies after Troika are all proprietary.
Josh Sawyer released a short video about the internal Obsidian tool for working with dialogue:
ua-cam.com/video/u9WFmMY5oyY/v-deo.html
"What is it that you want of me?" THE most heard of line in the game I believe haha.
Great video Tim, thanks. I've started teaching myself how to make Arcanum mods and I found the dialogue system a little confusing, but this explains it really well!
Hell yeah brother, the world needs more Arcanum content
Arcanum Changed my life. Thank you Tim!
Another awesome video. I'm finally caught up, I started from the oldest video and watched them all, and now I get to comment on one on the actual day it was released. This is such a great channel, thanks for sharing all this cool stuff with us Tim!
1k views 3 hours ago. Love the videos Timothy! Thank you for these incredible Insights to critical parts of game design and development!
9:03 -- "Sorry, the dog's in here."
Never apologize, *all* videos are better with the sounds of a happy dog.
The *Dog!*
Do these scripts then get parsed and stored in some structure that you store along side the character, or did you just have some DialogueHandler master class that you query per npc to get the responses you need?
There was a dialog module (since this was coded in C, so no classes) that handled all dialog processing for a character, and a separate dialog UI module that handled displaying the dialog and getting the player's choices.
I'd like to leave s whisper that I love that kind of content.
Man this makes me nostalgic. I still remember giving Virgil a bunch of cheat dialog that did different things. I'm really glad MES and DLG files were plain text, it allowed me to get into modding at a young age.
Love these videos Tim I just recently bought arcanum and am really enjoying it
I would love to see a Fallout 3ing of Arcanum, would be very cool and be a great way to introduce it to a larger modern audience.
Thanks, I enjoy these quick videos.
Thank you for sharing this, Tim. I know one can only dream, but I hope now that Activision is under MS that we get an Arcanum remaster. I would love-love-love to play it on my modern PC without having to resort to fan-made patches etc, plus it would be wonderful for the newer generation of gamers to experience it.
Hey Tim, do you do consulting? What’s the best way to contact you for it?
I do consulting, but I am trying to cut back...unless a project really speaks to me. I really am trying to retire.
My Reddit and Facebook profiles are public facing. Feel free to send questions there.
Setting up my dialogue system and I'm going to give this a go, thanks a lot
love the neighbour Wilson vibes from the excel fence
Spreadsheets are one of the biggest gamedev tools for games!
Thank you so much for this Tim. This is extremely helpful, ill be watching this a few times to soak it all in haha.
Hah, the dog shaking at 9 minutes in got our dogs to jump up and look out the window
I watch you so much dude, love the content. I somehow subconscioussly know when its close to 10 minutes on your video, then check the utube timer, then get sad when its true because the video is almost over 😥 . I do have a couple questions about your color blind attribute, first off, were you born with it? Have you ever tried those glasses that help color blind humans see color? If so, why do you not use them? I need more Tim Lore.
Hey Tim! Love the vid as always.
I have a question with regards to game difficulty. In general, what are your opinions on this subject and what do you tend to ‘choose’ at the start of a game?
But, specifically - from the perspective of a developer - what challenges have you faced over the years and do you have any advice for future devs?
Cheers,
Dean
the data model is ok, but I'm more interested in the testing and debugging infrastructure, especially with the choices resulting in the script execution. Did you have any fail saves for no "exit" option or circular link scenarios?
Thanks for all the great videos Tim!
How did using a dialogue database compare to using Obsidian tools?
Obsidian’s tools are light years ahead of what we used at Troika. No comparison, really.
It's very interesting to see how you get dialog like this to work. Obsidian's conversation tool is pretty great, from what I've heard. How have your experiences with it been? I assume it was used in Outer Worlds.
When you said you wrote the whole thing in excel, my entire body clenched.
Tim, don't apologize for the dog. SHOW the dog.
tim cain, when are you going to talk about the prototypes of VTMB? and the dealings with Valve during the development of Source 1? Did the 2003 leak affect Troika in any way or so?
I must ask about Matt de'Cesare quest in Arcanum. This is by far the most unusual ( and unnerving) side questline in whole game. Who designed this one ? What was the insipration for this whole conspiracy ( outside of "Протоколы Сионских мудрецов" as this is obvious one ;) ). Was there ever any plan for followup, either cut due to lack of time or planed for a sequel ?
Leonard Boyarsky wrote and scripted it. 40:29 minutes in Leonard Boyarsky chat part 2.
Thank you, I watched this and it finaly gave me some answeres I looked for.
Baldur's Gate 3 just got the colour-blind mode - I thought that you might be interested 👋
Tim, have you ever heard of a mod for the classic Fallout call Fallout: Sonora?
Isn't some of the lines missing things in them? Like line 13 not having "wa" test and "uw" result? Or did I misunderstand how it worked?
Lines confirmed blue!
Have you tried the Ink narrative scripting language?
Arcanum was amazing! I'd love it remade and like fallout 4.
That'd be all too easy. Fallout 4 dialogue choice and branching be like:
A. Yes.
B. No (yes).
X. [Sarcasm] (yes).
Y. [Question] (yes).
:D
@@snakeplissken111 Bethesda confused two different types of RPGs there: traditional, with branching story/dialogue and ME-style prewritten protagonist story/dialogue. MEs dialogue didn't branch so much as the choices presented were actually impactful on how the story and character's lives unfolded; etc., so the player had less freedom in the actual dialogue wheel, but it worked for the kind of story ME wanted to tell. It isn't a bad dialogue system in and of itself, but simply wasn't appropriate to the franchise at hand. Just guessing Bethesda went that way due to the din of voices in the community demanding a voiced protagonist because they thought an unvoiced protagonist "dated". (:rollseyes:)
IOW, they did something they thought their playerbase wanted and later discovered it wasn't the majority of the playerbase raising the din for a voiced protagonist. This is the first thing that comes to mind when I think (and say) that Bethesda listens *overmuch* to "feedback". They're obviously not getting the suggestions for improvement their core playerbase is offering, but are essentially catering to whims. Thus, you turn around in FO76 and see a player decked out in pink power armor with doughnut sprinkles on top. Oh, the horror! (Last thing I, personally, ever wanted to see in a Fallout game, but what are you going to do? lol)
Any particular reason you used DLG over CSV?
Yeah I loved the game, was buggy etc but had such atmosphere. With microsoft buying blizzard we may see a sequel? though doubt they would ever do the game justice.
There's a dog and yet you haven't show us the dog??
Please do a video about the characters and organizations of Arcanum and what they represent. I know the Elven Council is meant to be the United Nation, Gilbert Bates = Bill Gates.
The Dark Elves are the Nazis. Is Kerghan meant to be Socrates?