skript-yaml icon

skript-yaml -----

YAML for Skript




  • Fixed casting error for time related yaml #64
  • Updated yaml loop removing loop-iteration for Skript 2.8 and above as it has been added to Skript (issue posted on discord)
----------, Jan 26, 2025

Sorry I skipped a couple updates on this site however all releases are at the github

  • Updated for Skript 2.10.0
  • Added an Update Checker thanks to @EquipableMC from pull request #63
----------, Jan 22, 2025

Imagine not releasing a fixed version for so long and forgetting all the changes that were done since the last release!

There is better compatibility with things and stuff in this version ^.^

Enjoy!!
----------, Feb 4, 2023

- Added list value expression `[[skript-]y[a]ml] value %number% (of|in|from) list %string% (of|in|from) %string% [without string checks]`
- Warns if the node is not a list or if the index is not within range

- Added more verbose error logging
- Internal errors now show the sk file and line number also there are more error/warning messages for certain things

- Bug fixes
- Sometimes strings would split between multiple lines (which snakeyaml does by default) causing data to sometimes be lost
- Fixed by preventing strings from splitting
- Sometimes strings containing '&' would save without double quotes and cause an error preventing the data from loading correctly
- Fixed by forcing those strings to save with double quotes (currently )
- Fixed some NPEs laying around the place

- Skript versions
- In Skript 2.4 some api changes were made to some class names and methods and again in Skript 2.6 some other changes were made
- This update addresses those changes and makes things backwards compatible
----------, Jun 26, 2021

This actually fixes things
----------, Jun 28, 2019

just a small update
----------, Jun 26, 2019

