Skip to content

Releases: ManualForArchipelago/Manual

Stable - 20250813

13 Aug 13:49
6cbd6d5

Choose a tag to compare

What's Changed

  • CommonClient uses the game value before connect now, which broke the client... again by @FuzzyGamesOn in #162
  • Temporarily disable yamlless UT gen by @silasary in #163

Full Changelog: manual_stable_20250714...manual_stable_20250813

Stable - 20250714

14 Jul 02:13
33fa282

Choose a tag to compare

This stable release contains the following changes:

Client Changes

Apworld Changes

  • New regions.json key: entrance_rules. Allows you to make entering a region cost different things based on where you're coming from. by @silasary in #27
  • Support for Rule function recursion by @nicopop in #91
  • Removed some circular imports in helper.py by @nicopop in #92
  • Helper function for loading a csv file. People might find this useful for hooks by @silasary in #98
  • Make Item values all be lowercase by @nicopop in #103
  • Free UT yamls for Manual worlds that want them by @FuzzyGamesOn in #111
  • Add support for assigning multiple item classifications by @Seatori in #105
  • Adding options.json by @nicopop in #54
  • Itemvalue misc fixes by @nicopop in #104
  • Make "Invalid logic format" more descriptive for requires syntax by @FuzzyGamesOn in #112
  • after_options_defined new passes constructed dataclass by @nicopop in #114
  • Adding the YamlCompare req function by @nicopop in #130
  • Make Requirements function arguments optional by @nicopop in #133
  • automatically spaces from user's options names to avoid crashes by @nicopop in #116
  • Req function argument convert rewrite by @nicopop in #120
  • Support number-as-string values in Item.Count by @silasary in #123
  • Allow for empty array in item categories by @silasary in #128
  • Better req function exception messages by @nicopop in #127
  • changes to using / explicitly per pkgutil spec by @qwint in #134
  • Fix region logic to apply to entrances and not exits by @axxroytovu in #140
  • Options.py Visibility and types fixes by @nicopop in #143
  • fix crash cause by unbound item in create_items by @nicopop in #145
  • Fix before_create_items_all hook by @nicopop in #148
  • Ensure json rules cannot run python code while being parsed by @Mysteryem in #149
  • ItemValue optimizations by @nicopop in #146
  • Item Counts improvements by @nicopop in #150 and #156
  • Overhaul before_create_item hook by @axxroytovu in #131
  • Additional DataValidation Rules by @FuzzyGamesOn in #152, #158, #159, and #160

Hook Changes (From last Stable)

  1. In hooks/Data.py, Add the new hook after_load_option_file
  2. In hooks/Options.py, Move all existing Option definitions from after_options_defined to before_options_defined then replace after_options_defined with the new version
  3. In hooks/Options.py, add the new hooks before_option_groups_created and after_option_groups_created
  4. In hooks/world.py, add before_create_items_all, and after_collect_item and after_remove_item

Hook Changes (From last Unstable)

  • None

New Contributors

Full Changelog: manual_stable_20241119...manual_stable_20250714

Unstable - 20250516

16 May 13:25
4374ef4

Choose a tag to compare

Unstable - 20250516 Pre-release
Pre-release

This unstable release contains the following changes:

Client Changes

APWorld Changes

  • Adding the YamlCompare req function by @nicopop in #130
  • Make Requirements function arguments optional by @nicopop in #133
  • automatically spaces from user's options names to avoid crashes by @nicopop in #116
  • Req function argument convert rewrite by @nicopop in #120
  • Support number-as-string values in Item.Count by @silasary in #123
  • Allow for empty array in item categories by @silasary in #128
  • Better req function exception messages by @nicopop in #127
  • changes to using / explicitly per pkgutil spec by @qwint in #134
  • Fix region logic to apply to entrances and not exits by @axxroytovu in #140
  • Options.py Visibility and types fixes by @nicopop in #143
  • fix crash cause by unbound item in create_items by @nicopop in #145
  • Fix before_create_items_all hook by @nicopop in #148
  • Ensure json rules cannot run python code while being parsed by @Mysteryem in #149
  • ItemValue optimizations by @nicopop in #146
  • fix the item counts for location requirements desync with UT by @nicopop in #150
  • Overhaul before_create_item hook by @axxroytovu in #131

Hook Changes

Other

New Contributors

Full Changelog: manual_unstable_20241210...manual_unstable_20250516

Unstable - 20241210

10 Dec 00:12
80d623d

Choose a tag to compare

Unstable - 20241210 Pre-release
Pre-release

This unstable release contains the following changes:

Client Changes

