Skytemple Versions Save

GUI Application to edit the ROM of Pokémon Mystery Dungeon Explorers of Sky (EU/US)

1.6.5

2 months ago

Downloads: https://download.skytemple.org/skytemple/1.6.5


Improvements:

  • Updated a lot of libraries SkyTemple uses.
  • Added a success message when ASM code has been imported for effects (thanks to @Chesyon).
  • Updated localizaions.
  • Prevent being able to endlessly zoom in and out in a lot of places.
  • Added a help button to the top of the main window that will open up a relevant wiki page for the currently open view.
  • A lot of under the hood changes in preparation for SkyTemple 2.0 (preparation for GTK 4 migration). If something breaks, sorry! Please report any errors.

Bugfixes:

  • Fixed parameter help popup for back_SetEffect and back2_SetEffect. The parameters were flipped (thanks to @Chesyon).
  • Fixed some map backgrounds for rest rooms not rendering for some dungeon mappings.
  • Fixed game debug logging not formatting parameters correctly in the debugger (thanks to @tech-ticks).
  • Fixed backgrounds (BGP) being corrupted when imported with native file handlers enabled.
  • Fixed potential memory corruption with monster data when using native file handlers.
  • Fixed the link to Crowdin in the settings (thanks to @Adex-8x).
  • Prevent empty user feedback from being submit when reporting errors.

1.6.3

4 months ago

Downloads: https://download.skytemple.org/skytemple/1.6.3


This release fixes a few bugs in SkyTemple 1.6.2.

Improvements:

  • The description of some fixed room actions was improved (thanks to @End45)
  • The import/export buttons for Pokémon sprites are now grayed out if the Pokémon has an invalid sprite ID assigned (the button to add a new sprite is still available).

Bugfixes:

  • Fixed a bug introduced in 1.6.2 that prevented adding new Pokémon sprites.
  • Actually fixed the issue affecting tile corruption with trap and item sprites
  • Fixed an issue where tileset 81 was not able to be loaded with "Native File Handlers" enabled and fixed related potential tileset corruption issues
  • The CompleteTeamControl patch was updated to version 1.2.5 by @Adex-8x, fixing the following issue:

    When using Complete Team Control, if you attempted to use an Orb with an ally who wasn't originally the leader, the game would still recalculate the potential targets surrounding them. This has the noticeable impact of an ally using an Orb in an unintended direction from where they're currently facing.

1.6.2

4 months ago

Downloads: https://download.skytemple.org/skytemple/1.6.2


This release fixes a few bugs in SkyTemple 1.6.0.

New Features:

  • The NegativeEnemyDensity patch has been added (thanks to @End45):

    Makes negative enemy density values work as intended (the absolute value of the density is used, without adding a random variation).

Improvements:

  • The ExtraSpace patch has been updated to 0.3.0 (thanks to @tech-ticks). Overlay 36 is now loaded ealier in the game's boot process, which means that patches which need it very early can now utilize Overlay 36.
  • The documentation (auto completions) for ExplorersSript operations have been improved to match our wiki (thanks to @Chesyon).
  • Some help texts in the UI have been improved (thanks to @End45).

Bugfixes:

  • Crashes under Windows have been fixed when running SkyTemple on PCs with certain locales installed.
  • An internal error message has been replaced with a proper error message when trying to load a file that is not a ROM as a ROM
  • Fixed a bug where DTEF XML files could not be selected for import under some MacOS versions.
  • A game crash has been fixed that occurred if DungeonInterrupt and ExternalizeWazaFile were applied under certain circumstances (thanks to @Adex-8x). The fix can be applied by re-applying DungeonInterrupt.
  • The WaitBack2Effect ExplorerScipt operation has been renamed from WaitBack2Effec (typo). The old spelling will continue to work until SkyTemple 1.7.
  • The autocompletion for back_SetBackEffect has been fixed to properly only contain one argument.
  • A bug has been fixed that caused some trap and item sprites to contain flipped 8x8 sections when importing.
  • An attempt was made to fix a rare issue when debugging.
  • Fixed an issue that caused the mission restriction file not being updated when the ExtractDungeonData patch was applied, breaking the SkyTemple UI (this was auto-corrected by re-opening the project).
  • Fixed an internal error when trying to import a sprite for a Pokémon with an invalid sprite ID configured. A proper error message is now shown.
  • Improved an internal error message when trying to import non-indexed images where indexed images are required.
  • An issue was solved where some older DTEF packages were no longer imported into SkyTemple 1.6.0 and the tile importing algorithm otherwise failed in some cases.

