# Q. What is this file?
# A. This file contains options which allow you to configure your multiworld experience while allowing
#    others to play how they want as well.
#
# Q. How do I use it?
# A. The options in this file are weighted. This means the higher number you assign to a value, the
#    more chances you have for that option to be chosen. For example, an option like this:
#
#    map_shuffle:
#      on: 5
#      off: 15
#
#    Means you have 5 chances for map shuffle to occur, and 15 chances for map shuffle to be turned
#    off.
#
# Q. I've never seen a file like this before. What characters am I allowed to use?
# A. This is a .yaml file. You are allowed to use most characters.
#    To test if your yaml is valid or not, you can use this website:
#        http://www.yamllint.com/
#    You can also verify that your Archipelago options are valid at this site:
#        https://archipelago.gg/check

# Your name in-game, limited to 16 characters.
#     {player} will be replaced with the player's slot number.
#     {PLAYER} will be replaced with the player's slot number, if that slot number is greater than 1.
#     {number} will be replaced with the counter value of the name.
#     {NUMBER} will be replaced with the counter value of the name, if the counter value is greater than 1.
name: Player{number}

# Used to describe your yaml. Useful if you have multiple files.
description: Default Stacklands Template

game: Stacklands
requires:
  version: 0.6.7 # Version of Archipelago required for this yaml to work as expected.
  game:
    Stacklands: 0.2.6 # Version of the world required for this yaml to work as expected.