Apworld Changes

  • New regions.json key: entrance_rules. Allows you to make entering a region cost different things based on where you're coming from. by @silasary in #27
  • Support for Rule function recursion by @nicopop in #91
  • Removed some circular imports in helper.py by @nicopop in #92
  • Helper function for loading a csv file. People might find this useful for hooks by @silasary in #98
  • Make Item values all be lowercase by @nicopop in #103
  • Free UT yamls for Manual worlds that want them by @FuzzyGamesOn in #111
  • Add support for assigning multiple item classifications by @Seatori in #105
  • Adding options.json by @nicopop in #54
  • Itemvalue misc fixes by @nicopop in #104
  • Make "Invalid logic format" more descriptive for requires syntax by @FuzzyGamesOn in #112
  • after_options_defined new passes constructed dataclass by @nicopop in #114

Hook Changes

  1. In hooks/Data.py, Add the new hook after_load_option_file
  2. In hooks/Options.py, Move all existing Option definitions from after_options_defined to before_options_defined then replace after_options_defined with the new version
  3. In hooks/Options.py, add the new hooks before_option_groups_created and after_option_groups_created

New Contributors

Full Changelog: manual_stable_20241119...manual_unstable_20241210

Stable - 20241119

19 Nov 08:05

Choose a tag to compare

This unstable release contains the following changes:

New Features:

  • Fix using multiple ItemValue types (@nicopop)
  • Add local_early option (@nicopop)
  • Allow partial Early items (@nicopop)
  • Properly implement the get_filler_item_name function for ItemLink substitutions (@axxroytovu, @FuzzyGamesOn)
  • Add yaml_option support to starting_items (@silasary)
  • Added initial item/location id offset to game.json (@nicopop)
  • Allow items/locations to skip IDs (@silasary)
  • Extend hint information with Entrance text (@axxroytovu)
  • Add start_inventory_from_pool support (@silasary)

Client Improvements:

  • Support launching client with nogui (@FuzzyGamesOn)
  • fix errors when double clicking .apmanual (@nicopop)
  • Client: Highlight categories when at least one location is in logic (@FuzzyGamesOn)
  • /send command (@silasary)
  • Client location buttons send on release instead of on press (@FuzzyGamesOn)

Full Changelog: manual_stable_20240709...manual_stable_20241119

Migration notes

!!! Important: All IDs now start at One. If you wish to keep your starting index in the millions (eg: compatibility with preexisting poptracker packs), you can set the starting_index field to the old value.

Hook File Changes

  • Delete the file: hooks/Items.py. Use the existing hooks/Data.py - after_load_items_file hook instead.
  • Delete the file: hooks/Locations.py. Use the existing hooks/Data.py - after_load_locations_file hook instead.
  • Delete the file: hooks/Regions.py. Use the hooks/Data.py - after_load_regions_file hook instead.
  • Delete these functions from the hooks/Rules.py file. These were moved to core files for better maintenance. If you edited these hooks for your own game, you will need to rename them to avoid conflicts.
    • ItemValue
    • OptOne
    • OptAll
    • canReachLocation
  • Add the new hook: hooks/World.py function hook_get_filler_item_name. This hook allows you to edit the default "filler item name" for the purpose of padding your item pool, item links or start_item_from_pool.
  • Add the new hook: hooks/World.py function before_extend_hint_information. This hook allows you to add hint entrance information a la entrance randomizer
  • Add the new hook: hooks/World.py function after_extend_hint_information. This hook allows you to edit hint entrance information loaded from the json files

Unstable - 20240929

29 Sep 06:35
002debd

Choose a tag to compare

Unstable - 20240929 Pre-release
Pre-release

This unstable release contains the following changes:

New Features:

  • Fix using multiple ItemValue types (@nicopop)
  • Add local_early option (@nicopop)
  • Allow partial Early items (@nicopop)
  • Properly implement the get_filler_item_name function for ItemLink substitutions (@axxroytovu, @FuzzyGamesOn)
  • Add yaml_option support to starting_items (@silasary)
  • Added initial item/location id offset to game.json (@nicopop)
  • Allow items/locations to skip IDs (@silasary)
  • Extend hint information with Entrance text (@axxroytovu)
  • Add start_inventory_from_pool support (@silasary)

Client Improvements:

  • Support launching client with nogui (@FuzzyGamesOn)
  • fix errors when double clicking .apmanual (@nicopop)
  • Client: Highlight categories when at least one location is in logic (@FuzzyGamesOn)
  • /send command (@silasary)
  • Client location buttons send on release instead of on press (@FuzzyGamesOn)

Full Changelog: manual_stable_20240709...manual_unstable_20240929