1.6.0

6 months ago

Downloads: https://download.skytemple.org/skytemple/1.6.0


SkyTemple 1.6.0 is a big release that brings a lot of improvements and new features.

Please see the SkyTemple blog for more information.

New Features:

  • SkyTemple is now compatible with the Japanese ROM. To make this happen, a lot of people (most notably @Adex-8x and @Laioxy) have put in a lot of work to update symbols, patches and string lists.
    • Not all patches are compatible yet and generally this support is currently considered to have "beta" stability. Please report any issues.
    • "Japanese" can now be selected as localization for the SkyTemple UI. Thank you to our Japanese translators!
  • The spawn weight of monsters inside of Monster Houses can now be specified separately. By default it will be linked to the normal/main spawn weight.
  • Pokémon data can now be exported into XML files all at once.
  • Scenes can now be imported and exported.
  • SkyTemple now has a plugin system. Developers can create their own plugins to extend SkyTemple. See the wiki and blog post for more information.
  • Information on how to edit music in the game via SkySongBuilder has been added.
  • New patches have been added (all thanks to @Adex-8x):
    • AddKeyCheck

      Disallows a party member from using a Key (Item ID 182) in the dungeon menu unless they're standing right below a Key Door.

    • ChangePortraitMidText

      Implements the text tag [FACE:X], where "X" is the new portrait emotion ID to change the currently-loaded portrait to. This works in ground and dungeon mode, and will default to the default (FACE_NORMAL) portrait if the specified portrait emotion cannot be found.

    • DisplayScriptVariable

      Implements the text tag [var:x:y], where "x" is a script variable ID and "y" (optional; will default to 0 if not present) is an index. The text tag will be replaced with the value of the specified script variable.

Improvements:

  • The emulator integration into the Script Engine Debugger has been completely rewritten. It is now much faster than before.
  • Added a hint to all Pokémon entries that do not have stats and/or moves to let the user know that these Pokémon can not safely be used in dungeons.
  • The unknown fields unk13 and unk15 for move data have been renamed to reflect their actual meaning and a description has been added.
    • unk13 is now a toggle that controls if the AI will use the move on frozen targets
    • unk15 is now named to explain that it's value is used to determine what range text to show in the move's description.
  • Tilequant (the tool to convert images) was updated! It now allows more advanced control over color and tile clustering to tweak the result.
  • The dungeon tilesets, dungeon backgrounds and regular backgrounds code has now been migrated to Rust. If you have "Native File handlers" enabled (default) the new Rust implementation is now used. This implementation is much faster than before.
    • If you run into issues, please report them. You can switch to the old implementation by disabling native file handlers in the settings, but this will turn off all fast implementations.
  • pmdsky-debug has been upgraded to v0.8.0+aa4b72a473.
  • The abilities dropdown now allows selecting all theoretically possible abilities, even those not implemented by default (thanks to @ShiningDeneb)
  • The "FixMemorySoftlock" patch has been upgraded to v2.1 (thanks to @End45):
    • Updates the FixMemorySoftlock patch to a new version. The patch will now prevent crashes caused by the game running out of memory by replacing the sprite that can't be loaded with a default preloaded sprite. This should fix all the cutscene crashes caused by memory errors.

  • Tracking: If you opted into tracking, we now track the number of users actually using each version of SkyTemple. This helps us understand how fast people move to new versions and get a feeling for what versions people may have issues upgrading to, so we can look into potential issues. It also gives us a feeling for how much pre-releases are actually tested.
  • API: Patches can now define parameters what are used only for certain game editions.
  • The debugging flags in the SkyTemple Script Engine Debugger are now properly named to mark that they intend to toggle (thanks to @End45).
  • Abilities and Type names are now always read from the ROM.
  • The "AddTypes" patch was updated so that it now supports setting a type for "Conversion 2" when applying it (thanks to @Adex-8x).
  • The "CompleteTeamControl" patch can now be localized (thanks to @Adex-8x)
  • The "PitfallTrapTweak" patch now hides the UI when going back a floor (thanks to @Adex-8x).
  • The definition of script variables is now read from ROM instead of being hardcoded.
    • Breaking change: If you have modified script variable names in your ROM, loading the ROM in SkyTemple and editing already decompiled and/or modified script might lead to errors on save due to unknown variable names. You need to change the names of the variables to match their new names.
    • There are no plans for this to be editable in SkyTemple, since editing the script variable definitions is likely to just break the existing game scripts and requires much care.
  • When errors occur you can now submit additional information that will help us fix the issue.
  • The arm7 binaries can now be patched (thanks to @adakite1)

