Dungeon Architect

Hi all,

Does anyone happen to know if it is possible to abort building dungeon with blueprint?
I need to rebuild dungeon if the number of certain markers is insufficient.
I thought about calling ‘Destroy Dungeon’ node after markers have been emitted but I assume the rest of the building process would gonna take place anyway, so I’m looking for more stable alternative.

If anyone knows, please let me know.

Is there any way to use grid builder with custom rooms like meshes (similar to snap builder). Like, I want corridors to be procedurally generated to connect rooms I’ve created myself

[USER=“28980”][/USER], Does the Snap Builder support custom layouts now for connecting rooms?

Hey everyone, the snap builder went through some major improvements. You can design your snap modules in level files (as opposed to blueprints)

It also supports level streaming. The level streaming logic is based on the dungeon graph’s room connection, rather than a simple distance based check. You can load rooms up to a certain depth from where you are standing. In the video I have the depth set to 1, so rooms directly connected to the current room are shown

Level Streaming Support
watch?v=GEAVsef1TgA

. Do you know if it will break compatibility with older snap builder dungeons that were set up with blueprints? I’ll likely switch over to levels, since the editor is better, but my game runs on blueprint snap modules right now.

When might we expect 4.18 support? Thanks!

[USER=“28980”][/USER] - Can we get an example like this one for UE4? The stronghold city builder.

http://coderespawn.github.io/dungeon-architect-quick-start-guide-unity/stage/assets/images/stronghold_02.jpg

>> You can change your light’s mobility to either static or movable from the theme editor.

Note that this does not actually work (this was mentioned a couple months ago). The static/movable setting is ignored. The only workaround that I’ve found is to put the light in a BP and use that BP node for movable lights.

Something odd I just noticed (after a year and a half of use!). With the grid builder (possibly other builders too) there doesn’t seem to be a way to go from a cell ID to a cell. IOW, how do I get the cell given just a cell ID? I can get all the rooms and corridors and perhaps run through them looking for my cell ID, but that seems like a hack. Am I missing something? Given how often you need a cell it seems like this is desirable functionality (the fact that I haven’t needed it for over a year notwithstanding!).

[USER=“28980”][/USER] - Is there a way to detect a house near a road in the city builder so I can spawn a special road with a driveway if one is present?

Edit: BTW I found an oversight in the city builder for the configurable NxN markers (City Block Dimensions) in that the face-to-road functionality doesn’t always work - for some subset of roads, the buildings will be facing away (180) from the road. Only happens with the City Block Dimensions, not the regular 1x1 spawning.

As an aside, it’d be really nice if it were possible to make the default building size configurable separately from the road tile size.

Edit again: Tossing FaceHouseTowardsRoad(Cell); into the loop for the larger buildings made it work in most cases.

I’m just getting started with Dungeon Architect, and want to link it in with the save game system I’m using.

Way back in an update to Version 1.1.3, I note you made the following change -

“Added NotBlueprintable to Dungeon actor’s UCLASS macro so that the dungeon actor cannot be converted into a blueprint”

Is there a specific reason you did this, because now I can’t create a blueprint with a GUID reference my save game system needs to not destroy/recreate the Dungeon object in a scene (on reload)?

Thanks.

I saw in your tutorial there was a way to make a new transform logic by clicking the plus sign in the theme file but now when clicking the plus sign all it does is let me choose from a list of 20 pre-made transform logics… where is the option to create a new one?

Just make a new blueprint and search for transform and find the dungeon transform logic class as the parent.

Hey everybody,

I am using the Floorplan builder to build a bunker. Does anybody know if a way to create selection logic for the floor plan to only select floor sections that are adjacent to walls? The grid selection logic appears to have many more options that are missing in the floor plan selection logic?

thanks for any advice

I need build! 4.18 support? Thanks!

new edit* figured it out… just went into the builder blueprint and switched current x → X to current x → Y on the get random offset node

edit* im using the straightlinebp as the builder class and i understand now why rotating the dungeon wont work… because it will always try to build in the direction it is programmed to which is the x axis, so that brings me to my new question: how can i edit the blueprint builder so that it builds straight lines in the Y axis instead of the X axis

old question:
how can I rotate an entire dungeon, i tried placing one on the scene and rotating it on its Z axis by 90 and it doesnt affect it all… i then tried to spawn an actor from class of dungeon and setting rotation to any value does not affect it at all…

Hello again,

I have another question.

I have a setup like the one in the image attached. First the ground decorations are spawned in, followed by the enemies. For simplicity, they are all just spawned with an affinity of 0.3. However, the also spawn inside the ground decorations. I have tried using example provided in the guide, where the spawn logic has “is near marker”. This causes no enemies to spawn. Im guessing because technically there is a decoration marker everywhere, but not all of them are used. Is it possible to determine if a market has been activated and spawned something, and only prevent spawning near those markers?