Stacklands:
  ################
  # Game Options #
  ################
  progression_balancing:
    # A system that can move progression earlier, to try and prevent the player from getting stuck and bored early.
    # 
    # A lower setting means more getting stuck. A higher setting means less getting stuck.
    #
    # You can define additional values between the minimum and maximum values.
    # Minimum value is 0
    # Maximum value is 99
    random: 0
    random-low: 0 # random value weighted towards lower values
    random-high: 0 # random value weighted towards higher values
    random-range-0-99: 0 # random value between 0 and 99
    disabled: 0 # equivalent to 0
    normal: 50 # equivalent to 50
    extreme: 0 # equivalent to 99

  accessibility:
    # Set rules for reachability of your items/locations.
    # 
    # **Full:** ensure everything can be reached and acquired.
    # 
    # **Minimal:** ensure what is needed to reach your goal can be acquired.
    full: 50
    minimal: 0

  ################
  # Run Settings #
  ################
  boards:
    # Select which boards will be included in the run.
    # 
    # Mainland Only           -> Include Mainland
    # Mainland and Forest     -> Include Mainland and The Dark Forest
    # Mainland and Island     -> Include Mainland and The Island
    # All                     -> Include Mainland, The Dark Forest and The Island
    # 
    # All quests for each selected board will be added as location checks.
    mainland_only: 0
    mainland_and_forest: 50
    mainland_and_island: 0
    all: 0

  board_expansion_mode:
    # Select how board expansion works in the run.
    # 
    # Vanilla -> Build the Shed / Warehouse / Lighthouse from the Ideas as per vanilla to expand the board as you like.
    # Items   -> Adds 'Board Expansion' items to the item pool and disables all Sheds / Warehouses / Lighthouses when built.
    vanilla: 50
    items: 0

  board_expansion_amount:
    # How much a Board Expansion item will increase the card limit by.
    # If <Board Expansion Mode> option is 'Vanilla' then this setting will be ignored.
    # 
    # NOTE: The card limit for your run will be capped at 20 + (Expansion Amount * Expansion Count).
    #       The lower you set Expansion Amount and Expansion Count, the more challenging resource management will be.
    #       Physical board size will still be capped at the largest vanilla size (without Lighthouses).
    #
    # You can define additional values between the minimum and maximum values.
    # Minimum value is 4
    # Maximum value is 14
    10: 50
    random: 0
    random-low: 0 # random value weighted towards lower values
    random-high: 0 # random value weighted towards higher values
    random-range-4-14: 0 # random value between 4 and 14

  board_expansion_count:
    # How many 'Board Expansion' items are added to the item pool for each compatible board (Mainland & Island).
    # If <Board Expansion Mode> option is 'Vanilla' then this setting will be ignored.
    # 
    # NOTE: The card limit for your run will be capped at 20 + (Expansion Amount * Expansion Count).
    #       The lower you set Expansion Amount and Expansion Count, the more challenging resource management will be.
    #       Physical board size will still be capped at the largest vanilla size (without Lighthouses).
    #
    # You can define additional values between the minimum and maximum values.
    # Minimum value is 4
    # Maximum value is 10
    8: 50
    random: 0
    random-low: 0 # random value weighted towards lower values
    random-high: 0 # random value weighted towards higher values
    random-range-4-10: 0 # random value between 4 and 10

  moon_length:
    # Set the length of each moon for the run - this disables and overrides the 'Moon Length' option in the 'Start New Run' menu.
    short: 0
    normal: 50
    long: 0

  pausing:
    # The player keeps the ability to be able to pause time.
    # If disabled, time will only be paused by cutscenes and end-of-moon routines.
    'false': 0
    'true': 50

  ########
  # Goal #
  ########
  goal:
    # Select the goal for the run.
    # 
    # All Bosses  -> Kill each boss from every board selected in the <Boards> option.
    # Random Boss -> Kill one randomly selected boss from the boards selected in the <Boards> option.
    # 
    # More goals to be added in future...
    all_bosses: 50
    random_boss: 0

  ############
  # Sanities #
  ############
  equipmentsanity:
    # Add checks for crafting one of each Equipment card. (E.g. Club, Sword, Blunderbuss etc.)
    # Will only add checks for Equipment that are reachable on the boards selected in the <Boards> option.
    # 
    # This will add 16 checks to Mainland and 6 checks to The Island.
    'false': 50
    'true': 0

  foodsanity:
    # Add checks for cooking one of each Food card. (E.g. Stew, Fruit Salad, Tamago Sushi etc.)
    # Will only add checks for Foods that are reachable on the boards selected in the <Boards> option.
    # 
    # This will add 3 checks to Mainland and 3 checks to The Island.
    'false': 50
    'true': 0

  locationsanity:
    # Add checks for exploring one of each Location card. (E.g. Mountain, Old Village, Jungle etc.)
    # Will only add checks for Locations that are reachable on the boards selected in the <Boards> option.
    # 
    # This will add 4 checks to Mainland and 2 checks to The Island.
    'false': 50
    'true': 0

  mobsanity:
    # Add checks for killing one of each Mob card. (E.g. Elf, Giant Snail, Tiger etc.)
    # Will only add checks for Mobs that are reachable on the boards selected in the <Boards> option.
    # 
    # This will add 18 checks to Mainland, 3 checks to The Dark Forest and 9 checks to The Island.
    'false': 50
    'true': 0

  mobsanity_balancing:
    # Greatly increases chance for all Packs / Strange Portals / Dark Forest Waves to spawn reachable Mobs that you have not yet killed.
    # 
    # It is recommended to set this to 'true' to prevent relying on RNG to reach all Mobsanity checks.
    # If set to 'false' you will be at the mercy of RNG to spawn all Mob types to reach all Mobsanity checks.
    # 
    # This setting is ignored if the <Mobsanity> option is 'false'.
    'false': 0
    'true': 50

  structuresanity:
    # Add checks for building one of each reachable Structure card. (E.g Garden, Market, Distillery etc.)
    # Will only add checks for Structures that are reachable on the boards selected in the <Boards> option.
    # 
    # This will add 16 checks to Mainland and 10 checks to The Island.
    'false': 50
    'true': 0

  #########
  # Traps #
  #########
  trap_fill:
    # The percentage of the filler item pool that should be populated with trap items.
    # 
    # 0   -> No trap items will be included in the filler item pool
    # 25  -> Approximately 25% of the filler item pool will be trap items
    # 50  -> Approximately 50% of the filler item pool will be trap items
    # etc.
    #
    # You can define additional values between the minimum and maximum values.
    # Minimum value is 0
    # Maximum value is 100
    25: 50
    random: 0
    random-low: 0 # random value weighted towards lower values
    random-high: 0 # random value weighted towards higher values
    random-range-0-100: 0 # random value between 0 and 100

  feed_villagers_trap_weight:
    # The weighting of Feed Villagers Trap in the trap pool.
    # The higher this number relative to the other trap weightings, the more often it is likely to appear.
    # 
    # Feed Villager Trap will force all villagers on the current board to be fed - villagers not fed will die.
    # 
    # If <Trap Fill> is 0 then this setting will be ignored.
    #
    # You can define additional values between the minimum and maximum values.
    # Minimum value is 0
    # Maximum value is 100
    50: 50
    random: 0
    random-low: 0 # random value weighted towards lower values
    random-high: 0 # random value weighted towards higher values
    random-range-0-100: 0 # random value between 0 and 100

  mob_trap_weight:
    # The weighting of Mob Traps in the trap pool.
    # The higher this number relative to the other trap weightings, the more often it is likely to appear.
    # 
    # Mob Traps will spawn a random, basic enemy to the current board - killing mobs from Mob Traps will not count towards Mobsanity checks.
    # 
    # If <Trap Fill> is 0 then this setting will be ignored.
    #
    # You can define additional values between the minimum and maximum values.
    # Minimum value is 0
    # Maximum value is 100
    50: 50
    random: 0
    random-low: 0 # random value weighted towards lower values
    random-high: 0 # random value weighted towards higher values
    random-range-0-100: 0 # random value between 0 and 100

  sell_cards_trap_weight:
    # The weighting of Sell Cards Trap in the trap pool
    # The higher this number relative to the other trap weightings, the more often it is likely to appear.
    # 
    # Sell Cards Trap forces you to immediately sell <Sell Cards Trap Amount> of cards from the current board.
    # 
    # If <Trap Fill> is 0 then this setting will be ignored.
    #
    # You can define additional values between the minimum and maximum values.
    # Minimum value is 0
    # Maximum value is 100
    50: 50
    random: 0
    random-low: 0 # random value weighted towards lower values
    random-high: 0 # random value weighted towards higher values
    random-range-0-100: 0 # random value between 0 and 100

  sell_cards_trap_amount:
    # How many cards a Sell Cards Trap will force you to sell.
    # 
    # You will be forced to sell this amount of all sellable cards when you receive this trap. If you have fewer than
    # this amount, you will instead be forced to sell all remaining sellable cards.
    # 
    # If <Trap Fill> is 0 or <Sell Cards Trap Weight> is 0 then this setting will be ignored.
    #
    # You can define additional values between the minimum and maximum values.
    # Minimum value is 1
    # Maximum value is 10
    3: 50
    random: 0
    random-low: 0 # random value weighted towards lower values
    random-high: 0 # random value weighted towards higher values
    random-range-1-10: 0 # random value between 1 and 10

  strange_portal_trap_weight:
    # The weighting of Strange Portal Trap items in the trap pool.
    # The higher this number relative to the other trap weightings, the more often it is likely to appear.
    # 
    # Strange Portal Traps will spawn a Strange Portal to the current board.
    # Portals from these traps cannot be used to travel to The Dark Forest and killing enemies spawned from these Portals will not count towards Mobsanity checks.
    # 
    # If <Trap Fill> is 0 then this setting will be ignored.
    #
    # You can define additional values between the minimum and maximum values.
    # Minimum value is 0
    # Maximum value is 100
    50: 50
    random: 0
    random-low: 0 # random value weighted towards lower values
    random-high: 0 # random value weighted towards higher values
    random-range-0-100: 0 # random value between 0 and 100

  #######
  # QoL #
  #######
  red_structure_spawn:
    # The position on the board where red structures (Strange Portal / Rare Portal / Pirate Ship) will spawn.
    # 
    # Vanilla -> Red structures will spawn in random locations on the current board, as per vanilla behaviour.
    # All Other Values -> Red structures will attempt to spawn at a fixed point in the specified area of the current board.
    vanilla: 50
    top_left: 0
    top_right: 0
    bottom_left: 0
    bottom_right: 0
    middle: 0

  ###########################
  # Item & Location Options #
  ###########################
  local_items:
    # Forces these items to be in their native world.
    []

  non_local_items:
    # Forces these items to be outside their native world.
    []

  start_inventory:
    # Start with the specified amount of these items. Example: "Bomb: 1"
    {}

  start_hints:
    # Start with these item's locations prefilled into the ``!hint`` command.
    []

  start_location_hints:
    # Start with these locations and their item prefilled into the ``!hint`` command.
    []

  exclude_locations:
    # Prevent these locations from having an important item.
    []

  priority_locations:
    # Prevent these locations from having an unimportant item.
    []

  item_links:
    # Share part of your item pool with other players.
    []

  plando_items:
    # Generic items plando.
    []