Bugfixes:

  • Fixed a uncaught exception in rare circumstances when loading portraits in the editor.
  • Fixed that the dungeon preview feature did not auto-update when changing most text fields.
  • Fixed the Text Strings CSV export file sometimes containing extra line breaks under Windows.
  • Fixed the MacOS version not having background illustrations.
  • Fixed the "Error Details" button not working in some circumstances.
  • Under Windows SkyTemple will now no longer remember the window size when being maximized, which previously resulted in SkyTemple launching in a window that was covering the entire screen but wasn't actually maximized. Thanks to @Emboarger.
  • SkyTemple can now load Pokémon with unused abilities when using the "Native File Handlers".
  • Issues with sprite and portrait downloads under Windows were fixed by changing the download to use HTTP.
  • Patches bundled with SkyTemple now use the same string codec as the game when they manipulate the Text Strings (relevant for JP compatibility).
  • The "AddTypes" patch was fixed to restore the default behaviour of "Normal -> Ghost" and "Fighting -> Ghost" matchups (thanks to @Adex-8x).
  • An issue with a hook address for the "ActorAndLevelLoader" patch for the EU version was fixed (thanks to an anonymous contributor).
  • A rare bug has been fixed that resulted in the level list not being read correctly for ROMs with the "ActorAndLevelLoader" patch
  • Fixed that updating a Pokémon's name always only updated in the UI when the English name was edited, even if the EU/JP ROM was used and the UI was configured to use a language supported by the ROM.
  • Fixed various issues with importing certain Pokémon sprites (thanks to @scbroede).

Internal:

  • The loglevel of SkyTemple can now be adjusted with the environment variable SKYTEMPLE_LOGLEVEL, defaulting to info level.
  • Uses of pkg_resources have been replaced with the new importlib counterparts.
  • Some internal error reporting and the Sentry integration have been improved.
  • Deprecated API functionality that was announced to be removed in SkyTemple 1.6 will now be removed in 1.7 instead.
  • The app is now launched as a proper GtkApplication.
  • In preparation to a future GTK4 migration the view system for modules has been changed and PyGObject typestubs are now properly used and checked. See the blog for more information.
  • We have migrated from setup.py to pyproject.toml for the Python package (PEP 621, PEP 508, PEP 518).

It is recommended that MacOS and Windows users uninstall existing versions of SkyTemple before updating to this version. The same applies for if they decide to downgrade to earlier versions.

1.6.0rc1

8 months ago

Downloads: https://download.skytemple.org/skytemple/1.6.0rc1


This is a pre-release for SkyTemple 1.6.0.

Please see the SkyTemple blog for more information.

This release contains the following changes from the last stable version 1.5.5:

New Features:

  • SkyTemple is now compatible with the Japanese ROM. To make this happen, a lot of people (most notably @Adex-8x and @Laioxy) have put in a lot of work to update symbols, patches and string lists.
    • Not all patches are compatible yet and generally this support is currently considered to have "beta" stability. Please report any issues.
    • "Japanese" can now be selected as localization for the SkyTemple UI. Thank you to our Japanese translators!
  • The spawn weight of monsters inside of Monster Houses can now be specified separately. By default it will be linked to the normal/main spawn weight.
  • Pokémon data can now be exported into XML files all at once.
  • SkyTemple now has a plugin system. Developers can create their own plugins to extend SkyTemple. See the wiki and blog post for more information.

Improvements:

  • The emulator integration into the Script Engine Debugger has been completely rewritten. It is now much faster than before.
  • Added a hint to all Pokémon entries that do not have stats and/or moves to let the user know that these Pokémon can not safely be used in dungeons.
  • The unknown fields unk13 and unk15 for move data have been renamed to reflect their actual meaning and a description has been added.
    • unk13 is now a toggle that controls if the AI will use the move on frozen targets
    • unk15 is now named to explain that it's value is used to determine what range text to show in the move's description.
  • Tilequant (the tool to convert images) was updated! It now allows more advanced control over color and tile clustering to tweak the result.
  • The dungeon tilesets, dungeon backgrounds and regular backgrounds code has now been migrated to Rust. If you have "Native File handlers" enabled (default) the new Rust implementation is now used. This implementation is much faster than before.
    • If you run into issues, please report them. You can switch to the old implementation by disabling native file handlers in the settings, but this will turn off all fast implementations.
  • pmdsky-debug has been upgraded to v0.8.0+aa4b72a473.
  • The abilities dropdown now allows selecting all theoretically possible abilities, even those not implemented by default (thanks to @ShiningDeneb)
  • The "FixMemorySoftlock" patch has been upgraded to v2 (thanks to @End45):
    • Updates the FixMemorySoftlock patch to a new version. The patch will now prevent crashes caused by the game running out of memory by replacing the sprite that can't be loaded with a default preloaded sprite. This should fix all the cutscene crashes caused by memory errors.

  • Tracking: If you opted into tracking, we now track the number of users actually using each version of SkyTemple. This helps us understand how fast people move to new versions and get a feeling for what versions people may have issues upgrading to, so we can look into potential issues. It also gives us a feeling for how much pre-releases are actually tested.
  • API: Patches can now define parameters what are used only for certain game editions.
  • The debugging flags in the SkyTemple Script Engine Debugger are now properly named to mark that they intend to toggle (thanks to @End45).
  • Abilities and Type names are now always read from the ROM.
  • The "AddTypes" patch was updated so that it now supports setting a type for "Conversion 2" when applying it (thanks to @Adex-8x).
  • The "CompleteTeamControl" patch can now be localized (thanks to @Adex-8x)
  • The "PitfallTrapTweak" patch now hides the UI when going back a floor (thanks to @Adex-8x).
  • The definition of script variables is now read from ROM instead of being hardcoded.
    • Breaking change: If you have modified script variable names in your ROM, loading the ROM in SkyTemple and editing already decompiled and/or modified script might lead to errors on save due to unknown variable names. You need to change the names of the variables to match their new names.
    • There are no plans for this to be editable in SkyTemple, since editing the script variable definitions is likely to just break the existing game scripts and requires much care.

