While working on new maps, we ran up against a bunch of things that needed to be improved or fixed with Merlin’s system for user-made interactable objects. In the video, you can see some new lighting assets we’ve made using these improvements:
Basically, making custom interactable objects like the lights in the video is now much easier, and that template can be used by map makers using the SDK.
Some of the custom light switch options available to map makers using the SDK
The interactable lights in the video are also available as default spawnable objects in the VTT itself, that can be spawned in any level.
Next up, we are going to be adding day/night cycle controls, then releasing a couple of maps we’ve been working on in collaboration with some creators.
(We have mainly just been posting update blogs straight to Steam and Discord where it’s much more visible, but the website was looking a little barren as a result, so here is a repost)
We streamed our first playtest of a combat session with 3-4 players yesterday, and predictably ran into some issues. Working hard now on fixing them!
Problems encountered during the test stream
My internet connection cut out completely for several seconds (no discord, no stream, players kicked from Foundry + Merlin) 3 or 4 times over the course of 2 hours. Unsure if this was actually caused by Merlin somehow or was just a poor connection. Either way, Merlin needs to deal with reconnection better. These crashes then caused a cascade of types of problems we hadn’t encountered before, when players were reconnecting, and Foundry was recognising their connection and logging them back in in a way that skipped some of Merlin’s initialisation code. These are all the problems that I think are explained by this:
Chat on left side of screen when reconnecting
On logging back in, players could no longer open their sheet via Merlin UI
Remi rejoining after server crash could not login to Foundry. Had to connect through a browser.
Alastor when reloading got the Foundry UI stuck on his whole screen. Half-fixed with debug hotkey, but Foundry UI was still messed up.
Attack rolls from the character sheet sometimes wouldn’t show up in the Foundry log (this could also have been some other bug within Foundry, or due to very slow connection)
Foundry’s connection got very slow at times, meaning messages took like 10+ seconds to send and sheets were slow to open on clients, even if local framerate was fine. This is probably because my upload speed is not good enough to run both the Unreal and Foundry servers at once. Would be fixed by using a dedicated server for Foundry, which is what we’ll do next time.
Other weird Foundry issues which may or may not be fixed with the above two issues:
Compendium got stuck open on my screen and wouldn’t close
Journal entries get stuck on the screen for players
Foundry UI debugger incredibly slow when framerate low. Not useful as an emergency way to fix UI issues.
Could not cast blindness or change its number of prepared casts, for some reason. Probably a Foundry bug not Merlin as it persisted in another browser.
Remi on rejoining Foundry suddenly didn’t have authority to view his sheet. Possibly it was just very slow to load?
These bugs were unrelated to Foundry:
Crashed clients (not server) when I deleted an object
Opening hierarchy tab causes a crash
Strange loss of control of camera when I selected the knight at one point. Like I was being forced to rotate around a fixed point instead of moving freely. No idea what caused this.
Left-click then stopped working completely, probably invisible UI was in the way
Players would sometimes get ‘no creatures available’ when reconnecting, when they did have creatures available in the scene. Fixed by relogging. Happened at least twice.
Missing / needed features:
Start combat from Merlin
Measurement tools for players to plan their moves
GM indicator of player connections, Merlin and Foundry
Way for players to refresh/re-log in to Foundry in Merlin
Way to manually or auto-save the scene in case of a crash
Tools to resize + rotate objects (useful for improvising props)
Tool that automatically, or more conveniently, sends me the crash log when a player crashes
Tools needed to improve framerate, which is vital for the Foundry UI not chugging:
Video settings menu with a lot of options
Some system for controlling lighting and postprocess presets per-map. Need to be able to turn a lot of stuff down for the potato PCs like mine.
Other minor issues:
Slow to re-destroy wall on reconnect
Sometimes can’t click the transform gizmo if other stuff gets in the way
Stream issues:
Wrong resolution, bottom-right 1/3rd was cut off
Voice drowned out by Foundry audio
My mic still too quiet overall
Overall, it’s not that much work to fix all of this. We will be posting updates and tick things off from the above list on our discord server as we work our way through it.
We want to explain in this post how Merlin’s content creation pipeline works, which as well as being instructive if you plan to use it, really explains its reason for existing in relation to other upcoming 3D VTTs.
Practical demonstration
Whereas our main competitors, Menyr and Project Sigil, are going the route of making their own, very user-friendly, creation tools built into their software, our approach is to simply make importing stuff from the Unreal Editor very easy. In this sense, Merlin is more like a mod that makes the Unreal Editor into a VTT, than a fully self-contained VTT.
Unreal developers, including 2.5D animated map creators like Beneos Battlemaps, Living Realms and Dransky, to name but a few, already have a huge number of extremely advanced content creation tools at their disposal, many of which are completely free, so why not just make 3D VTT content with these existing (and not-yet-existing) tools?
Example: using Houdini to generate very detailed landscape
Unreal’s sample procedural generation tools
So Unreal’s tools, and compatible external tools like Houdini, will continue to get more powerful and easier to use, while users of e.g. Menyr and Talespire will only ever have available whatever specialised, gamified tools those smaller dev teams manage to create. Look at Unreal 5.5’s update video for an idea of the kinds of new capabilities we are constantly being given in Unreal:
What this means is that creating content for Merlin vs. for our rival programs is much more difficult, but has much more potential scope, because broader and more powerful (but less specific) tools.
This in turn means that we expect the amount of content produced for Merlin to be smaller than it is for our competitors, but for the level of quality to be higher, as making anything at all using professional gamedev tools has a much higher barrier to entry. We therefore expect that the majority of this content will be produced by professionals looking to make a profit (our company,CORE Games, chief among them), and that gamers looking to play TTRPGs will mainly buy this content ready-made and then make minor personalisations in Merlin itself, rather than spending their time dicking around in the Unreal Editor in preparation for their Sunday gaming session.
Below are some examples of existing tools that we already use to create content for Merlin:
Houdini – among other things, can be used to generate detailed landscapes to import to Unreal.
Apparance – good simple procedural generation framework.
We also plan to eventually sell our own Unreal Editor tools and asset packs (for example, a dungeon generation kit) for use by GMs on Fab, and expect that other creators will want to do the same.
Unreal Editor -> Merlin Merlin’s export process is simple: once you’ve made a map (which can contain things like complex blueprints and cutscenes) in the Unreal editor, you press a button to turn it into a zip-like file that can be read by Merlin. Check out the video at the top of this post for a demonstration. These package files can then be shared directly, or uploaded to our store, which gives us a small cut so that we can continue to develop Merlin, and also IDs your package against the account of the GM using it, making it harder to pirate.
Modding Because of the way Merlin is structured, it’s also very easy for others to add on entirely new systems that change the software’s capabilities. We plan to eventually add many of the following systems ourselves, but equally another developer could step in and decide to release their own DLC system that does, for example:
Inventory management and simulation
Spellbook with 3D effects, detailed customisable parameters like web viscosity etc.
Built-in character creator
Combat tracker
Weather effects
Natural crowds
NPC conversation system
etc.
Compatibility with other mapmaking software Another avenue that we could potentially use to generate content is to create compatibility with other 3D mapmaking tools like Talespire and Dungeon Alchemist, for example. GMs could use these tools to create their maps, then export them to Merlin to use with its more sophisticated GM’ing tools.
Ideally, we would need the cooperation of these programs’ creators to create a properly integrated tool, but with both of the tools above there is nothing stopping a community member from releasing a free tool that reads their map format strings into an Unreal Editor level, which would therefore make them compatible with Merlin.
TL;DR Compared to our competitors, creating content for Merlin is more difficult but has more potential scope, and thus we expect it to mostly be done by pros and sold pre-packaged to more casual GMs.
That about wraps it up. Development is continuing rapidly, and our next update post covering Foundry integration should be out in a week or two. After that we’ll be streaming a showcase of a live game played in Merlin, then the first Steam demo.