Welcome, Guest. Please login or register.

Login with username, password and session length

 
Advanced search

1411589 Posts in 69386 Topics- by 58443 Members - Latest Member: Mansreign

May 07, 2024, 01:03:33 AM

Need hosting? Check out Digital Ocean
(more details in this thread)
TIGSource ForumsCommunityTownhallForum IssuesArchived subforums (read only)CreativeWritingprocedurally generated stories
Pages: 1 ... 4 5 [6] 7 8 ... 10
Print
Author Topic: procedurally generated stories  (Read 25930 times)
Charlie Sheen
Level 0
***

duh.. winning


View Profile
« Reply #100 on: November 11, 2012, 02:48:48 PM »

Okay. Can someone please explain to me what is "drama manager"? I have my own understanding of what it means (mostly comes from Facade) but I'm not sure what it means anymore.

So far people have said "drama manager = game" or "drama manager = rules of the game".
Logged
Graham-
Level 10
*****


ftw


View Profile
« Reply #101 on: November 12, 2012, 03:00:06 AM »

Yeah, this is a common confusion.

"Drama manager" means any intelligence that changes the rules of the game - say by introducing/changing some element - to control dramatic structure. So it:
  . comprehends a given game state
  . "analyzes" the current dramatic structure
  . changes the game somehow to change the dramatic structure to better represent some ideal model

So in Left 4 Dead the "drama manager" balances periods of tension and rest by throwing zombies at players at the right times, so that the players aren't pressed too hard, aren't given a free pass, and see some variation in their patterns of tension. The manager's job is also to maintain an interesting experience given arbitrary rules - like not attacking the players in one area where it might normally do so - so that consistently good "drama" is produced across varying play-throughs.

So the L4D drama manager controls the timing and size and composition of zombie attacks. I don't know what else it does but I think there is more.

The confusion often comes when people think that drama managers need to have some deep understanding of the player's experience, but this is not true. The number of lives you have is a kind of drama manager in Super Mario Bros 3. They determine how difficult a world is, how often a player has to replay a level, how likely he is to quit at any point, how short the try/fail/repeat/succeed loop is.

In Facade the drama manager is obviously more intelligent, trying to maintain a coherent narrative that is also well paced. It does so behind the scenes, making decisions about what characters should say so that the developing scene still has a lot of potential, interesting, futures.

The difference between these two managers - in Mario/Facade - is on a gradient. You can have a drama manager be as simple or complex as you want. What Gimmy pointed out was that all games have drama management embedded in their rules. The point at which we start to say "drama manager" is just some arbitrary one that we pick because we like to pretend we're writing AIs.

Really all games have drama managers of varying complexity, but complexity is not what makes a drama manager good. Good design is what makes it good. You can take any game and add drama managing components of any scale, deciding how complex you would like them to be and what elements of the drama you'd like them to enforce, independently from the game you are building.

Designers just want to make drama management a "thing." So they talk this big game about drama managers vs. normal stuff and really it's a lot of fluff, and everyone gets confused.
« Last Edit: November 12, 2012, 03:30:40 AM by Graham. » Logged
gimymblert
Level 10
*****


The archivest master, leader of all documents


View Profile
« Reply #102 on: November 12, 2012, 08:00:51 AM »

The problem of drama management is where the focus is. Mario kart as plenty drama in its gameplay, not so much on a narrative level. The rubber banding rules is drama management, it ensure that everybodies as fun by keeping tension relative to your position in the race, hence you have defensive/offensive or catch up/slow down opponents items depending of wether you are trailing or leading.

While this is not fundamentally new, "drama management" as a terms is political in promoting the idea about controlling narratives in dynamics ways.

It is a politics about expending game from challenge based experience to a fuller experience, that is all.
Logged

Graham-
Level 10
*****


ftw


View Profile
« Reply #103 on: November 12, 2012, 08:03:44 AM »

Yeah, it's like wearing your father's suit when you're a teenager to make yourself look older.
Logged
Charlie Sheen
Level 0
***

duh.. winning


View Profile
« Reply #104 on: November 12, 2012, 12:11:37 PM »

Quote
Mario kart as plenty drama in its gameplay, not so much on a narrative level.

And here was me sitting and thinking that we made it clear that there is no useful distinction to be made between "gameplay" and narrative, since, as Graham said, good game implies good story.

