skJson by CoffeeRequired

Working with json in skript

Events

2

Expressions

27

Effects

8

Conditions

6

Types

4

Sections

0

Structures

0

Total

48

5.4 37 days, 17 hours and 29 minutes ago

️ SkJson 5.4 — Debug changes, Custom loops and better get/set syntax
---

New Features & Improvements


---

Bug Fixes


---

View full diff between 5.3 and 5.4

Thank you for your continued support and valuable feedback!

View Update

️ SkJson 5.2 — Parser Rewrite, Bug Fixes & Encoding Support 42 days, 18 hours and 56 minutes ago

This release introduces major improvements focused on data handling precision, performance, and resilience.

---

New Features & Improvements

- Parser Overhaul
The internal parser has been fully rewritten to improve deserialization speed and correctness. All conversions now respect Bukkit’s ConfigurationSerializable contract for better integration with native types.

- Automatic Dependency Removal for File Watchers
Added smart cleanup logic: if a watched file no longer exists, its reference is now removed automatically, preventing unnecessary log spam and improving runtime clarity.

- Improved Unicode Support
Added full support for special characters like ä, ü, ö, ß, and similar, ensuring compatibility with a wider range of languages and inputs.

- Fallback Support Introduced
The first fallback module is now available:
Download SkJson4x-fallback 4x
To enable fallback support:
1. Set enabled-fallback: true in your SkJson/config.yml.
2. Download the fallback .fallback file from the release above.
3. Place the file into your server directory: SkJson/libraries/.

---

Bug Fixes

- Data Integrity
Fixed several issues that could lead to invalid or corrupted JSON during serialization/deserialization.

- Type-Specific Fixes
Resolved incorrect behavior with now, date, skript date, and timespan types during serialization and deserialization.

- Adapter Cleanup
Deprecated and removed legacy adapters such as BukkitSerializableAdapter and GenericFlatObjectAdapter in favor of the new unified parsing system.

---

View full diff between 5.1.2 and 5.2
Direct commit diff – 58404d0

Thank you for your continued support and valuable feedback!

View Update

SkJson 5.2 – Enhancements & Changes !Fallback 43 days, 22 hours and 12 minutes ago

SkJson 5.2 – Enhancements & Changes

This update brings significant improvements and fixes.

New Features & Improvements

- Added support for sorting JSON objects and arrays
- Ability to sort in ascending or descending order by key or value
- New syntax: {_json} in ascending/descending order by key/value
- Enhanced HTTP request and response handling
- New properties for working with request and response bodies
- Improved header management
- Extended file handling support
- Improved file change watching
- New configuration options when creating files
- Complete Changer Support
- Added full support for both literal and path-based syntax
- Literal syntax examples:

# SET
set {_json}.list to "[]"
set {_json}.object to "{}"
set {_json}.object.key to "value"

# ADD
add 40 and "K" to {_json}.list
add location(0, 0, 0) to {_json}.list

# REMOVE
remove 1 and 40 from {_json}.list
remove "value" from {_json}.object

# DELETE
delete {_json}.object
delete {_json}.list[0]

# GET
send {_json}.list.0
send {_json}.object.key

# REMOVE ALL & RESET
remove all 1 from {_json}.list
reset {_json}.object

- Path-based syntax examples:
# SET
set json value "x.y" of {_json} to 1
set json values "x.y" of {_json} to 2, 3 and 4

# ADD
add 10 to json array "x.y.z[]" of {_json}
add 20 and 30 to json array "x.y.z" of {_json}

# REMOVE
remove 10 from json array "x.y.z" of {_json}
remove "lol" from json array "x.y.z" of {_json}

# DELETE
delete json value "x" of {_json}
delete json values "x.y" of {_json}

# GET
set {value} to json value "x.y" of {json}
set {values::*} to json values "x.y" of {json}

# REMOVE ALL & RESET
remove all 1 from json values "x.y" of {_json}
reset json array "x.y.z" of {_json}

- New Fallback System
- Added support for legacy versions through fallback system
- Automatic loading of compatible fallback modules
- Configurable fallback settings in libraries/configuration.properties
- Features:
- Minimum version support configuration
- Automatic fallback detection
- Retry mechanism for failed operations
- Timeout settings
- Legacy compatibility mode
- Backward Compatibility:
- Seamless support for older syntax versions
- No performance impact when using legacy syntax
- Automatic detection and handling of deprecated features
- Smooth transition path for existing scripts
- Configuration options:
version.current=${version}
version.minimum.supported=4.x
version.fallback.enabled=true
version.jar.fallback=skjson.legacy
fallback.retry.attempts=3
fallback.timeout.ms=5000
compatibility.mode=auto
compatibility.legacy.support=true


Bug Fixes

- Fixed issues with JSON data saving
- Improved stability when working with large JSON files
- Fixed encoding issues when working with files
- Enhanced compatibility with different Skript versions

For a detailed view of changes, please see the diff between 5.1.2 and 5.2.

Thank you for your continued support and feedback!

View Update

5.1.2 44 days, 19 hours and 4 minutes ago

SkJson 5.1.2 – Enhancements

This update brings significant improvements and fixes, enhancing stability and extending compatibility with different server platforms.

New Features & Improvements

* Allow disable auto-updater: Now you can by config enabled-auto-updater: true disable auto updater of SkJson
* Add new feature: sorted json:

%jsonelement% [sorted] in (:ascending|:descending) order by (:key|:value)

set {_json} to json from "{c: A, b: 2, a: test}"
send {_json} in descending order by key to console
send {_json} in ascending order by key to console
send {_json} in descending order by value to console
send {_json} in ascending order by value to console


For a detailed view of changes, please see the diff between 5.1.1a and 5.1.2.

Thank you for your continued support and feedback!

View Update

Fix requests 5.1.1 47 days, 23 hours and 40 minutes ago

Full Changelog: https://github.com/cooffeeRequired/skJson/compare/5.1...5.1.1

Fix (response|request) body/headers.
- Thank you @Fusezion..
- Rewroten to SimplePropertyExpression

View Update

Small Fix 5.1 49 days, 18 hours and 54 minutes ago

Full Changelog: https://github.com/cooffeeRequired/skJson/compare/5.0...5.1

Resolved issues https://github.com/cooffeeRequired/skJson/issues/127

View Update

SkJson 5.0 59 days, 15 hours and 42 minutes ago

SkJson 5.0

Core Features

  • Support for Java 21+
  • Compatible with Minecraft 1.16.5+
  • Integration with Skript 2.9.2+


Key Improvements
• Enhanced MemoryCache System
  • Read/Write speed: 100–1000 μs
  • Optimized in-memory storage


• Extended Format Support
  • Native support for `.json` files
  • Preparation for `.jsonc` (JSON with comments)


