Announcement

Collapse
No announcement yet.

Dungeon Architect

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    Apologies for the delayed response

    Originally posted by DaveStitch View Post
    Hello,

    I have recently purchased your plugin as I'am interested in the Graph Grammars that you are using, however I cannot find any information on your Mission Grammar and how to use it.

    Is there any documentation on this feature?

    Thank you,
    Dave Ruptash
    StitchHeads studio
    Hello DaveStitch Please check this: https://coderespawn.github.io/dungeo...ser-guide-ue4/
    Last edited by Ali Akbar; 12-08-2019, 01:06 AM.
    Dungeon Architect | Prefabricator

    Discord Support

    Comment


      Originally posted by vali.olteanu View Post
      Hello Ali, I have a simple question but I cant find a solution for this.
      Using GridDungeonBulder, is there a way to rotate some meshes (corridors) if they are placed along a particular axe? Say if the corridor is along X no rotation but if is on Y rotate 90 degrees.
      Sure, you can use transform rules for this. In the "Get Node Offset" function, you'll find a pin called MarkerTransform. Use that to determine the existing rotation and rotate accordingly
      Dungeon Architect | Prefabricator

      Discord Support

      Comment


        Originally posted by AngeIV View Post
        Ali Akbar Is floor planner ever going to be a thing?

        EDIT: I have been playing around with "Custom Grid Builder" recently. And with some success I was able to generate random buildings that follows my expectations. So they still used procedural inputs in the dungeon settings like min and max cell size, although cells were placed in a different manner. All rooms were placed next to each other always, and sometimes there was special palce left for corridor to connect rooms but in a tight space so there are no free cells. entire thing created a "house" like structure. Querying rooms isn't so hard also - so I was able to place rooftops in an organized way without overlapping elements.
        I Also checked the example for runtime edition by player and found it super easy. The example spawns only corridor cells, but with extra fast tweaking I was able to place rooms or corridors and on bigger space than single cell.
        Still I lack the possibility of control. I made in my theme extra markers like "window", or simply negation empty markers. I am using the swap volumes to edit the building in edit mode to for example swap auto placed walls with windows, detecting unnecessary pillars by spatial constraints and custom market emiter spawn rules.
        However I still lack tools to be able to edit it how I want.
        And the goal is....
        creating a complex set of markers emitters, spawn logic, custom builder etc to be able to either build by hand in-game or randomize a building by a specific theme. After creating the blueprints just produce more and more themes. In case of mixing themes just use theme overwrite volumes.
        Why?
        Because for example I want player to be able to populate large amount of buildings in relatively short time with simple settings. Picking size of buildings, bound, theme, and some features (like contains balcony or not, etc. Or not, as they could be part of the theme itself) and change how they look like with a random seed. Or be able to custom build a house from scratch.
        First use case is super important as all I need to store in save objects or multiplayer replication are the settings and random seed he picked. Second benefit is that once player find a random number that generates a building he likes, he can store it with all his settings to reuse it multiple times later, and the effect will always be the same.
        Second use case is house building in edit mode similar to THE SIMS, however due to theme and how DA works a lot faster as walls, etc could be placed automatically and bind to certain rules, still able to change by hand some small details. In this case I have great trouble to save the data about the building keeping it small. Cant replicate this data easily. and I don't know if I can spawn markers at runtime without using volumes? Or delete markers? Can I access the build data as a single structure and store it?

        Dungeon Architect is by FAR the BEST tool I've worked with in ue4. And I bet it can do much more then I know about. But some functions, events etc lack documentation and sometimes I can read a variable or access function - that I have no idea what it does.
        Hey AngeIV Thank you for the feedback. I'm working on completely rewriting the documentation and a brand new feature that I've implemented in Unity and will bring the UE4 in a month or so (see below for more info) that will give you more control on the dungeon generation process as a designer
        Dungeon Architect | Prefabricator

        Discord Support

        Comment


          Originally posted by AngeIV View Post
          Ali Akbar - I will simplify my question. Can I by any mean spawn specific Markers in a location I desire, much like I can edit "floor/coridor" in the runtime example. Although its not technically spawning markers... in consequence it is spawning markers.
          Can I spawn by hand other types of markers? In example "MyInnerWall" on a brush I make ingame?
          We can have a brush tool that paints markers on the scene. One brush tool that paints on a grid (like floor tiles), paints on edges (for walls) or scatters on a solid object (for dropping crates, trees, foliage etc on any solid surface/walls)

          Dungeon Architect | Prefabricator

          Discord Support

          Comment


            Originally posted by CorvaenOboros View Post
            Greetings ,
            Thanks again for the updates Ali Akbar ! we are using the latest SnapMapDungeonBuilder and its very nice making the modules in levels now !
            For Fixed Camera / Isometric games there are a few features would like to request :

            Allow / Disallow Module Rotation - currently we are designing the map modules for a specific isometric view and DONT want them to be rotated 180 by the builder . Could we perhaps specify what modules shouldn’t be rotated in the Snap Map Module Database ? or have a setting on the builder to disable rotating modules ?

            Module Bounds from Mesh - In general the computed bounds of modules is too simplistic and large . Adjusting meshes within the map modules by “ Relevant for Level Bounds “ has been very useful , however is still limited to a singular level bounding box for the collision checks where the power of Snap Dungeons is their unique shapes . In the Module Database if we could specify a custom static mesh that we make to be used for the Level Modules Collision Detection that would be amazing .

            Thanks again !
            CorvaenOboros I'll add those featuers.

            Allow / Disallow Module Rotation: I'll add this in the next update. The disallow rotation will also be necessary for platformer levels
            Module Bounds from Mesh: I could create a new volume actor (like SnapModuleBoundsVolume). When you drop it into the level, the details panel will have options to auto snap with different functions (RelevantForLevelBounds, OnlyCollision, OnlyMeshes, Manual). If you don't have this volume in your module, it falls back to RelevantForLevelBounds. Let me know what you think


            Dungeon Architect | Prefabricator

            Discord Support

            Comment


              Originally posted by PatangoWango View Post
              Just downloaded the Dungeon Architect, but it doesn't seem too happy with UE4.22:-

              Module.DungeonArchitectRuntime.cpp (0:06.59 at +0:00)
              2>C:\Program Files\Epic Games\UE_4.22\Engine\Source\Runtime\Core\Public\Templates/Sorting.h(38): error C4800: Implicit conversion from 'int' to bool. Possible information loss
              2>C:\Program Files\Epic Games\UE_4.22\Engine\Source\Runtime\Core\Public\Templates/Sorting.h(38): note: consider using explicit cast or comparison to 0 to avoid this warning
              2>C:\Program Files\Epic Games\UE_4.22\Engine\Source\Runtime\Core\Public\Templates/Sorting.h(37): note: while compiling class template member function 'bool TDereferenceWrapper<T *,PREDICATE_CLASS>:perator ()(T *,T *) const'
              2> with
              2> [
              2> T=UGrammarRuleScriptGraphNode,
              2> PREDICATE_CLASS=`anonymous-namespace'::GrowNode::<lambda_5e70c48b025ba0820f91d9d03284bc29>
              2> ]
              2>C:\Program Files\Epic Games\UE_4.22\Engine\Source\Runtime\Core\Public\Algo/IntroSort.h(63): note: see reference to function template instantiation 'bool TDereferenceWrapper<T *,PREDICATE_CLASS>:perator ()(T *,T *) const' being compiled
              2> with
              2> [
              2> T=UGrammarRuleScriptGraphNode,
              2> PREDICATE_CLASS=`anonymous-namespace'::GrowNode::<lambda_5e70c48b025ba0820f91d9d03284bc29>
              2> ]
              2>C:\Program Files\Epic Games\UE_4.22\Engine\Source\Runtime\Core\Public\Templates/Sorting.h(94): note: see reference to class template instantiation 'TDereferenceWrapper<T *,PREDICATE_CLASS>' being compiled
              2> with
              2> [
              2> T=UGrammarRuleScriptGraphNode,
              2> PREDICATE_CLASS=`anonymous-namespace'::GrowNode::<lambda_5e70c48b025ba0820f91d9d03284bc29>
              2> ]
              2>C:\Program Files\Epic Games\UE_4.22\Engine\Source\Runtime\Core\Public\Containers/Array.h(2401): note: see reference to function template instantiation 'void Sort<UGrammarRuleScriptGraphNode,PREDICATE_CLASS>(T **,const int32,const PREDICATE_CLASS &)' being compiled
              2> with
              2> [
              2> PREDICATE_CLASS=`anonymous-namespace'::GrowNode::<lambda_5e70c48b025ba0820f91d9d03284bc29>,
              2> T=UGrammarRuleScriptGraphNode
              2> ]
              2>E:\DungeonTest\Plugins\DungeonArchitect\Source\DungeonArchitectRuntime\Private\Builders\SnapMap\SnapMapDungeonBuilder.cpp(725): note: see reference to function template instantiation 'void TArray<UGrammarRuleScriptGraphNode *,FDefaultAllocator>::Sort<`anonymous-namespace'::GrowNode::<lambda_5e70c48b025ba0820f91d9d03284bc29>>(const PREDICATE_CLASS &)' being compiled
              2> with
              2> [
              2> PREDICATE_CLASS=`anonymous-namespace'::GrowNode::<lambda_5e70c48b025ba0820f91d9d03284bc29>
              2> ]
              2>E:\DungeonTest\Plugins\DungeonArchitect\Source\DungeonArchitectRuntime\Private\Builders\SnapMap\SnapMapDungeonBuilder.cpp(720): note: see reference to function template instantiation 'void TArray<UGrammarRuleScriptGraphNode *,FDefaultAllocator>::Sort<`anonymous-namespace'::GrowNode::<lambda_5e70c48b025ba0820f91d9d03284bc29>>(const PREDICATE_CLASS &)' being compiled
              2> with
              2> [
              2> PREDICATE_CLASS=`anonymous-namespace'::GrowNode::<lambda_5e70c48b025ba0820f91d9d03284bc29>
              2> ]
              2>
              2>Error executing C:\Program Files\Epic Games\UE_4.22\Engine\Build\Windows\cl-filter\cl-filter.exe (tool returned code: 2)


              Just trying to figure out what's going on.. anyone had similar?

              EDIT: This is VS2019, implicit conversion from T to bool generates an error.

              EDIT2: Looks like there are numerous issues with VS2019... trying to modify the theme ground model causes a crash. In the end I just gave up on 2019 and installed 2017... which, so far, appears to work.
              4.22 is officially on VS2017 as per the docs. I'll test it on vs2019 and fix it in the next update
              Dungeon Architect | Prefabricator

              Discord Support

              Comment


                Originally posted by PatangoWango View Post
                Been playing around with this a bit more, using the GridCustomDungeonBuilder... sadly, it looks like it's got a few bugs.

                I setup two rooms as per the example:

                UGridCustomDungeonBuilder::GenerateCustomLayout_Implementation(UGridDungeonConfig* GridConfig)
                {
                int32 Room1ID;
                int32 Room2ID;
                RegisterRoom(5, -3, 9, 7, 7, Room1ID);
                RegisterRoom(8, -11, 7, 6, 5, Room2ID);
                ConnectRooms(Room1ID, Room2ID);
                }

                ... and the corridor that is generated utterly fails to connect them in a somewhat spectacular fashion, though it does put the doors in the correct place

                Judging from the responses, I'm guessing bugs aren't being fixed? Is the plugin even being maintained anymore?
                I believe this was fixed a while ago. Could you post your plugin version number and engine version?
                Dungeon Architect | Prefabricator

                Discord Support

                Comment


                  Hello everyone, I've been busy working on a new feature. It was being implemented in Unity and I'll bring it to UE4 in a month or so. It gives you lots of control as a designer on your level generation. Check this video


                  P.S. This video is for the Unity version of DA. Mods, if this is not allowed, please let me know and I'll remove it

                  Last edited by Ali Akbar; 12-08-2019, 01:22 AM.
                  Dungeon Architect | Prefabricator

                  Discord Support

                  Comment


                    Originally posted by Ali Akbar View Post

                    Hey AngeIV Thank you for the feedback. I'm working on completely rewriting the documentation and a brand new feature that I've implemented in Unity and will bring the UE4 in a month or so (see below for more info) that will give you more control on the dungeon generation process as a designer
                    honestly - yes. this implementation would easily allow me to generate buildings.

                    Comment


                      I have the plugin compiled for UE 4.24

                      I'll test it on mac and submit an update later today
                      Dungeon Architect | Prefabricator

                      Discord Support

                      Comment


                        Added support for magnets and male/female connection constraint in the snap map door connections

                        (I've added debug markers, black = magnet, blue = male, pink = female)

                        Dungeon Architect | Prefabricator

                        Discord Support

                        Comment


                          I've uploaded 2.14.0 in the website if you guys want to use it with 4.24 right away. I'll this update to the marketplace and it will show up in a few days in the launcher
                          Dungeon Architect | Prefabricator

                          Discord Support

                          Comment


                            Originally posted by Ali Akbar View Post
                            Added support for magnets and male/female connection constraint in the snap map door connections

                            (I've added debug markers, black = magnet, blue = male, pink = female)

                            so they pair up male-male and female-female how Politically Correct thats not what I would expect. good you gave an image for that

                            Comment


                              Originally posted by AngeIV View Post

                              so they pair up male-male and female-female how Politically Correct thats not what I would expect. good you gave an image for that


                              I've submitted an update to Epic. It should show up in the launcher in a few days
                              ​​​​​​​
                              Dungeon Architect | Prefabricator

                              Discord Support

                              Comment


                                Originally posted by Ali Akbar View Post



                                I've submitted an update to Epic. It should show up in the launcher in a few days
                                ​​​​​​​does it contain the new flow system for grid?

                                Comment

                                Working...
                                X