Releases: SkriptLang/Skript
Finally time for a (pre-)release!
This release contains numerous bug fixes and small additions. As always, test before you use it on a public server; however, I do not expect it to be utterly broken.
- Added support for shuffling a list (closes #130)
- Added a function to calculate experience needed for level (closes #383)
- Added basic support for inventory types (closes #426)
- Added function parameter names to documentation
- Fixed the velocity expression yet again (thanks @Snow-Pyon, relates #792)
- Fixed a sample script (equip anything.sk) (thanks @TheLimeGlass)
- Fixed offline player resolver sometimes throwing exceptions (closes #237)
- Fixed functions with errors being impossible to reload (closes #884)
- Fixed Grief Preventation hook sometimes throwing exceptions (closes #915)
- Fixed an issue with angle brackets inside chat formatting tags (closes #904)
- Improved script loader Java API (for future use)
- Improved parsing performance (closes #636)
- Improved hash expression to be more secure (breaking change!)
- Improved plugin hook error reporting (thanks @Pikachu920)
- Improved documentation in some places (thanks @Blueyescat)
- Improved documentation by sorting it alphabetically
- Updated Gradle wrapper
Release dev32b to work around Spigot regression:
- "Fixed" a crash with Skript (closes #964)
Contributions merged and tested
I merged a lot of pull requests for this release, though I also fixed some serious bugs, too. Probably quite stable, at least for users without addons. Still, as always, test it before updating a public server!
- Added contribution guide - see CONTRIBUTING.md
- Added support for configuring variable storage table name (thanks @xXAndrew28Xx, closes #666)
- Added book events and expressions (thanks @xXAndrew28Xx, closes #106)
- Added condition to check if a script is loaded (thanks @xXAndrew28Xx, closes #797)
- Added function reference to function events (thanks @xXAndrew28Xx, closes #610)
- Added support for posting function events for Bukkit's event listeners - optional feature, must be enabled by calling Functions.enableFunctionEvents(SkriptAddon)
- Added support for localizing nulls (thanks @xXAndrew28Xx, closes #646)
- Added chat format expression (thanks @xXAndrew28Xx, closes #548)
- Added an expression to get Unix timestamp (closes #753)
- Added an expression to format date, as replacement for removed old unix time
- Fixed a bug that caused some variable storage backends not to delete lists (thanks @Sharpjaws, closes #350)
- Fixed velocity expression not working (thanks @Sashie, relates #792)
- Fixed potential NullPointerException with functions (closes #795)
- Fixed kill effect not killing all entities that can be killed in Vanilla (thanks @xXAndrew28Xx, closes #783)
- Fixed some errors in sample scripts (thanks @Weefle)
- Improved inventory clearing performance a little (relates #772)
- Updated aliases by @tim740
- Removed old "unix time" expression, as it was misleading
This should be more stable, but one thing to keep in mind: removed expression has replacement, but syntax changed. Might break some scripts, but easy to fix for you.
Hotfix dev31b released:
- Fixed a bug ("thanks @Sharpjaws"...) in pull request #791 which prevented deleting list variables (closes #843)
Hotfix dev31c released:
- FIxed a bug which caused all items expression not to always work (closes #841)
Updating stuff
First, a warning: this is not stable build, at least not until way more testing has been done. Test it before putting it to your public server, especially if you use addons. Most of them should work (including skript-mirror, I had wrong information initially).
- Added support for silverfish in block form event (closes #574, thanks @Sashie)
- Added expression for velocity (thanks @Sashie)
- Added colored bed types, at least until next aliases merge-in (thanks @Legoman99573)
- Added a warning when delays less than 1 tick are used, as they have never worked (closes #35)
- Added experimental support for asynchronous script loader (see below this list)
- Added a guide about text formatting in docs
- Fixed tooltips styling in chat not working (closes #690)
- Fixed lenient link parser bugs (closes #620)
- Fixed some potential bugs reported by FindBugs
- Fixed functions with variable number of arguments taking only the first one (closes #460)
- Fixed incorrect script load order (closes #667)
- Fixed a parser bug that caused variables not to work in some places (closes #731)
- Fixed getting targeted block not working on 1.12.1 (closes #768)
- Improved Skript exception reporting
- Improved error reporting when function cannot be called (closes #434)
- Improved variable handling of contains condition, before I found out it was a parser bug
- Improved docs usability by making top navigation bar always visible
- Removed EffectLib completely
Asynchronous parsing, preview release:
Skript now has support for parsing scripts asynchronously. It is somewhat unstable, so it should be used only for testing in non-public servers. Still interested?
Set asynchronous script loading: true
in Skript config and watch the world burn. And by that I mean that I'm expecting detailed bug reports if you test asynchronous parsing.
Released dev30b as hotfix:
- Fixed a script loader bug (closes #771)
- Fixed docs missing region and economy related expressions and effects
Released dev30c:
Released dev30d:
- Improved parser performance
- Potentially fixed a bug with functions
1.12 support!
I finally had time to do some testing with 1.12 and include some of its new features. Note that SQLibrary is still a bit broken on 1.12, so databases (SQLite and MySQL) will not work.
- Added support for illusioners and parrots on 1.12 (relates #617)
- Fixed resurrect event not working when not holding totem (closes #630)
- Improved usability of documentation on mobile (thanks @Snow-Pyon)
- Improved performance of sending chat messages a bit
- Updated aliases to support 1.12 (thanks @tim740)
- Updated Paper version which Skript is compiled against to 1.12
- Removed support for ancient Bukkit ban API (1.9+ has new one anyway)
- Removed number to vector automatic conversion for stability reasons (closes #641)
Note that the performance problems that came with last big release are probably still there. I would appreciate feedback on this - I did some improvements, but did not notice any changes while testing locally.
Vectors, finally! (now with some hotfixes)
Actually, this is quite big release! Lots of bugs fixed, some new features and probably a few new bugs. As always, proceed with caution: we still have pre-releases only, for a good reason.
- Added vector support (thanks @Sashie and @bi0qaw)
- Added world to portal create event (thanks @TheLimeGlass)
- Added a way to get owner with Residence (closes #588)
- Added support for 1.11 specific particles (closes #203, finally)
- Added resurrect event with 1.11+
- Added support for playing sounds on client (closes #560)
- Added player world change event (closes #314)
- Fixed/reworked large part of JSON chat parsing (closes #528, #572, #595 and maybe others)
- Fixed potential error with Skript and timings (closes #573)
- Fixed escaped quotes not working correctly (closes #569)
- Fixed playing particles with colors (relates #571)
- Fixed lenient link parser breaking tag parsing (closes #564)
- Fixed "color codes reset formatting" breaking links with colors (closes #564)
- Fixed "is empty" condition for inventories with new Minecraft versions (closes #579)
- Fixed difference expression not working with two variables (closes #450)
- Fixed some HTML weirdness in docs
- Improved script loading performance (not major change, to be honest)
- Improved JSON chat performance
- Removed EffectLib support, as it was outdated
And by the way... Interested in writing some tutorials for docs? Help would be appreciated!
Hotfix dev28b has been released:
- Fixed escaping quotes (closes #569, again)
- Fixed getting player's ip incorrectly giving a list of values (relates #612)
- Updated Maven publishing to also publish sources (not visible for end users)
Hotfix dev28c has been released:
- Fixed escaping percent signs in strings which have no variables (closes #600)
Fixing some issues
Here we go, another release. I hope most of the serious bugs were fixed...
- Added an API for asynchronous effects (thanks @xXAndrew28Xx)
- Added new method to parse links from chat messages and configurable option for it (closes #501, #543)
- Added support for ambient and particle-less potion effects (closes #175)
- Added an option which allows color codes reset formatting again; it is toggled on by default (closes #542)
- Added bStats for metrics - data will start appearing here as more people update their Skript
- Added support for moved blocks in piston events (relates #548)'
- Added a way to get documentation exported from Skript in JSON - see this
- Fixed a bug that caused ampersand formatting codes not to work correctly (closes #515)
- Fixed potential NullPointerException with functions (closes #516)
- Probably fixed timings when used with delays (need more test data)
- Fixed some tag parsing issues with invalid tags (closes #556)
- Fixed some function calls incorrectly sending warnings about missing and/or (closes #495)
There might be some bugs, so be prepared for hotfixes in coming days. Next big feature will probably be vector support - pull request is already there, waiting to be merged...
And more hotfixes
Hopefully last hotfix for JSON chat
JSON chat has been way more work than I expected. Still, I hope that the most serious bugs are already fixed now. There are some things that do not work as they did before (for example: color codes not resetting anything, links not working as before); that will be added as config option eventually. For now, I just hope that this doesn't crash horribly.
- Fixed a bug which duplicated message text on some cases (closes #499)
- Fixed a bug that with angle brackets and chat "crash" (closes #497)
- Potentially improved chat message generation performance
- Added some tree types (closes #494)
- Fixed potential issue with Skript update by adding pseudo-release dev26d
Wooo, JSON chat
I added a lot of new features in this update. As always, there is change that something breaks... However, this has been quite stable for me.
- Added Gradle license header plugin
- Added boat type support (thanks @Tuke-Nuke)
- Added a way to get last dropped item (thanks @Tuke-Nuke)
- Added support for multiple passengers for vehicles (thanks @Tuke-Nuke)
- Added support for event-direction in certain events (thanks @Tuke-Nuke, closes #67)
- Added support for Minecraft 1.7+ JSON chat: run command, suggest command, tooltips
- Added event value for block in block ignite event (thanks @TheLimeGlass)
- Added a warning if some ridiculous function signatures are used (relates #452)
- Added support for coloring potions and maps on Minecraft 1.11 (relates #203)
- Added condition to check if entity is on ground (closes #226)
- Fixed ip expression not working when used in connect event for event-player
- Fixed an issue in docs of block form event (closes #427)
- Fixed villager text representation (closes #403)
- Fixed a bug with zero-argument functions
- Fixed a bug where right click events would not be fired for certain items when holding a hoe if offhand
- Updated Gradle wrapper used for building Skript
- Reworked timings to use Aikar's Timings v2, for Paper (sorry, no normal Spigot support)
- Improved appearance and usability of documentation a lot
Until I update the docs, here is how you can create links and other fun stuff in chat:
<link:url>visible link text<reset>
<command:command>clickable text<reset>
<suggest command:command>clickable text<reset>
<tooltip:tooltip text>visible text with tooltip<reset>
Edit: dev26b to fix severe problems when not running Paper
- Fixed sending messages not working on Spigot (closes #465)
- Fixed <none> in chat messages
Edit 2: dev26c to fix several other severe problems
- Fixed variables with tooltip/link in chat (closes #467)
- Fixed old one-character colour and formatting codes (closes #465)
- Fixed ALL invalid tags (previously only <none> worked) in chat messages - they are now shown as-is
Edit 3: dev26d to fix formatting codes behaving strangely
- Fixed formatting codes applying into wrong sections of text (closes #482)
- Fixed sending only single variable to chat (closes #483)
- Fixed expressions with embedded quotes (closes #485)
Known issue: Broadcast does not support JSON chat. A bit harder to fix than it seems, but will probably fixed in following weeks.
Offline player UUID fix
Again, thanks for everyone who contributed with pull requests!
- Added support for PreciousStones (thanks @boosik)
- Added event values for inventory open and close events (thanks @TheLimeGlass)
- Added tamer expression for tame events
- Fixed a bug with offline player UUIDs
- Fixed a typo in aliases (thanks @JeepSmash)
- Fixed sweeping edge enchantment (closes #401)
- Fixed husks with Minecraft 1.11 (closes #292)
- Fixed a bug with sorted expression (closes #405)
- Fixed a bug which caused player to fall through blocks with walk on events (closes #406)
- Fixed event-entity referring to tamer in tame event (closes #361)
- Updated default English aliases (thanks @tim740)