**5.8.0 - New command, target, events, actions, conditions and game values.** 🍂
We added new **events, actions, conditions, game values, experiments, new translation, experiments**, and even **ERRORS?!**
Watch the trailer:
<iframe width="560" height="315" src="https://www.youtube-nocookie.com/embed/epZJQ8Go6bw" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen></iframe>
## New Translation 🇺🇦
`Senmpai333` introduced an ukrainian translation for OpenCreative+, so now you can change your server messages with `/oc locale ua` and restart the server.
## New command: `/jointo Player` 🔭
Now you can directly teleport to player's current world, without needing to /locate player, then clicking it.
## AI in coding? Is that Vibe-coding?! 🧛
Yes to first, and maybe to second question.. Now server admins can connect AI (Google Gemini or OpenAI ChatGPT) to coding and let you use the magic command: `/env make Prompt`
It will generate a code from your prompt, it works with simple code, but with hard to understand code it works.. not fine.. Have fun to use it!
```yaml
# /plugins/OpenCreative/config.yml
coding:
#
# Prompt handler is responsible for generating
# code from players wishes by using command:
# /env make [prompt]
#
# Notice: Prompter can and will do mistakes in coding,
# and we cannot nothing to do with it.
#
# Prompter requires token to work.
# For ChatGPT - https://platform.openai.com/api-keys
# For Gemini - https://aistudio.google.com/app/apikey
# Note: Services give you free trial, but
# for general usage you can be forced
# to pay services for using prompter.
#
# For example: /env make when player right clicks on
# magma block it gives random item
prompt-handler:
type: "none" # Set to "none" to disable. Available: "gemini", "chatgpt"
model: "gemini-2.5-flash" # Set model of LLM. For ChatGPT: "gpt-4o-mini"
token: "insert-secret-api-key-here-but-do-not-share-it-with-others"
timeout: 120 # Maximum time amount for thinking in seconds.
executors-limit: 10 # Maximum amount of executors.
```
## Coding Changes 🐧
- **New Player Events** (5):
- Bucket Filled
- Bucket Empty
- Catch a fish with bucket
- Entered vehicle
- Exited vehicle
- **New Entity Events** (14):
- Entered vehicle
- Left vehicle
- Mob borned
- Mob removed
- Mob exploded
- Mob ignited by block
- Mob ignited by entity
- Mob healed
- Projectile hit a block
- Mob mounted entity
- Mob dismounted entity
- Shulker duplicated
- Mob got damaged
- Hanging (painting, frame) broke
- **New Player Actions** (2):
- Apply Mending
- Set visual fire
- **New Variable Actions** (6):
- Remove value from list
- Convert Time
- Parse JSON
- Save as JSON
- Remove item's lore line
- Trim a list
- **New World Actions** (4):
- Fill a block with water
- Change mode to Build
- Clear all scores from scoreboard
- Set scoreboard number style (red numbers)
- **New Code Control Action** (1):
- Clear local variables
- **New Repeat Actions** (3):
- Repeat while condition is true
- Repeat while condition is false
- Repeat through dictionary (map)
- **New Entity Actions** (54):
- Make fox sleeping
- Make fox jumping
- Make fox defending
- Make fox facing to grass
- Make fox sitting
- Set visual fire
- Set friction
- Set color of parrot
- Set pumpkin of snowman
- Set nectar for bee
- Set stingers for bee
- Make cat lying
- Make mob angry
- Make mob having chest
- Make mob remove when they're too far away
- Set awake
- Make camel running
- Charge creeper or wither's skull
- Make enderman or goat screaming
- Set horns of goat
- Make mob breed
- Make panda lying on back
- Set main haind
- Set laser of guardian
- Make mob interested
- Make horse standing on 2 legs
- Ignite explodable entity
- Explode entity
- Set bat's sleeping state
- Apply Luck for fishing hook
- Make axolotl to pretend being dead
- Make bear standing on 2 paws
- Make allay dancing
- Shake villager's head
- Make mob sitting
- Set having saddle
- Set block in minecart
- Set piglin's crossbow state
- Make pigling dancing
- Make mob celebrating
- Make wandering trader to drink milk
- Make wandering trader to drink potion
- Set visual fire
- Set display billboard
- Set AI
- Set collision
- Make mob a baby
- Make mob an adult
- Set physics
- Set silent
- **New World Conditions** (2):
- If player is in world
- If cycle is running
- **New Variable Condition** (1):
- If boolean is true
- **New Target** with SHIFT+RMB: **Last created entity**, that works after Create entity like world action.
- Added new 4 errors (yes, we added errors):
- Unknown Function
- Unknown Method
- Unknown Cycle
- Not supported entity for action
## Other Changes 🛋️
- Now when player attacks other player in build mode, it will **notify him**, that they cant attack anyone in build mode.
- Now when player sends message in global (/cc) chat containing world advertisement (`please join my world /join ID, free gm1!!! /ad 123`) it will underline join command, on hovering it will show world's info, and on clicking it will suggest player to join the world.
- In `messages` section: `cc-prefix`, `cc-chat`, `world-chat` from config.yml now support both formats: MiniMessage (<red>) and Legacy colors (&c).
- Now you can disable sending messages when player edits coding value with chat (text, number, vector...)
```yaml
# /plugins/OpenCreative/config.yml
messages:
# ...
cancel-chat-on-value-set: true # set true to hide these messages
```
- Tired from "No players around, maybe you should try global chat with ! or /cc" message? Now server admins can disable it:
```yaml
# /plugins/OpenCreative/config.yml
messages:
# ...
notify-no-players-around: false # set to false to disable, true to enable, by default true
```
- Added **new commands for admins**
- `/oc recommend ID` - Mark world as recommended.
- `/oc unrecommend ID` - Remove world from recommendations.
- `/oc setowner ID Owner` - Set owner of world.
- `/oc setsize ID Size` - Set custom size of world
- `/oc ignoremessage Path` - Adds message to safe list, won't reset on /oc resetlocale.
- `/oc unignoremessage Path` - Removes message from safe list, it it will be able to reset with /oc resetlocale.
- Added **experiments**. Now you can toggle and test early unstable features of OpenCreative+, than can appear in future.
```yaml
# /plugins/OpenCreative/config.yml
experiments:
wanders: true # Featured worlds, saving last visited world
code_downloader: true # Downloading code from link with YAML content
world_downloader: true # Cloning worlds
```
- **Updated window**, that shows on opening OpenCreative.jar by double clicking (yes it does exist!)
## New Placeholders for PlaceholderAPI 💬
Now you can use even more placeholders... and maybe you can script with them something.. maybe displaying some info in bossbars.. scoreboards? We don't know, but we added:
```yaml
%opencreative_is_in_build_planet%
%opencreative_is_in_dev_planet%
%opencreative_can_develop%
%opencreative_is_whitelisted%
%opencreative_is_owner%
%opencreative_is_banned%
# For planets
%opencreative_planet_icon_material%
%opencreative_planet_is_loaded%
%opencreative_planet_variables_amount%
%opencreative_planet_redstone_operations_amount%
%opencreative_planet_modified_blocks_amount%
%opencreative_planet_elements_changes_amount%
%opencreative_planet_whitelisted_players%
%opencreative_planet_blacklisted_players%
%opencreative_planet_builders%
%opencreative_planet_trusted_builders%
%opencreative_planet_not_trusted_builders%
%opencreative_planet_developers%
%opencreative_planet_not_trusted_developers%
%opencreative_planet_trusted_developers%
%opencreative_planet_guest_developers%
%opencreative_planet_entities_amount%
%opencreative_planet_executors_amount%
%opencreative_planet_limit_...%
%opencreative_planet_modifier_...%
# You can use
%opencreative_planet:ID_placeholder%
%opencreative_planet:123_online%
```
### Save your beautiful messages from resetlocale! 🗄️
We added a new section in config.yml to allow you to **save old messages from resetting by /oc resetlocale**:
```yaml
# /plugins/OpenCreative/config.yml
messages:
# ...
do-not-reset:
- "lobby.title" # Your messages path...
- "creating-world.title"
```
### Resource pack changes 🌄
Now plugin will **reset player's resource pack to server's** (if specified in server.properties) or to vanilla, when players teleports lobby.
Also we added "message" argument for player action "Set resource pack".
### Fixes
- Now actions after brackets will be executed after executing code in previous bracket multi-actions (conditions, repeat actions, handler actions). It fixes Measure code execution time action, and actions after repeat action will be executed on the end of repeat.
- Fixed selection and target Selected target for Call Function/Method actions. You should use this target, if you want to execute code on entity, that currently runs function/method.
- Fixed loading worlds for 1.21.9+ server versions (destroyed spawn chunk radius game rule for them)
- Now "Create a world" button in own worlds menu displays available amount of worlds to create.
- Fixed some issues with `/oc recommend`, `/oc unrecommend` when they were too laggy.
- Fixed an error with Set Entity/Player health, that happened on setting health, which is above than max health.
### HONORABLE MENTION 🦈
They reacted with SHARK OMG emoji, they should be truly fans of it.
- Electric
- Barn
- TON 618
- Pryanik
- Dimka
Developer information
Projects on Modrinth are automatically available through a Maven repository for use with JVM build tools such as Gradle.
maven { name = "Modrinth"; url = "https://api.modrinth.com/maven" }