Showing posts with label progression. Show all posts
Showing posts with label progression. Show all posts

Wednesday, 18 August 2021

#32 Quest Objectives

 Today I'm gonna think and write about quest objectives. Indeed, making them distinct from quest goals will help understanding that matter more clearly, I feel.

Events, Goals and Quest Objectives

In my quest definitions so far one prevailing element is the existence and juxtaposition of events and goals. Since for me at least it never wasn't really clear how their relationships is, I'll try clarifying that in this episode.

Events and goals have in common that they are mental constructions, part of mechanisms in the mind. Events can be defined as abstractions and summations of movements perceived:

An event is thus fundamentally about the change from a previously perceived state. 

Goals on the other hand do not refer to the trueness/falseness of something in the world we perceive. Rather they make a statement about something one wants to be true/false therein:

A goal is about a future state that is wished to become true.

Note that unlike events, goals are bound to an actor of sorts. Events on the other hand are not necessarily originating from an actor only.

We see, that the production of fitting events is the means to fulfill a goal. We also see that the audience always needs to have at least one goal: That of wishing to continue to experience the story. This applies for all media, but mind how this plays out different in e.g. books and computer games: Usually the effort to continue the "book-experience" is trivial: You merely have to turn pages (those are the events needed). In games however the player's ability to participate in event triggering allows for much more complex ways of building the events necessary to reach the goal of "continue game-experience".

But of all this I've talked already lengthily in my post on narrative drive. I'll now turn my eyes towards quest objectives. First, what makes an objective different from a goal? Consider the question of goal-authorship in video games: It is obvious that the player's mind is the last instance of goal-creation. However those goals are oftentimes inspired or even afforded by the game: For example landmarks or those written goal propositions we get whe playing a quest:

Quest objectives in TES V: Skyrim. Source

These I call quest objectives and we see they are designer created and, as quest items, explicitely referenced by a quest system. By quest system I mean that part of the game's code that is responsible for revealing the events of a quest.

Here follows a short list of guidelines I think sensible:

  • The KISS principle: Keep it simple, stupid. Players shoudn't have to employ specific postmodern literacies to decipher the objective presented to them.

  • Thematic cohesiveness: As with all game elements, the objective too should feel fitting to the theme. One might use e.g. "thy" instead of "your" for a heavily medieval themed game.

  • Player expression: As with decisions, goals allow for expressing player thoughts. If a player likes a character, for instance, then you might insert an optional goal of talking to that character before moving on at an important point in the narrative.

Typologies

There have been several attempts to create typologies of (quest) objectives or goals in games. I'll present one here as a pool of inspiration without much further discussion.

Firstly we have Debus, Zagal and Cardona-Rivera (2020):

Choose, Configure, Create, Find, Obtain, Optimize, Reach, Remove, Solve and Synchronize

When reviewing books on quest design or video game storytelling such as Jeff Howard (2008) or Lee Sheldon (2004), then I find that those do not provide exhaustive overviews of such goals. Their value is much rather in the attempt of an overall synthesis of thoughts on their respective topics. What a luck that there are on the hand scholars devoting themselves to specifiv topics such as a listing and destilling of "imperative game goals" (Debus et al.).

Further Reading / Inspiration

  • Wictionary Contributors. event, goal. What a time to be alive for linguistically interested people.

  • German Wikipedia Contributors. Ereignis (event), Ziel (goal).

  • Lee Sheldon (2004) Character Development and Storytelling, p. 224ff.

  • Jeff Howard (2008) Quests - Design, theory and History in Games and Narratives, p. 101ff.

A Solarpunk Quest: Implementation Part 2

I'm going to continue my quest for quest implementations. Here is the latest progress:

And it is in its finished form, for now. I added some consequences to the choices and reused the part about tanking from the sun, which I introduced in the first version. Also, some CSS magic, as you see.

Ideas for Feedback

  • What design principles do you know or have for (quest) objectives?

  • Do you catch up with the story progress in "Sustain the Moon"?

Conclusion

Another post is another win. And I am content with finally having thought and talked about the event/goal/objective difference, whose relations were a point of annoyement to me for quite some time now. Also the feeling of having been able to prototype a quest so fast with inkle is great. I'll probably do that again.

