Skip to content

Instantly share code, notes, and snippets.

@Felk
Created September 9, 2016 17:56
Show Gist options
  • Save Felk/f2c6f3b4b511ec57be7bc35987396b6e to your computer and use it in GitHub Desktop.
Save Felk/f2c6f3b4b511ec57be7bc35987396b6e to your computer and use it in GitHub Desktop.

Twitch Plays Pokémon Inputsystem ideas for gen1 and gen2 games (potentially for Prism)

By: Chauzu / Addarash

Underlying justification:

TPP is best enjoyed in anarchy, and it is what made TPP what it is today. As people have decreased though, some stuff possible to be brute forced in anarchy are considerably more time consuming nowadays. It can be seen as a "rng lottery": you need a set number of correct inputs to achieve a goal and any input not part of the set required either starts you over from the beginning, or sets you back, as you - for example - leave a menu and need to get back into it. One reason why some stuff that used to be mundane task have become more time consuming is less inputs in general, which means the "rng lottery" takes more time on avarage until you hit the jackpot. Another reason is that if someone spams an input not part of the inputs needed in the "rng lottery", it actively prolongs the progress.

This is what we can call a time sink - or "frustration features" - and it is our opinion it often adds litte to runs, and mostly have a harming effect, in decreasing participation and viewer numbers over time. In the Randomized Platinum run, early game were filled of multiple time sinks (one lasting 3 hours, another 4, another 5, and one 10 hours, all related to menu or PC) and it went hand in hand with decreasing viewer numbers. Thus time sinks should be limited as much as possible, while being as non-intruisive to the vanilla anarchy experience of TPP. Note that when we describe time sinks, we are describing frustrating and tedious experiences that are necessary to complete the run. This is not to be confused with a general aim of lowering the difficulty of runs in general, or nullifying the consequences of making mistakes. The line between a "necessary" action is likely to be subjective and it is possible that players will attempt to use the anti-frustration features in ways that would actively make the run smoother/easier, such as optimising the party, but we aim to minimise that overlap.

There are in general two ways to limit time sinks. Firstly, change the in game mechanics to be less prone to this if possible - an example would be disabling options for changing text speed or animations during runs, non-intruisive and we don't have to spend up to an hour in menu trying to change them daily. Secondly, we have democracy, and the democracy should be limited in ways that it can't be "abused" - and by abused we'll describe it as "taking away more anarchy experience than is needed to keep a run as time sink free as possible". Our opinion is, both of these should be considered on a run by run basis by people well versed in how runs actually play out. Some generations might need in-game changes or even democracy enabled to some extent with the PC, while other generations do not, for example. We believe we can ensure that runs are 99% in anarchy, and the little demo actually used only aids the experience of the run, and doesn't take anything away from it.

General ideas for next run:

Our next run is based on gen 2 mechanics, so making a system for this game needs to take the specific mechanics for this gen in mind, as well as the specifics to the individual game in general and its maps in particular. The time sinks in gen 2 are mostly related to the menu, puzzles, and certain extreme overworld design. We deem that IF changes to in game mechanics, or democracy activation, are needed for a gen 2 game it should be limited to these specific instances. So enabling democracy in a Pokémon Center, for example, should not be possible, since you can use democracy to then use the PC, something that works perfectly fine in anarchy. Likewise, we don't need to change in game mechanics for stuff outside this since that would be reducing the challenge, rather than the frustration. With that said, we'll go into what we feel is the best input system for a gen 2 game, with all the above justifications in mind.

In game mechanic changes:

  • Options have "text speed" set to fast and "battle animations" set to on, and these are impossible to change. Alternatively remove Option menu.
  • Forced nicknaming (debateable)