Hey,

When trying to package my game i get the following error right after cooking.
The game runs fine even in standalone, i just can’t package it any more.
I made a lot of changes since last time i cooked the game so it’s difficult to identify when the error started to occur.
As far as DA is concerned, i modified a few themes and added a Grid Dungeon Transformer, nothing fancy.
The error seems to point to DA’s ShutdownModule function.
Any idea where i could look at ?


LogWindows: Error: begin: stack for UAT
LogWindows: Error: === Critical error: ===
LogWindows: Error:
LogWindows: Error: Fatal error!
LogWindows: Error:
LogWindows: Error: Unhandled Exception: EXCEPTION_ACCESS_VIOLATION reading address 0xffffffff
LogWindows: Error:
LogWindows: Error: UE4Editor-CoreUObject.dll!0x000000003A364AAA
LogWindows: Error: UE4Editor-UnrealEd.dll!0x000000002ACB3A04
LogWindows: Error: UE4Editor-UnrealEd.dll!0x000000002AC98F1A
LogWindows: Error: UE4Editor-UnrealEd.dll!0x000000002AD23090
LogWindows: Error: UE4Editor-UnrealEd.dll!0x000000002AD3DA47
LogWindows: Error: UE4Editor-DungeonArchitectEditor.dll!FDungeonArchitectEditorModule::ShutdownModule() [d:\build\++portal+dev-marketplace+full\sync\localbuilds\plugintemp\hostproject\plugins\dungeonarchitect\source\dungeonarchitecteditor\private\dungeonarchitecteditormodule.cpp:136]
LogWindows: Error: UE4Editor-Core.dll!0x000000002DC2B787
LogWindows: Error: UE4Editor-Cmd.exe!0x000000006E0A2E26
LogWindows: Error: UE4Editor-Cmd.exe!0x000000006E0A39A5
LogWindows: Error: UE4Editor-Cmd.exe!0x000000006E0A39EA
LogWindows: Error: UE4Editor-Cmd.exe!0x000000006E0B02D9
LogWindows: Error: UE4Editor-Cmd.exe!0x000000006E0B1083
LogWindows: Error: .DLL!0x0000000079921FE4
LogWindows: Error: ntdll.dll!0x0000000079C6EF91
LogWindows: Error: ntdll.dll!0x0000000079C6EF91
LogWindows: Error:
LogWindows: Error: end: stack for UAT

Thanks !

I just came to report the same thing! There is also something up with compiling c++ games that causes it to fail like this:


