Thesis Advice: Narrative Game with Imported OTHER Player Character

Started by
4 comments, last by Mark William Nations 10 years ago

I am developing a video game for an undergrad thesis. It would have an exceedingly simple visual design, appearing more like a visual novel (Phoenix Wright), but with the player maintaining stats and there being equipment. I'm focusing on a narrative that is highly prone to change and that develops a connection with the player. I would like some assistance in evaluating the potential advantages and/or pitfalls that you foresee in this process as well as any tips you may have on how to handle them. I am forming a framework under which I intend to operate.

The core design concept is that the player interacts with an NPC that is modeled on the gameplay behavior of a previous player (hopefully will be handling that with a psychology professor's and computer science professor's assistance). The player must develop a bond of sorts with this character, thereby learning somewhat about the player whose profile derived the model. I can understand that there is a huge burden placed on me in ensuring that the model accurately portrays a character who would successfully replicate the previous player's moral behaviors and/or passions. My goal to simplify this matter is to breakdown characters' interactions with the player on an array of likeness spectrums affiliated with particular ideas related to player action (much like Ken Levine's GDC panel on narrative, if you watched that). Events in the game world can affect the relevance or influence of these various spectrums.

Example: Joe loves his car (spectrum1) Joe also loves Tammy (spectrum2). If you as the player do things that improve his car and get him in Tammy's good graces, he likes you(generalSpectrum). You destroy his car, but make sure Tammy loves him, he has mixed feelings about you. You fix up his car, he may end up liking you again, but his level of trust for you has diminished (slight permanence effect to actions, even if restored). Randomly rolled event (doesn't happen the same way every playthrough. This could be picked from an unseen list): Tammy dies suddenly. Not only do your actions in getting them together no longer affect his general impression of you as much, but now, how you are involved in his grieving process is the important factor (i.e., spectrum2 has been replaced with an entirely new spectrum that is linked to different actions in the game).

When the player finishes the game, the decisions they made are used to compile a mathematical model of their moral choices and are output to a file which would likely be stored on a local campus server. From this file, the game can then load in a new "integral character" for a new game. Say Joe hated it when people break his trust / deals with them harshly, and is willing to help a runaway criminal find his lost love rather than turn him in, confiding in you his attempts to make their love flourish and asks for your help. These are elements of his personality that could be brought in from a previous game in which another player encountered this scenario already (due to him having different random events than you), and chose to help the two run away together vs turning them in. The new player then has to decide what he/she will do.

My current plan is to develop this using Construct 2 as I figured JavaScript usage would make implementing the server storage for the model communication simpler. I am completely inexperienced with databases and servers in general though (don't learn about those till at least a year from now) and I have 2 years to complete the game. Any suggestions or tips would be helpful, including but not limited to 1) story elements that assist in the type of dynamic branching I am interested in, 2) implementation predicaments I wouldn't know about to prepare for in advance, 3) criticism concerning the non-linear development strategy and character development strategy.

Thank you

willnationsdev - Godot Engine Contributor

Advertisement

Wow that's complicated. Interesting though. What is the player's main activity in the game? Is it just making dialogue choices, or do you travel to different locations or choose how to allocate time, money, or other resources? Is there combat? If the player can travel, you probably want to limit the location so you can try to make all the items and characters within that location consistently interactive with the different scenarios. Is there a time loop thing going on across multiple scenarios? That's a normal choice for anything with a new game plus going on, which you seem to have. If so, you probably want to have a long term goal for the player to work on through multiple replays. Gathering money or reputation to become the most powerful person in the setting is a possible choice for overall goal, and consistent with in-scenario goals of both protection (which requires power) and ambition.

There have been previous discussions on this forum about how to automate interactive storytelling with a "digital GM" or storytelling engine, quantifying situations, and whether or not NPC gauges and individual NPC knowledge bases should be involved; they're not going to be directly relevant to your project but if you're interested in them I'll dig them up for you. Also, are you already familiar with Chris Crawford's Erasmatron system? If not, I recommend you google that.

I want to help design a "sandpark" MMO. Optional interactive story with quests and deeply characterized NPCs, plus sandbox elements like player-craftable housing and lots of other crafting. If you are starting a design of this type, please PM me. I also love pet-breeding games.

Previously, I was wanting the main action of the player to just be making dialogue choices, but after watching an Extra Credits video about Spec Ops: The Line a few weeks ago, I've begun thinking that I need to also include the ability for the player to actually complete actions in the game (likely by selecting an item in the inventory and clicking on something in the game window to "apply" the item selected, i.e. Gun-> person = shoot person, Gun-> sky = shoot into the air). Given the choice of being told to shoot a person and then implying an option to shoot the one giving the command, the player could also choose some option which involved not shooting at all, though that wouldn't necessarily be told to them explicitly. I want to program in extra possibilities that are not telling the player what to do so that the player can put his/her mind to good use, thereby emphasizing the unique aspect of games as a storytelling device (the topic of the thesis).

There would be different locations in the game that the player can navigate to, but, like you said, I'm going to try and limit these as best as I can. I have yet to create a definitive story or setting that will ensure this result. TV "Bottle" Episodes are coming to mind. Hehe

I have toyed around with the idea of the player completing different "rounds" of the game (like in The World Ends With You), and while I am interested in doing it, I am trying to figure out how I would handle things given just a single Player-Character-Crossover before I attempt to handle seeing how multiples of them might affect the plot. If things progress well, however, I may indeed implement such a system and devise long-term goals as you have suggested. However, I don't think I understand what you mean when you say "time loop" in "multiple scenarios". Are you suggesting that I might have a real-time passage of events somehow or that the events in the story themselves repeat X number of times? Or that there is some type of split-up narrative between periods of the game that each have similar structures to each other, but have distinct differences (such as in TWEWY)?

