Announcement

Collapse
No announcement yet.

Dungeon Architect

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

    Very early progress of the DungeonFlow editor



    I have the UI done where you can define high level flow. There will be many nodes in the design graph like Cluster node to create a group of rooms, Platform nodes to create a single room etc and some ability to theme override each of them selectively

    The Result Graph shows the 2D view of a random dungeon that respects the specified constraints in the Design graph. I haven't worked on the algorithm yet. I'll have more in the coming days
    Last edited by Ali Akbar; 11-29-2016, 11:23 AM. Reason: typo
    Dungeon Architect | Prefabricator

    Discord Support

    Comment


      Originally posted by Ali Akbar View Post
      I have the UI done where you can define high level flow. There will be many nodes in the design graph like Cluster node to create a group of rooms, Platform nodes to create a single room etc and some ability to theme override each of them selectively

      The Result Graph shows the 2D view of a random dungeon that respects the specified constraints in the Design graph. I haven't worked on the algorithm yet. I'll have more in the coming days
      Looks interesting ...
      Some questions:
      1. will there be a way to give the special rooms not only a theme, but for example tell the builder to build an entrance room with only one door in a specified direction. (and the room should be surrounded by empty area at certain walls).?
      (this is the main problem I have with the gridbuilder ...)
      Or a special boss room that has two doors - one in the north, second in the south of the room - and same special boss room game mechanics inside the room?
      2. can we define the special rooms dimensions (size)? A boss fight (or entrance/exit) might need some more room than a random room in between.

      But it looks promising - nice idea to give the whole level a game flow.

      Comment


        Ali,
        Great plugin. So much potential here!

        I'm having trouble creating rooms in paint mode it only creates hallways no matter how large of a space I create.
        In this image I'm using the same theme on the same dungeon only difference is auto generated and hand painted.
        Can you tell me how to get rooms in paint mode?

        Thanks!

        Click image for larger version