Quote
So in Left 4 Dead the "drama manager" balances periods of tension and rest by throwing zombies at players at the right times, so that the players aren't pressed too hard, aren't given a free pass, and see some variation in their patterns of tension. The manager's job is also to maintain an interesting experience given arbitrary rules - like not attacking the players in one area where it might normally do so - so that consistently good "drama" is produced across varying play-throughs.

So drama manager is pretty much just an adatable difficulty curve?

Quote
The confusion often comes when people think that drama managers need to have some deep understanding of the player's experience, but this is not true. The number of lives you have is a kind of drama manager in Super Mario Bros 3. They determine how difficult a world is, how often a player has to replay a level, how likely he is to quit at any point, how short the try/fail/repeat/succeed loop is.

Or simply a difficulty curve?
Logged
gimymblert
Level 10
*****


The archivest master, leader of all documents


View Profile
« Reply #105 on: November 12, 2012, 12:43:50 PM »

Difficulty is a subset of drama.

From a purely abstract point of view, interesting gameplay is an interesting stories, such that any series of events than you can relate to is good narrative.

By narrative I had refer to a more "high brow" definition, "the interesting emotional journey of psychologically deep characters and complex ambiguous situations". That is game drama focus on a narrow subset of drama, physical drama and threat drama. Manipulating other psychological and morals level with game is litteraly underachieved. Drama management refer to this aspect in general as a politically charged term. Look at deus ex, compare the freedom of physical navigation and engagement (systemic) vs the emotional and psychological engagement (still at heart a CYAO, scripted and branched). Notice that the latter is not a system and only bring flavor, not gameplay or deep interaction.

Therefore the main idea of drama management as politics is to create good games on another level than purely psychological challenge in gates based navigation. It's about creating new type of gameplay, it's about emotional navigation, interaction and freedom!

Think about it like the shift from animated cartoon based on joke (even as political and deep statement) to character driven stories initiate by disney and perfected by manga. Right now we have the equivalent of game of pre snow white, we still hasn't ghost in the shell.
Logged

Graham-
Level 10
*****


ftw


View Profile
« Reply #106 on: November 12, 2012, 12:53:33 PM »

Quote
Mario kart as plenty drama in its gameplay, not so much on a narrative level.

And here was me sitting and thinking that we made it clear that there is no useful distinction to be made between "gameplay" and narrative, since, as Graham said, good game implies good story.

In a literal sense, not a conventional one.


Quote
Quote
The confusion often comes when people think that drama managers need to have some deep understanding of the player's experience, but this is not true. The number of lives you have is a kind of drama manager in Super Mario Bros 3. They determine how difficult a world is, how often a player has to replay a level, how likely he is to quit at any point, how short the try/fail/repeat/succeed loop is.

Or simply a difficulty curve?

No. Difficulty is only a part. Let's say I give you 3 minutes easy, 3 minutes hard, repeat. Are you repeating the same level, or playing new ones? You can't tell yet.

Lives balance much more than difficulty. They balance distribution of content. They balance tension independent of difficulty. Level 3 might be just as difficult on your last life than your first, however on your last you care more, because you're one level away from a save.

There are a million ways to control dramatic structure. Consider any element that you find engaging about a novel. A drama manager can control all of these.


---

On Gimmy's stuff.

I think my toss comes from the idea that "high brow" drama needs "drama management" using tools not already available to games. Designers turn to tech to solve design problems.

In Mario the chief engagement is challenge, but as the series progressed they became, and always were, about freedom and whimsical expression. These elements of the games are well handled. There is no reason games can't deliver more "complex" emotions with the same tools.
« Last Edit: November 12, 2012, 01:01:26 PM by Graham. » Logged
gimymblert
Level 10
*****


The archivest master, leader of all documents


View Profile
« Reply #107 on: November 12, 2012, 01:38:38 PM »

can't wait to see citizen kane based on collision detection Wink
BTW i'm talking about design concept, not pure tech, see my "True roleplay" thread, same tools lead to different concept by changing focus
Logged

Graham-
Level 10
*****


ftw


View Profile
« Reply #108 on: November 12, 2012, 01:42:09 PM »

No, I know you're not talking about tech. I meant in general: the guys pushing the "drama manager" term like it buys them credibility, and confuse the issue.