I have never heard of a "digital GM" or the Erasmatron system. I'll go ahead and Google the latter, but I would deeply appreciate links to the former (and all the other topics you mentioned) if you have them. Anything I could use to simplify and better understand the process will be a blessing.

willnationsdev - Godot Engine Contributor

You need a suitable premise and character relationship structure in which:

  • An arbitrary number of characters can be added without great consequences (up to the expected number of "new game plus" iterations, but degrading gracefully beyond that).
  • The additional characters are substantially similar to the player character. More precisely, the player character of the previous iteration: if players can choose between different playable characters there could be different classes of "reincarnated" characters.
  • The additional characters have a "personality" that the player can perceive and understand. This probably requires the cast of fixed characters to be based on similarly complex emotional/cognitive models. What important and meaningful actions can such characters use to express their personality?
  • Character personalities can be inferred from player actions. You need to guarantee that the player performs enough measurable actions to gather the necessary data over the course of a game (including short and/or unsuccessful playthroughs).

I suggest a setting with a socially uniform large mass of somewhat varied characters, from which the player character and the "ghosts" are selected: the fraction of important characters with a role in the story can increase (but remains small) in successive playthroughs without actually adding people.

For example, recruits in military training, pupils at a boarding school, construction workers on a half-finished space station, convicts in a prison, etc.

Omae Wa Mou Shindeiru

Previously, I was wanting the main action of the player to just be making dialogue choices, but after watching an Extra Credits video about Spec Ops: The Line a few weeks ago, I've begun thinking that I need to also include the ability for the player to actually complete actions in the game (likely by selecting an item in the inventory and clicking on something in the game window to "apply" the item selected, i.e. Gun-> person = shoot person, Gun-> sky = shoot into the air). Given the choice of being told to shoot a person and then implying an option to shoot the one giving the command, the player could also choose some option which involved not shooting at all, though that wouldn't necessarily be told to them explicitly. I want to program in extra possibilities that are not telling the player what to do so that the player can put his/her mind to good use, thereby emphasizing the unique aspect of games as a storytelling device (the topic of the thesis).

There would be different locations in the game that the player can navigate to, but, like you said, I'm going to try and limit these as best as I can. I have yet to create a definitive story or setting that will ensure this result. TV "Bottle" Episodes are coming to mind. Hehe

I have toyed around with the idea of the player completing different "rounds" of the game (like in The World Ends With You), and while I am interested in doing it, I am trying to figure out how I would handle things given just a single Player-Character-Crossover before I attempt to handle seeing how multiples of them might affect the plot. If things progress well, however, I may indeed implement such a system and devise long-term goals as you have suggested. However, I don't think I understand what you mean when you say "time loop" in "multiple scenarios". Are you suggesting that I might have a real-time passage of events somehow or that the events in the story themselves repeat X number of times? Or that there is some type of split-up narrative between periods of the game that each have similar structures to each other, but have distinct differences (such as in TWEWY)?

I have never heard of a "digital GM" or the Erasmatron system. I'll go ahead and Google the latter, but I would deeply appreciate links to the former (and all the other topics you mentioned) if you have them. Anything I could use to simplify and better understand the process will be a blessing.

Some settings naturally have hard limits - an island, a space ship or space station, a domed colony on a planet in the middle of being terraformed or under an ocean, or magically isolated locations like

Here's a link to one of the major past threads we had about interactive storytelling. This is from before the forum software change-over, if you wonder why the quote formatting is all screwed up.

http://www.gamedev.net/topic/332564-automated-storytelling-and-interactive-plot-in-games/

And one slightly more recent one, so it won't be included among the many linked to in the first one I linked:

http://www.gamedev.net/topic/352853-did-anyone-ever-make-any-progress-with-interactive-storytelling-/

Same, a more recent one:

http://www.gamedev.net/topic/595845-character-disposition/

When I say time loops I am talking about like in the Groundhog Day movie (I recommend watching this if you haven't seen it) or various Star Trek episodes/books. The basic concept is that the main character repeatedly restarts at the same point in time, but their actions can make events progress in a variety of different ways, including new options that become unlocked by information or skills learned in a previous loop. A variety of games have played with this concept (The concept being "new game +" where the player restarts the game keeping some of what they earned on one or more previous playthroughs). ChronoTrigger (SNES), Vagrant Story (PS1), and Disgaea (PS2) are some examples. Here on gamedev we had a collaborative game design project (well, it ended up being 80% me, 20% other collaborators) for a hypothetical single-player RPG hybrid called Xenallure, and it was also one of these time-loop games. There usually is no need to distinguish between importing data from a single previous play or multiple previous plays, as the data from the first play is rolled into the data for the second play, and so on.

I want to help design a "sandpark" MMO. Optional interactive story with quests and deeply characterized NPCs, plus sandbox elements like player-craftable housing and lots of other crafting. If you are starting a design of this type, please PM me. I also love pet-breeding games.

Thanks for all of the content to examine! I've been trying to read up on some of it when I have the chance. Though I see what you meant by the story generation not being directly relevant. As interesting as it is, I don't think I'll be using a computer to come up with my plot for me, at least not in this instance.

The story structure you suggested Lorenzo will really help, thanks a lot. + the settings from sunandshadow. Designing the setting so that the player can't exactly turn away from the events of the story seems like a relatively good idea, so long as I give them some breathing room within that space.

The time loop idea is actually quite intriguing. From a programming standpoint, you could potentially re-use several different types of conversations, but implement them in such a way that there is significantly more branching within them. I could just work more on my story map beforehand to account for the increased complexity. It seems like it would make for a simpler format.

Thanks again for all of the suggestions!

willnationsdev - Godot Engine Contributor

This topic is closed to new replies.

Advertisement