Democracy system:

  • "Demo House" system. Anniversary Red democracy system, but much more refined. A certain number of normal houses spread throughout the game are selected as a "demo house". The purpose of the demo house is to remove the worst time sinks regarding menu uses. The main target here is party order switching, since it is a very mundane but extremely frustrating task, and a true time sink. In AC we tried to change in game mechanics to cope with this to little success. Menu is also necessary for other stuff, like teaching HM's, and while being possible in anarchy these actions still consist of a "rng lottery" and can take a lot of time if unlucky, or if people decide to work against it.
  • Mechanical wise, our idea for "demo houses" were to limit the potential for abuse. Our solution to this is that every demo house is linked. When you enter a demo house, a voting system appear. This voting system will have 3 options: Anarchy, Democracy, Delay. The vote takes 3 minutes to gather up votes from chat - if you leave the map location the vote resets until you enter again. If democracy wins, a 10 minute timer starts (exact length tbd), which is the amount of time demo is useable for until anarchy returns. (Anarchy can return earlier if you decide to leave the location in democracy, but you can not vote for anarchy once democracy is activated.) After democracy ends, every demo house gets put on a 4 hour cooldown, which means you won't be able to vote for democracy again in a demo house until 4 hours have passed. Likewise, if anarchy wins the vote in the democracy house, the 4 hour cooldown gets put into affect. If delay wins, you redo the 3 minute vote. This is mainly to ensure the demo you get in puzzle areas can be saved for the actual puzzle, in case the vote appears during a battle, while resetting a puzzle etc.
  • This leaves puzzles as well as extreme overworld design for stuff that might need demo to avoid being a too big time sink. The important thing to consider here though, is that there often are strats you can use, and the feeling of reward if you beat a puzzle or such is often great, so having demo available readily in such locations are not desireable. Thus, this system will need some subjective opinions, although in general it is better to be safe (demo available, but maybe after a long time) than sorry (demo never available).
  • Mechanical wise, if we deem a map needs demo potentially available after some time, we will have a HIDDEN countdown timer once you enter the map. (The timer being hidden removes the possibility of people "stalling" for democracy, which was experienced during AR, and give it a very fair shot in anarchy.) The length of this countdown timer will vary, but be between 6-24 hours (?). If the timer for these areas go below 0-2 hours and you are gone for 24 hours, the hidden countdown timer will always reset to 2 hours - otherwise it will remain at its current countdown time. When the hidden countdown clock is reached in this system, the map becomes a "demo house" and works exactly like other demo houses do, until you haven't visited it for 24h. The reason for this is 1) not having to code too much complex stuff, 2) keep things simple for viewers, 3) not make puzzle maps more lucrative than demo houses for "abusing" democracy.

TL;DR and conclusion

(simplified and leaving out specifics)

"Demo House" system. When you enter a map deemed a demo house a 3 minute vote starts, where you can vote for Anarchy, Democracy or Delay. If democracy wins the vote you get 8-10 minutes guaranteed democracy, and when it ends all demo houses go on a 4 hour cooldown where you can not get democracy. If delay wins, you vote again, until democracy or anarchy wins. For maps deemed to MIGHT require demo due to the challenges in anarchy - particularly puzzles and other extremely designed maps - you have a hidden countdown timer, from 6-24 hours (depending on the map and actual testing in a run). Once this timer reaches 0, the map becomes a "demo house" and works exactly like any other demo house, until you haven't visited the map for 24 hours.

This is the system we believe will make next run the best possible experience, and most of the code needed to make it possible should definately be able to be reused for future runs! (And if it is a train wreck you might be able to shut up Chauzu for good...)

@Chauzu
Copy link

Chauzu commented Sep 15, 2016