Quote
can't wait to see citizen kane based on collision detection

It's possible. If movement in a space can represent complex expression of opinion, and that opinion is somehow reacted-to by the game, then collision detection can be it.

You can express a lot with bouncing fingers on a keyboard.
Logged
Charlie Sheen
Level 0
***

duh.. winning


View Profile
« Reply #109 on: November 12, 2012, 05:22:31 PM »

Quote
No. Difficulty is only a part. Let's say I give you 3 minutes easy, 3 minutes hard, repeat. Are you repeating the same level, or playing new ones? You can't tell yet.

If it's still "3 minutes easy, 3 minutes hard" then I'm not playing the same level. If, however, it turns out to be "3 minutes easy, 3 minutes easy" then as far as I'm concerned I'm playing the same level -- and that would be true even if layout, art, story etc are different.

Quote
Lives balance much more than difficulty. They balance distribution of content. They balance tension independent of difficulty.

"distribution of content"?
"tension independent of difficulty"?

Quote
Level 3 might be just as difficult on your last life than your first, however on your last you care more, because you're one level away from a save

The fact that if you die you lose all of your progress MAKES THE GAME MORE DIFFICULT.
Logged
Graham-
Level 10
*****


ftw


View Profile
« Reply #110 on: November 13, 2012, 04:16:39 AM »

No, you're bending the word challenge to suit every context, again.

3 min easy, 3 min hard could mean anything. It doesn't indicate what content is giving you that challenge. The 3 hard minutes could be you repeating the same challenge 3 times, or playing through a single challenge.

"Distribution of content" : master basic jumping before handling donut lifts? or alternate between the two until both are mastered? or alternate until competence, then master something else?

"Tension independent of difficulty" : You might be right on this one. If I threaten punishment to a player for failure, they will apply themselves more, increasing the tension. This is however different than making a challenge more difficult. If I tell you to pick up 5 sticks in 5 seconds, that's easy, If I tell you to pick them up in 5 seconds or I'll punch you in the face, that's a little harder, maybe (because of the fear), but is different largely because you care more about the outcome. This is still different than me telling you to solve a hard chess problem with minimal consequences for failure.

Difficulty is one ingredient for creating tension. I can also change the environment. Pick up 5 sticks in your underwear, in front of the girl you like, or your parents. In a sense I am changing the definition of the task, implicitly adjusting your goals - like not being embarrassed. In a sense the type of challenge is being changed. The difficulty isn't just going up and down, it's changing its type and tension is being created in different ways.

Is a movie more tense when the hero is about to be foiled because that experience is more challenging to you? What about the relaxing, character-building, parts that demand as much attention? The difficulty of a task and the tension you feel have a relationship, but they are not joined at the hip.
« Last Edit: November 13, 2012, 04:23:34 AM by Graham. » Logged
Charlie Sheen
Level 0
***

duh.. winning


View Profile
« Reply #111 on: November 18, 2012, 05:08:34 AM »

i think this discussion has done some serious damage to my brain. and that which i used to know, i dont know anymore lol.

my mistake was to assume (and even fucking CONVINCE myself!) that "drama manager" means something. it means bollocks. it's stupid word and so, from now on, it will be banned from my vocabulary. i mean, i dont need it, and in fact i never needed it, it was merely forced upon me and i simply submitted to it (forced upon me, you see, by MY CONSCIENCE lol), but no more!

and here's how to make a good game with "procedural storytelling" and whatever: you think of a WORLD and you think of a ROLE within that world (a role to be filled by a player) and you also have to make sure this role isn't underpowered (as in weak, as in flower petal lol) and make sure it isn't overpowered (as in way too strong, as in being almighty god who can do anything). but wait a sec! that actually comes at the end of the development process, right? so before you do that, you have to contemplate about the role a bit, you have to think of all the actions you want to assign to that role, and make sure they all make sense within the context of the world, and then you have to come up with rules for these actions i.e. how the world changes in response to actions, then as you do this you also have to think about what constitutes "the world around you" all the while making sure these things fit the context as well. now when you do all of that you have to make sure the role is "balanced" i.e. not overpowered/underpowered (actually, these boil to the same thing, they only differ thematically). you do this by making shit-ton of tweaks to the ruleset till everything plays satisfyingly difficult and till all the actions are of use in the game. AND THEN YOU'RE DONE. game design 101.