Until then, have a good time!

Wednesday, 7 July 2021

#27 Suspense

While we dived into enduring things last time, today I'm going to write about how to use those things which aren't there yet. It is about the feeling called suspense. Afterwards, I'll apply my learnings in an unexpected manner.

Suspense

That, of course, was a lie. But it showcases what I mean: The feelings that arise in an audience when there is an unresolved conclusion, a missing tone in a harmony, a foreshadowing, an interesting mystery.

On the designer side we're talking again about expectation management, about which I previously wrote a blog post. There I differentiated an expectational arc into promise, progress and payoff. The promises were divided into meta-promises (setting up the style of the work), world-knowledge (setting up the storyworld) and hypothesises, which are all expectational arcs related to how the story unfolds. One could say they are concerned with questions and statements such as:

  • "What happens next?"
  • "Probably X will happen"

This is what storytelling, to my knowledge, is interested in: The dynamics in the audiences heads while the story is told to them and of course - how to create which ones.

In my previous post I also wrote that "expectation management fundamentally breaks down to the gaps between":

  1. how it really is - story
  2. what informations are presented/revealed - plot
  3. what is understood - player's mental model

Furthermore: "Storytellers [..] may use the gap between points 1. and 2./3. to make a story more compelling through interesting reveals at the right time (pacing) and subversions".

Now, one way of creating interesting reveals is to make a prominent and meaningful promise, dragging the progress slowly but steadily while keeping on promising prominently, and creating a final reveal.

I'd label the feeling felt while progress is building suspense. It is on the same page as moments of intensity, of "holding ones breath" or not being able to see what'll come next.

What will happen to the man? What is the kid's role?

There surely are other such patterns: I'm thinking of surprises, plot twists, the calm before the storm, a moment of rest and such things.

But for today, let suspense be me guide.

Further Reading / Inspiration

  • #20 Expectation Management, link. The basis for this post, containing the sources to concepts like promise, progressm payoff and hypothesis

  • The Building Of Stories, page 55 and following, link. A very nice explanation of what suspense is and how to create it

  • Bordwell, Thompson, Smith: Film Art, Chapter 3: Narrative Form. Great book that consciously differentiates between story and plot, and builds its advices based upon that.

A Cyberpunk Storyquest - Writing Suspense

Searching to get something finished, I'll continue on the cyberpunky storyquest I began last time, hoping that such a smaller project will be finished more likely.

What will I do? I'll write. The moments I present here are those where I wanted to create suspension:

The sun is setting in my back
Orange lights - no, red lights chasing me
Black and red, devils forms
Accelerating, catching up, surrounding me
Their hatred is approaching me

My senses on alert
What is it?
1.) That smell..
2.) Them sounds..
3.) Those vibration..

 ...

The constant beat
Again, again and again
My body a flash of violet and silver
A fiery violet heart, oceans of anger
Waiting to be unleashed
We need to press on

You and me, my military friends
You'll drive me into my abyss, your abyss with your whips of steel

In the first case it's about withholding what it is, that's following the avatar (which is revealed when choosing any decision line), in the second case the player might wonder more intensively what his avatar is acually up to.

Ideas for Feedback

  • What other patterns of expectation management (like suspense, twist, etc.) come to your mind?

  • Are my writing samples not clear enough in their promise to be suspenseful?

Conclusion

This post had a very nice topic and leads into a direction that I'd like to pursue further. There are already several possible related topics on my mind.

There is a certain suspense to life itself too, I'm realizing. What will happen with me and those dear to me? Although I of course know of the parallel between plot/story and life, this thought never came to my mind before.

Granted, for me, a certain suspense does surround my next post.

Until then, have a good time!

Friday, 2 July 2021

#26 Durability and Impact

"Half a Century of Poetry"

Of late, I've been repeatedly thinking about why I actually write all these posts. Why did the bard Dandelion write all his ballads? Why do people write down all their thoughts into countless diaries, sheets of paper, books?

One answer to these questions lies in the concept of durability, I believe.

Durability