After feedback from others, and a great idea from deadinsky, I've now refined the idea to be much more simple. I'm happy we could find an easy solution to all the issues we have been discussing!

  • "Demo House" system. Anniversary Red democracy system, but much more refined. A certain number of normal houses spread throughout the game are selected as a "demo house" (exact number yet to be decided). The purpose of the demo house is to remove the worst time sinks regarding menu usage, with the main target being party order switching: it is a very mundane but extremely frustrating task, and a true time sink. (In AC we tried to change in game mechanics for party order switching to cope with this to little success.) Menu is also necessary for other stuff, like teaching HM's, and while being possible in anarchy these actions still consist of a "rng lottery" and can take a lot of time if unlucky, or if people decide to work against it.
  • Mechanical wise, our idea for "demo houses" were to limit the potential for abuse. Our solution to this is that every demo house is linked. When you enter a demo house, a voting system appear. This voting system is simple and only has two options: Anarchy and Democracy. The vote takes 2-3 minutes (tbd) to gather up votes from chat - if you leave the map location the vote resets until you enter again. If democracy wins, a 10 minute timer starts (exact length tbd), which is the amount of time demo is useable for until anarchy returns. (Anarchy can return earlier if you decide to leave the location in democracy, but you can not vote for anarchy once democracy is activated.) After democracy ends, every demo house gets put on a 4 hour cooldown, which means you won't be able to vote for democracy again in any demo house until 4 hours have passed. Likewise, if anarchy wins the vote in the democracy house, the 4 hour cooldown gets put into affect.
  • This leaves puzzles as well as extreme overworld design for stuff that might need demo to avoid being a too big time sink. The important thing to consider here though, is that there often are strats you can use, and the feeling of reward if you beat a puzzle or such is often great, so having demo available readily in such locations are not desireable. Thus, this system will need some subjective opinions, although in general it is better to be safe (demo available, but maybe after a long time) than sorry (demo never available). Thus, this demo serves a different purpose than that of demo houses. As mentioned, demo houses targets time sinks with regard to menus, but democracy for puzzles targets time sinks regarding puzzle usage / extreme overworld movement. That leads us to the following...
  • If we deem a map needs demo potentially available after some time, we will have a HIDDEN countdown timer once you enter the map. (The timer being hidden removes the possibility of people "stalling" for democracy, which was experienced during AR, and thus give the puzzle a very fair shot in anarchy.) The length of this countdown timer will vary, but be between 3h-12h, depending on each unique map. Once the countdown timer is expired, a PERMANENT vote appears in the map. Like the democracy in the demo house, there are two options in the vote: Anarchy and Democracy. It has 2 differences though. Firstly, the start button is disabled while in this democracy. This ensures that democracy is only used towards the puzzle, and can't be used for menuing: that is what we have demo houses for. Allowing start button to be useable here would mean demo houses have no purpose, and democracy can be abused freely. Secondly, the vote will work like in the voting system we have used throughout this year, where you can switch between democracy and anarchy as the chat votes, with the difference that the vote is 50/50. The second part is very much up for debate; it adds some complexity by the differences from the democracy in demo houses, but it also ensures as little demo as possible. A few alternatives are: you vote once every 10 minutes, and you stay in the input system until the time is up or you leave the area. Another alternative is permanent demo; it's the simplest to understand but probably won't make many people happy.
  • TL;DR: "Demo House" system. The run will use two types of Democracy, both are meant to remove time sinks and making democracy as little intruisive as possible. The first type of democracy is called "Demo Houses". When you enter a map deemed a demo house a 3 minute vote starts, where you can vote for Anarchy or Democracy. If democracy wins the vote you get 10 minutes guaranteed democracy, and when it ends ALL demo houses go on a 4 hour cooldown where you can not get democracy. The reason for this is to deal with time sinks related to menu usage. For maps deemed to MIGHT require demo due to the challenges in anarchy - particularly puzzles and other extremely designed maps - you have a hidden countdown timer, from 3-12 hours (depending on the map and actual testing in a run). Once this timer reaches 0, the map gets a permanent vote between Anarchy and Democracy, very much like in Anniversary Crystal or RanPlat. The difference here though is that start is disabled: we don't want menu to abused in democracy, so that's what demo houses are made for. This 2nd type of democracy aims to target time sinks regarding puzzles / movement.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment