[ / / / / / / / / / / / / / ] [ dir / random / 93 / biohzrd / hkacade / hkpnd / tct / utd / uy / yebalnia ]

/agdg/ - Amateur Game Development General

AGDG - The Board
Name
Email
Subject
REC
STOP
Comment *
File
Password (Randomized for file and post deletion; you may also set your own.)
Archive
* = required field[▶Show post options & limits]
Confused? See the FAQ.
Embed
(replaces files and can be used instead)
Oekaki
Show oekaki applet
(replaces files and can be used instead)
Options
dicesidesmodifier

Allowed file types:jpg, jpeg, gif, png, webp,webm, mp4, mov, swf, pdf
Max filesize is16 MB.
Max image dimensions are15000 x15000.
You may upload5 per post.


Welcome to AGDG, keep working on your game anon!
See also: /ideaguy/ | /vm/

File: c661ee6ab05bae8⋯.jpg (113.07 KB,1080x1247,1080:1247,the bun.jpg)

556354 No.30754

Did you ever encounter a methodology for branching story construction laid out? Esp. handling it in engine?

I have a couple ideas and I'd love to compare them to industry practices.

____________________________
Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.

9b8ff1 No.30762

>>30754

Might as well let us know what your ideas are. I have no idea what you're talking about.

Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.

44fc4b No.30767

>>30754

>methodology for branching story construction laid out?

Do you mean how to sketch the plot out?

It shouldn't be that much different than making up story for gamebook, so this may help you:

https://www.youtube.com/watch?v=qL2U4rIeNpE

> Esp. handling it in engine?

It depends on what kind of game you're making. In a visual novel with rpg elements it would be different than in a roguelike.

Also this: >>30762

Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.

556354 No.30813

File: 7a5ed0bc985f26c⋯.jpg (63.89 KB,480x478,240:239,doot doot.jpg)

>>30767

>Do you mean how to sketch the plot out?

>It shouldn't be that much different than making up story for gamebook, so this may help you:

