Dungeon Architect

@HInoue, it should be done in a week or two. However, the algorithm is already implemented in 2.2.0 and you can play with it. I haven’t tested it fully and would not recommend the current city builder state with production yet. I’ll be having more updates soon on it

, thank you again for all the work you’re putting into this! :slight_smile:

! Thank you for your quick reply. I’ll look at getting it this week.

You’re amazing !
Thanks

Thanks for the demo.
The funny thing is that the volume was set to movable in the first place.
And now it works and is rethemed correctly - odd.

Anyway this technic is great for theming special rooms - maybe a GetRandomRoom and GetRooms function would be a nice addition to the GridDungeonQuery object.

For my other problem with setting/changing a single wall for the “stairs up/down” asset I will try to use a special wall marker emitter or use a MarkerReplaceVolume.
When using a dungeon with a know seed the MarkerReplaceVolume works good - but I need to have the stair at one of two (topdown game) random walls.

Yes, from my testing it seems to work very well! I think it eliminates the problem I was having with the entrance appearing on a different level in some seeds as well.

Only problem for me now is that one of my more complex themes doesn’t work in DA 2.2.1 - it causes the editor to crash anytime a change is made and saved.

Any ideas where the crash log might be saved for a DA theme related crash?

Hi,

We’re getting a crash when copy and pasting nodes from one Dungeon Theme to another.

In UEdGraphNode_DungeonMarker::PostEditChangeProperty e.Property can be NULL when copy and pasting.

We changed the if statement to this:

if (e.Property != nullptr && e.Property->GetFName() == “MarkerName”) {

@DrinkThisPotion I’ll have a look
@ Thanks for the fix. I’ve updated the code

I’m working on adding actor node customization (so you can customize your blueprint/actor nodes). However, there’s an engine limitation. Actors can only be spawned inside an active world, and there is none in the theme graph, so you cannot customize it

Does that mean setting defaults on actor nodes? I would find that to be useful.

Hello again :wink:
In order to display the stairs (going up) in a topdown dungeon I need to make sure the “north” wall of the startroom where the stairs will be placed (this is solved) (1) has no doors AND (2) behind the same wall there is at a minimum of 2 cells no markers at all (or else the character could walk behind the stairs mesh and the character is hidden - which I must prevent, too).
I create a marker emitter that emits a “Entrance” marker at the middle of the north wall - no problem .

I’m not talking about hiding a wall or other smaller obstacles which is a problem I have solved by hiding parts of the obstacle. But the stairs are much too big and complex to be hidden that way without visual glitches …

I first thought about using an MarkerReplaceVolume and make the door markers into wall markers and delete the markers behind the north. This looks ok at first, but the startroom and other parts of the dungeon could be cut off from the rest of the dungeon.

The solution to this might be that I can test if there are no doors in the north wall AND no markers are behind this wall - if this is not true just rebuild the dungeon (checking after the layout phase would be enough and fast enough to do this).
I can’t find a way to do this properly in the dungeoneventlistener OnLayoutBuilt event. For example GetCellType for even the StartRoom center give an unknow cell type result.

are two images that may help to understand this problem:


Is there a solution to this problem or maybe I’m thinking to complicated and I can prevent the problems in the first place without a rebuild “hack”.

Any hints?
I tried to find a working solution for the last days … ^^

Da 2.2.0

Looks like DA 2.2.0 is up on the marketplace. This really saves me as 4.13 crashes my project like it’s going out of style.

Thanks man!

[MENTION=28980][/MENTION] that city generator looks vergood and useful.
Some suggestions and/or questions
Is any way to make it less symmetrical? Some squares for parks, empty areas, bigger buildings (like a entire square area building)

The squares dont need to be exactly squares.

wider or thinner streets

I know that DA is not meant to be a city generator. But some of these features could be very good.

Thanks!!

Just wanted to pop by and say the Grid Dungeon Query system is really cool. Exactly what I needed at this point in my project. Thanks!

Hi, just wanted to say thank you for a reply you made a while back re: how to handle replication with your plugin.

Your advice of a custom DungeonEventListener and overriding OnPostDungeonBuildEvent, then selecting all children components and setting them to replicate worked.

I’m really impressed by how much work you’ve put into this, and how you continue to iterate based on user feedback. This is how you build a great product!

Yes, the ability to conform to terrain, and to tweak the shape of the streets would be critically important to me.

Anyone have any ideas on how I might grab the most center room in the dungeon? (either using the query system or otherwise)

Also useful would be to get the 4 rooms furthest from one another. (Like the example of GetFurtestRooms in the query system but splitting into 4 (or even 8)). I would use this to spawn markers for multiplayer start points.

Is there any way to get connected cells in 2.2.0? I’d like to be able to have some corridors have different themes within a runtime dungeon, but in order to do that it seems like I’d need to also get the corridor padding to make it look right. Or is there some other way to accomplish overriding theme for a particular corridor at runtime?

Since my last problem with the GridBuilderDungeon seems to be harder or impossible to fix for now (see my last post and no answer :wink: ) I tried to use the SnapBuilder approach as this looks like to have more control over the rooms appearance.

To get the best of both worlds I made 2 simple rooms and 1 corridor in levels using the GridBuilder and added a MarkerReplaceVolume where I needed a door.
I then added SnapDoors (blueprint doors) where I need them in the correct orientation. The “Allowed module types” are set to “corridor” on all SnapDoors.
Nothing too fancy.

I then made a “main” level where I use a SnapBuilderDungeon with the following settings:

Problem is that only one room will be generated.
I saw in the users guild that there is a setting of “Modules” with default of zero (?) which is missing in my details panel (see screenshot). Maybe thats the problem?
Is this not needed ony more? Other settings are missing or changed as well …

I witnessed many crashes of the editor and some save anomalies concerning room levels that I saved before while using the snapbuilder in the main level.

How can I solve this?

PS: I’m using DA 2.2 version from your website.