Search Unity

  1. Unity 2019.1 is now released.
    Dismiss Notice

UniRPG Tile Ed

Discussion in 'Assets and Asset Store' started by Leslie-Young, Aug 21, 2012.

Thread Status:
Not open for further replies.
  1. matthuston

    matthuston

    Joined:
    Sep 29, 2009
    Posts:
    14
    Hi, I was wondering if there was any way to set areas with doors?
     
  2. Leslie-Young

    Leslie-Young

    Joined:
    Dec 24, 2008
    Posts:
    1,036
    A door will simply be a Normal Tile or could be a Plop (in this system's terms) and can then be placed like any other tile or object. Door like functionality will come from whatever components/scripts you write to check for doors and walkable areas and will depend on what your pathing system expects.
     
  3. cynel

    cynel

    Joined:
    Apr 18, 2012
    Posts:
    734
    i wonder if this can be compatible with ORK rpg kit
     
  4. Leslie-Young

    Leslie-Young

    Joined:
    Dec 24, 2008
    Posts:
    1,036
    Sorry, but I have no idea since I do not own that kit and don't know how it works.
    For this tool to paint tiles it just needs to have a TilePiece or Plop component on whatever will be tiles or placable objects. So I can't see it interfearing too much with other kits.

    Might be cool to know which RPG related kits would work to privide AI, path finding, NPC interaction, and other game mechanics.
     
  5. Leslie-Young

    Leslie-Young

    Joined:
    Dec 24, 2008
    Posts:
    1,036
    I've submitted an updated documentation of the API for those who want to create in-game editors or use the package in their random map generators.
    You do not need to grab the update if you have 1.3 as the documentation is also linked as a seperate download in the first post.
     
  6. matty47

    matty47

    Joined:
    May 9, 2009
    Posts:
    6
    Having trouble getting to start with this. Using v1.3b (purchased yesterday) and Unity 4 When editing PrefabDB I create a new tile set then pick a prefab from the installed ones and the PrefabDB goes blank and there is a missing method exception.
    "UnityEditor.EditorUtility.GetAssetPreview"
    Can't close the window and have to quit unity to do anything
    Does this not work with Unity 4 ?
     
  7. Leslie-Young

    Leslie-Young

    Joined:
    Dec 24, 2008
    Posts:
    1,036
    No, this does not work with Unity 4 beta and you will get errors since some editor classes and functions that are needed where changed in v4. I can only release a compatible version when Unity 4 is finally released, or that is how I understand it since the last time I tried to submit a unity 4 beta compatible version the update was rejected.
     
  8. Hoegbo

    Hoegbo

    Joined:
    Jan 21, 2012
    Posts:
    62
    Hi

    I wonder if I can build in height. maybe by adding another "layer" of unirpg. Which I then can hide or unhide.
    This would be awesome for creating something like the maps of the original Xcom series.
     
  9. Leslie-Young

    Leslie-Young

    Joined:
    Dec 24, 2008
    Posts:
    1,036
    When using the Dungeon map type you will have access to two layers with one normally for walking on and the other for things like water. lava, etc. The Terrain type map allows up to 20 height layers. These rules are mostly needed for the auto-tile system to function.

    For multiple floors (using Dungeon map type) I would create maps placed on top of each other (at correct offsets) and then hide those "floors" that the player character is not currently standing on so the character is not hidden by higher floors. It should be an easy matter of just deactivating the whole map gameobject. Figuring out which map(s) to disable/enable is anotehr story since UniRPG only handles painting at this stage and not any game logic that can track things like what map the player is moving around on.
     
  10. wamus

    wamus

    Joined:
    Sep 15, 2012
    Posts:
    24
    You Have Done A Very Good Job Here

    But You Need NVIDIA SHADERS/UDK SHADERS To GET Best Quality
     
  11. Leslie-Young

    Leslie-Young

    Joined:
    Dec 24, 2008
    Posts:
    1,036
    Did you post in the wrong thread by accident? I don't get what shaders have to do with this package.
     
  12. Hoegbo

    Hoegbo

    Joined:
    Jan 21, 2012
    Posts:
    62
    This was what I was looking for, A must buy ! :)
     
  13. Leslie-Young

    Leslie-Young

    Joined:
    Dec 24, 2008
    Posts:
    1,036
  14. dhogan

    dhogan

    Joined:
    Jun 2, 2008
    Posts:
    55
    Question : Does this more or less replace the Dungeon Editor? I realize DE is runtime and this is Editor based, but it appears the functionality is pretty much the same. Is that correct?

    Thanks!
     
  15. Leslie-Young

    Leslie-Young

    Joined:
    Dec 24, 2008
    Posts:
    1,036
    Yes, this replaces DE and is much better in the way it works. You can also use UniRPG's API to create an in-game editor if you needed one.
     
  16. neojzs

    neojzs

    Joined:
    Oct 11, 2012
    Posts:
    1
    Is this support iOS/Android ?
     
  17. Leslie-Young

    Leslie-Young

    Joined:
    Dec 24, 2008
    Posts:
    1,036
    UniRPG is an editor extension firstly. So it is made to work in the Unity Editor, but you can use the API to create an in-game editor, which should work on mobile too.

    The question should be how big the maps can be that you paint with this, which will depend on what camera angle(s) you use in the game and how optimised your tile meshes are and if you're using culling. This tool will not do things like combine meshes and textures for you to optimise things.
     
    Last edited: Oct 11, 2012
  18. Grand_A

    Grand_A

    Joined:
    Oct 16, 2012
    Posts:
    9
    Wow! What an amazing package! But I need a dungeon editor that is working in runtime so that the players can edit the dungeons themselves.
    Is it possible for you to further improve this package by adding a runtime editor?
    Thanks a lot! =)
     
  19. Leslie-Young

    Leslie-Young

    Joined:
    Dec 24, 2008
    Posts:
    1,036
    The problem is that an editor is very GUI and even game dependant. Do I do this in OnGUI, the new Unity GUI that is comming, NGUI, EZGUI, etc? What should the layout be like? Won't you have to do a lot fo work to change how things look and is positioned for your own game? Even something like, should it work on PC builds only or touch devices too would influence how the editor must be constructed.

    All the functions you need to create an editor is available in the runtime scripts and is called by the editor scripts. The editor scripts handles the Unity editor/gui related things but make calls into the runtiem side to actually place tiles.
     
  20. davifo

    davifo

    Joined:
    Sep 18, 2012
    Posts:
    2
    I LOVED IT! That's exactly what I was looking for!
    I'll buy if it really does what it promises is the best product in the asset store!
     
  21. Grand_A

    Grand_A

    Joined:
    Oct 16, 2012
    Posts:
    9
    Thanks for your reply. I currently trying to incorporate your API to Runtime editor, but I'm having a little problem.
    There are some things that I need to ask:
    1) How do you remove a Plop? Since there's no RemovePlop function. And seems like the "clear" Plop isn't working properly.
    2) How do I put an object which have more than 1x1 tile size?
    3) How do I detect if there's another object in the current tile I'm clicking, so that I can't put another object in the same tile?
    4) How do I add a color marker in the Runtime just like your editor gizmo?

    Sorry for asking a lot, I hope you can help me with my current issues.
    Thank you very much! =)
     
  22. Leslie-Young

    Leslie-Young

    Joined:
    Dec 24, 2008
    Posts:
    1,036
    1) The Plop part of editor is really only useful lfor placing as it helps your align them to the grid based system. In the Unity editor you would click a plop and hit the Delete button to remove it. For a custom editor you need to cast a ray and check if it hits the object so you can mark it and remove it when a user hits the Delete key or some delete button. This mean each plop must have a collider so they can be clicked on.

    2) Not quite sure what you mean but I assume you are not talking about a tile but rather an object/item/plopable. You would palce it the same way you palce other object, it is just bigger an spans more than one tile width. In the same way you get objects that are way smaller than a tile size. The important part here, if you are concerned about alignment with teh grid, it to create a proper pivot offset so that the object's pivot can algn nicely with the grid and allow it to snap as needed.

    3) There is nothing tracking what static objects are sitting on the grid. I wanted to do this intially but figured it would waste too much memory when tracking something that might be unnecessary, especially in relation to what I wanted to do with UniRPG Ed. I'd say the best would be to do a raycast (if all your obejcts has colliders) to check if there is allready something there, else you need to implement an array/list that can track thinsg that are placed, much like how tiles are tracked.

    4) Gizmos and Handles can't be sued runtime so the easiest would be to create a plane that is moved around with an offset a little above the tile palcement level so it shows up above the placed tiles. To simulate the grid you could look into some of the line drawing fucntions. Just check around the wiki, answers and forum, there should be something, or you can find a solution on the asset store. There might be better ways, like using a plane (on grid level) with a material/shader to draw the grid but I don't know how this can be done in a shader.
     
  23. Dreo

    Dreo

    Joined:
    Nov 9, 2012
    Posts:
    24
    My friend,
    I was reading the documentation and doing some testing, I have some doubts.

    "Map.tiles is a variable you can use to find all tiles placed in the map. Null if there is no tile present
    at the queried spot. It is one dimensional array, so to find the correct index into it, if you have an X
    and Y position, you use the formula, index = y * width_of_map + x;"


    And when you have two tiles in the same position but in different altitude?

    How do I find a Plops dynamically by position?
     
  24. Dreo

    Dreo

    Joined:
    Nov 9, 2012
    Posts:
    24
    I would make my tests of the collision not using physical or raycasts but checking what is in each tile, understand?
     
  25. Leslie-Young

    Leslie-Young

    Joined:
    Dec 24, 2008
    Posts:
    1,036
    You will never have more than one tile in a tile space. If you have mroe than one grid then you are using two maps overlayed over each other and in that case you would query the two maps seperatly for info.

    In case you are talking about tile pieces, with Terrain maps you will never have the situation where two tiles overlap but with Dungeon maps it is a little different. There is the concept of tile pices and tiles. A tile can consist of moe than one piece (in Dungeon maps); for examle you might have a floor piece with a wall piece under it (the wall of a neighbouring lower floor) or you might have 2 wall pieces sharin ga tile space to represent a two sided wall tile. In every case there will be one piece that is the main piece (the one you get to via Map.tiles) and then you use that main piece's "linkedPieces"variable (a list) to find out what the other pices are that is sitting on the sametile space (it will be null or an empty list of there are none).

    --------------

    Plops are not being tracked when placed so you cannot check if there is one by checking tile positions. The plop tool is only there to make it easier to place these objects against the grid system and height of tiles. After placement you would use normal Unity tools to select and move/ delete them. In-game you would use raycasting to check if there are plops (like a table) in the way of movement. For the case where you might want to check tiles/plops to see if something can move onto that tile you could make special tiles that include a floor and plop art, and set its kind as a wall, and then add this to the prefab db as a new tile piece. If you then go then query the list of tiles you will find this special table tile and see it marked as a wall and know that a character may not move there.
     
  26. Dreo

    Dreo

    Joined:
    Nov 9, 2012
    Posts:
    24
    Thanks for your response. I understood.

     
  27. bravery

    bravery

    Joined:
    Mar 26, 2009
    Posts:
    262
    Hello,

    I like the way uniRGP is working, but I really doubts about wither the editor can have a variation of the different assets?
    What I mean is Dungeon contain only 6 peaces: 1 wall, 1 floor, 1 column and 3 corners only, so how much variation I can create with this one?
    Lets take for example the "Dungeon Builder Starter Kit by BITGEM" where we have 6 walls sections, 5 floors? so How we will handle that vairation?

    Also another questions like Doors and Archways how we can handle this on the uniRGP?

    Thanks in advance.
     
  28. Leslie-Young

    Leslie-Young

    Joined:
    Dec 24, 2008
    Posts:
    1,036
    Check out the documentation (can grab 'em from links on my first post if you don't own the package yet). There I explain how random floor tile scan be done. For walls you would normally have some wall that is the default and then have additional walls that are used as detailing, tehse aditional walls can be created in a nother set and painted over the defaut one to replace it.

    Doors and Archways can be added as tiles too (not auto-tile but normal tiels) and then placed with the placement tools. Note that UniRPG Tile Ed is a placement tool only, it does not feature any game mechanics, so it can't make your door open and close.

    I was meaning to create a new video of the tool in action while using the BITGEM tiles. I'l lsee if I can get to doing that tomorrow or the day after.
     
  29. bravery

    bravery

    Joined:
    Mar 26, 2009
    Posts:
    262
    Thanks for the quick answer.

    Regarding the documentation I just finished reading it, but I could not find "floor tile scan", so can you please explain it?

    Regarding the doors, if I want them to open can I attached an open script to them? will that conflict with your tile script?

    Having a video show how to work with BITGEM tiles is great idea, however please advise how can we utilize the full package with your editor (not only small part of it).

    Thanks in advance.
     
  30. Leslie-Young

    Leslie-Young

    Joined:
    Dec 24, 2008
    Posts:
    1,036
    Yes, you can put any scripts you like on the objects that you can place with UniRPG Tile Ed.

    Sorry, that should read, "floor tiles can be done"; which you will find on page 10, "Auto-Tiles" section. The explenations around how the "Floor Random Rotation and" "Floor Random Tile" properties works.
     
    Last edited: Nov 20, 2012
  31. bravery

    bravery

    Joined:
    Mar 26, 2009
    Posts:
    262
    Thanks for the reply.

    looking forward for your new video,

    Also is there any art pack (other than BITGM) that are compatible with uniRPG?

    Thanks in advance.
     
  32. Leslie-Young

    Leslie-Young

    Joined:
    Dec 24, 2008
    Posts:
    1,036
    BITGEM is the only one that contacted me to make sure the pivots and such is correct do that the tile pices snap togeter. Just about any art should work for tiles but some might need extra attention of they where not created to fit into a grid but rather to be vertex snapped together.
     
  33. bravery

    bravery

    Joined:
    Mar 26, 2009
    Posts:
    262
    Thanks for replay

    Can unirpg have also a celling tile?
     
  34. Leslie-Young

    Leslie-Young

    Joined:
    Dec 24, 2008
    Posts:
    1,036
    Yes, by making a mesh(art) of the ceiling part of a floor tile. So when you place a floor you are also placing the ceiling part of it.

    http://forum.unity3d.com/threads/148235-UniRPG?p=1022000&viewfull=1#post1022000
     
  35. Grand_A

    Grand_A

    Joined:
    Oct 16, 2012
    Posts:
    9
    Hi Leslie,

    I've bought both your UniRPG and Map&Nav package. So how do I connect these two packages?
    Let's say I've built a Terrain Map using UniRPG then I want it to be recognized by Map&Nav so that the Normal TileNode would be only the Floors I've set up in UniRPG.

    Thank you.
     
  36. Leslie-Young

    Leslie-Young

    Joined:
    Dec 24, 2008
    Posts:
    1,036
    UniRPG Tile Ed is to paint the tiles. So you use Map&Nav with the UniRPG Map in the same way you would use Map&Nav with terrain (maps) created in other ways, like unity terrain, flat plane, manually placed tiles, etc. You first paint your world and then do the Map&Nav steps to get Map&Nav working.
     
  37. Grand_A

    Grand_A

    Joined:
    Oct 16, 2012
    Posts:
    9
    So there's no support for UniRPG to automatically generate the Map&Nav Map with the TileNode automatically adjusted with the Map Terrain that was painted by UniRPG?
    If there's no support for it, how's the idea to combine both of them altogether? Because I'll be painting the UniRPG Map in Runtime so I need this feature.

    Thank you.
     
  38. Leslie-Young

    Leslie-Young

    Joined:
    Dec 24, 2008
    Posts:
    1,036
    No, there is no automated link between the two. You would generate the map&nav "map" in the same way, at run time, as you would with any other terrain system. Map&Nav's core features are also in the runtime scripts.
     
  39. magarcan

    magarcan

    Joined:
    Sep 25, 2012
    Posts:
    33
    I'm interested in the asset..

    What happen if I would like to plaze an element at 45°? You allow to choose direction, Up, right, down and left, but not diagonal positions. Or what if I would like to draw a circle?

    The only way I see is create a new asset with the desired angle, doesn't it?

    Also, could this kind of set be used with?
    http://forum.unity3d.com/threads/65508-Dungeon-Construction-Kit.-Now-on-Unity!
    http://forum.unity3d.com/threads/15...!-Everything-you-need-to-make-quick-easy-high...

    Thanks!!
     
    Last edited: Nov 15, 2012
  40. Leslie-Young

    Leslie-Young

    Joined:
    Dec 24, 2008
    Posts:
    1,036
    You are talking abot non-tile placement? Tiles can only be rotated 90*. The Plop tool can rotate objects at 45* angles and is used to make it easier to place these objects against the grid system. You could place an object where you wnat it and then rotate it further at any angle using the Unbity transform tool.

    Any art can be used with the this tool but some might need additional work to make them work properly because there are a few rules that tile pieces must follow so that they snap together perfectly on the grid/tile system. For example, the pivots need to be at certain locations, and if you want to use the auto-tile system you will need to have certain wall, pillar, floor and corner pieces for it to work.

    I have not worked with the two assets you've linked so I can't tell how much work it would be to get them to work with the Normal Tile and Auto-Tile systems of UniRPG Tile Ed. Looking at DCK screenshots, it does seem like each "piece" is the same size, so each of them could be seen as a tile.
     
  41. adamnorton

    adamnorton

    Joined:
    Oct 17, 2012
    Posts:
    21
    Couple of questions/ideas. Forgive if they were asked before.

    Props: Can they be prefabs instead of just. a mesh? Thinking this would be a great way to define animated props and items with pre-existing code. Like doors, gates, traps, water placed in a "lower tile", teleports etc. At which point the developer can specify the code for making them work, collision for a trap, mouse click or key click for a switch etc. Basically want something weird, create a prop, and keep the engine simple.

    Dungeons:
    Can the "skybox" be added? I was thinking you could then, for a third person or fps, place tiles with no ceiling for court yards etc.
    All of your examples have walls with 90 degree facing to the floor tile. it is possible for rounded tunnels and ceilings, provided all the parts fit together? :) thinking tunnels or large caverns.

    Paging maps: Can you have Multiple Maps in a scene and "page" them?

    Terrain: are the terrain tiles static meshes or could a high map / bump map be applied. Say with a crumple mesh modifier, http://unity3d.com/support/resources/example-projects/procedural-examples. Thinking about raised road tiles, ditch tiles or impassable mountain tiles for the map edges.
     
  42. Leslie-Young

    Leslie-Young

    Joined:
    Dec 24, 2008
    Posts:
    1,036
    UniRPG Tile Ed actually expects prefabs since the gameobject needs to have the Plop component on it to be a valid objects that can be added to Plop sets in the PrefabDB.

    You can place whatever you want in the scene, so yes, you can add a skybox. The Tile Ed is there to help you place objects that snap nicely on a grid system. It is just anotehr way of placing objects/art.

    Yes, you can have rounded tunnel, even if they won't fit nicely together, of course you don;t want that :p The hard rules are in the way that Auto-Tile and Expanding tiles works since they expect certain pieces to automate drawing of things like walls and corners - see the documentation linked in 1st post.

    You can place multiple maps, UniRPG Tile Ed do not handle paging.

    Terrain: No heightmap. UniRPG Tile Ed is for painting tiles exactly as can be seen in the videos. What those tiles consist of and whether they work on the grid is up to you. You take some mesh, add the Tile component to it, add it to the PrefabDB and UniRPG Tile Ed will think it is a tile.
     
  43. Leslie-Young

    Leslie-Young

    Joined:
    Dec 24, 2008
    Posts:
    1,036
    I've made two more videos to show how you can use the BITGEM tils with UniRPG Tile Ed.



     
  44. Dreo

    Dreo

    Joined:
    Nov 9, 2012
    Posts:
    24
    UNITY 4 error ::
    When I edit a tileset the error happens:

    MissingMethodException: Method not found: 'UnityEditor.EditorUtility.GetAssetPreview'.
    UniRPGEditor.PrefabDBAutoTileEditor.DrawTileSetSelectionBar (UniRPGRuntime.DefAutoTileSet selectedSet, UniRPGRuntime.DefAutoTile selectedTile, Int32 forceColumnCount, Boolean ratherShowWall) (at D:/dev-games/unity/UniRPG/_UniRPG_Assemblies/UniRPGEditor/PrefabDBAutoTileEditor.cs:280)
    UniRPGEditor.PrefabDBAutoTileEditor.DrawRightPanel (UnityEditor.EditorWindow win) (at D:/dev-games/unity/UniRPG/_UniRPG_Assemblies/UniRPGEditor/PrefabDBAutoTileEditor.cs:224)
    UniRPGEditor.PrefabDBAutoTileEditor.Render (UnityEditor.EditorWindow win) (at D:/dev-games/unity/UniRPG/_UniRPG_Assemblies/UniRPGEditor/PrefabDBAutoTileEditor.cs:37)
    UniRPGEditor.PrefabDBEditor.OnGUI () (at D:/dev-games/unity/UniRPG/_UniRPG_Assemblies/UniRPGEditor/PrefabDBEditor.cs:97)
    System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) (at /Applications/buildAgent/work/3df08680c6f85295/mcs/class/corlib/System.Reflection/MonoMethod.cs:222)
     
  45. Leslie-Young

    Leslie-Young

    Joined:
    Dec 24, 2008
    Posts:
    1,036
    It is not yet compatible with Unity 4 since it was only recently released. I'll get a new version out asap.
     
  46. Dreo

    Dreo

    Joined:
    Nov 9, 2012
    Posts:
    24
    Some estimate? hours? day? days? weeks? months?

    Depending'll make a downgrade my Unity.

    Waiting anxiously.
    Thank you.
     
    Last edited: Nov 21, 2012
  47. artician

    artician

    Joined:
    Nov 27, 2009
    Posts:
    331
    Hey there,
    I just found your tool last night, and bought it immediately. It's a fabulous tool and exactly what I've been looking for for some time.

    A question:
    I think I read this earlier on but want confirmation: While the Dungeons don't directly support multiple levels/floors, it's still possible to create multiple dungeon map objects in a single scene, and offset their height, is that right? So I could create a custom staircase that links the two separate levels to achieve the same affect?

    I have a couple requests:
    1) More Terrain Tiles- - I'd like to know if you allow the terrain tiles to have more walls/corners, so terrain tiles which have a texture will tile correctly. Currently textures don't tile correctly and display seams because the terrain tiles reorient themselves. While this saves on the memory footprint, it's not really acceptable visually unless you're using flat-shaded geometry (like in your tests). Do you think this is something you could add?

    2) Auto Portal-culling support- - If this isn't supported already, would you be able to implement Unity's built-in portal culling to automatically generate with your Dungeon tiles?

    Thanks for the great tool!
     
  48. artician

    artician

    Joined:
    Nov 27, 2009
    Posts:
    331
    Sorry to follow up praise with an issue, but I am having difficulty with your tool at the moment. I have no buttons or tabs in the inspector window when I have selected a map or prefabDB. I've watched your videos and read your documentation multiple times, as well as upgraded to the release you just posted in the Asset store today. I don't see any buttons (like "Toggle Edit Mode") or tabs (for the different tile types) even in your sample scenes included in the release.

    Please help! I am using Unity 3.5.6.
     
  49. Leslie-Young

    Leslie-Young

    Joined:
    Dec 24, 2008
    Posts:
    1,036
    The Unity 4 compatible update is now available.

    DLLs compatible with Unity 4 are provided in the file, \Assets\UniRPG\Documentation\for_unity4.zip

    Extract the files to your /Assets/ folder, overwriting the current DLL and MDB files,
    \Assets\UniRPG\Scripts\UniRPGRuntime.dll
    \Assets\UniRPG\Scripts\UniRPGRuntime.dll.mdb
    \Assets\UniRPG\Editor\Scripts\UniRPGEditor.dll
    \Assets\UniRPG\Editor\Scripts\UniRPGEditor.dll.mdb
     
  50. Leslie-Young

    Leslie-Young

    Joined:
    Dec 24, 2008
    Posts:
    1,036
    @artician,

    Yes, you can have more that one map in a scene and by placing a staircase you can create the effect of the two levels being connected.

    if you want to use the auto-tile with terrain then you will have to create textures that tile on all the sides so that the wall, corner and floor pieces don;t create seams between them. You could also use the normal tile placement tab if yo uwant to manually place any kind of shape as a tile.

    There are not plans to add support for existing or custom optimisations techniques.

    That is a strange error you are having. Can you try with a clean project and only import UniRPG Tile Ed. Do you get any error messages/warnings on the Unity console?
     
Thread Status:
Not open for further replies.