> For the complete documentation index, see [llms.txt](https://edseries-plugins.gitbook.io/p/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://edseries-plugins.gitbook.io/p/pinnapass/getting-started/upgrading.md).

# Upgrading from 1.x

2.0 reads 1.x files as they are; nothing has to be edited by hand.

| 1.x                                                 | 2.0                                                                                                                                                                                                                                                    |
| --------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `menus.yml` (three sections)                        | split into `guis/pass-menu.yml`, `guis/challenge-menu.yml`, `guis/infinite-menu.yml` on the first start, kept as `menus.yml.migrated`. Every 1.x key and action (`[buy]`, `[claim]`, `[menu]`, `[page]`, `show-if`, `slots`, `counter`...) still works |
| `challenges.yml` + config `challenges:`             | used as one rolling quest category `challenges` while config.yml has no `quests:` section; types `MINE_BLOCKS`, `PLAYTIME`, `COUNTER` are `mine-blocks`, `playtime`, `counter`                                                                         |
| `xp.per-block`, `xp.sources`, `xp.vanilla-fallback` | used while config.yml has no `xp.activities` section                                                                                                                                                                                                   |
| `challenge.*` messages                              | still used when messages.yml has them and not the new `quests.*` keys                                                                                                                                                                                  |
| `tiers.max` meaning                                 | unchanged while `tiers.complete-last-tier` is missing (1.x: the counter stops ON the last tier); new installs complete the last tier too                                                                                                               |
| player data                                         | the same database (no `storage.type` = `h2`, as before); quests of 1.x stay in the `challenges` category; everyone is in season 1                                                                                                                      |

New 2.0 sections (`season`, `notifications`, `activity`, `boosters`, `quests`, `xp.activities`, `rewards`) are off or keep 1.x behaviour until you add them; copy them from the bundled `config.yml` (in the jar) when you want them. Moving to daily / weekly quests: add `quests:` to config.yml and write `quests.yml`; the old `challenges` quests are then dropped and everyone gets new quests.