But it is different. In a game there's more to interaction than moving through entries in a book via singular decisions. You get shit layered atop of each other: dialogue options, environmental changes that have weak correlation with the plot but erode the narrative if you don't address them (example: your pc just devastated a shop, an npc appears as part of some story thats triggered by something else. If he doesn't modify his response to all the broken shit you just fucked the immersion), crucial npc death, shifting pc power level etc. And to multiply all that it ought to be interconnected, so that a portion of your decisions has at least a minor ripple effect in unrelated instances (like someone commenting what happened in that shop in the next town over and maybe it inverting the kind of interaction that is available to you from that character).

If story and dialogue play a major role in the game simply sketching it out will produce an unnavigable monstrosity or you will have to limit the level of interaction. I think a lot of games got fucked that way in the last decade and a half. Devs settled for simple progressions and focused on graphics. If big successful companies (lets say CD Projekt) still do it like that it means there's a serious myopia going on in the industry.

Yeah, I'm mostly thinking rpg, although it applies to most everything that you'd wish to add a large volume of dialogue to.

>It depends on what kind of game you're making. In a visual novel with rpg elements it would be different than in a roguelike.

I actually don't think so. You can apply roughly the same formula to it, only the context shifts. The volume and gameplay function of the dialogue is strictly up to you regardless of genre.

I'm currently looking into middleware and plugins for various platforms, articy, fungus etc. If anyone knows some interesting tools like that please do share. Also I think some tools might get repurposed for this task?

>>30762

Well, one of my ideas is to scale down the pool of characters the player is heavily involved with and treat them all as a single entity, where you update all the options, all the hub dialogue etc. with every decision the pc makes and you try to backtrack as little as possible. Then you can facilitate immersion through deep interaction (there's reaction to literally everything and very little repeats, even across different runs) and can be written somewhat like in a workbook. This format is obviously limited, of course.

After some consideration I can't share my other idea because my ass would explode into a fiery inferno if someone took it and made something and I'd just got stuck in dev hell forever.

Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.

d0f722 No.30826

File: 702fb635b39c149⋯.png (16.75 KB,532x208,133:52,branching.png)

Let's start with the simple stuff. Imagine any plotline as a line on a piece of paper where points on the line represent significant events that can change the story. The shortest path from beginning to end (winning) is called the "critical path". The player may make decisions that determine how the story goes, but you have to write these decisions and the branches into the story.

> handling it in engine

is asking for an awful lot because "in-engine" can mean anything. You could have the game decide branches based on the state of the program.

Branching based on player decision:

< Evil: "I am the Dragonlord! Join me or perish!"

< CPU: "Y/N?"

> Hero: "Okay."

< Evil: "Wut? Uhh... I guess the game's over now."

Branching based on an algorithm:

< Evil: "I am the Dragonlord! Join me or perish!"

< CPU: What happens next depends on the hero's Evil rating

< CPU: 80% and above: hero automatically joins the Dragonlord

< CPU: 40%-80%: grant the player a choice

< CPU: 40% and below: hero automatically refuses

< CPU: Player has RPed as 32% evil. The hero refuses.

> Hero: "Begone from this world, foul fiend!"

< Evil: "Hahaha! And now we do battle!"

Note that the content for each choice has to be written, which is why a most games are very linear.

Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.

d0f722 No.30827

Now as for the details...

> You get shit layered atop of each other

Yes. You can have the engine make decisions based off all of the data that you have collected. You have to decide what data you want to collect, how you want to track it, where you will make the decisions, and what decisions you will make.

Fallout simplified everything into a Karma rating, good or bad. Do good deeds and everyone in that town likes you, do bad deed and everyone in the town hates you. Then some people react differently based on special events. Generally, you put a state machine and relationship manager on every NPC.

To build something of your own, start with the end results, the final outputs you want to see, and work backwards from there. If you break shit in a store, people think you are an asshole. What does it mean that people think you are an asshole? Changes in dialogue? Refusing to talk or sell to you? Raising prices? And which people will think this? Only the shopkeeper whose shit you wrecked? All shopkeepers? Only people in the same town? Once you decide that, figure out how you will store the information. Is it a flag, a counter, a percentage? Does it belong to the person, the city, the world?

Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.

9b8ff1 No.30832

>>30813

I might come off as rude when I say this, but you are using language that is so vague/abstract that I cannot understand what you mean.

Instead of saying something like "facilitate immersion through deep interaction", why not give a concrete example of what that might look like?

It might even be useful to write user stories. "As a player, I control my party as a single character. When I equip the main character with an item, all the characters in the party are equipped with that item."

Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.

f49ee3 No.30921

>>30754

this is a pretty interesting question, I've wondered so myself on occasion

for the methodology, you some sort of graphs for visualization, I've never found an app for graph handling that isn't shit though

I also like to keep everything extremely documented with thoughts I had when writing it out,

so for example, the graph handle and documentation fits very well something like gitgud wiki pages,

as for handling it on the engine, first of all let me give you a brief of my game

gonna be sort of text based/vn style, where you have each scene with a background image, a tiled menu for options, a text box for dialog and other info,

so I need some sort of conditional checking, to see if player meets the stats, if there is some global trigger or something of the kind right?

this was a big challenge to think for quite some time, and the way I figured it right now, is to have these "fork" scenes, that just check for conditions and point to another scene,

pretty much like a regular scene, where it would fork between different player options, but this scene forks without any player interaction if that makes sense

I've also envisioned that any sort of action (player gains, buys, sells, achieve, unlocks event) is also a sort of scene that takes place

so for example all of these scenes are inherited for the same root class so they can be interchangeable when the game calls them from the same data base

I don't know if this is exactly the best way to handle it, but seems to me like a smart solution, of course subject to change still

Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.

3a5377 No.31265

File: 5436bf4c23f84d2⋯.png (755.49 KB,2242x3681,2242:3681,WHLq20t.png)

>>30813

>In a game there's more to interaction than moving through entries in a book via singular decisions. You get shit layered atop of each other: dialogue options, environmental changes that have weak correlation with the plot but erode the narrative if you don't address them...

Well the thing about that is that most games really don't have much branching in the storyline. In Ocarina of Time, you're either and adult or a child, and say you're at Kokiri Forest, there's a flag to check if the Deku Tree is dead, and another flag to check if you beat the Forest Temple. That's about as complex as it gets in most RPGs, and a couple of if statements are more than enough to get the job done:

if (defeatedDekuTree)

{

person.say("Hey the Deku Tree is dead")

}

else

{

person.say("You should visit the Deku Tree")

}

Really that's how 99% of games handle descisions and branching storylines. There's no dynamic approach because you need to hand-craft the dialogue anyway, therefore you still need to manually account for all possibilities.

MM is a more complex take on this system, but at the end of the day it's still a bunch of if statements, and it's generally compartmentalised. You won't hear an NPC in Clock Town mention something you did in Stone Tower. The complexity of branching storylines grows exponentially. Adding one branch to your story doubles the amount of potential conditions, adding another branch doubles it again, and so on.

> I need some sort of conditional checking, to see if player meets the stats, if there is some global trigger or something of the kind right?

Yeah it's called global state variables and if statements.

The only other approach I am aware of is to make your game world fully dynamic. Consider Sim City. Raise taxes, people move out of the city, the tax income drops, the fire department is underfunded, the city catches fire.

The problem is that humans are complex, and I am not aware of any game which takes a dynamic approach to NPC interaction. When you make a system dynamic, almost by its own definition it can become unpredictable. It would kinda suck if you're playing some RPG and the king decides to have you executed because his corrupt advisor said you were trying to overthrow his rule. Game over. When you create a dynamic system, you can end up creating a system which behaves in a way which is not 'fun', or might even put the player in unwinnable situations.

So yeah, those are your choices. A bunch of if statements and global state variables, or you can vanish into a cave for a decade trying to make a dynamic system which works.

Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.

464a64 No.31269

Valve uses http://www.valvesoftware.com/publications/2012/GDC2012_Ruskin_Elan_DynamicDialog.pdf for dialogue and could be applied to usual RPG stuff as well. The future is designing autistic Stalker-style systems and dropping the player off ingame to interact with said systems.

Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.

bb13f1 No.31270

File: 19ed50d76104d45⋯.jpg (327.87 KB,1280x1023,1280:1023,trespasser05.jpg)

>>31265

>The problem is that humans are complex, and I am not aware of any game which takes a dynamic approach to NPC interaction.

>When you make a system dynamic, almost by its own definition it can become unpredictable.

>It would kinda suck if you're playing some RPG and the king decides to have you executed because his corrupt advisor said you were trying to overthrow his rule.

>Game over. When you create a dynamic system, you can end up creating a system which behaves in a way which is not 'fun', or might even put the player in unwinnable situations.

This scenario isn't unwinnable, unless you are imprisoning the player in a cutscene or room with immortal enemies and change to the game over screen.

Before the King can execute the player, his people first have to find him, defeat him, capture him and then bring him to the executioner. During all of this the player has the chance to avoid his fate and still "win". Should he fail all of the challenges he deserves to have a game over screen.

But your post is a good explanation why video games are stuck in the same routines and can't progress, the developers are afraid of complexity and somewhat lazy.

In current video game design NPCs are used as sign posts, vending machines and actors to disperse information and items to the player, so of course they are unable to react if the player goes off script with his actions.

To actually be able to authentically react to the player the NPCs would have to be independent agents, that act after their own desires, needs and knowledge.

The reason why most game dev are afraid of these independent agents is that they can expose flaws in programming.

A good example for that is the failed video game Jurassic Park Trespasser, originally the game was suppose to be a survival horror game in which the dinosaurs behaved like real animals and react to the player based on their mood. However the developers weren't able to fix a bug in the dinosaurs AI and so they just maxed out the dinosaurs AI "anger" level and turned the Game into a shitty FPS with awful controls.

The other problem is that most game devs think like traditional story writers, when in reality they have the same job as a pen&paper game master. This way >>30826 of thinking about plotlines is a huge problem.

Instead of thinking in plotlines, think of the actions and goals you demand from the player as challenges. You give the player the tools to solve these challenges and then reward the player depending how they manage to lose or win them.

Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.

3a5377 No.31272

>>31270

>the developers are afraid of complexity and somewhat lazy.

They are afraid of complexity because it is difficult and risky to implement. Like you said, there was a bug in the dinosaur AI. When you make dynamic systems, it can be much harder to track down those bugs because there are an almost infinite number of states to test

Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.

a266aa No.31278

YouTube embed. Click thumbnail to play.

>>31272

>They are afraid of complexity because it is difficult and risky to implement.

Of course, but you can't forget that video games as software are part of computer technology and as it advanced the technology naturally becomes complexer.

There is a reason why so many gamers are dissatisfied with the current state of video games and a part of that is that new video games a no longer technological improvements over previous titles and in fact behind what would be possible with the technology we have reached.

This wouldn't be a problem if game developers would create games that are solid concepts that max out or do interesting things with the technology they have at hand, but sadly even that isn't happening besides some individual case.

On youtube there is a good polish documentary(activate subtitles) of the development history of the german cult game Gothic and how it basically came into existence because two computer science students wanted to explore the then new 3D graphic for themselves and created their own engine.

They created one of the greatest computer RPGs, with a detailed and complex story for its time and yet during most of the development they didn't care about the story besides some rough thematic directions. Only after they were finished with creating the world did they fill out the rest.

Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.

514596 No.31282

>>31278

That's a great documentary. Thanks for sharing it. I played Gothic in 2002. It's weird to think that it's been 16 years. It's always been a game I like to hear about and to revisit every few years.

Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.

f49ee3 No.31326

>>31269

> Elan Ruskin

that can't be real....

so it was a presentation, wasn't it recorded?

Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.

506d53 No.31352

>>31270

This could only work if the game had no dialog but instead showed only vague images and sounds.

How could you have a fully dynamic suite of NPCs, that change and adapt a plotline based on a characters actions (the PC is just another character, NPCs would need to be affected by other NPCs in the same way as a PC), and still have dialog?

It would need to be abstract communication, which could work with some games and themes, but not in an RPG we're all talking about.

At the end of the day, someone has to write the dialog. It has to be hand done based on a set of known decisions and events (I can't write something I don't know happens), so that means the plot has to be hand configured anyway.

You can make a complex story and intertwined plot and events (a program called Twine is actually good for doing this, you can make a game in Twine actually) just with more time. More time means more complex story.

But you can't make it truely dynamic or emmersive. You can make it so large and complex that it seems like it, but that's all.

Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.

d84873 No.31353

>>31352

To continue this thought now on a different machine.

Can you envision a dialog-less game that communicates through to the player based on only vague images and sound?

It would certainly cost less to localise all the text strings :)

Because if anyone here can think up a game where this would work, I think I could easily code up a basic implementation.

I'm thinking it would need to be strongly character driven, because the communication seems like it would be very "emotion" driven.

Love Hearts floating above characters, high-pitched excited sounds from a character, that sort of shit.

Actually, this sort of thing could already be present in a game like Crusader Kings.

Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.

464a64 No.31372

>>31353

>>31352

>How could you have a fully dynamic suite of NPCs, that change and adapt a plotline based on a characters actions (the PC is just another character, NPCs would need to be affected by other NPCs in the same way as a PC), and still have dialog?

I posted >>31269 for a reason.

Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.

93ae73 No.31385

In order to have something truly dynamic and responsive to the player would be to build some low or mid level AI. Otherwise anons have pointed out the flaws: you can't pre-write dialogue for a scenario that is dynamically created by the system at run-time.

Large branching stories are one way to go about it. Having some kind of Mad Lib scenario could also add a small amount of variety.

>Dost thou love me?

>Y/N

>N

>But thou must!

I've wondered, though, if some kinda of program could be written to take the 6-8 basic story types (man vs man, man vs nature, etc etc) and start to build out stories from them. Give it a huge database of names, locations, etc. If all of this fiction we consume is so repetitive, why can't we boil it down to the basics and then build something up from there?

Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.

9e40cc No.31390

>>31385

I've personally contemplated this but never tried to implement.

As you say, there are 6 or 8 story types to chose from. There can be a database of potential "characters" to make them etc.

For example, Dwarf Fortress does an okay job of dynamically creating the "lore" of the world.

The trick is to dump the player into the middle. Every story would likely need to have the player as one of the characters.

But again. It's easy if it's just some quest markers and randomly created "dungeons". But how do you handle interesting character interactions etc?

Disclaimer: this post and the subject matter and contents thereof - text, media, or otherwise - do not necessarily reflect the views of the 8kun administration.



[Return][Go to top][Catalog][Nerve Center][Random][Post a Reply]
Delete Post [ ]
[]
[ / / / / / / / / / / / / / ] [ dir / random / 93 / biohzrd / hkacade / hkpnd / tct / utd / uy / yebalnia ]