Releases: SkyTemple/skytemple
Version 1.8.3
Downloads: https://download.skytemple.org/skytemple/1.8.3
Bugfixes
- Fixes the image converter not working under Windows
Version 1.8.2
Downloads: https://download.skytemple.org/skytemple/1.8.2
Improvements
- Sprite files are now generally slightly smaller when imported (thanks to an anonymous contributor)
Bugfixes
- Fixes an old issue with imported sprites getting cut off sometimes (thanks to an anonymous contributor)
- Fixed a hang of the debugger when opening weirdly formatted scripts
- Fixed the emulator starting to run when reloading a ROM
Version 1.8.1
Downloads: https://download.skytemple.org/skytemple/1.8.1
This release fixes some regressions introduced in 1.8.0 and adds a new patch.
New Patches
- FastChimecho:
Shorten Chimecho Team Assembly menu interactions. Adding, removing and making leader are now fast interactions that immediately go back to the team member selection menu.
(thanks to an anonymous contributor)
Improvements
- The algorithm to correct sprite sizes now uses the same implementation as the import for character sprites, instead of using the implementation otherwise used for object sprites (thanks to an anonymous contributor)
Bugfixes
- Fixed custom actors and custom levels not being correctly loaded throughout the UI
- Debugger: Fixed position marks not being editable
- Debugger: Fixed calltips (parameter suggestions) for operations not appearing for inline-context operations or operations that have spaces between the operation name and the parameter list
- Debugger: Fixed errors on the debug overlay when trying to display position marks
Version 1.8.0
Downloads: https://download.skytemple.org/skytemple/1.8.0
This release is packed full with new features and improvements! For this reasons this changelog is structured a bit different from previous changelogs. We will start with new features in SkyTemple, then go over the massive improvements and new features in ExplorerScript, present updates to patches and then all other improvements to SkyTemple.
New SkyTemple Features
Symbols Editor
SkyTemple now has a new section that allows advanced users to change many hardcoded data values of the game.
Powered by pmdsky-debug, this section allows you to edit the values of most symbols in the game, across of all of ARM9 and its overlays. It even allows more complicated structured data for some supported data types.
Please note that the symbol editor may not load or work correctly with some patches applied.
Thanks to @Frostbyte0x70!
Sprite Info
SkyTemple 1.8 now automatically corrects all relevant Pokémon infos when sprites are updated, including Body Size. The difference and meaning of Sprite VRAM-Size, Sprite File Size and Body Size is now communicated more clearly and we added some documentation.
There are also two new tools under "Pokémon" in the new tab "Sprite Checker" for checking the sprite info metadata of all Pokémon and performing automatic corrections.
Thanks to an anonymous contributor!
ExplorerScript 0.2
One of the highlights of this release are the improvements to ExplorerScript. We hope you enjoy!
You can also find a list of all ExplorerScript features in our updated reference.
Performance Improvements
We have worked hard on making ExplorerScript decompilation and especially compilation much faster.
Compiling scripts is now up to 8x faster than before.
Thanks a lot to @tech-ticks for his work on this with me!
New Features
User Constants
You can now define your own constants! These can also be placed in macro files and referenced in scripts that import them. You can also define constants in routines or macros where they only apply to that routine/macro.
const FOOBAR = 12;
const BAZ = "Hello";
def 0 {
message_Talk(BAZ);
process_Special(FOOBAR, 0, 0);
}
See the documentation for more details.
Entity Inline-Context
Instead of writing with-blocks you can now add a special "marker" to operation calls to tell the game to execute this operation
with the given actor, object or performer. This is now the default for decompilation.
These two routines are equivalent:
// new
def 0 {
MyOperation<actor ACTOR_HELLO_WORLD>(3, "String", Position<'Name', 20, 20.5>);
}
// "old"
def 1 {
with (actor ACTOR_HELLO_WORLD) {
MyOperation(3, "String", Position<'Name', 20, 20.5>);
}
}
See the documentation for more details.
Thanks to @tech-ticks!
Multiple statements in with-Blocks
You can now put multiple statements in a with-block. They will all be executed after each other as if you have written multiple with-blocks for the same entity. See the documentation for more details.
Thanks to @tech-ticks!
Multiline Strings
You can now define strings that span multiple lines. This works for both language- and constant-strings. The delimiter for them is """
or '''
.
{
languageA='String for lang A',
languageB="String for lang B",
languageC="""
String for lang C
on multiple lines
"""
}
The indent ("padding") before each line in the string will automatically be removed, so your string doesn't end up with a lot of spaces in a new line. In the above example, the string contents for language3
written in one line are "String for lang C on multiple lines"
.
See the documentation for more details.
Fixed Point Numbers
You can now used fixed point numbers between -64.0 and 63.996 in your scripts. Since they are fixed-point and not floating-point, their values get rounded to the next actually supported value by the game (the precision is ~.0039
). Please note that not all operations may properly support fixed point numbers.
See the documentation for more details.
SsbScript Fallback
If the decompiler can not decompile a script, it will now instead decompile it as SsbScript, an intermediate representation of ExplorerScript and SSB. This representation is harder to work with, but allows you to at least have any chance of working with scripts you lost the source code for that normally can't be decompiled.
The compiler will switch to compiling a script as SsbScript
if one of the first lines beginning with //?:
contains the special marker //?: is-ssb-script: true
.
Important Changes
%
is now a valid prefix for macro variables. Using$
for macro variables is now deprecated and may be removed in future versions of ExplorerScript.$
is still the prefix for game variables. We made this change to make the distinction between these two more clear.- Rejoice QWERTY users:
@
can now be used as the prefix for label definitions. Using§
is now deprecated and may be removed in future versions of ExplorerScript. - The syntax for targeted routine definitions has been simplified. For example
def 1 for_actor(ACTOR_PLAYER)
can now be written asdef 1 for actor ACTOR_PLAYER
. The old syntax may be removed in future versions of ExplorerScript.
Bugfixes
- The
forever
loop has been fixed. It no longer requires acontinue
to actually loop. It will now also correctly loop when reaching the end of its block. See the pull request for details. - Fix decompilation for scripts that contain jumps to labels in other routines.
- Fix decompilation for scripts that contain calls.
Internal changes
- The parser is now implemented in C++ using pybind11.
- The
explorerscript
package is now fully typed.
Patches
New Patches
RemoveBodySizeCheck
:Adds a patch that removes the total body size check the game performs before the player tries to enter a dungeon.
(thanks to @Frostbyte0x70)SpriteSizeInMonsterData
:Changes Sprite Size and Sprite File Size values to be in each Pokémon's data.
- This patch was previously part ofExpandPokeList
. It can now be applied on its own and allows modifying the sprite size fields for Pokémon sprites. (thanks to an anonymous contributor)
Improvements
ChangeTextSound
:Added an optional second parameter to the text tag specifying the volume. If the text tag is used without a volume parameter, it defaults to 256.
(thanks to @Adex-8x).BoldText
:When characters' widths are read while bold text is active, then it will be increased by 1 to prevent characters from bleeding into one another.
(thanks to @Adex-8x).
Bugfixes
- A small oversight in
DisplayScriptVariable
was fixed that might have resulted in crashes on hardware (thanks to @Adex-8x). - Potential crashes due to misaligned reads have been fixed in the
ProvideATUPXSupport
andExpandPokeList
patches (thanks to @Adex-8x).
Other Changes
- The
EditExtraPokemon
patch has been renamed toEditGuestPokemon
(thanks to @Frostbyte0x70).
Other changes to SkyTemple
Improvements
- Localizations have been updated. Thank you to all contributors on Crowdin helping with translating SkyTemple!
- SkyTemple is now available for MacOS arm64 (thanks to @tech-ticks)
- Text string categories have been extended and consolidated across NA/EU/JP regions. JP now is up-to-date with text string categories compared to the other regions (thanks to @in2erval)
- pmdsky-debug has been updated to
4db258e93a
(thanks to all contributors) - The performance of SkyTemple Script Engine Debugger has been vastly improved.
- The debug flags in the Debugger have been re-worded now that we better understand what they (don't) do (thanks to @Frostbyte0x70).
- The Debugger no longer opens a window when saving small scripts and instead provides a more seamless experience (thanks to @tech-ticks).
- The new Windows installer now uninstalls old versions first to fix some issues with anti-viruses. The new uninstaller remembers which files were installed by the installer and only removes these.
- SkyTemple icons have been given a subtle fixup, the Windows icon resolution has been fixed.
- SkyTemple Nightlies are now available for macOS, Windows and Linux Flatpak.
Removed Features
- SkyTemple Ssb Debugger no longer supports debugging scripts which have been saved before they have been reloaded in the emulator.
- The option to select how SkyTemple handles async operations have been removed and replaced by a default which works on all platforms reliably.
Bugfixes
- Fixed the export of static tiles for map backgrounds not working.
- Fixed string export not working correctly for strings that contain newlines (thanks to @in2erval).
- Fixed error message when loading a custom patch fails (thanks to @Frostbyte0x70).
- Fixed a typo in the instruction dialog for importing portraits (thanks to @Chesyon).
- Fixed Pokémon sprites not loading in the Pokémon editor.
- Localizations now work properly under macOS.
Internal
- Compatibi...
Version 1.6.5
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
andback2_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.
Version 1.6.3
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.
Version 1.6.2
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
andExternalizeWazaFile
were applied under certain circumstances (thanks to @Adex-8x). The fix can be applied by re-applyingDungeonInterrupt
. - The
WaitBack2Effect
ExplorerScipt operation has been renamed fromWaitBack2Effec
(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.
Version 1.6.0
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.
- AddKeyCheck
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 newimportlib
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
topyproject.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.0 Release Candidate
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 newimportlib
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
topyproject.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.0 Beta #1 (Version 1.6.0b1)
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 namedMultitype
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.