Dungeon Architect

Hi @

Re: my posts 11-30-16 and 12-01-16

Will you address my concerns about actor spawning in the Runtime Dungeon builder?

It is very hampering to the progress on my game.

Regards
DKoding

DKoding, sorry for the delay. Iā€™m in another city and will be back tomorrow. Iā€™ll investigate and have a priority fix for you soon. In the mean time could you please send the uasset file to reproduce it?

JC this was fixed in 2.3.1. I believe that version was not uploaded to the website. Iā€™ll upload it tomorrow

The level of awesomeness is off the charts in this one.

Cheers on amazing work dude!

Thank you @Shobhitthackar :slight_smile:

@dkoding, Iā€™ve tested the physics constraints on runtime spawned actors and it seem to works fine with 2.3.1. Could you check again and send me the actor file if it doesnā€™t work correctly?

watch?v=4oOossqWNqo

I see the scaling issue in runtime actors. Iā€™ll investigate why

[MENTION=59677]J.C. Smith[/MENTION] 2.3.1 is available on the website

Thanks.

@Ratamorph Iā€™ve tested this in a theme file. Iā€™ll think of a workaround

,

I filled out your form multiple times and provided you the info separately. I still do not have access through the marketplace for DA. I purchased through your website.

Would you please see if you can resolve that issue? I emailed you a couple of times but I have yet to see this corrected.

Thank you kindly.

Hi,

I found some issues with spawning of actors when using streaming levels.

In my setup i have the Dungeon actor in a level that is loaded using the LoadStreamLevel function. After loading i setup the Dungeonā€™s parameters (theme, config, etc) and call BuildDungeon. All actors that spawn however are created in the persistent level instead of the level the Dungeon is in. When unloading the level all of the actors that were created during the build process are not removed.

I have a temporary fix to this by modifying your spawning code to override the level. Before each call to SpawnActor i do this:



	FActorSpawnParameters SpawnParams;
	SpawnParams.OverrideLevel = Dungeon ? Dungeon->GetLevel() : NULL;


There are several calls to SpawnActor across 3 files:
InstancedDungeonSceneProvider.cpp
SceneProviderCommand.cpp
SceneProviderCommand.h

It would be great if you could verify and apply these changes to your code.

Thanks,
hamouras

Is there a way to destroy rooms or change the cell size after a runtime dungeon has been built? Iā€™m using the Isaac builder (Stylized layout) with the furthest room spawn/boss emitters but theyā€™re often emitted in single cell rooms even though the room width/length is greater than 1. Ideally, there would be a min room size option. Changing the min brush size helps but spoils the corridors if theyā€™re 3 cells wide etc.

@ I received a mail from Epic yesterday that all the pending requests were processed. Iā€™ve checked and your name was also in the list. Could you try logging out of your launcher and back in? If you still donā€™t see it, please let me know

@hamouras, Thank you for the fix. Iā€™ll add that in the next update

The stylized builder changes the rectangular room into different shapes (called room layout, which is a bunch of on/off points in the XY grid of the room rectangle). Iā€™ll add the ability to modify the layout of each room from blueprints (so you donā€™t have a single cell room for your desired rooms)

Updated the interface of of the dungeon event listener to let you modify the markers right after they are emitted into the scene (but before the theming is applied to it, and before anything is spawned into the scene)

This gives you low level flexibility on the overall dungeon layout. You can use to apply some filter on your dungeon like add curvature on your dungeon, or snap all the dungeon objects on a landscape

's an example. I iterate through all the markers in the scene, take their XY and map them in a cylindrical coordinate (you can adjust the radius from the details panel)

Wow. Great support. Looking forward to the next update!

Iā€™ve added a helper function in the Isaac model to clear styling from certain rooms

Iā€™m very interested in getting this, but I have a question first

Is there a way to change the theme on a per-room basis (for random generation, so without doing it myself)? Like say I want to make a ā€œprison roomā€ that spawns in prison cells, or a ā€œbook roomā€ that spawns bookshelves

After watching your videos I think there are two ways I can do this - a custom market/emitter (with affinity controlling the to spawn a room type) and then if it spawns that custom marker, use the custom logic to spawn similar objects in that room. But Iā€™m not sure if this will work how Iā€™m thinking (IE can a custom marker control the entire room?)

Another idea I had was spawning theme volumes that match the room size, and using that to change the walls and appearances and such.

Is there an easy way to do what Iā€™m talking about, controlling specific rooms?

Also, is there a way for the logic to access data about the current room? As in, say I only want to spawn 1 Large Chest in a room. Is there a way to ā€œonly spawn this once in this roomā€?

@Pinworm Your second approach can work where you wrap theme override volumes around your rooms (e.g. prison theme, garrison theme etc). After the dungeon layout is build, a set of preconfigured theme override volumes (e.g. prison theme volume) are wrapped around the rooms using a blueprint. is an example:

watch?v=7KKlBJnCDt8

This post has more info along with a sample blueprint

You can access the dungeon model from blueprint and get the room information. There is also a query system to help you. If you need help with anything specific, feel free to post in the forums