That, which stays with us, even though the world and we ourselves might change - that is durable, persistent, it endures. The divide between duration and change is at the foundation of time, as can be seen in a previous post of mine on this topic where I found two ways to define time:

  • subjective: shows itself in the continous existence of observation and reality
  • objective: shows itself in the changes/durations that are happening in reality

Note that actually both definitions formulate time based upon the dualism of change and duration. The second one does this in an obvious way, the first implicitly refers to that with the term of continuation - in opposition to non-continuation which essentially is change.

Impact

Those things that are not or slowly changing have a more unconscious, contextual, surrounding impact. They are a room of many lower perceptions, background chatters that accompany us. If something is there only for a short time, then it grabs our attention, stands out due to its movement - it is more punctual, more embedded in the main thread of our stream of consciousness.

** A valuable lesson for quest design is thus: Use the players budget of unconscious and conscious perception capabilities such that she and you can author her the desired experience. **

The division between unconsciously/contextually and attentively/consciously
perceived information can be found in this Inception poster: Compare the
trees/cars with the main characters and street.

For quest design this is actually one of the central things to mind, if I think about it. Let's look at a formulation of the nature of quests again:

a series of connected goals and events, where subsequent elements are only revealed, when a previous event has happened (which includes reaching a goal)

The important components of quests are goals and events, where an event describes a change and a goal describes a striven for change not having happened. But there is an extra layer to this that we may perceive: Recurring changes, so the same or similar changes happening. In such a rythm of recurring changes in a timeline durability is present.

One of the main tasks of the quest designer seems thus to build changes and durations. I think that merely showing something often and preferably to the players conscious senses makes the thing more outstanding to him.

** So a second advice I'd give my future self is: Across all the changes happening in a quest, keep showing those things which should be the driving components of the quest enacted by the player. **

Let's see, if I can use those thoughts in practice.

Further Reading / Inspiration

  • Henri Bergson: Matter and Memory, see e.g. the corresponding wiki-article

  • Totten, Christopher W. (2019) An Architectural Approach to Level Design. Especially the chapter on rythm, pacing and structure.

A Cyberpunk Storyquest

For a course at my university I've been developing a quest/progression system, which I presented earlier here on this blog. Because it seemed fun and to showcase the system in a more focused context, I transferred it to some kind of a interactive novel that has serious Cyberpunk 2077 vibes.

I enjoy those colors.

A feature added are sub quests: There are now certain nodes in which you can enter a sub sequence of nodes. Planned features are a sight radius of visible nodes, a visualization of different node types and possibly a fmod integration (that would be cool). Here I want to write a story-quest for that project.

In the story, the avatar is on the run through a city, experiencing several moments of thought, emotions and external events on the way. While the story progresses and branches, immersion in the character is more easy due to staying with him/her so long. Slowly, the characters motivations and intentions are unraveled, drawing the player into roleplaying (like, actually playing the role).

The story shall be composed of several parts, maybe short-stories, the initial one defined by two questions: What are we up to? Will we achieve it?

Unconsciously, the constant, goal-oriented running through the city shall be the main topic, that endures most of the time. Consciously meeting the city and the avatar's inner shall be of concern.

I'll write down the story in section summaries. A section looks somewhat like this:

You're running
Faster and faster
The neon city lights shining
oh so bright

Each of these lines will probably have a separate blend-in. But now to the structure:

  • You're running in a cyberpunky city
  • Something is on your mind
  • There's violence nearby
    • Keep going
    • 1) Disturbed run
    • 1) Wasted opportunity of showing your fighting-power
    • Stop it
    • 2) You efficiently and powerfully disturb the violence
    • 2) An extra sprint is necessary
  • The avatar believes in his/her rising
  • Is being worth it?
    • Is life worth being?
    • Is love worth being?
  • Numbness, no answer
  • A moment of being tired
  • Trotting on, but wait...
    • That smell...
    • 1) The smell of totalitarism
    • Them sounds...
    • 2) The sound of oppression
    • Those vibrations...
    • 3) The movement waves of militech
  • Something's off - the pursuers?
  • Turning up the speed
  • Images of capitalistic force - an abyss:
    • Let the streamlined winds of speed guide you
    • 1) Muscles of steel accelerate, you sprint over the abysses air
    • Touch the earth and ascend
    • 2) Metal touches asphalt, hydralics press you into air
  • A bridge is shattering, the first prophecy of machine fulfilled
  • You take in all that is around you, rise up a hill
  • There is the king, a tower of matte gray and silver-white pillars
  • Determined reaching of the goal
    • You throw the atomic warhead
    • You run into hell's gate
  • The explosion
  • The aftermath
  • The ending line

