Update 0.6.5: Plugin API (EN)

  • 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).


    c1.jpg


    c2.jpg

    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.


    c3.jpg

    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
  • red51

    Changed the title of the thread from “Update 0.6.5: Plugin API” to “Update 0.6.5: Plugin API (EN)”.
  • Having a look at the new API now


    Thanks, Red :D:D


    Now "Live " : RunAndHideGamer's Modded Rising World Multiplayer Server : Rise Of The Nightwalkers.

    You are stranded on one of the many islands in the Pacific surrounded by wild animals and savage barbarians.

    You start in the middle of tall dry grass surrounded by a huge number of trees.

    An Important Safety Tip - Get some weapons as early as possible. =O =O =O :wat: :wat: :wat: :verysad: :verysad: :verysad:

  • Nice work there paulevs.


    I am just going through looking at the new api now.


    Now "Live " : RunAndHideGamer's Modded Rising World Multiplayer Server : Rise Of The Nightwalkers.

    You are stranded on one of the many islands in the Pacific surrounded by wild animals and savage barbarians.

    You start in the middle of tall dry grass surrounded by a huge number of trees.

    An Important Safety Tip - Get some weapons as early as possible. =O =O =O :wat: :wat: :wat: :verysad: :verysad: :verysad:

  • I cant update the standalone variant for the new update. whenever I enter the game, the version remains the same (0.6.0.3) even though I checked files. I even tried redownloading the game alltogether. What should I do?

    Did you get the update in steam today.... i think it was about2 gig in size?


    Now "Live " : RunAndHideGamer's Modded Rising World Multiplayer Server : Rise Of The Nightwalkers.

    You are stranded on one of the many islands in the Pacific surrounded by wild animals and savage barbarians.

    You start in the middle of tall dry grass surrounded by a huge number of trees.

    An Important Safety Tip - Get some weapons as early as possible. =O =O =O :wat: :wat: :wat: :verysad: :verysad: :verysad:

  • When you update it with the 2 gigabyte update released today it should have updated you to the new version on Unity.....


    Now "Live " : RunAndHideGamer's Modded Rising World Multiplayer Server : Rise Of The Nightwalkers.

    You are stranded on one of the many islands in the Pacific surrounded by wild animals and savage barbarians.

    You start in the middle of tall dry grass surrounded by a huge number of trees.

    An Important Safety Tip - Get some weapons as early as possible. =O =O =O :wat: :wat: :wat: :verysad: :verysad: :verysad:

  • Have you tried starting the game from inside Steam and not from the desktop icon?


    Now "Live " : RunAndHideGamer's Modded Rising World Multiplayer Server : Rise Of The Nightwalkers.

    You are stranded on one of the many islands in the Pacific surrounded by wild animals and savage barbarians.

    You start in the middle of tall dry grass surrounded by a huge number of trees.

    An Important Safety Tip - Get some weapons as early as possible. =O =O =O :wat: :wat: :wat: :verysad: :verysad: :verysad:

  • Thanks for your feedback so far! :)


    Thank you for an epic update and nice working API :)

    [...]

    Thanks a lot, this looks amazing btw! :wow::thumbup:


    I cant update the standalone variant for the new update. whenever I enter the game, the version remains the same (0.6.0.3) even though I checked files. I even tried redownloading the game alltogether. What should I do?

    It looks like something is broken which prevents the standalone from downloading the update automatically (considering this already happened with the last update) :wat: I'm sorry about that, this shouldn't have happened, but thanks for bringing this to our attention! We'll fix this issue ASAP!


    The Steam version works as intended, the standalone version is the problem. If I copy the files from Steam to standalone, will it work?

    Yes, basically that should work, but it may be necessary to delete the "steam_api64.dll" in the "Data/Plugins" folder manually (otherwise the game may think it's a Steam version)^^

  • Thank you! :-)

    Edit: It works! :-)

  • The standalone download should work now, but I'm glad to hear you already managed to fix the issue ^^


    Also, does the Plugin API have acces to the digging action?

    Does than mean you want to get notified if the player is digging, or do you want to modify the terrain through the API? If you want to get an event, the PlayerDestroyTerrainEvent is probably what you're looking for :)


    However, modifying the world through the API isn't possible yet, unfortunately that didn't make it into this update... but the World class will get some methods for that with one of the next updates ;)

  • A small hotfix is available now btw! It fixes a bug with the creative mode F8 tool and also fixes the animal footsteps (which were too loud) :saint: This update is optional for multiplayer servers.


    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
  • Light that moves together with player. The movement is a bit weird since object get updates with PlayerChangePositionEvent.


    So, I have a suggestion for the API: access to the camera GameObject, this will allow to attach an object to player and object movement will be smooth, or the object will have fixed position related to the camera - it will be very useful for custom skyboxes or other similar effects


Participate now!

Don’t have an account yet? Create a new account now and be part of our community!