Search Unity

[RELEASED] uConstruct - Fully generic, socket based runtime construction system

Discussion in 'Assets and Asset Store' started by ElroyUnity, Oct 17, 2015.

  1. ElroyUnity

    ElroyUnity

    Joined:
    May 20, 2015
    Posts:
    1,588
    Thanks alot for your support, and i hope you find my sytem beneficial to you :).

    A networking part 3 will be out soon which will cover up non-entities synchorization as many people requested it, so hopefully that will help you :).
     
    bigSadFace and John-G like this.
  2. Recon03

    Recon03

    Joined:
    Aug 5, 2013
    Posts:
    845

    Nice.
     
  3. amasinton

    amasinton

    Joined:
    Aug 12, 2006
    Posts:
    138
    I'm perhaps not so clever...
    How would I go about toggling the snapping feature? Sometimes I want to use the snapping to get objects roughly in the right place quickly, but then I want to nudge and move them by hand after that. Do I have to iterate through every socket on every building in the scene and disable it, or is there a method I can call somewhere that will take care of the whole system?
    Thanks for your help!
     
  4. ElroyUnity

    ElroyUnity

    Joined:
    May 20, 2015
    Posts:
    1,588
    Hey,
    didnt quite get your question, so you want to enable free placing on run time ?, or you mean the sockets preview ?
     
  5. amasinton

    amasinton

    Joined:
    Aug 12, 2006
    Posts:
    138
    Sorry, I meant during runtime.
    I want to use the sockets sometimes to snap an object into the right area, but then turn off all snapping while I adjust the object's position manually, then be able to turn snapping back on, ready for the next object.
     
  6. ElroyUnity

    ElroyUnity

    Joined:
    May 20, 2015
    Posts:
    1,588
    Oh i see,
    Theres a method inside the socket named : "EnableSocket", so when you want to enable the socket just use : socket.EnableSocket(false), and when you want to enable it just do the opposite :).
     
  7. ElroyUnity

    ElroyUnity

    Joined:
    May 20, 2015
    Posts:
    1,588
    V1.1 is getting closer and closer!!, full changelog (might change before release):

    Features:

    UCManager : A new editor that allows you to set up the project with uConstruct in just 1 click!, it automatically sets up your layers without the need to manually set them up, and also giving you shortcuts to other windows.




    Blueprints : One of the biggest features of uConstruct, the blueprints feature gives you the ability to set up any mesh or a prefab instantly without the need to do any customization, just choose your mesh/ prefab and you got your self a ready to use building, with sockets and conditions automatically defined.
    The blueprints can be serialized and created on runtime, allowing you to send it through the network, you could do some really cool stuff with it, The blueprints feature will also handle wrongly placed pivots and will get any mesh working even if the pivot isnt centered.



    Through-Objects prevention for UCPhysics : The biggest issue that there was with UCPhysics was the through-objects hit detection, with a new detection feature the system now takes unity objects into account without effecting performance and the raycast does not go through objects anymore and gives more accurate results.

    GAIA Extension : A new GAIA extension that gives you tools to easily set up the project with both GAIA and uConstruct.

    Bugs Fixes & Improvements:

    -Rewrote some building aspects and now sockets and conditions can be created on runtime, allowing you to give your players the ability to customize full buildings on runtime!.
    -Fixed collapse condition not detection neighbors correctly
    -Rewrote BuildingPlacer
    -Fixed Collapse event not restoring sockets on destruction
    -Fixed Terrain Modification condition to not work with terrains that aren't placed on 0,0,0
    -Added TreeHouse to demo, still WIP.
    -Added DemoUI (Shows the current keys for the buildings, used on demos)
    -Changed DemoUI text color to white instead of black.
    -Fixed DemoUI not working properly on some scenes.
    -Added "Script" field to custom editors so you could more easily switch scripts now. (can be accessed through the new "UC_EditorUtility" class)
    -Rewrote some aspects of the saving system in order to fix an issue where "PlacedOn" and "SnappedTo" wouldn't persist through save and load.
    -Made scripts to work with networking tutorials (1+2).
    -Fixed socket previews not being destroyed on playtime, and might lose their reference some time.
    -Created 3 demo blueprints ( CubesDemo, 3DForgeInterior, 3DForgeExterior).
    -Exposed "destroyDelay" of the condition "CheckForGround".
    -Exposed all of BuildingPlacer variables so it can be used from external use.
    -Fixed buildings being consistenly removed from the group, causing it to call the "Remove" events several times.
    -Fixed the issue where the building script would disable the building colliders, sockets and conditions on editor when selecting the prefab.
    -Added PivotManagment to blueprints that would fix wrongly placed blueprints.
    -Added new serialization method for the blueprints in order to allow inheritance (not working properly with unity's scriptable object, so had to write a fix).
    -Setted up all building's sockets and conditions parents to be on globalScale 1 and also localRotation 0, in order to avoid blueprint corruption.
    -Created unity object picker wrapper, can be accessed from the new "UC_EditorUtility" class.
    -Made the old collider batching methods obsolote.
    -Added more buttons to the UCManager.
    -Removed most standard assets from the asset, the only scripts that are left are the demo ones and with difference namespaces, so it wont override your standard assets.
    -Resorted the editor scripts so they arent all stacked in one folder.
    -Fixed building group not handling correctly with nulls.
    -Fixed building might giving an null reference when materials are null on editor.
    -Fixed isBeingPlaced not being true on default.
    -Fixed building events called on editor.
    -Seperated "DestroyBuilding" into 2 different methods :
    Deattach - deattach the building from the socket, group etc.
    Destroy - completely destroy the building, while also deattaching it.
    -Added "OnBuildingDeattached" event, that is called when the building is deattached.
    -TerrainModificationCondition works better on bigger terrains, also has a major improvment in performance.
    -Added isPlaced.
    -Fixed isPrefab detection being inaccurate.
    -Updated Docs and API.



    Will be submitting soon enough,
    I will test the version a bit more and will submit after i am certain its 99% stable,


    Elroy.
     
  8. amasinton

    amasinton

    Joined:
    Aug 12, 2006
    Posts:
    138
    Okay, that's great. Will I have to call this on every socket individually, if I wanted to turn off and on the entire snapping system everywhere?

    Seems like SendMessage would be a way to do this, but the performance hit might be massive.

    Is there a kind of register of pool stored by a manager object somewhere that would iterate through all of the sockets in the scene for me? Perhaps I should try to build a socket manager myself.

    Thanks again - an the upcoming update looks fantastic!
     
  9. ElroyUnity

    ElroyUnity

    Joined:
    May 20, 2015
    Posts:
    1,588
    I will be adding that to the new version so you could disable all sockets.
     
  10. ElroyUnity

    ElroyUnity

    Joined:
    May 20, 2015
    Posts:
    1,588
    More change logs :

    -Added "GloballyEnableSockets" to disable/enable the sockets in the scene.
    -Added static "groups" list that holds all of the groups in the scene.
    -Changed some collections to HashSets to further improve performance.
    -Slightly improved performance when disabling/ enabling sockets.
    -Added "isOccoupied" property to sockets.
    -Added "isForced" to sockets to allow to disable/enabled a socket without being enabled/disabled by AOI.
    -"OccupySocket" is now obsolete, use "isOccupied" property instead.
    -added a virtual "DestroyGroup" method to the groups to give more control over the groups API.
    -added "isActive" property to sockets.

    so yes @amasinton, your feature will be in the release version :),
    if any one has more suggestions i am here :).


    Elroy.
     
    amasinton likes this.
  11. amasinton

    amasinton

    Joined:
    Aug 12, 2006
    Posts:
    138
    Yay!!! You're awesome. Thanks!
     
  12. ElroyUnity

    ElroyUnity

    Joined:
    May 20, 2015
    Posts:
    1,588
    My pleasure :)


    So, version is done, going to ready it up for approval :).
     
    montyfi and amasinton like this.
  13. Recon03

    Recon03

    Joined:
    Aug 5, 2013
    Posts:
    845
    WOW Elroy you have been busy... Nice !
     
  14. ElroyUnity

    ElroyUnity

    Joined:
    May 20, 2015
    Posts:
    1,588
    Thank you :)
     
  15. ElroyUnity

    ElroyUnity

    Joined:
    May 20, 2015
    Posts:
    1,588
    Version will be sent for approval later today,
    If you want to get this version now instead of waiting for approval then email me with your innovice number and i will send it to you :).

    Dont forget that the price is going to raise, so if you want the asset, you shouldnt wait :).

    Elroy.
     
  16. ElroyUnity

    ElroyUnity

    Joined:
    May 20, 2015
    Posts:
    1,588
    Good morning everyone !

    While fixing some bugs before submission ( some really annoying ones ), i thought about a really really good feature!

    "Rotate to fit", this will make the building try to find himself an appropriate rotation inside the socket limitations, you can customize the rotation amount, rotation axis and even rotation steps.

    To better understand it, check this out :

    Without "Rotate to fit" : (As you can see I need to manually rotate it in order for it to fit)

    https://i.gyazo.com/a70d0cf733b8127a1d52c3fcd48a4a13.mp4

    With "Rotate to fit" : (As you can see it automatically tries to find a matching rotation, with very extendable settings)

    https://i.gyazo.com/96570c0b2f59a2ef12bf4bca23ec76fb.mp4


    What do u guys think?!,
    The greatest thing about it is that it doesnt effect performance and you know dont need to manually "Rotate" your mesh if you have exported it wrongly from your modeling software or got a damaged one from an online shop!. So really great stuff :).


    Also some more change log for this new upcoming version :

    -Removed the tag requirment from the docs (not needed anymore)
    -Fixed where if you had a UCCallback manager in your scene it would call Load before you can enable/disable the UCSavingManager.
    -Fixed terrain modification resolution not fitting on different sized terrains.
    -Fixed flat condition behaving wrongly sometimes (for example, flattening terrain height to 0).
    -Fixed walls rotation not persisiting.
    -Added "Rotate To Fit".
    -Added "Rotate To Fit" to the blueprints.
    -Removed the flat ground condition from the default building as many people requested me to.
    -Moved UCSavingManager's "Load" into Start instead of awake.
    -Updated blueprints with an improved serialization method.
    -Recreated the demo blueprints to include all changes.
    -Changed the BuildingGroup "AddBuilding" method to be a bit more generic, therefor it will allow you to attach a building several times but it will deny you from adding it to the list more than once. (useful for when the object is created after the group adding, for example the networking tutorial).
    -Fixed in the networking tutorial where if you logged from a new client it wont show him any colliders.
    -Fixed an issue in the networking tutorial when placed on will be null before set up on clients.
    -Fixed an issue in the networking tutorial when you load the save and it will not fully deny duplicated sockets as part of the system smart behaviour.
    -Fixed GAIA extension not working properly some times and throwing null references.

    Note : the networking tutorial issues fixes will be shown in the new Part 3 that will be coming up after this version submittion.

    if you have any more ideas leave a comment here and tell me what you have in mind :).

    Elroy.
     
    amasinton and BackwoodsGaming like this.
  17. ElroyUnity

    ElroyUnity

    Joined:
    May 20, 2015
    Posts:
    1,588
    New version is now sent for submission,
    anyone that wants it before the approval just email : eeproductionssupp@gmail.com
    with your innovice number and i will send it to you :).


    Will also upload today a new video, its a secret :).

    Elroy.
     
  18. ThoZ

    ThoZ

    Joined:
    Apr 21, 2013
    Posts:
    29
    WOW! This Asset look really great! Just purchased it, but unfortunately i haven't got much time atm, exams in university. But i will try it soon and write a review. But what i have seen so far is really great!
     
    ElroyUnity likes this.
  19. ElroyUnity

    ElroyUnity

    Joined:
    May 20, 2015
    Posts:
    1,588
    Thank you both for your purchase and kind words :).
     
  20. ThoZ

    ThoZ

    Joined:
    Apr 21, 2013
    Posts:
    29
    What does "Gaia Support" mean? I am thinking about purchasing Gaia, but what exactly do you support? (or does gaia support?)

    Thank you!
     
  21. ElroyUnity

    ElroyUnity

    Joined:
    May 20, 2015
    Posts:
    1,588
    Gaia has this new feature which is GAIA extension feature. Working with Adam (the creator of GAIA) has given me the amazing opportunity to get my asset as one of his extensions.

    this will allow you to get your GAIA scene working with my demo instantly with just a button press, so basically all you need to do is click a button, click play and you will be able to place buildings insantly with no efforts, it can also be used on normal scenes and not just GAIA created ones.

    So yea really cool stuff :),
    and you just ruined my secret for the video today hehe, i am going to upload one today that shows the GAIA extensions :).


    Elroy.
     
    AdamGoodrich likes this.
  22. tapticc

    tapticc

    Joined:
    Jan 16, 2014
    Posts:
    379
    Hiya just bought the asset, looks terrific from the tutorial videos so far. Quick query on the terrain changes to fill slopes under placed pieces... Can this be networked so other players see the same terrain change?
     
  23. ElroyUnity

    ElroyUnity

    Joined:
    May 20, 2015
    Posts:
    1,588
    First of all thank you for your purchase and nice words :),

    And yes,
    You see, the cool thing about all this system is that it just so generic that it just works with everything!.
    In networking the conditions will automatically work on clients without doing anything because thats the way the interface is made :).

    Hopefully that answered your question :),
    Elroy.
     
  24. tapticc

    tapticc

    Joined:
    Jan 16, 2014
    Posts:
    379
    Awesome I will be trying the tool tomorrow using UNET and will feed back :)
     
    ElroyUnity likes this.
  25. ElroyUnity

    ElroyUnity

    Joined:
    May 20, 2015
    Posts:
    1,588
    Awesome,
    You might also want to wait for the new networking part which will hopefully be released in few days,
    it will include some fixes to founds i've found and mainly using normal gameobjects instead of networked entities. (A better approach).

    But if you enounter any bugs with the current stage of the tutorials i am here to help :).

    Good night,
    Elroy.
     
  26. tapticc

    tapticc

    Joined:
    Jan 16, 2014
    Posts:
    379
    Found a couple of bits for a clean install which might be worth fixing if you are going to publish a patch soon :)

    The demo scene has a little bug as the torch prefab is presumably missing:

    uConstruct.Demo.BuildingPlacer:Update() (at Assets/uConstruct/Scripts/Demo/BuildingPlacer.cs:76)UnityEngine.Object:Instantiate(GameObject)
    The referenced script on this Behaviour (Game Object 'Light') is missing!

    Has the same error with Null missing rather than Light as well, got these when choosing the light menu option.

    When I tried to place a foundation piece, I was surprised that I couldn't drop it in front of me straight i.e. the piece couldn't be rotated. I think this limitation is OK with foundation pieces but the Chest item seemed to have the same issue i.e. can't rotate it. I would have thought Props would allow for this?

    Speaking of the chest, placing one near the edge of a foundation piece can lead to the chest block sinking into the foundation piece. Pretty sure it is aligning to the terrain height rather than the top of the foundation, you need to be putting the chest block very nearly off the foundation to get this behaviour though.

    Please don't take any of this as anything other than constructive feedback!

    EDIT: sorry forgot to ask if I can help with the testing of multiplayer code as I am keen to start on this!
     
    Last edited: Jan 31, 2016
    ElroyUnity likes this.
  27. ElroyUnity

    ElroyUnity

    Joined:
    May 20, 2015
    Posts:
    1,588
    Hey,
    Thank you so much for this feedback :).
    Torch issues are are already fixed in this version (just forget to include particles)

    And i will be fixing the rest today :)

    Edit : The issues are all fixed :).
     
    Last edited: Feb 1, 2016
  28. tapticc

    tapticc

    Joined:
    Jan 16, 2014
    Posts:
    379
    Awesome! The delete option on right click doesn't offer any feedback before you can delete something, could the piece where the cursor is be affected in some way so you know you can right click delete?
     
  29. tapticc

    tapticc

    Joined:
    Jan 16, 2014
    Posts:
    379
    A few more warnings with the latest Unity release, no biggies and easy to fix but a pain to keep refixing if I upgrade to a new version of uConstruct:

    Assets/Lobby/scripts/GuiLobbyManager.cs(116,33): warning CS0618: `UnityEngine.Application.loadedLevelName' is obsolete: `Use SceneManager to determine what scenes have been loaded'

    Assets/uConstruct/Scripts/Demo/PlayerScripts/FirstPersonController.cs(33,25): warning CS0414: The private field `uConstruct.Demo.FirstPersonController.m_OriginalCameraPosition' is assigned but its value is never used

    Assets/uConstruct/Scripts/Demo/BuildingPlacer.cs(28,23): warning CS0108: `uConstruct.Demo.BuildingPlacer.camera' hides inherited member `UnityEngine.Component.camera'. Use the new keyword if hiding was intende

    Assets/uConstruct/Scripts/Editor/PhysicsObjectEditor.cs(49,35): warning CS0618: `UnityEditor.EditorApplication.MarkSceneDirty()' is obsolete: `Use EditorSceneManager.MarkSceneDirty or EditorSceneManager.MarkAllScenesDirty'

    cheers :)
     
  30. ThoZ

    ThoZ

    Joined:
    Apr 21, 2013
    Posts:
    29
    Hi Elroy,

    I really like the terrain feature. Can i define something like a max slope for the placent? So you can only build on more or less flatt terrain, unitl a certain degree?

    And kinda same question, i saw that on placing the base tiles, it can delte things like grass/flowers. Can trees block this? I don't want to delete rocks or trees when placing the tiles.

    Thanks a lot for your support and your awesome asset,

    Thomas
     
  31. ElroyUnity

    ElroyUnity

    Joined:
    May 20, 2015
    Posts:
    1,588
    First of all i will try to make some kind of feedback on the delete and post a pic today :)

    I also had a feeling ppl will complain about warnings hehe will fix :)
    Als
     
  32. tapticc

    tapticc

    Joined:
    Jan 16, 2014
    Posts:
    379
    Hi, would you be able to prevent placing objects (for example a foundation piece) under the player as this makes the player jump on top of the item you are placing? Ideally should prevent based on collision but happy if there is a minimum distance to place option if that is better?
     
  33. ElroyUnity

    ElroyUnity

    Joined:
    May 20, 2015
    Posts:
    1,588
    Hey Thomas,
    Sorry because i am from mobile my first reply got removed, anyways yes you can do that :), customizing custom conditions is a piece of cake, look at the example conditions for start :).


    And dont worry it does not effect tree instances, only grass :).

    Hey tapticc,
    As i said in the answer for Thomas you can easily create new conditions :).

    So in your case it would be something like that : http://hastebin.com/gofenodaja.py

    I just wrote it from mobile so sorry if it drops any spelling errors.

    If you have anymore questions or something isnt understandable i am here to help :),
    Elroy.
     
  34. tapticc

    tapticc

    Joined:
    Jan 16, 2014
    Posts:
    379
    Awesome thank you :D
     
  35. tapticc

    tapticc

    Joined:
    Jan 16, 2014
    Posts:
    379
    Hi the condition is great for preventing you from placing the foundation piece (goes red with no problem) but you can put the red piece underneath the player and it lifts the player up. Is it possible to disable the colliders if the CheckCondition returns false maybe?
     
  36. ElroyUnity

    ElroyUnity

    Joined:
    May 20, 2015
    Posts:
    1,588
    Oh i see, well on place time colliders should be disabled automatically anyways.

    Will check it out once i get home :).
     
  37. ElroyUnity

    ElroyUnity

    Joined:
    May 20, 2015
    Posts:
    1,588
    Release version is finally ready,
    additional change log :

    -Fixed "placingDistance" not effecting the actual placing distance.
    -Added "destroyDistance".
    -Fixed all warnings.
    -Added the ability to use blueprints feature on scene objects from editor.
    -Decreased package size by removing unused assets.
    -Added some UI Feedback when having the ability to destroy a building (https://i.gyazo.com/3cb3f3cd89d35a86fc4ccf9089b9441d.mp4).
    -Fixed chest sinking into the ground when reaching to the end of the free place socket.
    -Fixed chest glitching when moving from 1 foundation to other.

    About @tapticc issue with getting stuck in the colliders on placement, i found out after a private conversation that it happend because of his custom controller using raycasts for ground detection, and because his raycast detected triggers it detected it as ground. so if anyone else has this issue and he is using raycasts on his controller heres what he can do :

    1. File -> Project Settings -> Physics -> Disable "Raycasts Hit Triggers".
    2. If you are using Unity 5.2 and above you can choose to ignore physics on the raycast parameters.
    3. you can ignore the layers of the buildings in the controller raycasts.

    there are more ways but those are the simplest ones :).


    Elroy.
     
  38. ElroyUnity

    ElroyUnity

    Joined:
    May 20, 2015
    Posts:
    1,588
    GAIA extension :


    And also, using GAIA + uConstruct + 3DForge =








    All of those buildings were placed with the modular parts of 3DForge, the parts were set up with the blueprints system in just 2 mins!!.

    Feedback is welcome :).
     
  39. OHG777

    OHG777

    Joined:
    Nov 18, 2014
    Posts:
    20
    Looks awesome Elroy, as always your end result is excellent and your code shines!
     
    AdamGoodrich and ElroyUnity like this.
  40. ElroyUnity

    ElroyUnity

    Joined:
    May 20, 2015
    Posts:
    1,588
    Thanks alot for your kind words :),
    Appreciate it :).
     
  41. ivendar

    ivendar

    Joined:
    Feb 18, 2010
    Posts:
    242
    Nice work. Purchased as well. Now I just need more time. :)
     
    ElroyUnity likes this.
  42. ElroyUnity

    ElroyUnity

    Joined:
    May 20, 2015
    Posts:
    1,588
    Thanks a lot for your purchase :).

    Email : eeproductionssupp@gmail.com
    with your innovice number and i will send you the latest version so you dont need to wait for asset store approval :).
     
    ivendar likes this.
  43. ElroyUnity

    ElroyUnity

    Joined:
    May 20, 2015
    Posts:
    1,588
    V1.1 Was officially sent for approval, this version will raise the price to 30$,

    Full Changelog :

    UCManager : A new editor that allows you to set up the project with uConstruct in just 1 click!, it automatically sets up your layers without the need to manually set them up, and also giving you shortcuts to other windows.




    Blueprints : One of the biggest features of uConstruct, the blueprints feature gives you the ability to set up any mesh or a prefab instantly without the need to do any customization, just choose your mesh/ prefab and you got your self a ready to use building, with sockets and conditions automatically defined.
    The blueprints can be serialized and created on runtime, allowing you to send it through the network, you could do some really cool stuff with it, The blueprints feature will also handle wrongly placed pivots and will get any mesh working even if the pivot isnt centered.



    Through-Objects prevention for UCPhysics : The biggest issue that there was with UCPhysics was the through-objects hit detection, with a new detection feature the system now takes unity objects into account without effecting performance and the raycast does not go through objects anymore and gives more accurate results.

    GAIA Extension : A new GAIA extension that gives you tools to easily set up the project with both GAIA and uConstruct.



    Rotate To Fit : this will make the building try to find himself an appropriate rotation inside the socket limitations, you can customize the rotation amount, rotation axis and even rotation steps.

    To better understand it, check this out :

    Without "Rotate to fit" : (As you can see I need to manually rotate it in order for it to fit)

    https://i.gyazo.com/a70d0cf733b8127a1d52c3fcd48a4a13.mp4

    With "Rotate to fit" : (As you can see it automatically tries to find a matching rotation, with very extendable settings)

    https://i.gyazo.com/96570c0b2f59a2ef12bf4bca23ec76fb.mp4

    Bugs Fixes & Improvements:

    -Rewrote some building aspects and now sockets and conditions can be created on runtime, allowing you to give your players the ability to customize full buildings on runtime!.
    -Fixed collapse condition not detection neighbors correctly
    -Rewrote BuildingPlacer
    -Fixed Collapse event not restoring sockets on destruction
    -Fixed Terrain Modification condition to not work with terrains that aren't placed on 0,0,0
    -Added TreeHouse to demo, still WIP.
    -Added DemoUI (Shows the current keys for the buildings, used on demos)
    -Changed DemoUI text color to white instead of black.
    -Fixed DemoUI not working properly on some scenes.
    -Added "Script" field to custom editors so you could more easily switch scripts now. (can be accessed through the new "UC_EditorUtility" class)
    -Rewrote some aspects of the saving system in order to fix an issue where "PlacedOn" and "SnappedTo" wouldn't persist through save and load.
    -Made scripts to work with networking tutorials (1+2).
    -Fixed socket previews not being destroyed on playtime, and might lose their reference some time.
    -Created 3 demo blueprints ( CubesDemo, 3DForgeInterior, 3DForgeExterior).
    -Exposed "destroyDelay" of the condition "CheckForGround".
    -Exposed all of BuildingPlacer variables so it can be used from external use.
    -Fixed buildings being consistenly removed from the group, causing it to call the "Remove" events several times.
    -Fixed the issue where the building script would disable the building colliders, sockets and conditions on editor when selecting the prefab.
    -Added PivotManagment to blueprints that would fix wrongly placed blueprints.
    -Added new serialization method for the blueprints in order to allow inheritance (not working properly with unity's scriptable object, so had to write a fix).
    -Setted up all building's sockets and conditions parents to be on globalScale 1 and also localRotation 0, in order to avoid blueprint corruption.
    -Created unity object picker wrapper, can be accessed from the new "UC_EditorUtility" class.
    -Made the old collider batching methods obsolote.
    -Added more buttons to the UCManager.
    -Removed most standard assets from the asset, the only scripts that are left are the demo ones and with difference namespaces, so it wont override your standard assets.
    -Resorted the editor scripts so they arent all stacked in one folder.
    -Fixed building group not handling correctly with nulls.
    -Fixed building might giving an null reference when materials are null on editor.
    -Fixed isBeingPlaced not being true on default.
    -Fixed building events called on editor.
    -Seperated "DestroyBuilding" into 2 different methods :
    Deattach - deattach the building from the socket, group etc.
    Destroy - completely destroy the building, while also deattaching it.
    -Added "OnBuildingDeattached" event, that is called when the building is deattached.
    -TerrainModificationCondition works better on bigger terrains, also has a major improvment in performance.
    -Added isPlaced.
    -Fixed isPrefab detection being inaccurate.
    -Updated Docs and API.
    -Removed the tag requirment from the docs (not needed anymore)
    -Fixed where if you had a UCCallback manager in your scene it would call Load before you can enable/disable the UCSavingManager.
    -Fixed terrain modification resolution not fitting on different sized terrains.
    -Fixed flat condition behaving wrongly sometimes (for example, flattening terrain height to 0).
    -Fixed walls rotation not persisiting.
    -Added "Rotate To Fit".
    -Added "Rotate To Fit" to the blueprints.
    -Removed the flat ground condition from the default building as many people requested me to.
    -Moved UCSavingManager's "Load" into Start instead of awake.
    -Updated blueprints with an improved serialization method.
    -Recreated the demo blueprints to include all changes.
    -Changed the BuildingGroup "AddBuilding" method to be a bit more generic, therefor it will allow you to attach a building several times but it will deny you from adding it to the list more than once. (useful for when the object is created after the group adding, for example the networking tutorial).
    -Fixed in the networking tutorial where if you logged from a new client it wont show him any colliders.
    -Fixed an issue in the networking tutorial when placed on will be null before set up on clients.
    -Fixed an issue in the networking tutorial when you load the save and it will not fully deny duplicated sockets as part of the system smart behaviour.
    -Fixed GAIA extension not working properly some times and throwing null references.
    -Fixed "placingDistance" not effecting the actual placing distance.
    -Added "destroyDistance".
    -Fixed all warnings.
    -Added the ability to use blueprints feature on scene objects from editor.
    -Decreased package size by removing unused assets.
    -Added some UI Feedback when having the ability to destroy a building (https://i.gyazo.com/3cb3f3cd89d35a86fc4ccf9089b9441d.mp4).
    -Fixed chest sinking into the ground when reaching to the end of the free place socket.
    -Fixed chest glitching when moving from 1 foundation to other.


    Have a great day!
    Elroy.
     
    Last edited: Feb 3, 2016
    John-G likes this.
  44. tapticc

    tapticc

    Joined:
    Jan 16, 2014
    Posts:
    379
    Hi, I have GAIA in my project so excited to see the systems working together. In one of your videos I saw the terrain lifted to fill the gap underneath a foundation block, but in the video above there was a gap. Will the gap be fillable to flatten the terrain underneath the foundation? Ideally if you place a foundation piece it should be flat horizontally and the terrain made to fit :D
     
    ElroyUnity likes this.
  45. ElroyUnity

    ElroyUnity

    Joined:
    May 20, 2015
    Posts:
    1,588
    Yes it will fit it if you add the flat terrain condition. I simply removed it as default cause its quite heavy on big terrains :)
     
    tapticc likes this.
  46. tapticc

    tapticc

    Joined:
    Jan 16, 2014
    Posts:
    379
    Hmm the Foundation has the condition Flatten Ground but when I place it on the terrain so half of the Foundation is above the terrain height, nothing happens to the terrain. Is this something that is in the new version only?
     
    ElroyUnity likes this.
  47. ElroyUnity

    ElroyUnity

    Joined:
    May 20, 2015
    Posts:
    1,588
    Are u using the asset store version ? if so, its fixed in the new version :)
     
  48. tapticc

    tapticc

    Joined:
    Jan 16, 2014
    Posts:
    379
    Yes I'm using the asset store version, that's OK then as long as the fix is on its way :)
     
    ElroyUnity likes this.
  49. ivendar

    ivendar

    Joined:
    Feb 18, 2010
    Posts:
    242
    Thanks for the info, but as I've not yet started to take a closer look the wait for approval is no problem for me atm. Still busy with playmaker. ;-) Btw. does this already have any playmaker integration or is such planned for future ? As I have not yet really taken any closer look I might have overlooked any infos if there are and apologize if. If possible I would hope such integration might be considered as well of course as playmaker is a great tool.
     
  50. ElroyUnity

    ElroyUnity

    Joined:
    May 20, 2015
    Posts:
    1,588
    :)
    Playmaker isnt something i plan on atm but maybe i will do it in the future :)
    My plans atm are Inventory Pro and playmaker might be next :)
     
    montyfi and ivendar like this.