• Advanced Serialization
  • Full NBT support via NBT-API
  • Extended Bukkit object serialization:
    • Location
    • Player
    • Entity
    • Inventory
    • and more...



Rewritten Features
• FileWatcher System
  • Automatic JSON file change monitoring
  • Instant cache updates on file change
  • Perfect for dynamic files (e.g., `ops.json`)


• VirtualCachedJson
  • Dynamic storage for script variables
  • Flexible in-memory data management


• HTTP Integration
  • HTTP request support
  • JSON response encoding
  • Enhanced API communication capabilities


️ Technical Improvements
  • Optimized build system
  • Improved documentation
  • Extended server support: Spigot, Paper, Purpur


Documentation
  • Updated Wiki
  • New usage examples
  • Extended tutorials


Fixes
  • Performance optimizations
  • Improved stability
  • Resolved known issues



View Update

Game Change [scripts breaking] 141 days, 1 hour and 41 minutes ago

What's Changed
* Updated documentation by @EnolaK64 in https://github.com/cooffeeRequired/skJson/pull/105
* feat: finish json handler/serializer - remover, changer, setter, getter, counter by @cooffeeRequired in https://github.com/cooffeeRequired/skJson/pull/111
* Features/skript syntaxes 4.1 by @cooffeeRequired in https://github.com/cooffeeRequired/skJson/pull/113
* Features/skript syntaxes 4.1 by @cooffeeRequired in https://github.com/cooffeeRequired/skJson/pull/114
* feat: finish changer. by @cooffeeRequired in https://github.com/cooffeeRequired/skJson/pull/116
* 4.5/requests by @cooffeeRequired in https://github.com/cooffeeRequired/skJson/pull/117
* feat: testing edge by @cooffeeRequired in https://github.com/cooffeeRequired/skJson/pull/118
* 4.5 long term changes by @cooffeeRequired in https://github.com/cooffeeRequired/skJson/pull/119
* Tests by @cooffeeRequired in https://github.com/cooffeeRequired/skJson/pull/121
* Features/new logger by @cooffeeRequired in https://github.com/cooffeeRequired/skJson/pull/120

Skript syntax's changes for few nodes

Key notes
- rewriten whole skJson
- new features as like configuration for file

New Contributors
* @EnolaK64 made their first contribution in https://github.com/cooffeeRequired/skJson/pull/105

Full Changelog: https://github.com/cooffeeRequired/skJson/compare/4.0.1...4.5

View Update

4.0.1-HOT-PATCHED 209 days, 2 hours and 55 minutes ago

>[!IMPORTANT]
>Fixed mapping of nested variables

image


What's Changed
* Updated documentation by @EnolaK64 in https://github.com/cooffeeRequired/skJson/pull/105

New Contributors
* @EnolaK64 made their first contribution in https://github.com/cooffeeRequired/skJson/pull/105

Full Changelog: https://github.com/cooffeeRequired/skJson/compare/4.0.1...4.0.1-HOT-PATCHED

Big thanks to @rudde0, for reporting that issue and informing us

View Update

New Features #1 366 days, 20 hours and 25 minutes ago

[!IMPORTANT]
## NEW FEATURES
All keys from json object by given path
> `coffeescript
>on script load:
set {_j} to json from "{data: {A: 'B', C: 'C', 'G': G}}"
send {_j}
set {keys::*} to all keys of "data" of {j}
send "&aKeys: %{_keys::*}%"
> `
>
Get filename from loopped file
> `coffeescript
>on script load:
loop all json files in dir "..." as files:
send "Filename: %loop-filename%"
send "File: %loop-file%"
> `

What's Changed
* Dev/fix api by @cooffeeRequired in https://github.com/cooffeeRequired/skJson/pull/102
* new features #1 by @cooffeeRequired in https://github.com/cooffeeRequired/skJson/pull/103


Full Changelog: https://github.com/cooffeeRequired/skJson/compare/4.0...4.0.1

View Update

Fix handling cache, and adding nesting element while array doesn't exist 371 days, 4 hours and 7 minutes ago

[!NOTE]
Huge thanks to the guys who continue to diligently report bugs and test limits to the world of json - SkJson
@ExCorde
>
Big Shout Out to Them!

What's Changed
* Update 4.0 by @cooffeeRequired in https://github.com/cooffeeRequired/skJson/pull/98


Full Changelog: https://github.com/cooffeeRequired/skJson/compare/3.0.91...4.0

View Update

Fix Reques HTTP sync handling, 1.20.6 Cache saving issue resolved. 382 days, 19 hours and 3 minutes ago

Full Changelog: https://github.com/cooffeeRequired/skJson/compare/3.0.7...3.0.91

[!IMPORTANT]
## BugFixes
https://github.com/cooffeeRequired/skJson/issues/96
https://github.com/cooffeeRequired/skJson/issues/95

[!NOTE]
Huge thanks to the guys who continue to diligently report bugs and test limits to the world of json - SkJson
@TrasonCo
@Val-K
@RlmUwU
>
Big Shout Out to Them!

View Update

Fix nbt issues, add ~ as path identifier 461 days, 6 hours and 37 minutes ago

Full Changelog: https://github.com/cooffeeRequired/skJson/compare/3.0.6...3.0.7

[!IMPORTANT]
## BugFixes
##### 1. Bug regarding bad parsing of nbt https://github.com/cooffeeRequired/skJson/issues/90
command /addtrade:
permission: OP
trigger:
set {_jt} to json from file "plugins/SkJson/test.json" # this is my json file
set {_slot0} to full nbt compound of slot 0 of player
set {_slot1} to full nbt compound of slot 1 of player
set {_slot2} to full nbt compound of slot 2 of player
set {_n} to 0
>
send {_jt} with pretty print to console
>
write {_jt} to json file "plugins/SkJson/trader.json"
loop values "trade::%{n}%" of {jt}:
send json-key to console
set value of json object "trade::0::%{n}%::0::nbt" in {jt} to {_slot0}
set value of json object "trade::0::%{n}%::1::nbt" in {jt} to {_slot1}
set value of json object "trade::0::%{n}%::2::nbt" in {jt} to {_slot2}
write {_jt} to json file "plugins/SkJson/trader.json"

>
At this point the nbt are converted successfully to the Object
"nbt": {
"..": "com.shanebeestudios.skbee.api.nbt.NBTContainer",
"nbt": "{Count:1b,id:\"minecraft:stone\",tag:{CustomModelData:222,Damage:222,Enchantments:[{id:\"aquaaffinity\",lvl:1},{id:\"bindingcurse\",lvl:1},{id:\"vanishing_curse\",lvl:1}],RepairCost:2222,Tags:[\"Test\",\" test2\",\" test\"],display:{Lore:['[{\"text\":\"asdasdasdasd\",\"italic\":false}]'],Name:'[{\"text\":\"asdasdasd\",\"italic\":false}]'}}}"
}