Implementing this in the system would be rather tiresome, since every separately blended in line would need an event that has to be set up and wired manually - without visual scripting. That's why I won't do this now. Another reason is that I've written only the outline here, but actually lines are only there until (including) "A moment of being tired".

Ideas for Feedback

  • What other design principle might be formulated on the basis of the duration/change dualism?

  •  The short story is intended to be rather fast-paced. Do you think the concept might work?

Half a Century of Poetry

Granted, I didn't write about durability right now out of interest alone (even though I (guess one perceives that) do am intrinsically interested). This post carries the number 26 in its name, which is the half of 52, which is the number of weeks in a year.

Meaning, my "one quest design a week" is halfway through. What remains of the first half? What will remain at all? / What durability will this blog's content have?

To answer the first question: Well, a small encyclopedia of preserved thoughts for one. As I stated in the conclusion of post #24, a motivation for this is probably in the somewhat self-expressive need for putting thoughts down, develop and synthethizing them. Communicating those things to others is rather a nice side-effect.
Secondly, a feeling of achievement is there. I've written 26 posts with theory and practical share and I'm proud of each of them (even though some are more dear to my heart). Many of the theoretical things have brought advancements in my own thinking about the topics. I know from those blog statistics that I'm not the only one reading my ramblings. I've received feedback one or two times, and it was positive. I've been able to use the posts to advance my other projects. And, most importantly, I feel more confident doing quest design.
On the other hand: I'm missing bringing a quest from idea to implementation here. I tried doing this with that Witcher quest, but I didn't even finish the design phase yet. Maybe this just isn't the right environment to do this.

What will remain at all? I strongly believe that the positive effects noted above won't fade away. Whether my practical goals will be achieved better, I don't know yet. I'm unsure if the blogging will continue when the project is completed - a casual post here and there might be something. I'm hoping to improve, solidify my quest design skills and reach a certain level of competence. Like, being able to quick and dirty design and implement a quest in a selected range of engines, given any idea.

Freedom of Thought         

I'm sure this won't be a work like Julian Alfred Pankratz viscount de Lettenhove's "Half a Century of Poetry", especially not in importance for the history of word in its world. But I do feel - for myself, I don't expect others to feel this - a certain beauty in this. A beauty of allowing myself to progress and express in my very own way - chosen based on freedom.

Conclusion

The tempo isn't fast and decreases in small steps only, but I think the rate of posts on time is drawing close to zero. I'm missing a post on pacing and rythms yet, might be that there's something coming from that angle. We might also meet endurance again if I say something about cycles in (between) game/gamer or if I would take a look at memory.

Writing about this is very fascinating to me, because it is so closely tied to matters of life and death - when I'm dead, my self no longer endures, or at least I think so. And what endures in my self while I live, that is, what is relevant to me. And if it shows in my consciousness, then I can inspect that.

Well okay. There was also that Cyberpunk 2077 inspired short-story-side-quest-thingy, where I wanted to inject some design principles. But I realized, that the injection doesn't work when planning the high-level sections, but only when doing the concretest work, e.g. writing lines and decisions in this case. I'd like to finish this, but I fear that I'm kinda not doing quest design then any more: That is rather operating on that higher level. Ah, to have a writer who'd do that for me.

Enough talk for this already (again) long and thought/text-heavy post. I'm thankful for you, unknown reader, who might have discovered/seen and read this. I hope you found something of value.

Have a good time!

Monday, 21 June 2021

#24 Dialog Systems & Ocularis

 Today we're going to talk about dialog systems, their integration in quest systems, and how I implemented such a thing.

Dialog Systems

Let's hear what Chris Bateman has to say about dialog systems (or engines):

"A dialogue engine is the means by which a game speaks. This software mediates the delivery of all dialogue (and monologue) inside the game"

