Skip to content

Instantly share code, notes, and snippets.

@cafuneandchill
Last active October 26, 2022 07:51
Show Gist options
  • Save cafuneandchill/3effbc0a531f1e9db407e772a42a2e4f to your computer and use it in GitHub Desktop.
Save cafuneandchill/3effbc0a531f1e9db407e772a42a2e4f to your computer and use it in GitHub Desktop.
Pokemon Solitaire Challenge -- Description

Preface

A strange affliction have struck the region! All Pokemon's biological energy cells may now become unstable after exchanging big amounts of energy. If you notice symptoms of cellular disruption in your Pokemon (general weakness, tremors or uncharacteristic behaviour), please put them in the Pokemon Storage System immediately, where they can be treated by automated care systems.

Additionally, all Trainers are now equipped with SMs, or Solitaire Machines. These devices are used to re-arrange Pokemon's energy cells and elevate the symptoms of cellular disruption. Usage of SMs is simplified to a basic game-like activity, which can be performed by Trainers of all ages.

This challenge mixes Pokemon with card solitaire (or patience).

Rules

There are two rule variants: Simple and Advanced. Each action has a Simple and an Advanced version. Paragraphs that describe features relevant only to Advanced rules are marked with "(Advanced only)".

Additionally, a Trainer may wish to use modifiers -- rules that change the base rules in various ways.

1. Important concepts

1.1. Actions

An action is an activity that might require a solitaire check to be performed.

Note: "To perform an activity" might mean two things:

  • you should pass a solitaire check before doing the activity (health or PP recovery, revival).
  • the activity is automatically done by the game, which prevents the usage of the Pokemon (level up, evolution). In this case, pass the solitaire check before using that Pokemon again.
  • the activity is a buff and performing it gives that buff to the Trainer.

A list of actions:

  • Obtaining Pokemon and leveling up
  • Evolution
  • Health and PP recovery
  • Revival
  • Special actions
Modifiers
  • SolitaireItems -- require solitaire checks to use items. See SolitaireItems.

1.2. Solitaire check

The central part of the challenge are the solitaire checks. To perform a solitaire check, play a card solitaire game one or several times, depending on the rule.

For each challenge run, pick a single solitaire game.

Author's recommendation: Sawayama Solitaire from The Zachtronics Solitaire Collections -- a faster and more strategic version of Klondike card solitaire.

Tip: You can use non-card solitaire games, too!

  • (Simple) If you fail a solitaire check, you may perform it on the next real-life day, unless specified otherwise.
  • (Advanced) See Card pool
Scored cards (Advanced only)

One concept that's important in the Advanced rules is the scored cards. Generally, if a card is in its goal, it's considered to be scored.

Definition of scored cards depending on the type of the game:

Game Definition
building (Klondike) cards in the foundation
pairing and totalling cards discarded
Base number (Advanced only)

Usually, in Advanced rules, to pass a solitaire check is to score a certain amount of cards, called a pass number. In such cases, the pass number is calculated against the base number. The base number is calculated per Pokemon.

Formula to calculate the base number for a chosen Pokemon:

base number
    = round(level * 0.1)
    + round(stat_total * 0.075)
    + npd

where:

  • level is the current level of the Pokemon.
  • stat_total is the sum of all the current stats, including max HP.
  • npd is the last digit of the Pokemon's National Pokedex number.

When calculating other pass numbers, round all results to the closest integer.

Card pool (Advanced only)

Often, the pass number would be more than the number of cards used in the solitaire game. For such cases, there are card pools. Each type of action has its own card pool; each pool is shared between all Pokemon (and each item group, if SolitaireItems is used).

Example: Leveling up uses its own separate card pool. However, you can use it to level up all Pokemon in your party.

Regardless of whether you've won or lost a solitaire game, add the amount of scored cards to that action's card pool. Play solitaire games until the card pool is more than or equal to the pass number. If card_pool >= pass_number, you can perform the action. To perform the action, first subtract the pass number from the card pool and then perform it.

Modifiers
  • MorePools -- each Pokemon uses its own set of pools for each action. Also, each item uses its own card pool, too, if SolitaireItems is used. If you're a spreadsheet maniac, then you might want to consider that modifier.

2. Obtaining Pokemon

