Welcome to Gaia! ::


Unsealed Dabbler

As the title says, I've got a project that I'm working on with a couple of friends, but we need my part done before they can do much of anything. We're working on a video game, not a huge one but something that once it's done would have a chance of getting on Steam.

I've got my plot skeleton mostly worked out, roughs for the major characters and some of the more important NPCs, and even some side quest stuff planned out. What I'm having problems with though is getting it all worked out so that I can essentially branch the writing to take cause and effect into account for if quests are done out of order or if you have different party members in the lead position when talking to NPCs so that those will react differently. That kind of stuff. I'm used to working fairly linearly with my prose and this is giving me fits trying to tie everything together neatly because we're expecting the writing to be what really carries it.

I wanted to see if anyone else had experience with writing something like this and if they had any tips that might help.

The story takes place in an urban fantasy world where magic has just recently become a thing again and it follows a small group of friends who each have magic. There's a lot of anti-magic sentiment because of course there is, I'm sort of running off of the idea that people are at their most basic somewhat xenophobic and the city it takes place in is essentially in the middle of the Bible belt with the bar code scratched off.

Part way through it moves from the party just trying to survive in this situation, running quests because most places don't want to hire mages and trying to fix up the house they're renting because it's a dump (also bonuses in game), to them needing to stop or contain this demon that has possessed one of their friends and built up this cult that's endangering the city. To do this, they can either work just on their own and do things the hard way or they can work with the various factions around the city, pulling the community together and having a fall back in case they fail or get overwhelmed. I'm wanting to make this as player's choices driven as I can while still telling the story.

O.G. Elder

What you're attempting is difficult from both a writing and programming perspective, and you're going to have to write it in a way that facilitates the programming.

So let's say you have two possible characters, let's name them Bob and Sue. They're gonna talk to a guy named Dave. This is easy.

You write:

(Dave, if Bob) Hello, sir.
(Dave, if Sue) Hello, ma'am

That's easy enough. But if there's an event that makes them nobility, for example, you've added a second variable for each option, so you write.

(Dave, if Bob=0) Hello, sir.
(Dave, if Bob=1) Hello, my lord.
(Dave, if Sue=0) Hello, ma'am
(Dave, if Sue=1) Hello, my lady.

And that's BEFORE any dialogue options come into play or other event variables which would require their own quantities and for only two characters.

If you have six characters with a variable each, you could ostensibly have pages and pages of dialogue written for what's actually only a three or four text box interaction.