Bugfixes:

  • The Script Engine Debugger now no longer freezes when trying to save scripts.
  • Fixed a uncaught exception in rare circumstances when loading portraits in the editor.
  • Fixed that the dungeon preview feature did not auto-update when changing most text fields.
  • Fixed the Text Strings CSV export file sometimes containing extra line breaks under Windows.
  • Fixed the MacOS version not having background illustrations.
  • Fixed the "Error Details" button not working in some circumstances.
  • Under Windows SkyTemple will now no longer remember the window size when being maximized, which previously resulted in SkyTemple launching in a window that was covering the entire screen but wasn't actually maximized. Thanks to @Emboarger.
  • SkyTemple can now load Pokémon with unused abilities when using the "Native File Handlers".
  • Issues with sprite and portrait downloads under Windows were fixed by changing the download to use HTTP.
  • Patches bundled with SkyTemple now use the same string codec as the game when they manipulate the Text Strings (relevant for JP compatibility).
  • The "AddTypes" patch was fixed to restore the default behaviour of "Normal -> Ghost" and "Fighting -> Ghost" matchups (thanks to @Adex-8x).
  • An issue with a hook address for the "ActorAndLevelLoader" patch for the EU version was fixed (thanks to an anonymous contributor).
  • A rare bug has been fixed that resulted in the level list not being read correctly for ROMs with the "ActorAndLevelLoader" patch
  • Fixed that updating a Pokémon's name always only updated in the UI when the English name was edited, even if the EU/JP ROM was used and the UI was configured to use a language supported by the ROM.

Internal:

  • The loglevel of SkyTemple can now be adjusted with the environment variable SKYTEMPLE_LOGLEVEL, defaulting to info level.
  • Uses of pkg_resources have been replaced with the new importlib counterparts.
  • Some internal error reporting has been improved.
  • Deprecated API functionality that was announced to be removed in SkyTemple 1.6 will now be removed in 1.7 instead.
  • The app is now launched as a proper GtkApplication.
  • In preparation to a future GTK4 migration the view system for modules has been changed and PyGObject typestubs are now properly used and checked. See the blog for more information.
  • We have migrated from setup.py to pyproject.toml for the Python package (PEP 621, PEP 508, PEP 518).

It is recommended that MacOS and Windows users uninstall existing versions of SkyTemple before updating to this version. The same applies for if they decide to downgrade to earlier versions.

1.6.0b1

8 months ago

Downloads: https://download.skytemple.org/skytemple/1.6.0b1


This is a pre-release for SkyTemple 1.6.0.

Please see the SkyTemple blog for more information.

This release is based on SkyTemple1.6.0a4 and contains the following changes:

New Features:

  • SkyTemple now has a plugin system. Developers can create their own plugins to extend SkyTemple. See the wiki and blog post for more information.

Improvements:

  • Ability 0x74 is now named Multitype in the UI, as this is the name in the japanese ROM.
  • API: Patches can now define parameters what are used only for certain game editions.
  • The debugging flags in the SkyTemple Script Engine Debugger are now properly named to mark that they intend to toggle (thanks to @End45).
  • Internal: In prepreation to a future GTK4 migration the view system for modules has been changed and PyGObject typestubs are now properly used and checked. See the blog for more information.
  • "Japanese" can now be selected as localization for the SkyTemple UI. Thank you to our Japanese translators!

Bugfixes:

  • SkyTemple can now load Pokémon with unused abilities when using the "Native File Handlers".
  • Issues with sprite and portrait downloads under Windows were fixed by changing the download to use HTTP.
  • Patches bundled with SkyTemple now use the same string codec as the game when they manipulate the Text Strings (relevant for future JP compatibility).
  • A soft-crash has been fixed when trying to add new scenes without the Script Engine Debugger open.

It is recommended that MacOS and Windows users uninstall existing versions of SkyTemple before updating to this version. The same applies for if they decide to downgrade to earlier versions.

1.6.0a4

8 months ago

Downloads: https://download.skytemple.org/skytemple/1.6.0a4


This is a pre-release to test the new emulator integration for the Script Engine Debugger and other new features.

Please see the SkyTemple blog for more information.

This release is based on SkyTemple 1.5.5 + 1.6.0a2 and contains the following changes:

Bugfixes:

  • Fixed the Text Strings CSV export file sometimes containing extra line breaks under Windows.
  • Fixed the MacOS version not having background illustrations.
  • Fixed the "Error Details" button not working in some circumstances.
  • Under Windows SkyTemple will now no longer remember the window size when being maximized, which previously resulted in SkyTemple launching in a window that was covering the entire screen but wasn't actually maximized. Thanks to @Emboarger.

