BlueLib - Library for Unity RW blueprints

A new update is now available, introducing seasons and more!
Latest hotfix: 0.8.0.2 (2024-12-30)
  • Hi everyone, this is a small project that I started some weeks ago to help content-makers and myself to make more things for modern Unity Rising World.


    This library allows you to manipulate with Rising World blueprints using Java code. The library itself is very simple, but it have full support for Blueprint V6 format including construction elements, objects, plants, screenshots and thumbnails of blueprints.


    This library was designed to work with Java 8 and higher. It also depends on LZ4 Java library (compression format of modern blueprints).


    Main features:

    • BlueprintIO - allows to save and load blueprints from files, streams and buffers;
    • Blueprint - class that represent blueprint instance;
    • BlueprintElement - construction elements in blueprints;
    • BlueprintObject - objects (furniture) in blueprints;
    • BlueprintPlant - plants in blueprints;
    • LittleEndianDataOutputStream - stream to save data in LittleEndian order.

    Constants:

    • BlueprintElementType - contains default construction element types (with names from definitions.db);
    • BlueprintObjectType - contains default object types (with names from definitions.db);
    • BlueprintPlantType - contains default plant types (with names from definitions.db);
    • BlueprintVersion - contains blueprint version IDs.


    How to add library to your project using Gradle


    Releases: GitHub Releases

    Sources: GitHub page
    License: MIT


    Some examples of what you can do using this library:


    Known bugs:
    - Generated images for blueprints will be not displayed correctly in game. This will not happen with loaded and saved blueprints Fixed since 0.1.1

  • So, I tried to find game limits, and I have success.

    I present you largest menger sponge that you can create in single blueprint. It contains 3200000 construction elements. Sponge of larger size will not fit into blueprint.

    I waited approximately 15 minutes until blueprint wil lbe placed in the game. And I get 15-20 FPS after that, so I guess game limit is near 18M polygons of construction elements on the frame (if you will not look on it - FPS will increase up to 50).


    This is how this monstrosity looks like (sponge side is 200 units, 5 iterations):


    In game it looks much more epic as on screens.

    Bonus - me waiting 15 minutes when sponge is building

  • What about some paintings?

    It is possible to load image, turn pixels into elements and then place in the game


    Don't stand too close, Ambient occlusion will kill your FPS ;)


  • Oh gods, thanks you so much for this!


    I needed `flip` but that is not implemented for blueprints [yet?].


    It's a very specific usecase where I only needed to flip rounded elements (type 80) over one axes.


    Took me ~ 2h to get up gradle n stuff and start experimenting with the lib until I managed to do what I wanted 😁

Participate now!

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