Search Unity

Assets (3D , 2D , PRO) Radar Builder 2020

Discussion in 'Works In Progress' started by DaiMangou, Dec 5, 2015.

  1. DaiMangou

    DaiMangou

    Joined:
    Sep 20, 2015
    Posts:
    385
    Updates to all radar builders and UI Target tracker are now finally on the AssetStore.
     
  2. DaiMangou

    DaiMangou

    Joined:
    Sep 20, 2015
    Posts:
    385
    Currently ALL Radar Builder assets are 40% off for Cyber week
     
  3. DaiMangou

    DaiMangou

    Joined:
    Sep 20, 2015
    Posts:
    385
    Recently I noticed that when importing UI Target tracker , the resources folder is not imported. This means that you have to set your own UI target image. This is not a technical issye but it is bothersome because if the Resources folder was imported you could literally add the UI Target tracker and run the game immediately and see it working.

    I thin the issue is that the files in the Resources folder are so small that the folder somehow registers as empty when being imported.

    I have already contacted unity about this and I am waiting for a reply.

    Resources folders for all the Radar Builder assets and my Storyteller Assets are imported, so it is strange
     
  4. radiantboy

    radiantboy

    Joined:
    Nov 21, 2012
    Posts:
    941
    When I rotate my player the radar doesnt rotate, so its showing people in the wrong place, how do I fix that? It also flashes once on the right of the screen when I first turn it on. Finally Id like to make it show when people are making a noise, is there an easy way to add a circle aroudn a blip or something?
     
  5. DaiMangou

    DaiMangou

    Joined:
    Sep 20, 2015
    Posts:
    385
    @radiantboy for showing when someone is making a noise, use prefab blips which have a script on them which links back to the tsrget object so that when audio is played , your blip will know.

    Not showing position? check the settings. Make sure that if you have Rotation Targets, they dont incorrectly interfere with the radar.

    flashing ? which radar system are you using , could you tell me more.
     
  6. radiantboy

    radiantboy

    Joined:
    Nov 21, 2012
    Posts:
    941
    Hi thanks!.. where are the settings? Cant find settings anywhere even when i click show/hide it just hides the camera component.
     
    Last edited: Dec 17, 2019
  7. DaiMangou

    DaiMangou

    Joined:
    Sep 20, 2015
    Posts:
    385
    Oh just look over in the Designs tab at athe botom you will see "Rotation Targets" , if you se any rotation targets just remove them for now.

    Which type of Radar are you using, 2D or 3D ?
    also check to make sure that you have not accidentally turned on "Track Y Position", that will completely change the tracking method.

    also here is a chort example of how you can do your noise check

    I wrote the scripts for you. just put on on the Radar and the other on your prefab blips.

    This on the Radar:

    BlipReact.cs

    and include using DaiMangou.ProRadarBuilder;
    Code (CSharp):
    1.     public _2DRadar _2DRadar_;
    2.     public int BlipAtIndex;
    3.  
    4.     void Update()
    5.     {
    6.         for (int i = 0; i < _2DRadar_.Blips[BlipAtIndex].gos.Count; i++)
    7.             if (_2DRadar_.Blips[BlipAtIndex].gos[i].transform.localScale.x > 1)
    8.                 _2DRadar_.Blips[BlipAtIndex].RadarObjectToTrack[i].GetComponent<BlipReactReceiver>().Trigger = true;
    9.  
    10.     }

    This on the Prefab Blip


    BlipReactReceiver.cs
    Code (CSharp):
    1. public bool Trigger;
    2.  
    3.     void Update () {
    4.  
    5.         if(Trigger)
    6.         {
    7.             Debug.Log(name + " Do Something");
    8.             // do something
    9.         }
    10.    
    11.     }

    Whenever a tracked object makes a noise , you can tell the blip to do something. Plan an animation, play it own audio, change sprites.... whatever you like
     
  8. radiantboy

    radiantboy

    Joined:
    Nov 21, 2012
    Posts:
    941

    thanks very much for the script, looks great! im using a 2d radar, I think there must be a problem because i do not see any settings at all, no rotation targets, nothing there at all. Could it be a unity 2020 issue?
     
  9. DaiMangou

    DaiMangou

    Joined:
    Sep 20, 2015
    Posts:
    385
    oooooh you are using 2020, I never ran it in 2020 :eek:.
    hmmmmm all the source code is included, do you see and warning messages regarding the radar system ?
     
  10. radiantboy

    radiantboy

    Joined:
    Nov 21, 2012
    Posts:
    941
    sorry I see I need to go to tools to find settings!.. found it, will give it a go thanks very much for the great support
     
    DaiMangou likes this.
  11. radiantboy

    radiantboy

    Joined:
    Nov 21, 2012
    Posts:
    941
    It's working a lot better now, though I remember my main problems with this, the rotation options appear to be buggy, neither the player or my enemies ever face the correct direction which is a real shame. Id love to use rotation options but they're never correct :-(
     
  12. DaiMangou

    DaiMangou

    Joined:
    Sep 20, 2015
    Posts:
    385

    Go in the blip setting and turn on track rotation for you blips.
    Depending on your setup, you can set rotation of your center object to always face forward and disregard radar rotation or have it mirror the rotation of the player or whatever object is bring used as the center blip reference.

    for example the Prefab Blips example scene
     
  13. DaiMangou

    DaiMangou

    Joined:
    Sep 20, 2015
    Posts:
    385
  14. DaiMangou

    DaiMangou

    Joined:
    Sep 20, 2015
    Posts:
    385
    Running in 2020. all is well here too :), so just try out the settings there.
    Remember to open up the Prefabs blips scene to see how the settings are set up.

    btw what version of the radar builder are you using ?
     
  15. radiantboy

    radiantboy

    Joined:
    Nov 21, 2012
    Posts:
    941
    Ive tried all that, spent hours trying everything, it doesnt work. My version is from oct 4th 2017, maybe it was a bug back then. I cant upgrade anything though due to a bug in 2020 which is preventing me from importing anything.
     
  16. DaiMangou

    DaiMangou

    Joined:
    Sep 20, 2015
    Posts:
    385

    Oh, you are using quite an old version. You need the latest version.

    Well Unity 2020 is in Alpha, so it could have bugs.
     
  17. radiantboy

    radiantboy

    Joined:
    Nov 21, 2012
    Posts:
    941
    Yeh im going to try upgrade anyway, I backed up yesterday.. but its depreciated, sends me to this
    https://assetstore.unity.com/packages/tools/utilities/pro-radar-builder-52837
    which is free but asks for 15 euros for tax for some reason...

    not been a good day this, wasted over 14 hrs on this radar!..
     
  18. radiantboy

    radiantboy

    Joined:
    Nov 21, 2012
    Posts:
    941
    why do I need to pay 15 euros? I already own it.
     
  19. DaiMangou

    DaiMangou

    Joined:
    Sep 20, 2015
    Posts:
    385
    Thats impossible.

    All updates to the source code included version should be FREE to everyone.

    Send me a screenshot of that and i will contact Unity about it.
     
  20. radiantboy

    radiantboy

    Joined:
    Nov 21, 2012
    Posts:
    941
  21. DaiMangou

    DaiMangou

    Joined:
    Sep 20, 2015
    Posts:
    385
    That looks like a GOV tax for some reason. a bullshit move by whoever did it.
    send me an email at daimangou@gmail.com

    i will send you the update directly. I am going to email unity about this. its straight up bullshit
     
  22. radiantboy

    radiantboy

    Joined:
    Nov 21, 2012
    Posts:
    941
    Hey man, new update works brilliantly!.. Just one small issue so far, the ring around the outside of the radar is very blocky for me, even though it's texture is set to UI etc... any ideas why it would be so blocky? maybe just too low res?
     
  23. radiantboy

    radiantboy

    Joined:
    Nov 21, 2012
    Posts:
    941
    Im also still having trouble making a blip react, I assigned BlipReact to my 2DRadar, I made a prefab with the script BlipReactReceiver attached and assigned it in the proradar settings for the blip where it says "prefab".. but when I run the game, the blip doesnt seem to be any different, i mean i expected it to spawn the prefab or something so the script would run.

    Also in BlipReact _2DRadar_.Blips[BlipAtIndex].gos.Count is always 0 so it never goes through the loop anyway. Even if it did work, all it would do is set trigger to true constantly.. So I am assuming I need to hack that code somehow to meet the conditions I want like using a bool "theyMadeSound" instead of if (_2DRadar_.Blips[BlipAtIndex].gos.transform.localScale.x > 1) ? But even then, I dont see how the blip is actually related to the object im tracking (or is the prefab you assign meant to be the actual item its tracking?).. Not really sure how that would work though, im spawning AIs with a script not sure how each blip would be linked to the newly spawned AI.

    So yeah I find this highly confusing still. I think im going to try a different route, which would be when an AI shoots, the bullet itself will be picked up by the radar and show briefly on the radar until it is removed from the game world. I will see how it goes.
     
  24. DaiMangou

    DaiMangou

    Joined:
    Sep 20, 2015
    Posts:
    385

    you can switch out the sprite.



    Code (CSharp):
    1.    if(Trigger)
    2.         {
    3.             Debug.Log(name + " Do Something");
    4.             // do something
    5. // Just say Trigger = false; after you run your function
    6.         }

    Can you screenshot your the settings for the blip section and how it here.

    You wont see your blips if they arent on the correct layer , so check the layers too.

    How are the prefab blips and the functionality in the "Prefab Blips" example scene ?
     
    radiantboy likes this.
  25. radiantboy

    radiantboy

    Joined:
    Nov 21, 2012
    Posts:
    941
    So my idea to show on the radar when a bullet is made works, but weirdly it wont work unless i run the game then untick and retick "remove blip on disable", Im not sure why that is, but im presuming i could write a script to do that for me to fix it, but id prefer not to.

    Other question is how do I get "require instance object check" to work, the settings say it is "faster" which is what I want really, but it doesnt show anyone when I tick it. Works fine if I untick it but I dont want to lose performance for no reason.

    There still appears to be bugs in rotate player and radar fan, Ive turned off rotate player because of this reason (now he always faces forward on the radar, but this works because as I rotate my character around the radar rotates and it still feels right), but even turning off the radar fan rotate option it still rotates and shows the wrong angles, so I guess im going to simply turn off the radar fan. No major loss, but im sure I did see it working earlier, it just stayed in the same position buyt I cant get that to happen anymore.
     
  26. DaiMangou

    DaiMangou

    Joined:
    Sep 20, 2015
    Posts:
    385
    @radiantboy don't edit the script right now. Depending on your settings you can make your blips not be removed from the radar whn disabled , or have a tag change etc. Also if you are using Pooling optimization but are instancing new blips at runtime then you will call _2DRadar.doInstanceObjectCheck(); wherever you instance an gameobject in your script.

    This prompts the radar to look for your newly instance object and add it to the pool.

    You can look at the bottom of the Designs tab for the "Show Help Messages" toggle, this will show you what each setting in the editor is for.

    Are all your blips on the correct layer and is the Render camera set to render only that layer ?

    Could you screenshot your radar builder editor settings for me ?

    Would you like for me to set it up for you ?
     
  27. radiantboy

    radiantboy

    Joined:
    Nov 21, 2012
    Posts:
    941
    As for swapping out the sprite for the radar, I swapped it for a much higher res one, but it now takes over the whole screen, so I had to mess with scale to get it right, and now the blips are too small, increasing their scale works but then they dont appear to move correctly anymore so I had to go back to the old sprite which is noticably blocky still.

    All blips are on same layer in settings and the camera's culling mask is set to that layer. So you're saying each time I fire a bullet or add a character I need to call doInstanceObjectCheck (but im not even using "require instance object check" right now) ? Funny thing is why would it work just by ticking and unticking the remove blip on disable, im not calling doInstanceObjectCheck anywhere but it appears to kick it into action.

    Thanks for offering to set it up for me, I think its best if I can figure it out myself so I can adjust it etc. Also im a very experienced unity developer so if things are going wrong I suspect either bugs or confusing UI/features. Plus my game is well over 200 gigs so it would not be practical :) I have screenshotted my settings but I dont know how much it will help.
    https://pasteboard.co/ILTT3LK.png
    https://pasteboard.co/ILTTdu9.png
    https://pasteboard.co/ILTTknG.png
    https://pasteboard.co/ILTTqvC.png
    https://pasteboard.co/ILTUgaO.png

    To sumarise, I can live with most of these issues. But the 3 I want to fix are definitely:
    1- blocky radar outline (Ill try again to fix this myself but I think you should ship it with proper high res textures out of the box and without the user needing to mess with scale to get them right) - to be honest I never noticed this issue in my 2017 version.
    2- ability to see blips for gun shooting without having to tick and untick "remove blip on disable"
    3- I want fastest possible speed during runtime (I will try ticking "require instance object check" and I will add calls to doInstanceObjectCheck ).
     
    DaiMangou likes this.
  28. DaiMangou

    DaiMangou

    Joined:
    Sep 20, 2015
    Posts:
    385
    The Sprites used are 200px by 200px, this is the required dimension of design sprites.
    yup, if you are using pooling and want to instance new object into the pool ,however all your blips are using the Recursive method (the slower method)

    Your settings do look good.
    Your blips are way out on the edge so try increasing the "scene scale"

    for the 3 things you want

    1) you can just use a different 200 by 00 sprite. I think that the blocky one is a ring texture i added with a patch effect in it. Well you can use any size sprite , but if it is larger than 200 by 200 , you just have scale it down in scene :)
    2) you can just use recursive for the bullets since the bullets, The engine has improved so she speed shouldn't be an issue.
    3) doInstanceObjectCheck is basically doing what recursive does , but only when you explicitly tell it to.

    As for the fan and Rotation Targets, their function is quite wide ranging. I personally only just recently found out that i could use the Rotation Target system to turn a 3D Radar in to a 2D Radar. Still the onle used in the 2D Radar is simplified.
     
    Last edited: Dec 19, 2019
  29. radiantboy

    radiantboy

    Joined:
    Nov 21, 2012
    Posts:
    941
    Thanks man, so I swapped to doInstanceObjectCheck and added the calls in the right places. It seems I still need to tick and untick "remove blip on disable" to get my bullets to show up on the radar, but thats not reliable. Using pooling seems to work way more reliably.. actually it works everytime it seems.. only problem is that sometimes the blip remains on the radar even when its not on, this happens relatively rarely, and goes away when other people shoot (im presuming thats due to the pooling). Any ideas?


    edit: at this line var currentWorkingObject = item.gos; in 2dradar (724) I sometimes get an index out of bounds exception which is probably related..

    edit2: after putting this line just before the for loop to update the count, it seemed to go away: trackedObjectCount = item.gos.Count;
    BUT, theres another error it seems at this line var currentWorkingRadarObjectToTrack = item.RadarObjectToTrack;

    edit3: yeh ive not been able to fix it, can you have a look at it? pretty certain thats what causes issues removing blips in pooling mode... I thought it was "rare" but somehow over the course of today its almost every single time now that it cant remove the blips for my gun shots...
     
    Last edited: Dec 19, 2019
  30. DaiMangou

    DaiMangou

    Joined:
    Sep 20, 2015
    Posts:
    385
    @radiantboy , it seems that I had saved a bad setting in a few days ago. I emailed you the original 2D radar script.

    Thanks , I will check those lines.
    How are you removing your bullets from your game scene, destroying or disabling them ?
     
  31. DaiMangou

    DaiMangou

    Joined:
    Sep 20, 2015
    Posts:
    385
    @radiantboy , in the code i sent to you. put this code under line 722
    Code (CSharp):
    1.                         // if you are using pooling ,this would only run if you destroy your gos object (the object in scene being tracked)
    2.                         if (item.optimization.objectFindingMethod == ObjectFindingMethod.Pooling)
    3.                             if (i > item.gos.Count)
    4.                                Debug.Log("is case");
    let me know it that prints out.

    I grabbed 30 instanced objects and mass destroyed them while using pooling but it didn't print out for me.

    this is bizarre , for your current setup. turning on remove blip on disable only prompts the radar to disable the blips. not to enable them. SetActive(false); code only.
     
  32. radiantboy

    radiantboy

    Joined:
    Nov 21, 2012
    Posts:
    941
    Thanks man! Will try today!.. ps im actually using my muzzleflash for it (not bullets as I said), so that is just set inactive when its not showing.
     
  33. radiantboy

    radiantboy

    Joined:
    Nov 21, 2012
    Posts:
    941
    ok so im still getting a lot of errors at this line
    var currentWorkingObject = item.gos;

    ArgumentOutOfRangeException: Index was out of range. Must be non-negative and less than the size of the collection.
    Parameter name: index
    System.ThrowHelper.ThrowArgumentOutOfRangeException (System.ExceptionArgument argument, System.ExceptionResource resource) (at <437ba245d8404784b9fbab9b439ac908>:0)
    System.ThrowHelper.ThrowArgumentOutOfRangeException () (at <437ba245d8404784b9fbab9b439ac908>:0)
    DaiMangou.ProRadarBuilder._2DRadar.CheckAndSetBlips () (at Assets/Pro Radar Builder/Scripts/_2DRadar.cs:724)
    DaiMangou.ProRadarBuilder._2DRadar.Update () (at Assets/Pro Radar Builder/Scripts/_2DRadar.cs:70)


    I think your condition should have been if (i >= item.gos.Count) rather than if (i > item.gos.Count) ?

    Anyway if I print i in this case using this code ("dolpcon" is just my own console):

    // if you are using pooling ,this would only run if you destroy your gos object (the object in scene being tracked)
    if (item.optimization.objectFindingMethod == ObjectFindingMethod.Pooling)
    {
    if (i >= item.gos.Count)
    {
    DolpCon._("is case i is "+i+ " item.gos.Count is "+ item.gos.Count);//happens a lot
    }
    if (i <0)
    {
    DolpCon._("is case i is " + i);//never happens
    }
    }
    is case i is 8 item.gos.Count is 8
    is case i is 0 item.gos.Count is 0
    is case i is 9 item.gos.Count is 9
    is case i is 10 item.gos.Count is 10
    is case i is 1 item.gos.Count is 1
    is case i is 11 item.gos.Count is 11
    is case i is 15 item.gos.Count is 15
    etc..
     
  34. DaiMangou

    DaiMangou

    Joined:
    Sep 20, 2015
    Posts:
    385
    Strange, considering that the messages printed out say the opposite of what the error says.

    hmm do you by change have multiple 2DRadar scripts in your project ?
    have you replaced the old 2DRadarBuilder asset ?
    Have you seen this happen in example scenes too ?
     
  35. radiantboy

    radiantboy

    Joined:
    Nov 21, 2012
    Posts:
    941
    hey how do the messages say the opposite? its just that i is bigger than the array length, the error suggests that i is too high (seems like it is always 1 too high?). I removed the old radar asset when I grabbed the new one. There may be other radars in the scene but theyre all off so it cant be them, will delete them anyway and try again. Not seen the error in the example scenes no, but I havent used them much, and are there any examples where it rapidly adds/removes blips?

    I will try it without tracking the muzzle flashes, just my npcs (who will eventually die and cause blip to vanish), and see if it does the same, could be a race condition maybe because the muzzle goes on and off very fast.

    I will also try replacing
    for (var i = 0; i < trackedObjectCount; i++)
    with
    for (var i = 0; i < item.gos.Length; i++)
     
  36. DaiMangou

    DaiMangou

    Joined:
    Sep 20, 2015
    Posts:
    385

    I just noticed, you are right:eek:. it seems to be 1 out of range.
    oi will start by writing a extra script to do rapid removal. The Spawnwer.cs script already dons rapid addition of objects so i was testing with that and deleting groups of tracked gameobjects manually.

    Let me know how it goes on your end
     
  37. DaiMangou

    DaiMangou

    Joined:
    Sep 20, 2015
    Posts:
    385
    currently rapidly creating and simultaneously destroying 600 tracked objects.
    how you are spawning and destroying objects ?

    Blips set to recursive in optimization setting, clean run.

    Switched to pooling with addition of new 300 blips while removing previous 300 and finally got the out of range exception :D

    really glad to have finally found it. Now I can do testing and correct it
     
  38. DaiMangou

    DaiMangou

    Joined:
    Sep 20, 2015
    Posts:
    385
    got it.
    it was that I had again edited the count of the gos list in #region Find all objects that we want to track

    so right after that i just reset the correct count by saying
    trackedObjectCount = item.gos.Count; above line 665 :)
     
  39. radiantboy

    radiantboy

    Joined:
    Nov 21, 2012
    Posts:
    941
    Thanks! that removes the error, but actually the blip still (very often but not always)remains in the radar for some reason when it shouldnt..... very weird I was sure it would be related to the exception. I activate a muzzle flash for a short while when they fire, then deactivate it.. the muzzle flash is the ting that appears on the radar as intended, but doesnt seem to go away when set to inactive.

    I added your line here like this

    trackedObjectCount = item.gos.Count;///fix for out of range exception
    // if the blip type is set to active the following will execute
    if (item.IsActive)
    {
     
  40. DaiMangou

    DaiMangou

    Joined:
    Sep 20, 2015
    Posts:
    385
    @radiantboy How is your muzzle flash spawned in game. Is it just an effect that is enabled and disabled or is it instanced and then destroyed ?
    If there a counter for the muzzle flashes ? or counter for bullets where muzzle flash is a effect of the spawned bullet and not an independent gameobject enabled only to give the muzzle flash effect?

    If you are using a set pool size and are enabling disables gameobjects that were not enabled when the radar began processing then you must call _2DRadar.doInstanceObjectCheck(); since Unity doesn't allow us to find disabled gameobjects unless we use a process intensive method which would be slow.


    And here is a good fix for any posible instance of blips remaining in the radar. place this at the end of foreach (var item in Blips) .


    Code (CSharp):
    1.                 if (item.RadarObjectToTrack.Count > trackedObjectCount)
    2.                 {
    3.                     var difCount = item.RadarObjectToTrack.Count - trackedObjectCount;
    4.  
    5.                     for (int x = 0; x < difCount; x++)
    6.                     {
    7.                         Destroy(item.RadarObjectToTrack[x].gameObject);
    8.                         item.RadarObjectToTrack[x] = null;
    9.                      
    10.                     }
    11.                     item.RadarObjectToTrack.RemoveAll(x => x == null);
    12.                 }
     
  41. radiantboy

    radiantboy

    Joined:
    Nov 21, 2012
    Posts:
    941
    Hey man, awesome that works a treat! Thanks very much, your support is beyond all others. As for my muzzle flash it's just activated and deactivated so I can see on the radar when a sound was made (ie same object is turned on and off and never destroyed).. when i enable or disable it I call _2DRadar.doInstanceObjectCheck() (required?) I use pooling but have not set the size myself (I will if its faster?).. everything appears fine now!.. I guess im just worried that maybe too many calls to doInstanceObjectCheck() may be slow if not needed.. but so far so good, I love my radar now! Best bit is I can see where gun fights are happening at a glance.. Thanks again!!!
     
  42. DaiMangou

    DaiMangou

    Joined:
    Sep 20, 2015
    Posts:
    385
    you will only need to call it once just so the radar adds it to the pool of gameobjects to track. after that whenever it is enabled and disabled the blips will also be enabled and disabled.

    you dont have to set it yourself. it wont change processing speed.

    doInstanceObjectCheck(); basically just tell the radar to call GameObject.Find so the fewer calls the better.

    I am currently attempting to rebuild the entire blip finding and removal system for the 2020 release.
     
    radiantboy likes this.
  43. radiantboy

    radiantboy

    Joined:
    Nov 21, 2012
    Posts:
    941
    Is there any way to deal with a blip being above or below you? It would be good if you could tell if enemies are above etc.
     
  44. DaiMangou

    DaiMangou

    Joined:
    Sep 20, 2015
    Posts:
    385
    By default , if you are using sprite blips , they are flipped when they go under or above the radar plane.

    in the radar script look for .flipY there you will find the function used to check if the blip is above or under the radar. you can extend this to switch out the blip sprite or extend it to meshes prefabs.
     
    radiantboy likes this.
  45. radiantboy

    radiantboy

    Joined:
    Nov 21, 2012
    Posts:
    941
    Id love to see a feature which allows you to copy and paste blip set ups in the manager.
     
  46. radiantboy

    radiantboy

    Joined:
    Nov 21, 2012
    Posts:
    941
    whats the easiest way to have text drawn alongside a blip? thanks!
     
  47. DaiMangou

    DaiMangou

    Joined:
    Sep 20, 2015
    Posts:
    385
    Prefab blip that reads the .name of the gameObject
     
  48. DaiMangou

    DaiMangou

    Joined:
    Sep 20, 2015
    Posts:
    385
    Of course the prefab would have a UI text area
     
    radiantboy likes this.
  49. DaiMangou

    DaiMangou

    Joined:
    Sep 20, 2015
    Posts:
    385
    and about this.

    This a function that was considered for an earlier version. 100% doable and will be in a future release.
     
    radiantboy and rrahim like this.
  50. DaiMangou

    DaiMangou

    Joined:
    Sep 20, 2015
    Posts:
    385
    Copy and past function has been added to all radar builders , you should be able to download the update 3 days from this reply.
     
    radiantboy likes this.
unityunity