Skip to content

Releases: ManualForArchipelago/Manual

Unstable - 20260129

29 Jan 22:48
2751ec0

Choose a tag to compare

This unstable release contains the following changes:

Client Changes

  • Ignore "The " when applying natural sorting by @silasary in #180
  • Add verification that a location is in logic before being sent to server by @nicopop in #179
  • Client: Fix location button clicks happening through tabs, etc. by @FuzzyGamesOn in #192

APWorld Changes

  • Fix UT Yamlless gen by @silasary in #183
  • Implement Events by @axxroytovu in #141
  • Remove the deprecated 'player' prop from game.json by @FuzzyGamesOn in #187
  • Fix bug in meta.json default author by @FuzzyGamesOn in #188
  • Fix casing on canReachLocation req function by @FuzzyGamesOn in #186
  • Minor naming tweak to schema for option defaults by @FuzzyGamesOn in #189
  • Correctly assign the game name to the game field on items and locations by @silasary in #191
  • Add validation for missing name on items and locations by @FuzzyGamesOn in #190
  • Add classification_count fallback in create_item by @nicopop in #193
  • Optimize some of the datavalidation added in recent PR by @nicopop in #198
  • Added 2 Options require functions that set item counts based on option values in yaml by @nicopop in #182
  • Replace meta.yaml setting for visualize_regions with something easier and more single-use by @silasary in #199

Documentation and other non-code changes

Full Changelog: manual_unstable_20251205...manual_unstable_20260129

Unstable - 20251205

05 Dec 21:49
127118a

Choose a tag to compare

This unstable release contains the following changes:

Client Changes

APWorld Changes

  • Correctly create option classes by @silasary in #168
  • Make add_filler_items deprecation message more clear by @FuzzyGamesOn in #165
  • Add validation for reserved region names by @FuzzyGamesOn in #170
  • Per Classification Count aka Item types config not just for hooks devs by @nicopop in #161
  • Count hook precollected items too by @nicopop in #167
  • Fix the fact that list[Item].remove ignore classification by @nicopop in #172
  • fix 'Game Options' option group not having base options (like prog bal) when defined by devs by @nicopop in #174
  • Migrate APManual files to APPlayerContainers instead of base64 json by @silasary in #153
  • Add before_generate_early hook by @silasary in #178
  • Fix depreciation warning by @silasary in #177

Documentation and other non-code changes

New Contributors

Full Changelog: manual_stable_20250813...manual_unstable_20251205

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 )