Dungeon Architect

Oh, thanks. Didn’t know that. Is it specific to DA or just a general UE4 tool?

Just a generic UE4 feature - but because DA spawns the dungeon as individual actors after you click Build, it should work.

I use the Blueprint from actors/components thing a lot to move pieces of levels around.

This looks like it could be really good for a project I am working on now. Would it be possible for me to build a bunch of rooms as separate levels then use the level generator to connect them together while having some dynamic areas acting as hallways or spaces between them?

Just picked this up the other day, sorry if this has been asked already, but could I potentially create multiple spawn volumes within an existing level to create custom buildings using modular pieces, or do the volumes set themselves up as separate levels that I’d have to load/stream into?

posted an example of this earlier in the thread (making static parts connected by random dungeon in between).

Looks like I missed the sale :confused:

Would have invested ~50€, even for the inspiration alone. A few things still concern me though:

  • In videos and screenshots maps are more or less flat. I also saw a video with a multi-story building, but I’m wondering how flexible these are. For example, can the floor-layout be different across stories, and can the outer shape resemble this?

  • Am I right assuming that everything is based on voxels/cells of a standardized size? Or can the “grid” have different sizes for different kinds of structures (like a corridor may be wider than a ventilation shaft)?

  • All the footage I’ve seen had a consistent theme, which didn’t have much variation “within”, meaning all the enclosed buildings, walls floors etc. basically looked the same. Is this just coincidence?.. I guess the question comes down to: are there themes within themes within themes (which are also bound to placement-behavior/patterns) … ?

  • Do you have an interface in place that lets you extend map-gen functionality, like OnTilePlaced, OnTileRemoved … ? Can I make tiles (partly) destructible by replacing them with alternative versions - WITHOUT ******** up the system?

  • Can “un-dividible elements” stretch over multiple tiles, like a large gate that takes up 2 or 3 standard wall-segments?

Sorry for all the questions. Would appreciate any answers. :stuck_out_tongue:

hmm if that’s the case then my first person shooter might genuinely be able to go with randomly generated levels. By do you know what page this is on? skimming through I am seeing there are like 42 pages to this thread ><

Just bought the plugin a few days ago and loving it so far, thanks for the great work!

One problem I have is that UGridDungeonQuery::GetPathBetweenCells() doesn’t immediately work when building a dungeon at design time and starting a PIE session (OutSuccess is false). At least some of the other query commands (like GetFurthestRooms()) do work.
It can be fixed by calling BuildDungeon() again, for example in BeginPlay() and using a delay node to wait for a short time (even though MaxBuildTimePerFrameMs is 0.0, so it should be synchronous if I understand it correctly).

Can be reproduced easily by using GetPathBetweenCells() in BeginPlay() of a level blueprint with a level that contains a dungeon built at design time.

Not sure if that is a known limitation or a bug, but I couldn’t find it mentioned in the docs at least.
I’m on DungeonArchitect version 2.6.0 with UE 4.15.2.

Havent tried this yet… but has there been any news on side scroller support with this plugin?

Somewhere in the last few pages I think, so start on 41 and go backwards.

I think it would be nice for DA to support this: Prefab Tool - Prefab Support for Unreal Engine - Marketplace - Unreal Engine Forums

^This

I just recently purchased DA, and I’m hoping these two will be able to work together :slight_smile:

You can merge your dungeon with static content. 's the example @n00854180t was talking about:

In this example, the middle area is your static level content. You place a platform volume where you’d like a entrance to a procedural dungeon

watch?v=81W6Rhwmhfc

@hippowombat Could you elaborate? You can have multiple dungeons within the same level (or in different streaming levels)

You can have height variations but not different floors stacked on top of each other with the default layout method. There are other layout methods as well, however they are a work in progress and DA is designed to add more layout methods in the future. The multi-story building video you saw was from the experimental FloorPlan layout builder

It is based on grids and the art assets of different size factors won’t fit well (like a gate of 2x the size)

That’s a good point and was a limitation which was addressed a few months ago. There’s a new feature called clustered themeing, which automatically splits up the dungeon into clusters and applies different themes to each cluster. This breaks monotony and adds variety to your level instead of having the same theme throughout

https://coderespawn.github.io/dungeon-architect-user-guide-ue4/stage/assets/images/cluster_theme.jpg

More info on this in the user guide

You’d mostly control this from the theme editor and probability / rules. You also have Spawn Logic, which are blueprints invoked when your actor is spawned into the scene. You can use this to initialize the actor that you just spawned (like set it to destructible, change the light color, etc)

