[SUPPORT] Advanced Turn Based Tile Toolkit

Yep, I’m including the function I made when you asked a while ago. To be pedantic it doesn’t exactly connect “separate” grids. Rather, the grid manager is always 999*999 tiles, just with most of the tiles being empty. The new function updates tiles in a chosen square area based on the collison of meshes placed there. It should be pretty well suited for what you are describing, though :slight_smile:

A correction to what I said about converting from UE4.24 to 4.25 being unproblematic: It seems like multiplayer is not working correctly, with the TurnManager not detecting the number of players joining. I will have this fixed before I send Epic the new update.

That’s great! Any chance you will make some kind of tutorial to demonstrate how to use it once it is up?

A series of tutorials is underworks for how the toolkit sets up connections between tiles (edges), where I will cover some of this. It is pretty straightforward, though. Input a TileIndex (or location), set a range and the UpdateTilesInRange function will automatically add all tiles in that area to the grid.

JOB POSTING: (With Monokkel’s permission)
Looking for someone experienced with the ATBTT toolkit for some paid work.
As a solo dev also doing freelance im looking to delegate some of my personal work to speed up game development.
The work will be focused around making some custom abilities for my turn based strategy game.

If you are interested please pm me or email me at [EMAIL=“”]
This post will be removed when the position has been filled.

I’ve sent version 2.6 of ATBTT to Epic! This update includes several bug fixes, some reorganization and a couple of minor additions. Many of the bug fixes are specific for networked multiplayer. If you’re making a networked multiplayer game I highly recommend switching to this new version. If this is not practical, let me know and I will describe the most important changes that need to be made.

v.2.6 (Being processed by Epic)

  • Option to restrain Grid Camera panning to the bounds of the grid.
  • Added the UpdateTilesInRange function, which simplifies adding new tiles and updating edges during runtime
  • Added several getters to FAction, making it simpler and cleaner to access action variables
  • Improved updating of the hover mesh and path spline on networked clients
  • Several network-related bug fixed
  • Many other small fixes and changes (see full log on Trello)

Hope you like it :slight_smile: It should hopefully be live in a couple of days.

hi knut

thank you very much for the new update


Hello all,
i am looking to implement a system that when the round is over I use a random int to simulate dice and what ever the number is the max amount of movement each character can move. How would I go about this ?

Thanks again for your help

Hope you’ll like it :slight_smile:

Simulating dice is pretty simple. Use the GetIntegerInRange node to simulate a dice throw. The end of a turn and the start of a new is triggered by the BeginNewTurn event in BP_TurnManager. Here you would add your custom code. Loop over the InitiativeOrderActors array or use GetAllActorsOfClass(BP_Unit) and for each set their MaxMove and CurrentMove to your randomized values. This should do the trick, I belive.

Hi @Monokkel

I want to be able to end the game based on a property of a Faction. I would like this variable to be increased based on passage of time. Ideally, I’d like to show this counter updated on the screen on a regular basis, say every second, and fire an event or end the game when threshold is reached.

What would you say that the relevant objects, events and modifications to accomplish this be?

Apologies if something similar has been answered before. Feel free to point me to an earlier post if there is one. My search came up empty.

Thank you for your continuing support.

Do you have any updates on when Epic is pushing the new version? I assume it isn’t up yet because the marketplace page still says 4.24 is the newest version.

Hi yucu, apologies for the late answer. I’m afraid I don’t completely understand the question, though. Could you elaborate on what you want to achieve mechanically? Is this a turn timer that ends the turn when it has reached a value? Without knowing more of exactly what you want to achieve it is difficult to make specific recommendations. It sounds like something you could do in BP_TurnManager. Have an integer variable that you increment every second, bind this integer to a text widget, check the value in the turn manager each time it is incremented and fire you end game event when it reaches a specified value. Something like that, though it depends on exactly what you want to achieve.

I have not heard from them yet. Apparently the marketplace team is pretty overwhelmed at the moment. Seems like a lot more people have begun submitting assets during Corona lockdown.

Hellow guys, Im trying to create dedicated server, and play my project with the friend, but I can’t figure out what’s wrong. I’ve already tried about 3-4 tutorials but it won’t help. here are my configs and logs. Also, i have a custom session, I’ll attach it.

The marketplace page now says it is compatible with 4.25, does that mean the update was pushed? Is the only way to find out is create a new project to see the differences?

Yep, it is out! If you are allowed to create a new ATBTT project for 4.25 through the launcher that means the update is live.

Setting up a dedicated server in C++ is not something I know anything about, I’m afraid.

Hey Monokkel - I’ve been lurking for a very very long time. I purchased the toolkit back in July of 2017. I wanted to say that you have been extremely Epic in your support to everyone, so thank you. I find myself waiting to jump in as you keep improving on the content of this asset. I should probably take this “extra” time and actually start. In any case…you have a great product and even better support. Thanks again.

hi mono

in the new build i get a warning if i try to run the experimental- split animation map.

when you climb on a ladder get get this warning - Attempted to access index 0 from array ‘Actors_48_C65EEEEA4722265004E44098B2A1335D’ of length 0 in ‘/Game/AdvancedTurnBasedTileToolkit/Core/FAction.FAction’


Thanks for letting me know, leo. I need to be more vigilant in testing the experimental content when there is a new engine update. I’ll look into it soon and find a fix.

This same question has been asked before a bit further down in the question here. I’ll paste in my previous reply:

Sure, creature stacks in HoMM are functionally the same as single units with a special additional “CreatureCount” health variable that also affects damage. That should be simple enough to set up. Add an integer variable to your unit blueprint that tracks the number of creatures in the stack. When the unit takes damage look at the remaining health after taking damage and set the number of remaining creatures equal to ceil(CurrentHealth/IndividualCreatureHealth). When the unit attacks other units multiply its damage by CreatureCount. You shouldn’t need much more than that. Let me know in my support thread if you need any more assistance.

send an image more specific hou to add multiple crestures like heroes of might and magic

Hi Monokkel,

I know we’ve talked a little about this but I was wondering if I could get some more help / clarification on the tile connecting feature.

I am still admittedly not well versed in your toolkit, I am still wrapping my head around everything it does and how. I am more designer than programmer.

Before this new update I assumed you could not connect separate grids but I recently I discovered I could use the heightmap feature to connect multiple blueprints as long as they’re all inside the bounding box. Is this the route I should be taking? I will be needing the ability for the player to draw a random blueprint tile (from an array of like 32 pre-made blueprint tiles) with a 3x3 grid and let them connect it to the most recent tile on the board, they will also be able to pick from 2 different sides to connect it.

In the new update, what new feature did it add that helps me accomplish this?

Sorry if you felt like you answered this already,