now, the way you do this "procedural storytelling" shit is by including actions that are found in FUCKING FILMS. get it? that's all there is to it. what do people do in films? talk? lie? fuck? cheat? promise? whatever man, you just fucking copy these actions (and also the type of agents found in films i.e. people) and there you go -- fucking "procedural storytelling".

its so simple. YOU JUST GOTTA SIGN OFF AND START WORKING. otherwise, you gonna end up inventing all sorts of bullshit like "drama manager" and "procedurally generated stories" and start seeing distinctions between letters and whatnot. i remember back when i was like 15 and used to contemplate about my "procedurally generated story" i had no internet, and so i perfectly grapsed all this shit on my own. but then soon, maybe within a year, someone invented the internet and holy shit was i stunned by the huge disagreement between me and the so-called "grown-ups"! and it's not like i didn't attack. i did! and if it was fun for me to do this now, id dig these posts and show them to you. but the problem is i eventually submitted to what these grown-ups had to say and so, you see, all these stupid ideas still haunt me..

yeah right, "drama manager". if i simply remained loyal to WHAT I KNEW WAS RIGHT i would have finished my game by now and would have become a game designer wunderkind! too bad the opposite was the case: in an attempt to "target the audience" i nearly convinced myself i never had passion for game design lol. of course i would, since NOBODY has passion for TARGETING AUDIENCE i.e. nobody has passion for submission.
Logged
gimymblert
Level 10
*****


The archivest master, leader of all documents


View Profile
« Reply #112 on: November 18, 2012, 06:36:25 AM »

Well the merits of "drama manager" is telling you that if you gonna makes your rules for your roles you must pay attention to their narrative resonance. It's a DESIGN PATTERN, pretty much like playing a racing game with a friends where all mistake mean you lost the race and you say: they should have put more "rubber banding" ...

Combo, option locks, qte, all are design patterns to express a particular problem and pointing a solution. They are all just "rules".
Logged

Charlie Sheen
Level 0
***

duh.. winning


View Profile
« Reply #113 on: November 18, 2012, 11:03:25 PM »

my instincts tell me that rubber bending is stupid. dont know why and cant bother figuring out why. or, wait a minute, is it because it feels like a "supernatural power"? maybe so!

a supernatural rule, a rule that makes no sense whatsoever within the context of the game world (even if we describe it as "supernatural", since it makes no sense for existence of supernatural powers in fucking car racing games for fucks sake, especially not the random shitty kind of supernatural powers), but one which tries to deceive the player. and insofar as one is not aware of such rules one can tolerate the game, but knowing that a game is based on such rules ruins the immersion for me. and this is why i hate them.

and look at this:

Quote
Rubber band AI refers to an artificial intelligence found in titles such as racing or sports titles that is designed to prevent players from getting too far ahead of computer-controlled opponents.

lol. isnt that the point of fucking game design for christ's sake? to make the opponents DIFFICULT? and you're calling these rules GOOD RULES! LOL! these shitty cheap little rules based on nothing but deception and incompetence on the side of its designers, these rules you are calling good! and not the rules that not only make the game more difficult but also make sense within the context of the game world.
« Last Edit: November 18, 2012, 11:40:20 PM by Charlie Sheen » Logged
gimymblert
Level 10
*****


The archivest master, leader of all documents


View Profile
« Reply #114 on: November 19, 2012, 12:10:31 AM »

There is a reason we play game ... to have fun ... Rubber band ensure we keep the player in the flow band, incompetent design happen if you suck the fun.

HOWEVER there is so many way to do rubber banding, the cheapest is to increase speed of lagging car, if it's an AI outright teleporting it (fzero snes). Another way is simply to increase obstacle so the leading car has more challenge ... it happen it is not supernatural! So there is two main variable you can use to rubber band, handicap the leader by slowing him OR throwing challenge at him, support the trailer by boosting him OR removing obstacle.

The concept is not the implementation! YOU are the designer!
Logged

Charlie Sheen
Level 0
***

duh.. winning


View Profile
« Reply #115 on: November 19, 2012, 05:53:02 AM »

the goal of "adaptable challenge" is to measure the skill of the player and then suggest/provide a challenge based on such a measurement, all with the aim to maintain, as you say, a state of flow (e.g. not to be too hard on the poor little players). i haven't thought much about this yet, but intuitively i can tell it's stupid (it's a form of hand-holding, isn't it?)