##### 2. Bug regarding to wrong parsed http headers
Sometime could happen the Content-Type headers was broken, missing space or basically sending body to the GET request
That is already fixed, all headers could be used no matter what.
>
##### 3. Bug regarding to response types (JsonArray or Plain/Text)
The response of type JsonArray or Plain/Text was ignored, that's already fixed and sanitized!


[!NOTE]
## Add
##### ~ as path identifier of plugins/Skript/scripts
#### Example
on load:
set {_file} to json from file "~/test.json"
new json file "~/raw.json"
send {_file}

>
So the file will be created in the plugins/Skript/scripts

[!NOTE]
Huge thanks to the guys who continue to diligently report bugs and test limits to the world of json - SkJson
@PEX666
@kubaczak
@Boxic
@kitoxis
@DRAGNIL68
>
Big Shout Out to Them!

View Update

3.0.6 462 days, 2 hours and 22 minutes ago

Full Changelog: https://github.com/cooffeeRequired/skJson/compare/3.0.5...3.0.6

[!IMPORTANT]
Fix reading json arrays from web requests.

View Update

3.0.5 469 days, 22 hours and 9 minutes ago

Full Changelog: https://github.com/cooffeeRequired/skJson/compare/3.0.4...3.0.5

[!IMPORTANT]
Fix permission escalation for skjson command, now you need to have permission node skjson.use or op

View Update

Fix editing files, request on authorized website, fix patch request 470 days, 8 hours and 6 minutes ago

Full Changelog: https://github.com/cooffeeRequired/skJson/compare/3.0.3...3.0.4

[!IMPORTANT]
## BugFixes
### 1. Bug regarding on editing files. with effect edit
>
command changefile:
> trigger:
> edit value "type" of json file "plugins/Skript/scripts/test.json" to "DIAMOND"
`

###### Before
changefile
[08:28:42 INFO]: [SkJson] WARN Cannot create a file plugins/Skript/scripts/test.json cause the file already exists.


#### 2. Bug regarding on sending web request on authorized apis (google, icloud, crypto stuff, and more)

View Update

Fix Some small issues and typos 482 days, 14 hours and 1 minute ago

What's Changed
* Switch from json serializaton to custom adapters by @SkJsonTeam in https://github.com/SkJsonTeam/skJson/pull/85
* Switch from json serializaton to custom adapters by @cooffeeRequired in https://github.com/SkJsonTeam/skJson/pull/89


Full Changelog: https://github.com/SkJsonTeam/skJson/compare/3.0.1...3.0.3


[!IMPORTANT]
## BugFixes
##### 1. Bug regarding bad encoding of ASCII characters https://github.com/SkJsonTeam/skJson/issues/88
local function ASCIISymbolsFix22624():
> set {_json} to json from file "./plugins/Scripts/test.json"
> send json from "»»»" to console
> send {_json} with pretty print to console

At this point the json file returned "B»B»B»" for some it was ~A"~A"~A"
This is already fixed.
>
##### 2. Bug regarding to completed resource handling for requests discord
local function requestSyncFix22624() :: object:
> set {_request} to prepare new GET request on "https://raw.githubusercontent.com/SkJsonTeam/skJson/main/skjson.json"
> set {_request}'s request content to @{"A": true}
> set {_request}'s headers to @{"Content-Type": "application/json+vhd"}
> sync send prepared {_request}
>
> if response status of {_request} is "OK":
> return response content of {_request}

Fixed for now, working with web request is always meh, but if you really need to use synchronous request you can now use [:sync] (send|execute) [prepared] %request%
>
##### 3. Bug regarding to wrong parsing for value of %json% https://github.com/SkJsonTeam/skJson/issues/86
Now fully fixed
>
##### 4. Bug regarding to FileWriting https://github.com/SkJsonTeam/skJson/issues/84
Writing and formatting was handled by one method, which was not properly checked now fixed
>

[!NOTE]
Huge thanks to the guys who continue to diligently report bugs and test limits to the world of json - SkJson
@Envizar
@kubaczak
@ExCorde
@ImNotStable
@Pumkinhead
@MinecraftNight4
>
Big Shout Out to Them!

View Update

3.0.2-IO 520 days, 15 hours and 54 minutes ago

Fix broken save json %string% For example, the operations for linking a file were error, fix (save json "..."), that will handle in the newest Skript version as World.
Fix cache - cache will be keep until reload/restart your server



Full Changelog: https://github.com/SkJsonTeam/skJson/compare/3.0.1...3.0.2-IO

View Update

Fix async save/load cache and add Sync for requests 520 days, 20 hours and 13 minutes ago

Change from Effect to AsyncEffect to process asynchronous operations exactly as expected. For example, the operations for linking a file were error

Full Changelog: https://github.com/SkJsonTeam/skJson/compare/3.0.0...3.0.1

View Update

Major SkJson Update (Breaking changes!) 526 days, 18 hours and 14 minutes ago

Major updates to SkJson (breaking changes!)

Internal API has been changed for the latest version only Skript 2.8+ is supported, also requests have been changed, now they are more skript friendly from

on script load:
async make POST request to "https://dummyjson.com/carts/add":
headers: "Content-Type: application/json"
content: json from text "{userId: 1, products: [{id: 1, quantity: 1}, {id: 50,
quantity: 2}]}"
save incorrect response: true
lenient: true
save:
content: {-content}
headers: {-header}
status code: {-code}
url: {-url}

At @Requests
set {_request} to prepare new GET request on "https://raw.githubusercontent.com/SkJsonTeam/skJson/main/skjson.jsonn"
set {_request}'s request content to @{"A": true}
set {_request}'s headers to @{"Content-Type": "application/json+vhd"}
send prepared {_request}

if response status is "OK":
send response status code of {_request}
send response content of {_request}
send response status code of {_request}
send response headers of {_request}

webhooks will be updated in future versions..
Supplied
- https://skjson.xyz/documentation/latest#expression-IndexListObject
- https://skjson.xyz/documentation/latest#expression-AllJsonInFolder

Modified algorithm for parsing a string to a Key Structure. Faster file processing. Fixed working with files.. now files are locked only if really used.

Finished single line literal json.

What's Changed
* 3.0.0 pre by @SkJsonTeam in https://github.com/SkJsonTeam/skJson/pull/83


Full Changelog: https://github.com/SkJsonTeam/skJson/compare/2.9.7...3.0.0

View Update

new expression for handling files in the directory. 540 days, 18 hours and 12 minutes ago

AllJsonInFolder

on script load:
send all json files in dir "./plugins/Skript/JSONS"

loop all json files in dir "./plugins/Skript/JSONS":
send loop-file
send json from file loop-file


that will allowed to you, loop through directory and get the path of the given file and also the json from it.

Full Changelog: https://github.com/SkJsonTeam/skJson/compare/2.9.6...2.9.7

View Update

From NBT-ITems to SkBee NBT 556 days, 17 hours and 8 minutes ago

we changed from using NBT-Items to SKBee because Nbt was not working properly.

What's Changed
* Fix nbt using skbee by @cooffeeRequired in https://github.com/SkJsonTeam/skJson/pull/81


Full Changelog: https://github.com/SkJsonTeam/skJson/compare/2.9.4...2.9.6

View Update

2.9.5 Fix requests 567 days, 18 hours and 6 minutes ago

Fixing some small issues, non-async request was fixed.

View Update

Fixed Requests | Webhooks 601 days, 19 hours and 32 minutes ago

Requests
This release fixes a serious bug in requests and webhooks that asynchronous startup did not work and blocked the main thread...
! It has also been removed for now on complete until I find out exactly why it blocked the main thread as well

on load:
make new GET request to "https://dummyjson.com/products/2" and store it in {_data}:
content: {_content}
status code: {_code}
execute {_data} and wait
send {_content}

When you can create and save your request. and for example use Script-reflect to further work with it or directly in the section you can specify where to save it. The section is imspired by Skript-reflect!
Webhook
added for discord username and avatar-url

What's Changed
* Async await requests by @SkJsonTeam in https://github.com/SkJsonTeam/skJson/pull/76
* Update skjson.json by @SkJsonTeam in https://github.com/SkJsonTeam/skJson/pull/77


Full Changelog: https://github.com/SkJsonTeam/skJson/compare/2.9.3...2.9.4

View Update

Async-await-request, Literal Json String 613 days, 2 hours and 10 minutes ago

Working with Json within a literal has been added,
as well as improved asynchronous processing for the Request class.
Example of Request

If there is a return in on complete then skjson will recognize that you want to wait for a response, RECOMMENDATION: use this only when you know the server is available.
also in on complete you can execute any code because this section is so called executable

function test(i: number) :: object:
async make POST request to "http://localhost:3000/?id=%{_id}%":
save incorrect response: true
lenient: true
save:
content: {_content}
on complete:
return {_content}
local function clear():
loop 100 times:
send " " to console

command test <number>:
trigger:
loop arg-1 times:
wait 1 tick
set {_t} to test(loop-number)
send {_t}


Literal JSON
you don't need to use % before and after the expresseme because SkJson parser recognizes it and passes it to the Script parser. the same goes for strings, if you want to escape use classic json escape for example `\", \r, \t, \n"
on script load:
set {_X} to @{"json": true}
set {json} to @{id: 10, something: "Test", var: {X}, string: "\nthis \"new\" Thing"}
send {_json}