Consequently we may understand them as a component of the medium computer game, being in particular responsible for the channel of perception that is "speech" or "conversation".

So we usually have the possibility here to deploy speech lines, e.g. a sentence being displayed as a subtitle, heard out loud or seen as a (possibly synchronized) lip animation. Lines are usually not unconnected from each other but tied together into forms like trees, graphs, hubs and so on.

Many dialog system allow choices, in which the player is given with the possibility to steer the dialog flow. Oftentimes a list of written options is presented which can be scrolled and selected. There are special variants like timed choices, optional choices (on which lines follow that lead back to the same decision node), choices that lead to special mechanics (e.g. a boxing minigame) and so on.

Furthermore, additionally, moreover, especially nowadays many dialog engines tend to lean towards a more cinematographic style. Dialog partners/actors are positioned, there are fadings, blends and NPCs may walk around in the shot.

In general - the gaps between cinematic, in-game animated sequence, dialog scene and gameplay tend to blur more and more. This is for example visible when tracing CD Projekt RED's games. While Witcher 1 had that classic distinction quite rigorous and didn't make much use of cinematography, already Witcher 2 very explicitely employed cinematographic principles to tell certain things. In The Witcher 3 cutscenes and dialog scenes became almost indistinguishable because of the possibilities that were added to the dialogsystem. In Cyberpunk 2077, dialogs and cinematic sequences aren't separated from gameplay but flow flawless into each other.

Here is an example (Cyberpunk 2077 main quest spoilers), where the gameplay literally is the scene. Dialogs and choices dynamically pop up when moving around the space. The space is set up in such a way that the player is automatically drawn to look at certain things the right way.

The last point I'll consider here is the means of activation - when does a line (text or choice) fire? As Bateman puts it, "event-driven engines are by far the most common form of dialogue engines". So basically all those systems in which batches of lines are played to the player (haha) when some event in the game world is happening, say, a weather change or the player enters a certain area. this is the type I'll be implementing below.
Bateman distinguishes two more dialogue engine types: Topic driven engines are those in which the next lines is determined by the current context - which actions have been done, what items are in the inventory. It is less about when lines are played but which.
Dialogue trees, or maybe rather branching dialogues, are dialogue systems which allow for different subsequent lines depending on a choice made.

When you look at it, these three aren't actually completely distinct (in the sense of you can't have them at the same time) but rather different features a dialog system might have.

But now let's see, how an implementation might work.

Further Reading / Inspiration

  • Chris Bateman: Game Writing. Narrative Skills for Videogames. - Dialogue Engines

    In general, I can only recommend reading this.

Dialog System in Ocularis

Ocularis (very secret project) is basically an Action-Adventure-RPG - the avatar Leonora has fighting abilities, but she also talks a lot to herself and the ones she finds in the world. The world is constructed as a space of progression, and depending on that space-progression both fighting and dialogue-events are delivered. So this is how quests are in Ocularis.

And this is how the dialog engine works:

Overview of Ocularis' dialogue engine.

In every level an overall UI for dialogs is instantiated and communicated to all scenes. A scene object in Ocularis consists of 

  • a scene trigger (usually a box that the player may run into), 
  • scene content (text and choice lines), 
  • scene logic, which is responsible for blending in/out the dialogue UI, setting texts in it, adding/removing choice options and forwarding to the next line. And also dialogue-relevant player input is managed such as scrolling through choice options and selecting them is handled.

Here you'll see some in-engine (Unreal) screenshots of all that with explanations.

Example of scene trigger boxes in the level.

Screenshot of the line data structure.

Example of a scene content definitions with various text lines and a choice line.

Overview of scene logic.

The scene logic is event based: Every red node on the left is the entry point for a certain event. In the middle the scene start section is placed which  is activated e.g. by player overlap with the scene trigger box. The NextLine event is fired to calculate and deliver the next line. Text lines automatically call NextLine again, choice lines have to wait for player input, which is catched in the logic on the top left.

Dialog UI creation and propagation to scene objects in level.

A Quest Jam

Alright, this was fun. But I realized. This wasn't a quest design I wrote down - but this is what I want to commit to. So here is a short quest jam.