and honestly, if we have an awesome world to uncover then id put up with any sort of challenge anyways. and in any case, we're talking about non-linear words here, not linear worlds (linear worlds are shit). and if the game is too hard, just include "easy mode" and be done with it.

edit: i say "put up" but i mean it in a different way. basically, if a world is an aesthetically interesting one then chances are i'll like its level of difficulty too (provided its not low lol).
« Last Edit: November 19, 2012, 06:17:20 AM by Charlie Sheen » Logged
gimymblert
Level 10
*****


The archivest master, leader of all documents


View Profile
« Reply #116 on: November 19, 2012, 08:25:49 AM »

Now it's down to aesthetics (not visual), your goal is to make game fun or it is to make it "competitive"? However by that logic, almost all rules that aren't "pure physics" are hand holding, let's not have map, health gauge and the kind Tongue. Linear does not mean shit (racing game are linear), with improvisational quality (ninja gaiden 3D) it became the purest form of competitive gameplay. However we are drifting from the topic into derails.

So as a designer pick up a design aesthetics, stick with it to develop it, it does not make other approach shit.
Logged

Charlie Sheen
Level 0
***

duh.. winning


View Profile
« Reply #117 on: November 19, 2012, 10:28:35 AM »

yes, racing games are awesome. but we're talking about linear "procedurally generated stories" here, and these -- these are shit.

