Migration from 0.10
Back up your Typewriter pages folder and the plugins/Typewriter/ data before updating. Entries are read as they are: existing pages load, but several things behave differently.
Removed
| What | Replace with |
|---|---|
aggroMultiplier on the Dungeon Instance | Nothing. It was never read and is gone. |
/typewriter dungeon start | /typewriter dungeon enter <instance>. |
The partyLobbyArtifact link | Nothing. It is unused: lobbies are no longer restored after a reload or a restart. The entry Dungeon Party Lobby Artifact still loads but is inert, and is planned to be removed in a later version. |
| Joining a lobby creating a party in MMOCore or Parties | Parties are read only. The whole party of a player joins the lobby with them. |
Behaviour that changes
allowedDungeonIdson a Dungeon NPC Instance. It is now a list of references to dungeon instances (same field name, same stored data, so old pages load). An empty list now means every run of every dungeon. In 0.10 the NPC was never shown at all. A list that contained ids keeps working when the ids still exist. Thegroupdefault is now the members of the run.- Dungeon NPC Instance is shown. In 0.10 it never appeared. If you used a chest anchored to an NPC of another extension as a workaround, you can now anchor to this one.
criteriaon category slots are evaluated per player. In 0.10 any criterion locked the slot for everybody. Remove criteria you used as a hard lock.- Dungeon
criteriaanddamageMultiplierare now applied (damageMultiplierdefault 1). cooldownSeconds:0or empty means no time limit.- Rooms now fire.
onEnter,onLeave, modifiers and criteria of a Dungeon Room run. Rooms that overlap are all entered, the higherpriorityfirst.verticalMarginis new, with a default of 2.0 blocks: a player now counts as inside from 2 blocks below the lowest node to 2 blocks above the highest, for every room. Set it to 0 to keep the exact height you had. A tall room (a big hall, a tower) may need a larger value, so that a jump or a vehicle stays inside. - Facts.
indungeonandindungeon_instancereturn real values. - Statistics are written. They start at zero.
- Isolation. The new
isolationfield isAUTOby default:SLIME_CLONEwith Advanced Slime Paper, otherwiseWORLD_PER_RUN(a copy oftemplateWorld, deleted after the run). In 0.10 plain Paper used the template world itself and removed every non-player entity from it. To keep sharing a world, setSHARED_WORLD_SLOTSand build the dungeon in every slot. See Runs and world isolation. - The party menu is chosen by its
dungeonInstancefield, and an empty one serves any dungeon no other menu names. It was "the first menu found". - Loot Chest Trigger
ONCEis once per run, not until the server restarts. - Runs survive a reload if a
runtimeArtifactis linked (elseruns.json). A server restart ends them. - Dungeon Enter and
/typewriter dungeon entercheck the group size, the criteria, the entry cost and the run limit. - Mobs of the extension (new): none are made unless you add Dungeon Mob Spawn entries.
New snippets and fields
All the texts that players read in the menus, lobbies, sidebar, loot chests and launch refusals are now Typewriter snippets (content.dungeon_menu., content.dungeon_lobby., content.dungeon_run.sidebar., content.dungeon_chest., content.dungeon_launch.). Their defaults are the texts the extension already showed, so nothing changes until you edit them. The list is in the index. The replies of the admin commands are snippets as well (content.dungeon_command.).
Two groups of fields are new, with defaults that keep the old behaviour:
lobbyIdleKickSecondson the Dungeon Instance (default120, the former fixed 2 minutes).- On Loot Chest Trigger:
triggerSoundVolume,triggerSoundPitch,triggerParticleCount,triggerParticleSpread,triggerParticleSpeed(defaults1,1,30,0.5,0.1).broadcastMessagenow accepts colour codes.
Data compatibility
- The runs journal is read from version 1 to 3. It is written as version 2 while no generated run is in it, and as version 3 as soon as one is (it also gains the optional
mobsandmobsOwedlists). Going back to an older build is therefore safe only while no generated run was saved; do not downgrade after using generated dungeons. An artifact that cannot be read is never overwritten. - The
MarkerKindlist of a room template gainedNPCandMOBat its end. Existing room templates keep their identity and are unchanged. - The id of the entity entry
dungeon_npc_instanceis unchanged.
Checklist
- Back up your pages.
- Update the JAR and start the server. Read the log for warnings about a missing
runtimeArtifactor party menu. - Check each dungeon's
isolation. - Review
allowedDungeonIdson your NPC instances. - Review
criteriaon category slots andverticalMarginon rooms. - Replace uses of
/typewriter dungeon start.