There are some shortcuts that can be used in the programming for certain types of variables (Like for that we could write (Dave) Hello, X (if X = M0 Sir, if X = M1 my lord, if X = F0, etc.) but that's a whole 'nother story and my examples aren't in any actually specific programming language and the whole thing could be infinitely more complicated or possibly easier based on the language and engine you're using, but that's beside the point.

You as the writer can do it one of two ways.

Write each possible scenario as its own tree, or write the full tree out like I've demonstrated above. Neither option is any easier than the other to write, but the latter may be easier on your programmers.

Unsealed Dabbler

Black Gabriel
What you're attempting is difficult from both a writing and programming perspective, and you're going to have to write it in a way that facilitates the programming.

So let's say you have two possible characters, let's name them Bob and Sue. They're gonna talk to a guy named Dave. This is easy.

You write:

(Dave, if Bob) Hello, sir.
(Dave, if Sue) Hello, ma'am

That's easy enough. But if there's an event that makes them nobility, for example, you've added a second variable for each option, so you write.

(Dave, if Bob=0) Hello, sir.
(Dave, if Bob=1) Hello, my lord.
(Dave, if Sue=0) Hello, ma'am
(Dave, if Sue=1) Hello, my lady.

And that's BEFORE any dialogue options come into play or other event variables which would require their own quantities and for only two characters.

If you have six characters with a variable each, you could ostensibly have pages and pages of dialogue written for what's actually only a three or four text box interaction.

There are some shortcuts that can be used in the programming for certain types of variables (Like for that we could write (Dave) Hello, X (if X = M0 Sir, if X = M1 my lord, if X = F0, etc.) but that's a whole 'nother story and my examples aren't in any actually specific programming language and the whole thing could be infinitely more complicated or possibly easier based on the language and engine you're using, but that's beside the point.

You as the writer can do it one of two ways.

Write each possible scenario as its own tree, or write the full tree out like I've demonstrated above. Neither option is any easier than the other to write, but the latter may be easier on your programmers.
I didn't figure it was going to be easy, but if/then statements seem like they would be the way to go for a lot of the branching, at least up to a point. I may have some stuff that's kind of gnarled up even with the if/thens.

I've got a main party of five characters, three of whom can be in the adventure party at any given time events notwithstanding, one of whom will be the party lead. Then another at least four assist party members, whose ability to be used are dependent on if the player has done certain things related to their faction or certain side quests, they'll never be party lead but having them in the party can result in certain dialogue with certain NPCs.

O.G. Elder

Tympest
Black Gabriel
What you're attempting is difficult from both a writing and programming perspective, and you're going to have to write it in a way that facilitates the programming.

So let's say you have two possible characters, let's name them Bob and Sue. They're gonna talk to a guy named Dave. This is easy.

You write:

(Dave, if Bob) Hello, sir.
(Dave, if Sue) Hello, ma'am

That's easy enough. But if there's an event that makes them nobility, for example, you've added a second variable for each option, so you write.

(Dave, if Bob=0) Hello, sir.
(Dave, if Bob=1) Hello, my lord.
(Dave, if Sue=0) Hello, ma'am
(Dave, if Sue=1) Hello, my lady.

And that's BEFORE any dialogue options come into play or other event variables which would require their own quantities and for only two characters.

If you have six characters with a variable each, you could ostensibly have pages and pages of dialogue written for what's actually only a three or four text box interaction.

There are some shortcuts that can be used in the programming for certain types of variables (Like for that we could write (Dave) Hello, X (if X = M0 Sir, if X = M1 my lord, if X = F0, etc.) but that's a whole 'nother story and my examples aren't in any actually specific programming language and the whole thing could be infinitely more complicated or possibly easier based on the language and engine you're using, but that's beside the point.

You as the writer can do it one of two ways.

Write each possible scenario as its own tree, or write the full tree out like I've demonstrated above. Neither option is any easier than the other to write, but the latter may be easier on your programmers.
I didn't figure it was going to be easy, but if/then statements seem like they would be the way to go for a lot of the branching, at least up to a point. I may have some stuff that's kind of gnarled up even with the if/thens.

I've got a main party of five characters, three of whom can be in the adventure party at any given time events notwithstanding, one of whom will be the party lead. Then another at least four assist party members, whose ability to be used are dependent on if the player has done certain things related to their faction or certain side quests, they'll never be party lead but having them in the party can result in certain dialogue with certain NPCs.


That's a ******** ton of variables for a first project, if that's what this is. Good luck, you're on a bold undertaking.

Unsealed Dabbler

Black Gabriel
Tympest
Black Gabriel
What you're attempting is difficult from both a writing and programming perspective, and you're going to have to write it in a way that facilitates the programming.

So let's say you have two possible characters, let's name them Bob and Sue. They're gonna talk to a guy named Dave. This is easy.

You write:

(Dave, if Bob) Hello, sir.
(Dave, if Sue) Hello, ma'am

That's easy enough. But if there's an event that makes them nobility, for example, you've added a second variable for each option, so you write.

(Dave, if Bob=0) Hello, sir.
(Dave, if Bob=1) Hello, my lord.
(Dave, if Sue=0) Hello, ma'am
(Dave, if Sue=1) Hello, my lady.

And that's BEFORE any dialogue options come into play or other event variables which would require their own quantities and for only two characters.

If you have six characters with a variable each, you could ostensibly have pages and pages of dialogue written for what's actually only a three or four text box interaction.

There are some shortcuts that can be used in the programming for certain types of variables (Like for that we could write (Dave) Hello, X (if X = M0 Sir, if X = M1 my lord, if X = F0, etc.) but that's a whole 'nother story and my examples aren't in any actually specific programming language and the whole thing could be infinitely more complicated or possibly easier based on the language and engine you're using, but that's beside the point.

You as the writer can do it one of two ways.

Write each possible scenario as its own tree, or write the full tree out like I've demonstrated above. Neither option is any easier than the other to write, but the latter may be easier on your programmers.
I didn't figure it was going to be easy, but if/then statements seem like they would be the way to go for a lot of the branching, at least up to a point. I may have some stuff that's kind of gnarled up even with the if/thens.

I've got a main party of five characters, three of whom can be in the adventure party at any given time events notwithstanding, one of whom will be the party lead. Then another at least four assist party members, whose ability to be used are dependent on if the player has done certain things related to their faction or certain side quests, they'll never be party lead but having them in the party can result in certain dialogue with certain NPCs.


That's a ******** ton of variables for a first project, if that's what this is. Good luck, you're on a bold undertaking.
It is a first project, yeah, at this point I'm honestly considering getting one of those big cork boards and setting it up like something out of a crime show so that I have a visual example of how everything should connect. Thanks.
Tympest
I wanted to see if anyone else had experience with writing something like this and if they had any tips that might help.

I've done this kind of work before. Tell me, are you using dialogue trees for everything? Or, are you using a system where the player can choose dialogue options for some things, but not everything?

Unsealed Dabbler

Maltese_Falcon91
Tympest
I wanted to see if anyone else had experience with writing something like this and if they had any tips that might help.

I've done this kind of work before. Tell me, are you using dialogue trees for everything? Or, are you using a system where the player can choose dialogue options for some things, but not everything?
I'm leaning towards using dialogue trees for everything, though there is some stuff I think I might need to just force a yes/no option for rather than anything else.
Tympest
I'm leaning towards using dialogue trees for everything, though there is some stuff I think I might need to just force a yes/no option for rather than anything else.

Alright. Then the best piece of advice I can give you is to echo what Black Gabriel said, try and find a compromise between something that's easy to write, and what's easy to implement. There's no standardized way people code these things, so you're probably going to want to sit down with your programmer and plan this out.

If you're curious, I can write up a quick dialogue tree, if you think it'd help to see how I make them.

Unsealed Dabbler

Maltese_Falcon91
Tympest
I'm leaning towards using dialogue trees for everything, though there is some stuff I think I might need to just force a yes/no option for rather than anything else.

Alright. Then the best piece of advice I can give you is to echo what Black Gabriel said, try and find a compromise between something that's easy to write, and what's easy to implement. There's no standardized way people code these things, so you're probably going to want to sit down with your programmer and plan this out.

If you're curious, I can write up a quick dialogue tree, if you think it'd help to see how I make them.
That makes sense. I figured I would need to sit down and talk with them one way or the other, nothing I've read has suggested otherwise, but you're right I want to have a fairly easy to write set up that the programmer is also comfortable with.

If you could do that, that would be excellent.
Tympest
That makes sense. I figured I would need to sit down and talk with them one way or the other, nothing I've read has suggested otherwise, but you're right I want to have a fairly easy to write set up that the programmer is also comfortable with.

If you're really lucky, he or she will be able to just create a program that lets you design and import them into the game really easily. If not... well, I hope you like spreadsheets.
Tympest
If you could do that, that would be excellent.

Sure. But don't be offended if it takes me a few days. My work schedule is... weird, they've got me working nights then immediately switch me to days half way through the week. If you've had to do this regularly before, you'll understand. If you haven't well, in scientific terms: Brain go mush.

But whatever. I've been meaning to get some dialogue tree practise in anyway, so, it's all good.

Unsealed Dabbler

Maltese_Falcon91
Tympest
That makes sense. I figured I would need to sit down and talk with them one way or the other, nothing I've read has suggested otherwise, but you're right I want to have a fairly easy to write set up that the programmer is also comfortable with.

If you're really lucky, he or she will be able to just create a program that lets you design and import them into the game really easily. If not... well, I hope you like spreadsheets.
I'm not a huge fan of them, but I can make do.

Maltese_Falcon91
Tympest
If you could do that, that would be excellent.

Sure. But don't be offended if it takes me a few days. My work schedule is... weird, they've got me working nights then immediately switch me to days half way through the week. If you've had to do this regularly before, you'll understand. If you haven't well, in scientific terms: Brain go mush.

But whatever. I've been meaning to get some dialogue tree practise in anyway, so, it's all good.
I'm familiar with that feeling, take how ever long you need. Thank you.

Quick Reply

Submit
Manage Your Items
Other Stuff
Get GCash
Offers
Get Items
More Items
Where Everyone Hangs Out
Other Community Areas
Virtual Spaces
Fun Stuff
Gaia's Games
Mini-Games
Play with GCash
Play with Platinum