these games are supposed to be so-called "RPG's" (as if every game didn't feature some sort of role-playing anyways lol), so they are supposed to be non-linear games featuring wide range of roles and actions.

but you're failing to admit one thing: that rubber bending and the like are ideas that come from without not from within. it's about pleasing whiny little kids, not about making better games, and that's probably what annoys me the most -- people having far more interest in figuring out (or submitting to) what OTHERS enjoy rather than figuring out what THEY would enjoy. and im sure you wouldnt give a fuck about "flow" in games, especially not in non-linear games.
Logged
Graham-
Level 10
*****


ftw


View Profile
« Reply #118 on: November 19, 2012, 03:24:43 PM »

Rubber banding isn't inherently bad. In Mario Kart - the easiest example - the banding keeps tensions high. I'm sure a more fair race would be interesting but would have made the game less successful. Why? Because Mario Kart is more about yelling at your friends, trying to shoot them, screwing up, and so on, than it is a test of "who is the better racer."

There's a similar element in the new Super Mario Bros Wii, which lets players play co-op and screw up each other's platforming - by getting in the way and such. Some players, and reviewers, hate this because it isn't "proper Mario." But what they fail to realize is that the goal of the new game isn't to platform in a traditional way with friends, it is to platform in a new "with friends" way, that is difficult in its own way. If you perceive one like the other - new Mario platforming vs old - then the interactive elements in the new seem like they interfere with the pure platforming experience. If you perceive them the way they are then you see something else.

Rubber banding in Mario Kart is partially bad because it's partially deceptive. The devs should have made it clear that it is there, and then made whatever design changes wisdom dictated to still make the game fun. "Hiding" it is where my issue comes in, because it makes the game into something that is pretending to be something it is not, and we get into conversations like this one.

---

"Adaptable" challenge is a critical element of good game design. All great games have it. The question is whether the game includes it honestly or not.

Take Super Mario Bros 3 for example. In it you can control how fast you tackle a level, whether you use warp whistles. Each play through a level gives you a little more knowledge about it, making it easier during your next try. These elements of the game are elegant "adaptable challenge" controls.

Players must control how challenged they are. The game can help them do this or not.

---

Level progression - succeeding and earning harder challenges - is the most prominent kind of challenge control. Why not let the player just play any level of their choice? Why control them at all? That's what you are arguing Charlie, without realizing it. A typical game puts boundaries on how quickly a player can challenge themselves, so that the player will increase his skills slowly, will consume the game at a good pace.

Take it further. Why even design a level? Why not just have a Mario level that has 1000 different challenges chosen from a hub location? Why decide to put this challenge in front of that one, and group these 5 together into one world, and make this one optional next to that one? Why not let the player just decide? Aren't these controls coming from without? Shouldn't the _player_ know what's best?

Why even program a game at all? Let's just give the player emacs and a compiler.

The second you restrict the order in which players consume content, or create rules they must obey in order to do so, you are creating logic that determines how challenge is given out. The very nature of a level's design controls how different players will play through it differently, how each will experience its potential challenge. What you have control over, as a designer, is whether these challenges are given out in a way that produces a good experience.

Flow is good. Note that flow is not achieved if players aren't always engaged. Players can't engage in stagnation. So they have to be learning to keep flow. Adaptable challenge that creates flow includes, by definition, a challenge structure the pushes players forward. In fact, the design that creates the deepest flow teaches the most.

Like "drama management," "adaptable challenge" is a word that means something real, but gets inflated, and then people think it has to mean something bad or artificial. It does not.
« Last Edit: November 19, 2012, 03:50:15 PM by Graham. » Logged
Charlie Sheen
Level 0
***

duh.. winning


View Profile
« Reply #119 on: November 20, 2012, 12:17:46 AM »

alright, im gonna break your post down line by line because i cant be bothered to respond otherwise lol.

Quote
Rubber banding isn't inherently bad.

nothing is inherently anything.

Quote
In Mario Kart - the easiest example - the banding keeps tensions high.

it is GOOD GAME DESIGN that keeps tensions high. and rubber banding certainly isnt good game design in my book.

Quote
I'm sure a more fair race would be interesting but would have made the game less successful.

i dont care what makes it successful.

Quote
Mario Kart is more about yelling at your friends, trying to shoot them, screwing up, and so on, than it is a test of "who is the better racer."

i already do that all the time.

but seriously lol. if you wanna yell at your friends why do you have to do it in videogames? in fact, what the fuck is good about yelling at your friends? aren't they your friends after all lol?

Quote
There's a similar element in the new Super Mario Bros Wii, which lets players play co-op and screw up each other's platforming - by getting in the way and such. Some players, and reviewers, hate this because it isn't "proper Mario." But what they fail to realize is that the goal of the new game isn't to platform in a traditional way with friends, it is to platform in a new "with friends" way, that is difficult in its own way.

what you fail to realize is that NSMB is a boring game. and the reason for this is because you are obsessed with what OTHERS think of the game. its like you dont like games at all, its like they are all the same to you with the only difference being what others think of them lol.

Quote
Take Super Mario Bros 3 for example. In it you can control how fast you tackle a level, whether you use warp whistles. Each play through a level gives you a little more knowledge about it, making it easier during your next try. These elements of the game are elegant "adaptable challenge" controls.

its called good LEVEL DESIGN dude.

Quote
Why not let the player just play any level of their choice?

because that would be stupid thing to do in linear games. like, i mean, you will be able to see all the levels in advance so there would be nothing to look forward to, no journey whatsoever, and you also wont have to bother with lower-difficulty levels at all.

Quote
A typical game puts boundaries on how quickly a player can challenge themselves, so that the player will increase his skills slowly, will consume the game at a good pace.

the point of the so-called "difficulty curve" isn't, as you'd like to think, to make the game go from "easy" to "hard". in fact, there are no such things as "easy" and "hard". nobody likes "easy" games and nobody likes "hard" games and which one you use depends on whether you're a strong person (in which case you'd use "easy") or a weak person (in which case you'd use "hard").

so yeah, games should go from hard to hard dude. the first level SHOULD be hard. there is no point in making it "easy", that's fucking stupid!

so what's the point of "difficulty curve" then?

well, you see, the point is that we want to make a JOURNEY, and for that we have to move beyond single-room games. for that we have to divide the game into sections -- into levels -- where each section is inaccessible until you beat the preceding one. but when you beat a section -- when you master it -- what happens is that you build a tiny little scientific model inside your head (though, you may have already built it if you played older games in the same genre..) that not only lets you toy with THAT section next time you play it, but also with all other sections of THE SAME LEVEL OF COMPLEXITY. so if the NEXT section is of the same level of complexity it will be "easy" i.e. boring. so in order to make it good you will have to increase its level of complexity. there you go. difficulty curve 101.

Quote
Why even program a game at all? Let's just give the player emacs and a compiler.

because they are fantasists who keep coming up with all these amazing ideas they cannot help themselves but sit down and program them all. that's why dude.


Logged
Pages: 1 ... 4 5 [6] 7 8 ... 10
Print
Jump to:  

Theme orange-lt created by panic