Name:	DA_01.JPG
Views:	1
Size:	117.8 KB
ID:	1119108

        Comment


          Hi all, I'm trying to put a mesh in every single corner in a corridor.
          What's a good way to do this? I've been looking at spatial constraints but I can't seem to figure out how the actually work or a way to tweak them to my needs. I've looked at the videos but I still can't quite figure it out.

          Comment


            Originally posted by Laurentius View Post
            Looks interesting ...
            Some questions:
            1. will there be a way to give the special rooms not only a theme, but for example tell the builder to build an entrance room with only one door in a specified direction. (and the room should be surrounded by empty area at certain walls).?
            (this is the main problem I have with the gridbuilder ...)
            Or a special boss room that has two doors - one in the north, second in the south of the room - and same special boss room game mechanics inside the room?
            2. can we define the special rooms dimensions (size)? A boss fight (or entrance/exit) might need some more room than a random room in between.

            But it looks promising - nice idea to give the whole level a game flow.
            These features can be implemented in different nodes in the graph
            Dungeon Architect | Prefabricator

            Discord Support

            Comment


              Originally posted by jwatson_0051 View Post
              Ali,
              Great plugin. So much potential here!

              I'm having trouble creating rooms in paint mode it only creates hallways no matter how large of a space I create.
              In this image I'm using the same theme on the same dungeon only difference is auto generated and hand painted.
              Can you tell me how to get rooms in paint mode?

              Thanks!

              [ATTACH=CONFIG]119422[/ATTACH]
              [MENTION=553593]jwatson_0051[/MENTION] You can use platform volumes for that. I haven't implemented rooms in the paint mode. (reason was rooms require a special constraint that they should be rectangular which will not be guaranteed by a paint tool)
              Dungeon Architect | Prefabricator

              Discord Support

              Comment


                Originally posted by Ratamorph View Post
                Hi all, I'm trying to put a mesh in every single corner in a corridor.
                What's a good way to do this? I've been looking at spatial constraints but I can't seem to figure out how the actually work or a way to tweak them to my needs. I've looked at the videos but I still can't quite figure it out.
                [MENTION=463716]Ratamorph[/MENTION], here's how you can do it with spatial constraints



                If you want them only on the corridors and not room, add a selector rule to it like this:

                Dungeon Architect | Prefabricator

                Discord Support

                Comment


                  Marker emitter to add border around the Isaac builder

                  Attached Files
                  Dungeon Architect | Prefabricator

                  Discord Support

                  Comment


                    Originally posted by Ali Akbar View Post
                    [MENTION=553593]jwatson_0051[/MENTION] You can use platform volumes for that. I haven't implemented rooms in the paint mode. (reason was rooms require a special constraint that they should be rectangular which will not be guaranteed by a paint tool)
                    Okay thanks for clearing that up. I have tried the platform volumes to work around this and have had some issues maybe you have some suggestions.

                    1) My goal is to have full control (nothing procedural) creating rooms and platforms. The best way to do this from what I understand is through the paint tool and platform volumes, correct? On the platform volumes I'm using "room" as the cell type (I've experimented with the others this seems to work best). Corridors are being generated automatically between the platform volumes, how can I keep this from happening so that I can maintain full control?

                    2) When I do paint a corridor up to a platform volume it does not create a door, am I doing something wrong?

                    3) I'm also trying to find a way to have a path cross underneath another one, do you have any example of this I could reference?

                    Comment


                      Hi @Ali Akbar - I love your plugin so far, but now I have come across a really strange problem.

                      I have a doorframe with an attached door, and a physics constraint to tie the door to the frame so that it rotates naturally. In addition there is a PhysicsHandler.

                      If I drag the actor blueprint into my scene manually, everything works as expected.
                      If I generate the dungeon using the 'Build Dungeon' button everything works as expected.

                      BUT - If I spawn the blueprint using Dungeon Architect Runtime Builder - the constraint is broken and no longer works!?!

                      Also: More often than not the Theme forgets my actor blueprints if I close down UE and repoen it. I have to go into each actor node and reselect the actor blueprint for it to work again.

                      Please consider fixing this as this kind of ruins much of the usability of the plugin for me...

                      Regards
                      DKoding
                      Last edited by dkoding; 11-30-2016, 04:22 PM.

                      Comment


                        Just started playing with Dungeon Architect after watching most of the videos - really love the overall schema, but would love your gut-take on how to best utilize it for my game.

                        I'd love to use this to build a 3d platformer level - mostly platforms of varying sizes suspended in mid air.

                        The two key elements are:
                        - distance between platforms must conform to jumping distances. Can't have unreachable platforms and impossible jumps.
                        - lots of height variability for a very vertical game

                        I've been playing with the grid builder thinking I could have an "empty" stair actor to space out platforms and couldn't get height variability to work well - if my Max Stair Height Variability is above 2, it doesn't seem to make the dungeon use more levels with more stairs.

                        So a few thoughts, but I haven't had time to prototype them well - which approach do you think has the best chance of success (or do you have other suggestions?)

                        1. Go with a grid builder but make the ceiling heights vary high (like the max jump height or higher) and "fill in" intermediate platforms with emitter rules.

                        2. Go with a snap builder and build jump-distance length gaps between level sections.

                        3. Create a new custom builder bp that starts somewhere and places emitters around based on jump metrics. (Haven't seen many examples of custom builders, so that one is a bit daunting but would give me the most control)

                        Thoughts, DA power users?

                        Comment


                          Hi @Ali Akbar - regarding my previous post (constraints broken when spawning actor BP's with multiple meshes connected with constraints) - I have done some more digging and I think I have found the reason for the problem.

                          When I set scaling on the actor in the Theme - only the first mesh under the scene root is scaled. The rest of the meshes remain the same size, and as a result (I'm guessing) - origins of the objects change individually, and when the difference in origin is bigger than the constraints limits - the constraint breaks.

                          Also - as only the first mesh is scaled it has all manner of other strange effects.

                          It looks fine in the preview, it works fine if i use the 'Build Dungeon' button - it is only the 'Runtime Builder' that exhibits this problem - which is unfortunate as that is the one I use.

                          Regards
                          DKoding

                          Comment


                            Hi [MENTION=28980]Ali Akbar[/MENTION] , I managed to config my fence separators to only add geometry where the corridor turns 90 degrees, I need specialized geometry for the corners of my corridors because of the way the meshes are constructed.

                            It works most of the time but there are two cases I can't figure out how to fix:

                            In this one it adds geometry where the fence and room connect, this is undesirable, I don't want separators where corridors and rooms connect. Notice the blue arrow poking trough the room wall.
                            Click image for larger version

Name:	DA_FencePostInsideRoom_Marked.png
Views:	1
Size:	125.5 KB
ID:	1119202

                            In this one it places separators but they are not corners, notice the blue arrows inside the orange circles.
                            Click image for larger version

Name:	DA_NotACorner_Marked.png
Views:	1
Size:	138.8 KB
ID:	1119203

                            Here's how I have my constraints set up:

                            Blue arrow fence separator
                            Click image for larger version

Name:	SpatialConstraintBlueArrow.png
Views:	1
Size:	18.1 KB
ID:	1119204

                            Red arrow fence separator
                            Click image for larger version

Name:	SpatialConstraintRedArrow.png
Views:	1
Size:	17.2 KB
ID:	1119205

                            Any ideas on how to fix it, other than using marker replacement volumes to manually remove them on a case by case basis?
                            Last edited by Ratamorph; 12-02-2016, 10:13 AM.

                            Comment


                              Originally posted by jwatson_0051 View Post
                              Okay thanks for clearing that up. I have tried the platform volumes to work around this and have had some issues maybe you have some suggestions.

                              1) My goal is to have full control (nothing procedural) creating rooms and platforms. The best way to do this from what I understand is through the paint tool and platform volumes, correct? On the platform volumes I'm using "room" as the cell type (I've experimented with the others this seems to work best). Corridors are being generated automatically between the platform volumes, how can I keep this from happening so that I can maintain full control?

                              2) When I do paint a corridor up to a platform volume it does not create a door, am I doing something wrong?

                              3) I'm also trying to find a way to have a path cross underneath another one, do you have any example of this I could reference?
                              For #1 Set the number of cells variable in your dungeon to zero which will turn off procedural generation of corridors and rooms.
                              For #2 I solved this by using marker replacement volumes, just place a replacement volume that changes a wall into a door where you want doors.
                              Last edited by Ratamorph; 12-02-2016, 09:56 AM.

                              Comment


                                There may still be a problem using hotfix 2. On my grid builder if I add any Actor Node it is still crashing immediately. Not much useful in the logs though:

                                [2016.12.02-15.54.09:499][955]LogCrashTracker:
                                [2016.12.02-15.54.09:499][955]LogCrashTracker:
                                [2016.12.02-15.54.09:499][955]LogWindows:Error: === Critical error: ===
                                [2016.12.02-15.54.09:499][955]LogWindows:Error:
                                [2016.12.02-15.54.09:499][955]LogWindows:Error: Fatal error!
                                [2016.12.02-15.54.09:499][955]LogWindows:Error:
                                [2016.12.02-15.54.09:499][955]LogWindows:Error: Unhandled Exception: EXCEPTION_ACCESS_VIOLATION reading address 0x00000010

                                Comment

                                Working...
                                X