You must enable both of these features in the settings.

Config
# Beta features
features:
# That feature will you allow use tld. literal string for e.g.
# @{userId: 1, products: [{id: {i}, quantity: 1}, {id: {j}, quantity: 2}]}
# Inside the Literal string you don't need use a % for evaluate variables or expressions.
# Also,you don't need to use string escape as like "", you can basically json string escape for e.g.
# @{test: "This is \"New\" String"}
# So the literal start always with @ and then continue a with a JSON
literal-parsing-single-line: true

# This Feature allows you to immediately get the value from the async run of the request.
# For e.g.
# function test(i: number) :: object:
# async make POST request to "https://dummyjson.com/carts/add":
# headers: @{Content-Type: "Application/json"}
# headers: json from text "{Content-Type: 'application/json'}"
# content: json from text "{userId: 1, products: [{id: %{_i}%, quantity: 1}, {id: 50, quantity: 2}]}"
# save incorrect response: true
# lenient: true
# save:
# content: {_content}
# on complete:
# return {_content}
#
# command test <number>:
# trigger:
# send test(arg-1)
force-async-return: true


What's Changed
* Main http handing by @cooffeeRequired in https://github.com/SkJsonTeam/skJson/pull/75


Full Changelog: https://github.com/SkJsonTeam/skJson/compare/2.9.1...2.9.3

View Update

SkJson 2.9.1 636 days, 23 hours and 53 minutes ago

SkJson 2.9.1

Fixes

16:52 - 24.09
1. Pretty print
2. Command skJson about

Full Changelog: https://github.com/SkJsonTeam/skJson/compare/2.9...2.9.1

View Update

SkJson 2.9 644 days, 18 hours and 19 minutes ago

SkJson 2.9

It's finally here, we have finally seen a fully stable version of SkJson, i.e. version 2.9 which introduced SkJson in the biggest steam, A lot of changes have been made from the ground up.

We have created our own documentation page for SkJson, on this page we will be able to post thready where you can share your code https://www.skjson.xyz/snippests, we also have documentation for both versions with examples. The documentation is automatically updated! Let's get started on the changes!

Condition
* Json file exist
* Json file is cached
* Json file is listening
* Json has value/key[s][/s][s]
* Json is empty
* Type of json

Expressions
* Count value/key[s] in the Json.[/s][s]
* Get cached json
* Get index of key/value in (ListObject)
* Literals
* Loops
* New Json
* Pretty print
* Size of json object/array
* Skript variable to Json
* Value[s] of JSON[/s][s]

Effects
* Change json file contents
* Json (virtual) storage [lon-linked]
* Json to Skript variable list
* JsonWatcher - Start/Stop listening to file
* Link json file with defined cache
* New json file with/out content
* Save cached json to file
* Unlink or unload json file from cache
* Write content to json file
* link and load all json files from given folder

