After releasing 1.5.0, I want to refactor DA to make it better work with other builders. Right now, the Editor paint tool and the dungeon config structure is tightly coupled with the Grid based builder. After the change, it will pick it up from the builder class so builders can provide their own paint tools and have their own configurations. I did this with the Unity version and it works nicely
@n00854180t Added a flag to obey the affinity variable
âLogic Overrides Affinityâ flag, if set works like before where the selector determines if a mesh is inserted into the scene. If unchecked however, on a successful selection, the Affinity field is applied. If the selector doesnât select it, then the mesh is not inserted and Affinity field is ignored either way
Thank you very much for your work! We ALL really appreciate what you do with this plugin. Just 3 words:
YOU ARE !
Keep up the good work! Iâm keeping an eye on the forums and on the website for version 1.5.0.
Everything about Dungeon Architect intrigues me. I think I will have to give this one a go sometime soonish. Keep up the good work, it looks fantastic!
I completely revamped the stair connection system and it is much more robust now.
Previously, I was considering each stair position and looking at the surrounding and deciding whether to create or now. This sometimes led to stairs not being created if none of the possibilities were good
In the new system, I collect all possible nearby stair configurations and assign weights to them and pick the best one after applying various constraints on it. The weight takes a penalty if it blocks something, or is in an undesirable place (entry / exit is blocked). Then I run this method three times creating stairs with different weight threshold.
The first time, it runs with a high weight threshold, so it creates stairs that are absolutely necessary (the ones coming out of doors, which have high weight). This creates a partially connected map with the important stairs already in place
The second time, it runs with a lower threshold (but greater than 0), so this rejects other stairs and only create ones which are placed in nice non-intrusive locations. By now most of the map is already connected with well placed stairs
Finally, the method is run again with 0 threshold to cover the few places where proper stairs cannot be placed in the previous step. Padding is added to the nearby corridors to make the stair accessible if the entry / exist needs it
This iterative approach makes it easy to add more constraints in the future if needed
Padding is added near the stairs to make it accessible
Hi, thanks for the update.
I have a question:
Is there some way to execute some logic when for example, an static mesh is placed.
Why? Well, if I need to attach a component to that mesh at runtime i can do it, or just when the dungeon is generated.
Great job on the stairs. It was a constant headache with my current projectâŚstairs wouldnât be there, or would connect to nothing so that some areas werenât accessible or be âcombinedâ together and you couldnât climb themâŚand I was using the default setup example file you provided with the sci-fi top down tiles.
I was trying to use the forgot password form on the CodeRespawn site, and it tosses me an error that I provide the wrong reCAPTCHA value. There is no reCAPTCHA on that page, so I canât reset my password.
Noticed a minor bug btw, which you might be able to include a fix for in the next version.
If you select multiple nodes (mesh nodes for instance) it will say âMultiple Valuesâ in the properties editor even if they are the same (e.g., position at 0, 0, 0, still says âMultiple Valuesâ).
Another bug is that when you multi-select and then change the values, it only updates the first one selected rather than all of them.
I grabbed the Actor transform detail customizer and did some changes to work with this. The Offset now comes on top since it is an important property. Multiple values and their editing works correctly
Version 1.5.0 is available. Itâs available for Win64. Mac coming soon (facing issues with Xcode after an upgrade)
Change Log (1.5.0)
Version
Major improvements in the stair connection system. It has been re-written to be more robust
Added selector affinity override flag, so that the selector logic can optionally respect the affinity variable
Improved the Graph node transform property editor for multiple selections. Moved the node offset to a separate category in the details view for better usability
Fixed a crash issue when some actors (e.g. characters) were spawned in map using the actor node
The theme file can now be referenced from blueprints. This lets you switch themes on a level during runtime with blueprints. New demo added showcasing this
Fixed various bugs with doors, platform volumes and stairs
This build has no breaking changes.
I havenât included the other builders (Isaac builder, indoor etc) as it requires some breaking changes and will be part of the next version.