Energy fields generated by PokeBalls may induce cellular disruption symptoms in recently caught Pokemon.

  1. Catch the Pokemon.
  2. Put them in a box immediately. This Pokemon now has the ♥︎Unbound status.
  3. Perform an Initial check.

Initial check = solitaire check for obtaining Pokemon.

  • (Simple) Win a single solitaire game
  • (Advanced) Score a base_number of cards

If the check is passed, you may use that Pokemon for the rest of the game. The Pokemon loses their ♥︎Unbound status.

Tip: You don't have to perform a Healing check afterwards, because the box usually heals the Pokemon inside. And it's going to be too many checks, anyway.

Starter (Advanced only)

You don't have to perform an initial check for the starter Pokemon. However, you may perform a special check. If you win the check, you get a -20% buff to all solitaire checks for the rest of the game.

  • (Advanced) Win a single solitaire game

Modifiers (Advanced only)

  • StarterCeremony -- if the game has a Rival NPC, perform an initial check for the Rival's starter Pokemon instead. If the check is passed, you get a -50% buff to all Healing, Rest and Revival checks after battles against that Rival.

3. Leveling up

Storage of big amounts of energy absorbed from Pokemon battles may induce cellular disruption symptoms.

Each time a Pokemon reaches level 10, 20, 30 etc., it gets the ♥︎Unbound status. In that case, return them in the box immediately.

To clear it, perform a Level Up check. The rules for the Level Up check are identical to the Initial check rules.

4. Evolution

When a Pokemon evolves, it uses up big amounts of stored energy to produce new body cells. This may induce cellular disruption.

Each time a Pokemon evolves, it gets the ▲Evolved status. In that case, return them in the box immediately.

To clear it, perform an Evolution check.

  • (Simple) Win a single solitaire game
  • (Advanced) Score a base_number * 1.1 of cards

Passing the check clears the ▲Evolved status.

5. Health and PP recovery

It is shown that healing machines used in Pokemon Centers may cause cellular disruption due to rapid infusion of Pokemon with energy. All Trainers are strongly advised not to use Pokemon Center healing machines before treating their Pokemon with an SM.

5.1 HP

If a Pokemon's HP is less than its maximum value, it gets the ■Injured status.

To heal the Pokemon at a Pokemon Center, perform a Healing check first.

  • (Simple) Win a single solitaire game
  • (Advanced) Score a base_number * HP/HP_max of cards

Passing the check clears the ■Injured status.

5.2 PP

If the Pokemon is at maximum HP, but not at maximum PP, it receives the ■Tired status, instead.

In this case, perform a Rest check instead. The rules for the Rest check are identical to the Healing check rules.

  • (Advanced) Use ΣPP and ΣPP_max instead of HP and HP_max, respectively. ΣPP = sum of all moves' PP; ΣPP_max = sum of all moves' maximum PP.

Note: If there are multiple ■Injured and/or ■Tired Pokemon in the Trainer's party, you will have to perform solitaire checks for each one of them.

It is allowed to put ■Injured and ■Tired Pokemon into boxes. However, they may be healed inside the boxes (Gen II-VII). In such cases, use the Marking function to remember which Pokemon need to pass the checks (>= Gen III).

6. Revival

Pokemon with serious injuries or fatigue have a higher risk of cellular disruption. All Trainers are strongly advised to put their fainted Pokemon in the Pokemon Storage System. Usage of SMs in such cases should be performed with care.

If the Pokemon faints, it receives the ●Fainted status. The Trainer is not allowed to revive the ●Fainted Pokemon at a Pokemon Center.

To clear the ●Fainted status, perform a Revival check.

  • (Simple) Win a single solitaire game. You can perform the checks consecutively.
  • (Advanced) Score the base_number of cards.

If you fail the Revival check 3 times, the Pokemon is rendered unusable for the rest of the game.

Modifiers

  • ExponentialRevive -- you can fail an unlimited amount of Revival checks for a single ●Fainted Pokemon. However, each failed attempt increases the pass number by 10%.

7. Rival/Gym battles (Advanced only)

Don't forget to help your fellow Trainers if you have an SM!

If a Trainer wins against a Gym Leader or a Rival, they may perform a single Victory check against one of the Gym Leader's/Rival's Pokemon.

  • (Advanced) Win a single solitaire game.

There's no penalty for not doing that check. However, passing this check gives -20% buff to all Initial and Level Up checks for that Gym Leader's/Rival's type.