Scenario: Two friends meet in a café. Karla and Hannah. Karla is a notorious fast talker and always feels like there is not enough time. Hannah, our avatar, has light depressions, has just lost her job and wants to reveal that to Karla but won't feel in the right situation for that, which'll later cause tension between the two.

The level should contain the café and its surrounding and be entered upon about 9am. It should feel too open, the café has many glassy walls and little separation to other tables and guests. The player is funneled over the busy street, past a beggar who is pleading for money (representing Hannah's fear). Getting to the entrance she isn't greeted instantly, but has to call twice for someone. She's then guided to the unpleasant place and has to wait there some time, overhearing a conversation of a very successful man.

Finally, Karla arrives. She is in a rather pragmatic busy mood and starts talking long and much about her own life. The player at several times gets the choice to try bringing up her own issues, but Karla misinterprets that or quickly diverts in another direction. The noises are increasingly loud to Hannah, at some time she falls silent. At last Karla notices, but suddenly a fire alarm starts, chaos breaks out and everyone leaves the building. In the mess the friends loose each other. The player is directed to a silent place in a dirty side lane where Hannah sits down.

In a monolog with herself the player can express how he would talk to himself in Hannah's skin.

Ideas for Feedback

  • What is the meaning of life?
  • What kind of dialog system might fully evade the descriptions I gave?
  • What might be building bricks, toys to play around and construct quests with for brainstorm/ quest jam sessions?

Conclusion

What a long post. I'm wondering why I write so much about things already known or done. I mean, it surely isn't for potential readers alone. Maybe classic need for any self-expression? Maybe the strive to achieve something? I feel there's like a huge amount of ideas, concepts, text, music, images and so on in my head that just want to be put out into the world, simply because it would be kind of... stressful(?) to let them stay inside. Maybe this is about freeing my mind from the necessity of needing to let those things endure inside.

Well, on the other hand, of course, I enjoy documenting things for other people and myself to build upon that, to synthesize the knowledge and energy of people.

Those reflections are a nice closing.

Until next time, have a good time!


Saturday, 15 May 2021

#19 Quest Structure, Definitions & Mikratheus

This post is concerned with the structure of quests as it appears in video games. I'll present a conceptualization of questgraphs in The Witcher and will then continue to write down a specialized system for my game jam project Mikratheus.

The Structure of Quests in Video Games

The following abstract description is heavily based upon the radish quest editor documentation (Link) and the REDkit wiki entry to quest editors (Link). However, when looking at other games one finds that the overall structure is mostly the same.

Let's begin with my quest definition of old:

A quest is a series of connected events and goals, where subsequent event(s)/goal(s) are only revealed, when previous goal(s) have been reached or some event has happened.

With these words I tried to grab my intuition of a structure annotated with events and goals which is (usually) defined in the unplayed game and followed - experienced - by the player while he navigates the game world (which doesn't have to be a space). 

We'll see, whether this intuition holds against the irresistible truth of practice. Here follow (slightly adjusted) quotes from the above mentioned docs:

"A full radish modding tools quest definition is more than a questgraph: it contains definitions for multiple, different game aspects (e.g. layers, communities, journals, etc.). 

the questgraph [..] ties all these aspects together by controlling when and what asset is used in the player's quest progress"

More specific, on questgraphs and routes:

"A questgraph represents the possible progression of a quest by defining one or multiple static routes for a "signal""

"Routes are defined by directed connections between quest blocks."

Any route has to begin "in one globally defined startpoint" and end "in one globally defined endpoint".

End conditions:

"If the signal reaches any endpoint (no matter what route it took) the quest is finished and no further evaluation of the questgraph is performed."

Quest blocks and signal flow:

"There are different types of questblocks: some can trigger specific game actions, query information, pause the signal until conditions are met or initiate some other block-specific task."

"Multiple connections can point to the same block: no matter from where the signal originates a signal visiting a block triggers always the block-specific funtionality." 

"However some blocks (e.g. subsegment-blocks, scene-blocks, ...) may define multiple different input- and output-sockets (called in-socket and out-socket) and behave differently depending on which socket the signal arrived."

"If the block-specific action does not pause the signal until some conditions are met it immediately exits the block and continues on its route. A signal exiting a block may branch and point to different blocks at once. In this case the signal continues in parallel to all the blocks the routes point to at the same time."

 Summary:

"It is based on the idea that there is a signal, which starts in one place (Start block), proceeds through connections between blocks and starts multiple actions in the process. Signal can be diverted between multiple connections, which means that it can be in two or more places simultaneously. When any signal reaches End block, the whole quest ends killing any other signal that may still be going inside."

Image of a quest made with radish modding tools.

Looking at my definition, I see that it originates from a player view. I feel like it would fit this technical view more and more if one added some contextual definitions/statements, because the current view - even though it captures all aspects - had to be formulated in a generic way and depends on a specific assignment of meaning to the words used.

I'll continue with a concrete questgraph design made for one of the games I participated in.

Further Reading / Inspiration

  • Raddish Modding Tools on making simple Quests for The Witcher 3: Link
  • Quest Design with the Creation Kit: Link
  • A Video that makes you optimistic regarding the easiness of Quest Editor Usage (REDkit for Witcher 2, in this case): Link
  • The mundane REDkit wiki catches the pragmatics of this field much better: Link

A Quest-System for "Mikratheus"

Mikratheus is a small god game, in which you play a god sitting in front of a computer, doomed to manage his followers. There are different planets on which he's got those, and every now and then a prayer for help pops up. He may the decide whether he has enough ressources to help, or if you wants to decline but possibly loose some followers. If he doesn't do anything about a plea, then he quite probably looses a lot of follower. It is thus essentially a game of balancing.

Instead of displaying pleas randomly per planet, a progression in pleas shall get in place. To get some variety into the playthroughs, every node contains a pool of pleas from which one is drawn when reaching the node.
The decisions per plea may lead to different nodes, so overall we've got a signal based quest system quite similar to the one above.

Central to the system I created is the event pool. It corresponds to abstracted quest blocks in the description above. An event pool is a node in the quest and contains possibly several events.

The basic unit of this system is the event, containing informations on the endings to which this event may lead, a list of nodes/event pools to which an ending might lead, a field to inscribe the event's "felt" intensity (it is planned to do some automatized selection of events based on an ideal pacing graph) and a reference to the parent quest. Events, too, correspond to quest blocks, and also contain the connectivity informations.

The quest class itself holds all pools and their event and manages initialization, event fetching and update, which can be summarized as progressing in the quest. Nodes/event pools, where the signal is, are marked as active and are hold in the currentPoolsQueue. Currently happening events are hold in currentEvents.  When an event is updated to an ending, then the event pool belonging to that ending is added to the end of the currentPoolsQueue. When a new event is requested, an event is chosen from the first (= being the longest in the queue) event pool in currentPoolsQueue.


In the game, I let a class Plea derive from QG_Event and add three endings: "accept", "deny", "timeout". When a player hits e.g. "Accept" for a plea, then a method is called in Plea which updates the follower informtions etc. and calls an EventUpdate for this event on the quest it is assigned to.

In another place, the NextEvent method is called, whenever an apropriate amount of time has passed by since the last plea.

Ideas for Feedback

  • Do you think my quest definition would fit to the technical description when contextualized? If so or if not so, why?
  • Where could the system I designed be improved by "typical" quest features?

Conclusion

As the recurring reader might notice, this post didn't contain much of the much loved (by me, at least) theoretical rambling on my behalf, even though it would've been a very convenient opprtunity to do so. The reason why this could happen is two-fold, and invites for some thoughts:

  • the words I found on this topic were of such kind that I couldn't have said them (much) better
  • thinking of and writing down such ramblings is rather time-intensive in relation to the rest
In a sense, this is a way for me to provide some theoretical perspective without having to delve spend too much time on that - which is exactly the point of this project to begin with and which has been difficult for me at times. I simply like to re-think things when they seem flawed to me. On the other hand, I'll probably not often have the luck of finding such gems, where I don't feel the need for adjustments.

Looking at the Witcher and Mikratheus quest system I am reminded and grounded in what quests are (literally!). Quests offer the opportunity of progression in a partially pre-defined series of events and goals.

Well, I'm sure there are yet some other quest definitions to come.

Until then - have a good time!