's an example of destructible meshes spawned from the theme engine
watch?v=VZIIEQoMp7o

I’d be happy to answer any other questions you have

@BStbck Thank you for your support and the bug report. It looks like the data model was not serialized properly when built from the editor. I’ll have a look

@ Thanks for the heads up. It looks like a very useful addition. I posted on the forum with some questions to @. It should be possible to drag drop the prefab assets to the theme editor and have the theme engine spawn it. However, I’m not sure if any extra initialization is needed by the prefab system after spawning

I want to turn on GenerateOverlapEvent of Collision of StaticMeshComponent to be placed.
I tried to turn on GenerateOverlapEvent in MeshDetails Advanced properties of the theme, but it did not turn on in Outliner.
Does MeshDetails’ Advanced properties have no effect?

I’m sorry.
Because it is an English sentence created using google translation, it may be a slightly strange English sentence.

@nano06126728 There’s a bug where collision customization doesn’t update properly. As a workaround, try setting this in the mesh editor itself by double clicking your mesh from the content browser

@
I added in a landscape and when I hit play I get this crash:

LoginId:cf0d5cc243f731bfa3fd71b42ebaa55f
EpicAccountId:

Access violation - code c0000005 (first/second not available)

UE4Editor_Landscape
UE4Editor_DungeonArchitectRuntime!UDungeonLandscapeModifier::RasterizeLayout() [d:\build++portal+main+full\sync\localbuilds\plugintemp\hostproject\plugins\dungeonarchitect\source\dungeonarchitectruntime\private\core\landscape\dungeonlandscapemodifier.cpp:140]
UE4Editor_DungeonArchitectRuntime!UDungeonLandscapeModifier::OnDungeonLayoutBuilt_Implementation() [d:\build++portal+main+full\sync\localbuilds\plugintemp\hostproject\plugins\dungeonarchitect\source\dungeonarchitectruntime\private\core\landscape\dungeonlandscapemodifier.cpp:27]
UE4Editor_DungeonArchitectRuntime!UDungeonEventListener::execOnDungeonLayoutBuilt() [d:\build++portal+main+full\sync\localbuilds\plugintemp\hostproject\plugins\dungeonarchitect\source\dungeonarchitectruntime\public\core\dungeoneventlistener.h:15]
UE4Editor_CoreUObject
UE4Editor_CoreUObject
UE4Editor_DungeonArchitectRuntime!UDungeonEventListener::OnDungeonLayoutBuilt()
UE4Editor_DungeonArchitectRuntime!DungeonUtils::FDungeonEventListenerNotifier::NotifyDungeonLayoutBuilt() [d:\build++portal+main+full\sync\localbuilds\plugintemp\hostproject\plugins\dungeonarchitect\source\dungeonarchitectruntime\private\core\dungeoneventlistener.cpp:57]
UE4Editor_DungeonArchitectRuntime!FDungeonBuilderTask::DoWork() [d:\build++portal+main+full\sync\localbuilds\plugintemp\hostproject\plugins\dungeonarchitect\source\dungeonarchitectruntime\private\core\dungeon.cpp:272]
UE4Editor_DungeonArchitectRuntime!FAsyncTask<FDungeonBuilderTask>::DoWork() [d:\build++portal+main+full\sync\rocketsync\engine\source\runtime\core\public\async\asyncwork.h:264]
UE4Editor_DungeonArchitectRuntime!FAsyncTask<FDungeonBuilderTask>::Start() [d:\build++portal+main+full\sync\rocketsync\engine\source\runtime\core\public\async\asyncwork.h:252]
UE4Editor_DungeonArchitectRuntime!ADungeon::Tick() [d:\build++portal+main+full\sync\localbuilds\plugintemp\hostproject\plugins\dungeonarchitect\source\dungeonarchitectruntime\private\core\dungeon.cpp:149]
UE4Editor_Engine
UE4Editor_Engine
UE4Editor_Engine
UE4Editor_Engine
UE4Editor_Core
UE4Editor_Core
UE4Editor_Core
UE4Editor_Engine
UE4Editor_Engine
UE4Editor_Engine
UE4Editor_Engine
UE4Editor_UnrealEd
UE4Editor_UnrealEd
UE4Editor
UE4Editor
UE4Editor
UE4Editor
UE4Editor

ntdll

Sorry, gotta go , more details later