Backwards compatibility and more, info at github page ( https://github.com/Sashie/skript-yaml/releases/tag/v1.3)
----------, Jun 16, 2019

1.13 support
  • Fixed issue with stuff not saving properly due to 'NoSuchMethod' error
**EDIT**: At the moment this version doesn't work with some older versions of spigot(1.8 etc.), you can safely use 1.2.4 if you get a 'NoSuchMethod' error
----------, Jan 23, 2019

  • Fixed issue with files not loading if some keys contained integers
    • They now get converted into characters, keep this in mind when fetching data from those nodes
  • Fixed issue with elements not saving in the same order they were set
  • Fixed error when loading a file with empty nodes
  • Fixed a casting issue with lists
----------, Jun 30, 2018

  • Fixed issue #6 before it was reported <3
    • Moved serialization method to better location to address an issue where certain serialization didn't happen if the file was loaded and saved again(without setting the value)
  • Added more skript classes to the representer
    • Date, Time, Timespan, Color and WeatherType
      • Date is parsed the same way snakeyaml would have converted 'java.util.Date'
      • The rest use skript methods to convert back and forth
----------, Jun 12, 2018

Bugfixes

  • Added Skripts ItemType and Slot class to the yaml representer
    • This fixes certain items not being saved as ItemStack
  • Fixed stacktrace when saving empty yaml
  • Updated the Yaml expression to filter color codes back and forth
    • Use the 'without string checks' option to disable it
----------, Jun 5, 2018

Bugfixes and more
  • Updated how de/serialization works using Snakeyamls built in methods
    • This means you will see a change in how Skript serialized classes look removing the map node 'skriptclass' to a tag '!skriptclass' that Snakeyaml uses to parse data types
    • Vector and Location also have a tag and removal of the map node representing the data type
    • Bukkits ConfigurationSerializable data types are also de/serializable using the same method bukkit feeds to snakeyaml
      • These types have their own serialized structure
    • It will update any previously saved data types
  • Added Effect to delete all yaml or any loaded yaml from a directory
  • 'delete all [y[a]ml] from [(1¦non[(-| )]relative)] director(y|ies) %strings%'
  • 'delete (all|any) loaded [y[a]ml] from [(1¦non[(-| )]relative)] director(y|ies) %strings% [using [the] filename as [the] id]'
  • Re-added 'Does yaml path exist' condition since the built in skript version was returning the wrong result (check docs for more info)
  • Changed 'Yaml' expression to [[skript-]y[a]ml] (1¦value|2¦(node|path) list|3¦(node|path)[s with] keys|4¦list) %string% (of|in|from) %string% [without string checks]
    • Using '(node|path) list' only gets a list of nodes at that path (full names like 'rootnode.subnode' are returned)
  • Fixed comments and header not loading into memory during a fresh load (causing them to not be saved as a result)
  • Snakeyaml loads asynchronously already so i changed loading 'Effect' instead of 'AsyncEffect' (it fixes an error that happens sometimes)

Skript serialized classes now look like...
Code (Text):

nodeName: !skriptclass
   type: someclasstype
   data: bGF3bHMgZ2V0IHJla3QgPDMgdGhpcyBpcyBvbmx5IGZvciBleGFtcGxl
 
----------, May 26, 2018

Code (Text):

Added even more things to make the addon more feature complete

  - Added effect `[re]load all [y[a]ml] from [(1¦non[(-| )]relative)] director(y|ies) %strings% [using [the] filename as [the] id]` (loads all .yml from a directory thx pikachu for the idea)
  - Files are now saved with additional lines between each node
    - Updated 'Save yaml' effect to...
      - `save [y[a]ml] %string% [(1¦without extra lines between nodes)]`
  - Comments and header no longer add additional lines by default
    - Updated 'Yaml comment/header' expressions to...
      - `[the] comment[s] (of|from) [y[a]ml] node[s] %strings% (of|in|from) %string% [(1¦with [an] extra line)]`
      - `[the] (comment[s] (at|on) [the] top of |header (of|from)) %string% [(1¦with [an] extra line)]`
  - Updated 'Yaml' expression return type now stuff like this works...
    - broadcast yaml value "location" from "plugins/skript-yaml/teleport.yml"
    - teleport player to yaml value "location" from "plugins/skript-yaml/teleport.yml"
 
----------, Apr 11, 2018

Removed AsyncEffect from save effect due to issues

To reproduce said issue...

Code (Text):

On script load:
   load yaml "plugins/skript-yaml/test/test.yml" as "test"

command /test:
   trigger:
       loop 100 times:
           set yaml value "node1.node2.node3" from "test" to 1
           save yaml "test"
 
----------, Mar 26, 2018

Workaround for async issue
----------, Jan 23, 2018

Root directories
  • Added root directory support
  • Updated Load yaml syntax to [re]load [non[(-| )]relative] [y[a]ml] %string% [as %-string%]
Usage:
Code (Text):

#If the server is on drive D:\(on windows) for example then that would be the root path
   load non-relative yaml "RootFolder/MyAwesomePlugin/config.yml"
#Otherwise you can specify a drive
   load non-relative yaml "C:/RootFolder/MyAwesomePlugin/config.yml"
 
----------, Dec 1, 2017

Fixed lots of bugs in this version!
(Added Skripts serializer)
  • Existing files didn't weren't being loaded(oops) and other various things related to this.
  • Headers require # for the first character if you don't use one then ## will be used by default
  • All nodes expression now only returns nodes that contain values
  • Classes such as Location, Vector or any Skript class weren't being saved properly
  • yaml node keys weren't working properly
  • added null checks to get methods
----------, Nov 29, 2017

  • Removed Yaml exists condition(it was useless) in favor of Skripts built in condition(still need to test it :3)
  • Added Node has value condition
  • Added comments and header expression
  • Switched to the same YAML processor that world edit uses since it has comment and header support already

(check github for docs)
https://github.com/Sashie/skript-yaml
----------, Nov 25, 2017

Resource Information
Author:
----------
Total Downloads: 18,724
First Release: Nov 21, 2017
Last Update: Jan 26, 2025
Category: ---------------
All-Time Rating:
23 ratings
Version -----
Released: --------------------
Downloads: ------
Version Rating:
----------------------
-- ratings