Hi folks,
The first (experimental) version of the new Plugin API is now available! It enables you to modify the game in many ways. You can hook into game events (e.g. if the player picks up an item or receives damage) and respond to them accordingly. You can also load custom 3d models, play custom sounds or internet streams or create new UI elements.
The Plugin API has a few advantages compared to traditional modding: In multiplayer, plugins are always executed on the server - this means the client does not have to download any plugins or mods in order to play on that server. This also increases the security for the client (because no - potentially malicious - code is executed on his end). In addition to that, the game handles sync between clients automatically, which makes it a lot easier to create multiplayer-compatible plugins.
Plugins usually remain compatible after a game update btw, and the risk of plugins interfering with other plugins is a lot lower.
Unlike the old API, the new Plugin API now supports Unity Asset Bundles: This enables you to load prefabs created in Unity, which may contain almost any Unity component (e.g. custom materials and shaders, particle effects, physical components etc).
Custom VFX particle effects created in Unity and loaded through the Plugin API (through an Asset Bundle)
But of course you can also load model files (like .obj or .fbx) directly. The API also enables you to modify the models (or any sub-component) retroactively.
Custom 3d model (fbx file) loaded through the Plugin API
Please bear in mind that this is still an experimental release! Some events and methods may still not work, and you may also run into other issues or bugs when using plugins. If you encounter any bugs or if you have any questions or requests for new API methods, please let us know! We have a dedicated section for the API in our forums: https://forum.rising-world.net/board/36
Old plugins from the Java version are not automatically compatible btw - but upgrading them to the new API should be quite easy (there were only minor syntax changes). However, this is something that can only be done by the plugin creator.
We'll provide updated example plugins and a detailed guide about how to set up your IDE soon, but in the meantime, you can find some basic information here: https://forum.rising-world.net/thread/12493
---
Apart from the new API, this update also introduces a few new other things. There are various new objects (scaffoldings, chests, seating, cooking grill etc) as well as several changes and bugfixes.
In addition to that, we've implemented some improvements to the network system. This should fix some lags some people were experiencing in multiplayer.
As always, you can find the full changelog attached. Stay tuned for the next updates
Changelog 0.6.5 (2023-04-12):
- [New] Plugin API
- [New] Added 10 scaffolding objects, including ladder elements and a trapdoor
- [New] Added seat object (similar to the seat in the Java version, but now resizable)
- [New] Added 3 new chests
- [New] Added campfire grill (to grill meat)
- [New] Cutting a tree or destroying an object now scares nearby animals
- [New] Creative Mode F8 (1) tool now provides continuous editing (hold left mouse button)
- [New] Added new music tracks
- [Change] Updated to Unity version 2022.2.12f1
- [Change] You can now paint boats (by using the paint roller)
- [Change] Search bar in crafting menu now also accepts block ids (to search for a particular block material)
- [Change] The "setp" console command now supports smaller values (0.0001 and smaller)
- [Change] Reduced damage radius of campfires
- [Change] You no longer get fall damage if fly mode gets disabled due to permission change (e.g. when entering areas etc)
- [Change] Sent private chat messages are now also shown in your chat (multiplayer)
- [Change] Placing objects no longer works if the spot is already occupied by an idential object with identical transform
- [Change] Single construction element edits are now also covered by "undo"
- [Change] Improved performance if lots of torches were placed in the world
- [Bugfix] Fixed a bug that prevented plants from growing sometimes
- [Bugfix] Fixed crash when trying to load a Demo world
- [Bugfix] Blueprint selection area now gets reset after changing item
- [Bugfix] Rake works properly underwater now
- [Bugfix] Spawning blocks with an invalid id no longer clears the inventory
- [Bugfix] Fixed warnings being spammed when placing certain inverted objects
- [Bugfix] Fixed missing animation for locked doors
- [Bugfix] Fixed stuttering if chunks with lots of objects (e.g. furniture) were loaded
- [Bugfix] Fixed objects breaking when trying to pick them up (in multiplayer)
Hotfix (2023-04-13):
- [Change] Removed unnecessary (but harmless) API error message when starting a server
- [Bugfix] Fixed crash when using the creative-mode F8 tools
- [Bugfix] Fixed "edit texture" command not working correctly
- [Bugfix] Fixed animal footstep sounds being too loud
Hotfix 0.6.5.1 (2023-04-23):
- [Change] Changing a texture via creative mode F8 tool no longer overrides existing colors (unless the player selects a new color)
- [Change] Added pivots to trapdoor
- [Change] Fixed animals sometimes getting stuck in the ground or in walls
- [Change] Reduced idle sound frequency of animals
- [Bugfix] Fixed issue preventing vehicles from being painted
- [Bugfix] Fixed illegal state kick in multiplayer if object gravity was disabled
- [Bugfix] Fixed sudden connection loss in Steam P2P sessions ("Play with friends")
- [Bugfix] Fixed broken lettuce texture
Hotfix (2023-04-23):
- [Change] Added missing PluginSDK.unitypackage
- [Bugfix] Fixed luminous blocks not working properly
- [Bugfix] Fixed bug that caused animals to fall through the ground