If the Gym Leader or the Rival have no explicit type, then passing the Victory check gives a -10% buff to all checks for that Pokemon's evolutionary line.

Addendum 1. SolitaireItems

According to recent studies, some components used in Pokemon medicine may induce cellular disruption symptoms.

With this modifier, each usage of an item requires an Item check. You can perform an Item check at any time.

Note: so far, this modifier only covers the Battle Items and Medicine.

Here are all the item groups that fall under this modifier:

  • Potions
  • Status conditions healing medicine
  • Revives
  • PP recovery medicine
  • Vitamins and feathers/wings
  • Herbal medicine
  • Berries
  • Flutes
  • Other items

If the item is used a held item, it does not require a check.

Each item group has a usage pool. It's allowed to play games consecutively to fill a usage pool. Both the Simple and the Advanced versions of the rules define the usage pool differently.

Simple

Usage pool counts the games won (= games that are out).

If you won a solitaire game, add 1 to that item's card pool. To use an item, subtract 1 from that pool instead.

Advanced

Usage pool counts the scored cards.

If you won or lost a solitaire game, add the scored cards to the item's card pool. To use an item, subtract its cost from the pool.

Potions

Item Cost (cards)
Potion 20
Super Potion 50 (Gen I-VI), 60 (Gen VII, SwSh, BDSP), 100 (LA)
Hyper Potion 200 (Gen I-VI), 120 (Gen VII, SwSh, BDSP), 150 (LA)
Max Potion base_number
Full Restore base_number * 1.1

Status condition healing medicine

Item Cost (cards)
Antidote 10
Awakening 10
Burn Heal 10
Ice Heal 10
Paralyze Heal 10
Full Heal 50

Revives

Item Cost (cards)
Revive base_number * 0.5
Max Revive base_number

PP recovery medicine

Item Cost (cards)
Ether 10
Max Ether PP_max
Elixir 40
Max Elixir ΣPP_max

Vitamins and feathers/wings

All vitamins cost 10 cards, except:

Item Cost (cards)
PP Up PP_max * 0.2
PP Max PP_max * 0.6

All feathers cost 5 cards.

Herbal medicine

Item Cost (cards)
Energy Powder 50 (Gen II-VI), 60
Energy Root 200 (Gen II-VI), 120
Heal Powder 50
Revival Herb base_number

Berries

Each berry costs 10 cards to use from the Bag, except:

Item Cost (cards)
Gold Berry 30
Sitrus Berry 30 (Gen III), HP_max * 0.25

Using berries as held items doesn't cost any cards.

Flutes

Item Cost (cards)
Blue Flute 20
Poke Flute 20
Red Flute 20
Yellow Flute 20

Black and White flutes don't cost any cards to use.

Other items

Item Cost (cards)
Ability Capsule 30
Berry (item) 10
Berry Juice 20
Big Malasada 50
Casteliacone 50
Fresh Water 50 (Gen I-VI), 30
Lava Cookie 50
Lemonade 80 (Gen I-VI), 70
Lumiose Galette 50
Mental Herb 20
Moomoo Milk 100
Old Gateau 50
Pewter Crunchies 50
Rage Candy Bar 20 (Gen II, V-VI), 50
Rare Candy base_number
Sacred Ash 250
Shalour Sable 50
Soda Pop 60 (Gen I-VI), 50
Sweet Heart 20

Addendum 2. List of statuses

Pass numbers are presented without modifiers.

Status Effect Pass number (Advanced)
♥︎Unbound Pokemon is unusable base_number
▲Evolved Pokemon is unusable base_number * 1.1
■Injured Pokemon is uncurable by PokeCen base_number * HP/HP_max
■Tired Pokemon is uncurable by PokeCen base_number * ΣPP/ΣPP_max
●Fainted Pokemon is uncurable by PokeCen base_number (3 attempts)

Addendum 3. Tips

  • Think about which solitaire game you will be doing before starting a run; some games are more difficult than the other.
  • Instead of doing Item checks right before using an item, fill your Item card pools outside of battle.
  • If the game has a Markings feature, use it to keep track of Pokemon's statuses.
  • (Advanced) If you think that you can't win a solitaire game, try to score as many cards as possible.

Final remark

If you don't agree with some of the rules -- feel free to modify them as you see fit! Don't forget to include your modifications in your challenge run description, though.

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