Improvements:

  • The dungeon tilesets, dungeon brackgrounds and regular backgrounds code has now been migrated to Rust. If you have "Native File handlers" enabled (default) the new Rust implementation is now used. This implementation is much faster than before.
    • If you run into issues, please report them. You can switch to the old implementation by disabling native file handlers in the settings, but this will turn off all fast implementations.
  • pmdsky-debug has been upgraded to v0.7.0+a0aa596e1c.
  • The abilities dropdown now allows selecting all theoretically possible abilities, even those not implemented by default (thanks to @ShiningDeneb)
  • The "FixMemorySoftlock" patch has been upgraded to v2 (thanks to @End45):
    • Updates the FixMemorySoftlock patch to a new version. The patch will now prevent crashes caused by the game running out of memory by replacing the sprite that can't be loaded with a default preloaded sprite. This should fix all the cutscene crashes caused by memory errors.

  • Tracking: If you opted into tracking, we now track the number of users actually using each version of SkyTemple. This helps us understand how fast people move to new versions and get a feeling for what versions people may have issues upgrading to, so we can look into potential issues. It also gives us a feeling for how much pre-releases are actually tested.

It is recommended that MacOS and Windows users uninstall existing versions of SkyTemple before updating to this version. The same applies for if they decide to downgrade to earlier versions.

1.5.5

9 months ago

Downloads: https://download.skytemple.org/skytemple/1.5.5


Bugfixes:

  • Fixes a crash when regrouping dungeons and dragging a dungeon onto itself.
  • Fixes a spam of error messages and softlock when enabling palette animations but not sending a frame number or duration for any palette. SkyTemple will now prevent you from doing that.
  • When applying the "ChangeEvoSystem" a better error message is now shown if any of the Pokémon in the Pokémon database has an invalid pre-evolution configured.
  • The japenese ROM of the game is now properly marked as unsupported and a proper error message is shown when trying to load it. We are looking for help getting the JP ROM supported.

1.6.0a2

9 months ago

Downloads: https://download.skytemple.org/skytemple/1.6.0a2


This is a pre-release to test the new emulator integration for the Script Engine Debugger and other new features.

Please see the SkyTemple blog for more information.

This release is based on SkyTemple 1.5.4 + 1.6.0a1 and contains the following changes:

Bugfixes:

  • The Script Engine Debugger now no longer freezes when trying to save scripts.
  • Fixed a uncaught exception in rare circumstances when loading portraits in the editor.
  • Fixed that the dungeon preview feature did not auto-update when changing most text fields.

Improvements:

  • Added a hint to all Pokémon entries that do not have stats and/or moves to let the user know that these Pokémon can not safely be used in dungeons.
  • The unknown fields unk13 and unk15 for move data have been renamed to reflect their actual meaning and a description has been added.
    • unk13 is now a toggle that controls if the AI will use the move on frozen targets
    • unk15 is now named to explain that it's value is used to determine what range text to show in the move's description.
  • Tilequant (the tool to convert images) was updated! It now allows more advanced control over color and tile clustering to tweak the result.

New Features:

  • The spawn weight of monsters inside of Monster Houses can now be specified separately. By default it will be linked to the normal/main spawn weight.
  • Pokémon data can now be exported into XML files all at once.

Internal:

  • The loglevel of SkyTemple can now be adjusted with the environment variable SKYTEMPLE_LOGLEVEL, defaulting to info level.
  • Uses of pkg_resources have been replaced with the new importlib counterparts.

It is recommended that MacOS and Windows users uninstall existing versions of SkyTemple before updating to this version. The same applies for if they decide to downgrade to earlier versions.

1.5.4

10 months ago

Downloads: https://download.skytemple.org/skytemple/1.5.4


Bugfixes:

  • Fixes decompiling scripts no longer working due to a breaking change in the igraph dependency (skytemple-files#378).