UATHelper: Packaging (Windows (64-bit)): UnrealBuildTool: [4/4] Link DACPP_BP.exe
UATHelper: Packaging (Windows (64-bit)): UnrealBuildTool:    Creating library d:\UE\DACPP_BP\Binaries\Win64\DACPP_BP.lib and object d:\UE\DACPP_BP\Binaries\Win64\DACPP_BP.exp
UATHelper: Packaging (Windows (64-bit)): UnrealBuildTool: UELinkerFixups.cpp.obj : error LNK2019: unresolved external symbol "void __cdecl EmptyLinkFunctionForGeneratedCode1DungeonArchitectRuntime(void)" (?EmptyLinkFunctionForGeneratedCode1DungeonArchitectRuntime@@YAXXZ) referenced in function "void __cdecl UELinkerFixups(void)" (?UELinkerFixups@@YAXXZ)
UATHelper: Packaging (Windows (64-bit)): UnrealBuildTool: UELinkerFixups.cpp.obj : error LNK2019: unresolved external symbol "void __cdecl EmptyLinkFunctionForGeneratedCode2DungeonArchitectRuntime(void)" (?EmptyLinkFunctionForGeneratedCode2DungeonArchitectRuntime@@YAXXZ) referenced in function "void __cdecl UELinkerFixups(void)" (?UELinkerFixups@@YAXXZ)
UATHelper: Packaging (Windows (64-bit)): UnrealBuildTool: UELinkerFixups.cpp.obj : error LNK2019: unresolved external symbol "void __cdecl EmptyLinkFunctionForStaticInitializationDungeonArchitectRuntime(void)" (?EmptyLinkFunctionForStaticInitializationDungeonArchitectRuntime@@YAXXZ) referenced in function "void __cdecl UELinkerFixups(void)" (?UELinkerFixups@
@YAXXZ)
UATHelper: Packaging (Windows (64-bit)): UnrealBuildTool: d:\UE\DACPP_BP\Binaries\Win64\DACPP_BP.exe : fatal error LNK1120: 3 unresolved externals
UATHelper: Packaging (Windows (64-bit)): UnrealBuildTool: ERROR: UBT ERROR: Failed to produce item: d:\UE\DACPP_BP\Binaries\Win64\DACPP_BP.exe
UATHelper: Packaging (Windows (64-bit)): UnrealBuildTool: Total build time: 40.47 seconds (Local executor: 0.00 seconds)
UATHelper: Packaging (Windows (64-bit)): CommandUtils.Run: Run: Took 41.0459162s to run UnrealBuildTool.exe, ExitCode=5
UATHelper: Packaging (Windows (64-bit)): Program.Main: ERROR: AutomationTool terminated with exception: AutomationTool.CommandUtils+CommandFailedException: Command failed (Result:5): C:\Program Files\Epic Games\UE_4.16\Engine\Binaries\DotNET\UnrealBuildTool.exe DACPP_BP Win64 Development -Project=d:\UE\DACPP_BP\DACPP_BP.uproject  d:\UE\DACPP_BP\DACPP_BP.upro
ject -NoUBTMakefiles  -remoteini="d:\UE\DACPP_BP" -noxge -NoHotReload -ignorejunk. See logfile for details: 'UnrealBuildTool-2017.11.14-08.47.54.txt' 
UATHelper: Packaging (Windows (64-bit)):    at AutomationTool.CommandUtils.RunAndLog(String App, String CommandLine, String Logfile, Int32 MaxSuccessCode, String Input, ERunOptions Options, Dictionary`2 EnvVars, SpewFilterCallbackType SpewFilterCallback)
UATHelper: Packaging (Windows (64-bit)):    at AutomationTool.CommandUtils.RunAndLog(CommandEnvironment Env, String App, String CommandLine, String LogName, Int32 MaxSuccessCode, String Input, ERunOptions Options, Dictionary`2 EnvVars, SpewFilterCallbackType SpewFilterCallback)
UATHelper: Packaging (Windows (64-bit)):    at AutomationTool.CommandUtils.RunUBT(CommandEnvironment Env, String UBTExecutable, String CommandLine, String LogName, Dictionary`2 EnvVars)
UATHelper: Packaging (Windows (64-bit)):    at AutomationTool.CommandUtils.RunUBT(CommandEnvironment Env, String UBTExecutable, FileReference Project, String Target, String Platform, String Config, String AdditionalArgs, String LogName, Dictionary`2 EnvVars)
UATHelper: Packaging (Windows (64-bit)):    at AutomationTool.UE4Build.BuildWithUBT(String TargetName, UnrealTargetPlatform TargetPlatform, String Config, FileReference UprojectPath, Boolean ForceMonolithic, Boolean ForceNonUnity, Boolean ForceDebugInfo, Boolean ForceFlushMac, Boolean DisableXGE, String InAddArgs, Boolean ForceUnity, Dictionary`2 EnvVars)
UATHelper: Packaging (Windows (64-bit)):    at AutomationTool.UE4Build.Build(BuildAgenda Agenda, Nullable`1 InDeleteBuildProducts, Boolean InUpdateVersionFiles, Boolean InForceNoXGE, Boolean InUseParallelExecutor, Boolean InForceNonUnity, Boolean InForceUnity, Boolean InShowProgress, Dictionary`2 PlatformEnvVars, Nullable`1 InChangelistNumberOverride, Dictio
nary`2 InTargetToManifest)
UATHelper: Packaging (Windows (64-bit)):    at Project.Build(BuildCommand Command, ProjectParams Params, Int32 WorkingCL, ProjectBuildTargets TargetMask)
UATHelper: Packaging (Windows (64-bit)):    at BuildCookRun.DoBuildCookRun(ProjectParams Params)
UATHelper: Packaging (Windows (64-bit)):    at BuildCookRun.ExecuteBuild()
UATHelper: Packaging (Windows (64-bit)):    at AutomationTool.BuildCommand.Execute()
UATHelper: Packaging (Windows (64-bit)):    at AutomationTool.Automation.Execute(List`1 CommandsToExecute, CaselessDictionary`1 Commands)
UATHelper: Packaging (Windows (64-bit)):    at AutomationTool.Automation.Process(String] Arguments)
UATHelper: Packaging (Windows (64-bit)):    at AutomationTool.Program.MainProc(Object Param)
UATHelper: Packaging (Windows (64-bit)):    at AutomationTool.InternalUtils.RunSingleInstance(Func`2 Main, Object Param)
UATHelper: Packaging (Windows (64-bit)):    at AutomationTool.Program.Main()
UATHelper: Packaging (Windows (64-bit)): Program.Main: AutomationTool exiting with ExitCode=5 (5)
UATHelper: Packaging (Windows (64-bit)): BUILD FAILED
PackagingResults:Error: Error Unknown Error

I have tried both 4.16.3 and 4.17.2 with clean projects and just a ground element in the theme.

Any fresh news about 4.18 support?
I’ve read on the marketplace forum that Alì has already compiled the plugin for the new version.

When can we expect the plugin version upgrade?