Stable - 20240709

09 Jul 15:05
71c328b

Choose a tag to compare

This stable release contains the following changes:

New Features:

  • Deathlink (@silasary)
  • Items can now have point values and locations/regions can use point sums as requirements (@nicopop)
  • Manual worlds can have multiple victory locations w/ a goal YAML option to pick (@silasary)
  • Locations can be marked to always pre-hint (@silasary)
  • Added {canReachLocation()} function (@axxroytovu)
  • {YamlEnabled()} function (@silasary)
  • Your Manual apworld's documentation can be updated via game.json and hooks (@nicopop)

Client Improvements:

Stable - 20240528

28 May 21:43
999a9bf

Choose a tag to compare

This stable release contains all of the changes from the previous unstable releases, including one breaking change compared to previous versions. Additionally, this release contains a fix for deprecated AP options, so upgrading your existing apworlds is highly recommended.


BREAKING CHANGE

Item creation was happening in the wrong step (generate_basic), so it was moved to the proper create_items step.
This change will break the generate_basic hooks, since they have changed to create_item hooks.

(If you have not previously used Manual's hooks or don't know what that means, you can safely ignore this.)


Changes from the previous stable version:

  • Client fix for item names that matched other games and caused incorrect counts (@silasary )
  • Fix for requires functions and their arguments, and fixing a crash with empty arguments (@nicopop )
  • Overall performance improvements because of changes to validation (@silasary )
  • Excess filler will now be automatically removed, if possible, to make the items and locations count match (@silasary )
  • Added better preserving of YAML options when using the Universal Tracker integration (@silasary )
  • The ability to negate a yaml_option in category.json (@silasary )
  • The ability to use hook functions directly in requires strings for dynamic checking (@silasary )
  • The ability to require a percentage of an item's total count instead of an exact count (@nicopop )
  • Adding JSON schemas for Manual's current configurations (@nicopop )
  • Better validation for improperly configured starting_items blocks
  • Better validation for place_item and place_item_category on locations
  • Fixed pseudo-counts HALF and ALL for requires, and made them account for disabled items (@nicopop )
  • Fix for validation causing performance delays in the loading of the client (@silasary )
  • Fix deprecations, including new options dataclass, that came with the 0.4.4 release of AP (@nicopop )
  • Better handling of unknown locations and items in the Manual client, in the case of an outdated apworld (@silasary )

Unstable - 20240528

28 May 22:05
999a9bf

Choose a tag to compare

Unstable - 20240528 Pre-release
Pre-release

This unstable release contains the following changes:

  • Deathlink (@silasary)
  • Items can now have point values and locations/regions can use point sums as requirements (@nicopop)
  • Manual apworlds can now have multiple possible victory locations, with a goal YAML option choosing the one that is used (@silasary)
  • You can now mark locations as always pre-hinted when playing a Manual apworld (@silasary)
  • A Manual apworld's documentation can now be updated via game.json or hook (@nicopop)
  • Various fixes for whitespace in requirements and string comparisons in client locations (@silasary)
  • Fix for place_item validation issues

Unstable - 20240407

07 Apr 20:14
1f06e2f

Choose a tag to compare

Unstable - 20240407 Pre-release
Pre-release

BREAKING CHANGE

Item creation was happening in the wrong step (generate_basic), so it was moved to the proper create_items step.
This change will break the generate_basic hooks, since they have changed to create_item hooks.


This unstable release contains the following changes:

  • Client fix for item names that matched other games and caused incorrect counts (@silasary )
  • Fix for requires functions and their arguments, and fixing a crash with empty arguments (@nicopop )
  • Overall performance improvements because of changes to validation (@silasary )
  • Excess filler will now be automatically removed, if possible, to make the items and locations count match (@silasary )
  • Added better preserving of YAML options when using the Universal Tracker integration (@silasary )

... and also contains the following changes from the previous unstable:

  • The ability to negate a yaml_option in category.json (@silasary )
  • The ability to use hook functions directly in requires strings for dynamic checking (@silasary )
  • The ability to require a percentage of an item's total count instead of an exact count (@nicopop )
  • Adding JSON schemas for Manual's current configurations (@nicopop )
  • Better validation for improperly configured starting_items blocks
  • Better validation for place_item and place_item_category on locations
  • Fixed pseudo-counts HALF and ALL for requires, and made them account for disabled items (@nicopop )
  • Fix for validation causing performance delays in the loading of the client (@silasary )
  • Fix deprecations, including new options dataclass, that came with the 0.4.4 release of AP (@nicopop )
  • Better handling of unknown locations and items in the Manual client, in the case of an outdated apworld (@silasary )