Events
* [url=https://skjson.xyz/documentation/beta#event-jsonwatchersave]Json watcher save[/url]

Sections
* Http requests (All methods includes)
* Webhooks (Discord/Web)

Functions
* b64 (Decoding from String to B64)
* [url=https://skjson.xyz/documentation/beta#function-function[/i]skjson_getdelim]skjsongtdelim (Get your defined delimiter)[/url]

Types
* JSON
* JSON-WEBHOOK
* JSON-ENUM ( WEBREQUEST METHODS )

Changers
* JSON-ARRAY
* JSON-OBJECT


Resolved Issues.
* #69
* #65
* #64
* #63
* #62
* #61
* #60
* #59
* #58
* #45
* #41
* #39
* #38

Special thanks...
I would like to thank everyone who participated in testing and trying out all sorts of features, and especially I would like to thank those who reported all the bugs!

Thank again! (@MinecraftNight4, @yhdev7935, @ExCorde, @Nocky, @welormit, @Envizar, @RedstoneGamer54)



What's Changed
* Update main from 2.8.6 to 2.9 by @SkJsonTeam in https://github.com/SkJsonTeam/skJson/pull/70


Full Changelog: https://github.com/SkJsonTeam/skJson/compare/2.8.6...2.9
[/s][/s][/s]

View Update

SkJson legacy 644 days, 18 hours and 20 minutes ago

SkJson 2.8 (latest 2.8.6) Legacy
This is legacy version fro Skript 2.6.3 +

We have created our own documentation page for SkJson, on this page we will be able to post thready where you can share your code https://www.skjson.xyz/snippests, we also have documentation for both versions with examples. The documentation is automatically updated! Let's get started on the changes!

Condition
* Json file exists
* Json file is cached
* Json file is empty
* Json file is listening
* Json has value/key
* Json is empty
* Type of json

Expressions

* All cached jsons
* Array or List formatted to JSON.
* Count of objects/phrases
* Elements/Values of the json
* Get cached json
* Get last response
* Json size of given Json
* New json
* Pretty json

Effects
* Execute a http request
* JsonWatcher - Start listening to file
* JsonWatcher - Stop listening to file
* Link json file with defined cache.
* Map json to skript list
* New json file
* Save cached json to file
* UnLink or Unload json file
* Write json file with contents
* change json file
* link and load all json files from given folder

Functions
* jsonfile

Types
* json element
* json file

Changers
* Default changer of skJson (SET/REMOVE/ADD)


Resolved Issues.
* #71
* #64
* #63
* #42
* #41
* #39
* #38
* #37
* #24
* #22
* #21
* #20
* #19
* So one...

Special thanks...
I would like to thank everyone who participated in testing and trying out all sorts of features, and especially I would like to thank those who reported all the bugs!

Thank again! (@MinecraftNight4, @yhdev7935, @ExCorde, @Nocky, @welormit, @Envizar, @RedstoneGamer54)

@!Legacy

View Update

SkJson 2.9 646 days, 15 hours and 44 minutes ago

SkJson 2.9

It's finally here, we have finally seen a fully stable version of SkJson, i.e. version 2.9 which introduced SkJson in the biggest steam, A lot of changes have been made from the ground up.

We have created our own documentation page for SkJson, on this page we will be able to post thready where you can share your code https://www.skjson.xyz/snippests, we also have documentation for both versions with examples. The documentation is automatically updated! Let's get started on the changes!

Condition
* Json file exist
* Json file is cached
* Json file is listening
* Json has value/key[s][/s][s]
* Json is empty
* Type of json

Expressions
* Count value/key[s] in the Json.[/s][s]
* Get cached json
* Get index of key/value in (ListObject)
* Literals
* Loops
* New Json
* Pretty print
* Size of json object/array
* Skript variable to Json
* Value[s] of JSON[/s][s]

Effects
* Change json file contents
* Json (virtual) storage [lon-linked]
* Json to Skript variable list
* JsonWatcher - Start/Stop listening to file
* Link json file with defined cache
* New json file with/out content
* Save cached json to file
* Unlink or unload json file from cache
* Write content to json file
* link and load all json files from given folder

Events
* [url=https://skjson.xyz/documentation/beta#event-jsonwatchersave]Json watcher save[/url]

Sections
* Http requests (All methods includes)
* Webhooks (Discord/Web)

Functions
* b64 (Decoding from String to B64)
* [url=https://skjson.xyz/documentation/beta#function-function[/i]skjson_getdelim]skjsongtdelim (Get your defined delimiter)[/url]

Types
* JSON
* JSON-WEBHOOK
* JSON-ENUM ( WEBREQUEST METHODS )

Changers
* JSON-ARRAY
* JSON-OBJECT


Resolved Issues.
* #69
* #65
* #64
* #63
* #62
* #61
* #60
* #59
* #58
* #45
* #41
* #39
* #38

Special thanks...
I would like to thank everyone who participated in testing and trying out all sorts of features, and especially I would like to thank those who reported all the bugs!

Thank again! (@MinecraftNight4, @yhdev7935, @ExCorde, @Nocky, @welormit, @Envizar, @RedstoneGamer54)



What's Changed
* Update main from 2.8.6 to 2.9 by @SkJsonTeam in https://github.com/SkJsonTeam/skJson/pull/70


Full Changelog: https://github.com/SkJsonTeam/skJson/compare/2.8.6...2.9
[/s][/s][/s]

View Update

SkJson 2.0 646 days, 15 hours and 59 minutes ago

SkJson 2.9

It's finally here, we have finally seen a fully stable version of SkJson, i.e. version 2.9 which introduced SkJson in the biggest steam, A lot of changes have been made from the ground up.

We have created our own documentation page for SkJson, on this page we will be able to post thready where you can share your code Snippets, we also have documentation for both versions with examples. The documentation is automatically updated! Let's get started on the changes!

More here!
https://github.com/SkJsonTeam/skJson/releases/tag/2.9

View Update

SkJson 2.8.6 726 days, 22 hours and 38 minutes ago

SkJson 2.8.6
Fixed several issue with Paper/Purpur and skript 2.7.0 beta.
Fixed nulls elements by (SET/ADD) new element to JsonArray/JsonObject
Add loading json files from folder to the cache
https://github.com/SkJsonTeam/skJson/releases/tag/2.8.6

View Update

SkJson 2.8.5 - Fixed java issues and file writing 767 days, 23 hours and 26 minutes ago

SkJson 2.8.5
[h4]Fixed java issue and file writing[/h4]
[h3]Minecraft support:[/h3]
- 1.13 - 1.16.5,
- 1.16.5-1.20

[h3]Skript version: [/h3]
- 2.7.0 - Beta 1,
- 2.7.0 - Beta 2,
- 2.6.4

What's Changed
Update Reflection.java by @cooffeeRequired in https://github.com/SkJsonTeam/skJson/pull/50


Full Changelog: https://github.com/SkJsonTeam/skJson/compare/2.8.4...2.8.5


Thank everyone for their support for ideas
Sincerely coffeeRequred.

View Update

Small fixes 787 days and 18 hours ago

SkJson 2.8.3

Doc's updated (SkUnity, SkriptHub)
Skript version:

  • 2.7.0 - Beta 1,
  • 2.7.0 - Beta 2,
  • 2.6.4

Changed
  • small changes was also in the Execute web request




(execute|send|make) [new] (<.+>|%-string%) request to %string% [(:with headers) %-strings/json%] [and with (:body|:data) %-strings/json%]

(execute|send|make) [new] (<.+>|%-string%) request to %string% [with (:body|:data) %-strings/json%] [and (:with headers) %-strings/json%]
[/code]


Fixed

  • size of %json% -> json size of %json%, cause old syntax has conflict with vanilla skript
  • fixed block thread in the async method for sending request's and wriiting to file

Added
  • Added convertation from .yml files to .json


set {_yaml json} to json from yaml file "..../test.yaml"

[/code]

  • more properties of request's responses


[SkJson] [(:current|:previous)] request's (2:body|3:code|4:connection headers|[user] (5:headers)|6:url)

[skJson] (2:body|3:code|4:connection headers|[user] (5:headers)|6:url) of [(:current|:previous)] request
[/code]







What's Changed


Full Changelog: https://github.com/SkJsonTeam/skJson/compare/2.8.2...2.8.3

Thank everyone for their support for ideas
Sincerely coffeeRequred.


View Update

Small fixes 803 days and 16 minutes ago

SkJson - 2.8.2 Small Fixes

Updated examples,

Added examples for JsonChanger,
Also Using @NoDoc for Expression which are only auxiliary,
Also fixed bug which caused that longer strings were not saved to cached json..
Also modified debug system. https://github.com/cooffeeRequired/skJson/releases/tag/2.8.2

View Update

Big Changes! [Potencialy break Skripts] 819 days, 5 hours and 42 minutes ago

A lot of changes have been made, practically the whole addon is redesigned for performance reasons, some features are added but please read more on Github



Thanks CoffeeRequired!

View Update

Bug fixing ItemStack, CustomModelData, Encoding, Performance, CleanUP 850 days, 22 hours and 17 minutes ago

skJson 2.7.0⚠️
Introduce


Hello everyone.

- Fix small bugs
- Fixed bundles
- Cleanup code
- fix Typos


[h3]Example[/h3]

{
"items": [
{"==":"org.bukkit.inventory.ItemStack","v":3218,"type":"APPLE","meta":{"==":"ItemMeta","meta-type":"UNSPECIFIC","display-name":"{\"extra\":[{\"bold\":false,\"italic\":false,\"underlined\":false,\"strikethrough\":false,\"obfuscated\":false,\"color\":\"white\",\"text\":\"Tomate\"}],\"text\":\"\"}","custom-model-data":1}},
{"==":"org.bukkit.inventory.ItemStack","v":3218,"type":"APPLE","meta":{"==":"ItemMeta","meta-type":"UNSPECIFIC","display-name":"{\"extra\":[{\"bold\":false,\"italic\":false,\"underlined\":false,\"strikethrough\":false,\"obfuscated\":false,\"color\":\"white\",\"text\":\"Tomate2\"}],\"text\":\"\"}","custom-model-data":1}},
{"==":"org.bukkit.inventory.ItemStack","v":3218,"type":"APPLE","meta":{"==":"ItemMeta","meta-type":"UNSPECIFIC","display-name":"{\"extra\":[{\"bold\":false,\"italic\":false,\"underlined\":false,\"strikethrough\":false,\"obfuscated\":false,\"color\":\"white\",\"text\":\"Tomate3\"}],\"text\":\"\"}","custom-model-data":1}}

],
"nums": [
1,
2,
3,
0
]
}

command try:
trigger:
set {_} to json from file "items/test.json"
send {_}
remove json object player's tool from nested object "items" of {_}
remove json index 1 from nested object "nums" of {_}
send {_} with pretty print
````
* Fixed olders issue contains invalid mapping or invalid converting to the json.
* Also fixed issue what should remove the meta from the ItemStack, which should not be removed.
* Also fixed issue with CustomModelData contains id of model was lost from converting to json.
* Path-Hotlinking will not added because it's necessary use that hotlink instead link file instead.
* #13 null as new Data (Bug) was fully fixed -> Will apear error when you tried converting null json to the object.
* #15 fully supported new syntax for remove json from nested object.
* #18 - Item Conversion. When you put item to the Skript list and then you want retrieve it as json form, you got broken json from BukkitSerilization instead of our json normal representation
* #19 UTF-8 encoding error, Fixed
* #20 Item-Data encoding error, Fixed
* #24 Bundle(Custom model Data) lost, Fixed (Minecraft 1.19+)


PLEASE READ THE NEW SYNTAXE'S! on the Skript hub



Please check SkriptHub or Wikipedia for syntax changes.
## ❌ If you found any bugs, feel free to post it.

Sincerely, Coffee.

Full Changelog: https://github.com/cooffeeRequired/skJson/compare/2.6.0...2.7.0

View Update

pre-release skJson 2.7.0 855 days, 5 hours and 9 minutes ago

skJson pre-release 2.7.0⚠️
Introduce

> Hello everyone.

- Fix small bugs #22 #21 #20
- Fixed bundles
- Cleanup code
- fix Typos


[h3]Example[/h3]

{
"items": [
{"==":"org.bukkit.inventory.ItemStack","v":3218,"type":"APPLE","meta":{"==":"ItemMeta","meta-type":"UNSPECIFIC","display-name":"{\"extra\":[{\"bold\":false,\"italic\":false,\"underlined\":false,\"strikethrough\":false,\"obfuscated\":false,\"color\":\"white\",\"text\":\"Tomate\"}],\"text\":\"\"}","custom-model-data":1}},
{"==":"org.bukkit.inventory.ItemStack","v":3218,"type":"APPLE","meta":{"==":"ItemMeta","meta-type":"UNSPECIFIC","display-name":"{\"extra\":[{\"bold\":false,\"italic\":false,\"underlined\":false,\"strikethrough\":false,\"obfuscated\":false,\"color\":\"white\",\"text\":\"Tomate2\"}],\"text\":\"\"}","custom-model-data":1}},
{"==":"org.bukkit.inventory.ItemStack","v":3218,"type":"APPLE","meta":{"==":"ItemMeta","meta-type":"UNSPECIFIC","display-name":"{\"extra\":[{\"bold\":false,\"italic\":false,\"underlined\":false,\"strikethrough\":false,\"obfuscated\":false,\"color\":\"white\",\"text\":\"Tomate3\"}],\"text\":\"\"}","custom-model-data":1}}

],
"nums": [
1,
2,
3,
0
]
}

```vb
command try:
trigger:
set {_} to json from file "items/test.json"
send {_}
remove json object player's tool from nested object "items" of {_}
remove json index 1 from nested object "nums" of {_}
send {_} with pretty print
````
Please check SkriptHub or Wikipedia for syntax changes.
❌ If you found any bugs, feel free to post it.

Sincerely, Coffee.

Full Changelog: https://github.com/cooffeeRequired/skJson/compare/2.6.21...pre-release-2.7.0

View Update

Item Conversion in JSON (Form of Skript list) Supported! 872 days, 4 hours and 44 minutes ago

skJson 2.6.21⚠️
Introduce
Hello everyone.

New conventors for json.

  • Fix small bugs, #18
  • Cleanup code
  • fix Typos

Fixed.

command try:
trigger:
set {_test::*} to diamond sword named "&aA", apple, stone pickaxe
broadcast {_test::*}'s form with pretty print

set {_test::item1} to diamond sword named "&aA"
set {_test::item2} to stone pickaxe
set {_test::item3} to apple

broadcast {_test::*}'s form with pretty print
on load:
execute console command "try"


Please check SkriptHub or Wikipedia for syntax changes.

❌ If you found any bugs, feel free to post it.
Sincerely, Coffee.

Full Changelog: 2.6.2...2.6.21

View Update

Updated 2.6.2 874 days, 22 hours and 44 minutes ago

->

View Update

skJson 2.6.2 Support java 11, Automatic parsing 879 days and 21 minutes ago

skJson 2.6.2⚠️
Introduce


Hello everyone.

- New conventors for json.
- Adding automatic parsing.
- Cleanup code
- fix Typos


From

command test:
trigger:
set {_loc-json} to json from player's location
set {_loc} to {_loc-json} parsed as a location
teleport player to {_loc}

To
command test:
trigger:
set {_loc-json} to json from player's location
teleport player to {_loc-json}


Please check SkriptHub or Wikipedia for syntax changes.
❌ If you found any bugs, feel free to post it.


Sincerely, Coffee.

What's Changed
* New Conventors by @cooffeeRequired in https://github.com/cooffeeRequired/skJson/pull/14

Full Changelog https://github.com/cooffeeRequired/skJson/compare/2.6.1...2.6.2

View Update

skJson (Mapping/Appending) 2.6.1 881 days, 14 hours and 15 minutes ago

skJson 2.6.1⚠️
Introduce

Hello everyone.
Hotfixed issue #11 , also the #13
Also was fixed all mapping / append / write issues.


Please check SkriptHub or Wikipedia for syntax changes.
## ❌ If you found any bugs, feel free to post it.

Sincerely, Coffee.

Full Changelog: https://github.com/cooffeeRequired/skJson/compare/2.5.9...2.6.1

View Update

skJson 2.5.9 883 days, 2 hours and 37 minutes ago

skJson 2.5.9 ⚠️

Introduce

Hello everyone.
Fixed changers, for json you are now able to remove/add or set objects even with cached json.
Added removing/setting for nested objects

This error was related to this thread #8


Version 2.5.9
Example


on load:
set {_json} to json from string "{'A': [1,2,3,4,{'B':false}]}"
set json value "A[1]" of {_json} to true

# Before {"A":[1,2,3,4,{"B":false}]}

remove json value "A[4]:B" from {_json}
add values 1,2,3,4 to {_json}
send {_json}

# After {"A":[1,2,3,4,{}]}

load json file "try3.json" as "try"
send cached json "try"
set json value "A[0]" of cached json "try" to true
send cached json "try"


Please check SkriptHub or Wikipedia for syntax changes.
❌ If you found any bugs, feel free to post it.

Sincerely, Coffee.

Full Changelog: https://github.com/cooffeeRequired/skJson/compare/2.5...2.5.9

View Update

skJson 2.5 884 days, 1 hour and 30 minutes ago

skJson 2.5 ⚠️
Introduce


Hello everyone.
This is a big milestone for skJson addon (*skript-gson*)
One of the first pieces of information is that it has been renamed from the current skript-gson to skJson. I renamed this addon because the gson in the name said little to anyone and was not as representative. thus skJson contains both json in the word and Skript (sk)

I should also mention that support for older versions of minecraft server has been added. Since version 1.8.8 this addon is able to work.

I must also mention that the kernels for file handling and json serialization have been redesigned. For example, you can now serialize nbt and or entities.

A lot of syntax has been modified and simplified. one of my favorites is the Append effect, here is an example

append player's tool with key uuid of player as nested object "data:players tools[1]" to json file "..."

Don't worry I'll show you everything here, the new syntax is more intiative and I hope you'll find it easier to work with this addon, at the moment the addon supports around 24/25 data-types, if you want to add some that isn't just create a github thread as suggestion and I'll be happy to take a look.

I would also like to thank the total number of support and downloads for this addon and that is 4129x to date.

Alright let's get on with the news.

News
[h3]Adapters ⏺️[/h3]
NBT, Entity, Chunk, ItemStack, World, Inventory, bukkit-types, and some Skript-types.

Please check SkriptHub or Wikipedia for syntax changes.

Sincerely, Coffee.

Full Changelog: https://github.com/cooffeeRequired/skJson/compare/2.1.1...2.5

View Update

Updated AutoUpdaters. Skript-gson 2.1.0 901 days and 29 minutes ago

Hello everyone

Hi there we have a couple of changes regarding the new json from the request, also changes in the Versioning Area and its automatic updates.

Thank you all for your attention.
Sincerely Coffee.

Full Changelog: [URL='https://forums.skunity.com/http:/#%20skript-gson%202.0.4%20%F0%9F%94%B0%20![Git](https://user-images.githubusercontent.com/106232282/200513198-968073f2-8249-4c40-b161-e81ac7a92f99.png)%20-%20##%20**Hello%20everyone%20%F0%9F%91%8B**%20Hi%20there%20we%20have%20a%20couple%20of%20changes%20regarding%20the%20new%20json%20from%20the%20request,%20also%20changes%20in%20the%20Versioning%20Area%20and%20its%20automatic%20updates.%20%20Thank%20you%20all%20for%20your%20attention.%20\%20Sincerely%20Coffee.%20%F0%9F%91%8B%20%20**FTW**%20*skript-gson*%20%20**Full%20Changelog**:%20https://github.com/cooffeeRequired/skript-gson/compare/2.0.4...2.1.0']https://github.com/cooffeeRequired/skript-gson/compare/2.0.4...2.1.0[/URL]

View Update

skript-gson 2.0.4 - Changed internal object mapping 902 days and 30 minutes ago





Hello everyone
Changed internal object mapping for Items, now you are able to pull Item from mapped json as well


command saveinv:
trigger:
set {inv} to json from player's inventory

command listinv:
trigger:
map {inv} to {_inv::*}
loop (indices of {_inv::contents::*}):
if {_inv::contents::%loop-value%::*} is set:
set {_item} to {_inv::contents::%loop-value%::*}'s form parsed as skript-type
give {_item} to "player's name" parsed as player

[/code]




[/FONT]

View Update

skript-gson 2.0.3 912 days, 4 hours and 25 minutes ago








View Update

skript-gson 2.0.2 917 days, 2 hours and 55 minutes ago

added - all json elements from %jsonelement%

View Update

skript-gson 2.0.2 917 days, 13 hours and 15 minutes ago









set {_json} to new json from string "{'A': {}, 'B': [], 'C': {'G': {}}}"
add false to {_json} # example 1
add "A:test;false" to {_json} # example 2
add "C:G:test;A" to {_json} # example 3

# Show case 1
{"A": {}, "B": [], "C": {"G": {}}, "3": false}
# Show case 2
{"A": {"test": false}, "B": [], "C": {"G": {}}}
# Show case 3
{"A": {}, "B": [], "C": {"G": {"test": "A"}}}





View Update

skript-gson 2.0.0 921 days, 16 hours and 9 minutes ago

New release of skript-gson it's out. 2.0.0 Fixed all known mapping bugs, also added SkriptTypes and Bukkit type conversion, also Inventory. Changed functionality and loaded Json as a custom ID, etc. https://skripthub.net/docs/?addon=skript-gson https://github.com/cooffeeRequired/skript-gson/releases/tag/2.0.0

View Update

skript-gson 1.4.0 (Loading file as given ID) 930 days and 20 hours ago





View Update

skript-gson 1.3.3 - small fix 932 days, 8 hours and 30 minutes ago

  • Fixed writing to file.

View Update

Fixed version skript-gson 934 days, 19 hours and 34 minutes ago

View Update

Skript-Gson 1.3.1 941 days, 4 hours and 5 minutes ago


  • Fixed docs on GitBook.


  • Fixed version of Skript-Gson, which is now free of dangerous bugs. Json Mapping fix
  • Feature 'with variables'
  • Feature ~%object% -> JsonKeys for Changer

View Update

Skript-gson 1.3.0 updated 944 days, 3 hours and 12 minutes ago

View Update

Skript-Gson 1.2.0 954 days, 23 hours and 34 minutes ago

https://github.com/cooffeeRequired/skript-gson/releases

Skript-Gson 1.2.0

Hello everyone
This patch won't please some of you, mainly because after reaching the 50th download milestone we noticed that few people know how Non-Literal Json means

json ...
works.

So we decided to remove this feature and work on improvements in putting and adding to the Json file/variable.
The last version is rather a mess and so this version will be cleaned of all necessities plus the examples will be corrected so that the layman can understand them

Format
Finished:
ExprNewJson.class

[a] [new] json from [(text|string|request)] %object%

Removed:
Non-Literal from ExprNewJson.class

Added: serialization\deserialization for
ItemTypes,BlockData
etc.. More here

Expressions
Finished:
ExprJsonListToJsonElement.class
-> Fixed working with objects, now you can change the whole variable.
Added:
ExprCountOfJson.class

[a] count of [key] %string% in %jsonelement%

Added:
ExprJsonRegexMatch.class

[json] %jsonelement% [regex] match[es] %string%

♾️ Change/Fix:
ExprLoadJsonFile.class
-> At this moment i cannot guarantee the syntax

Effects
♾️ Planed:
EffHandleJsonFile.class

load json file %string% as id %string%
unload json file [id] %string%
save json file [id] %string%

♾️ Planed-Rework:
EffMapJsonToList.class
-> will contains new feature.
♾️ Planed-Rework:
EffWriteToFile.class
-> will contains new feature.

Conditions
Added:
CondJsonHas.class

%jsonelement% has (:key|:value) %objects%
%jsonelement% has list (:keys|:values) %objects%

♾️ Planed-Rework:
CondJsonValueObject.class

[a] value %string% in %jsonelement% is (:true|:false)
[a] value %string% in %jsonelement% is string
[a] value %string% in %jsonelement% is integer
[a] value %string% in %jsonelement% is boolean
[a] value %string% in %jsonelement% can be parsed

Thank you all for your attention. \
Sincerely Coffee.

FTW *Skript-Gson*
*

View Update

Skript-Gson 1.1.3 - Sanitize Patch. 958 days, 17 hours and 29 minutes ago



Hello everyone

This patch fixes bugs #1, #2
and also fixes a syntax error where you couldn't use variables for example in

'append.. '


Change from
...

"[a] [new] json from (string|text) %string%",
"[a] [new] json from file [path] %string%",
"json (([<.+>])|({<.+>}))",
"(<'.+'>)"

...

On \

...

"[a] [new] json from (string|text) %string%",
"[a] [new] json from file [path] %string%",
"(json ((<\\[.*\\]>)|(<\\{.*\\}>)|((\\\"|')<.+>(\\\"|'))|(<(true|false)>)))"

...

[h3]Also added a new substring \[/h3]
[a] json file %object% is exist

View Update

Fix map conversion 958 days, 20 hours and 29 minutes ago

https://github.com/cooffeeRequired/skript-gson/releases/tag/1.1.1

View Update

Updated Skript-Gson 959 days and 53 minutes ago

https://github.com/cooffeeRequired/skript-gson/releases/tag/1.1.0

View Update

Skript-Gson 959 days, 5 hours and 10 minutes ago

Skript-Gson 1.1.0

This this realese brings new features such as.
Expressions


  • (load|open)[ed] json file %string%


Effects

  • write [new] data %jsonelement% to [json] file %object%


  • append(ing|) [new] data %jsonelement% to [json] file %object% [(:as) [nested] object %-jsonelement% [(:with) [property] key %-string/integer%]]


Full Changelog: https://github.com/cooffeeRequired/skript-gson/compare/1.0.2-Beta...1.1.0

View Update

Added new syntax for Add 964 days, 4 hours and 50 minutes ago

Check out : https://skripthub.net/docs/?id=8183

View Update

skJson 964 days, 15 hours and 45 minutes ago



[TABLE]
[TR]
[TD] Spigot[/TD]

[TD] Paper [/TD]

[TD] Purpur [/TD]
[/TR]
[TR]
[TD] Java 21 + [/TD]
[TD] Java 21 + [/TD]
[TD] Java 21 + [/TD]
[/TR]
[TR]
[TD]Minecraft 1.18.2 +[/TD]

[TD]Minecraft 1.18.2 +[/TD]

[TD]Minecraft 1.18.2 +[/TD]
[/TR]
[TR]
[TD]Skript 2.9.2 + [/TD]

[TD]Skript 2.9.2 + [/TD]

[TD]Skript 2.9.2 + [/TD]
[/TR]
[/TABLE]

Where Can I Get Help?



❓ What can SkJson do?

  • Create JSON from string and other sources, e.g. from Bukkit objects such as Location, Player, Entity, Inventory, and many more.
  • Work with `.json` files. In the future, also with `.jsonc` (files with comments).
  • Report HTTP requests and send HTTP responses encoded in JSON.
  • Use FileWatchers, e.g. to monitor and cache changes in files like `ops.json`.
  • Use MemoryCache for ultra-fast read/write (~100-1000 µs).
  • Create VirtualCachedJson, a dynamic cache similar to script variables.
  • Supports NBT thanks to NBT-API, preserving NBT data during serialization.
  • Can serialize and deserialize nearly everything in Minecraft.


Get started

  • Paste Skjson.jar into the `<server>/plugins` folder.
  • Configure via `plugins/SkJson/config.yml`.


Wiki

  • SkJson is multifunctional – handles web requests, string-to-file operations, and caching.
  • Further details are available in the documentation.








View Update

© Copyright 2014-2025 skUnity

All rights reserved.