[SUPPORT] Advanced Turn Based Tile Toolkit

Yes, I’ve designed the system with this in mind, though I still require more testing to get it working perfectly.


I’m having an issue with the Hydra’s Lair example. Sometimes, the game will freeze just after moving the camera to an enemy, as shown in the screenshot. This seems to only occur when there are 1-2 other enemies on tiles separating the enemy whose turn it just switched to and the player. Is this a known issue? Is there a fix?

Similar to the person before i’m looking to make a first person dungeon crawler style, how would you suggest editing this sytem to fit that?

I’ll likely mess with it some but figure the creator may know a super easy way I won’t see

@gooberCP: This issue was not known. Thank you for bringing it to my attention. I have a small delay at the end of each AI unit’s turn just to make the game feel less rushed. Due to a mistake in how I have sequenced the event nodes in ATBTT_AI_Controller this delay is called twice for AI units that have friendly units between them and their target. The game doesn’t really freeze (fps stays consistent), but the delay is doubled. To fix this, make this change in the event graph of ATBTT_AI_Controller (at the far right of the Choose Target comment box):

Old:


New:

I will make sure to fix this in the next update.

@tamaster92: I have experimented with this before so I have a few ideas. First, of course, you will need to change the camera. The best way is to attach a camera to your player (pointing forward) unit and possess it. For movement (if you want something Grimrock-style) you would simply lerp the unit in the direction you are moving at a distance equal to the distance between tiles. Before moving you should check if the index of the tile you are moving into is in the edge array of the tile you are currently occupying (meaning it is allowed to move between these tiles). After moving you should remove the player unit from the Pawn Array at the index it previously occupied and insert it at the tile index it is now occupying.

Thanks for the response!

After implementing that change though, I’m seeing the same behaviour (gameplay freezes - game itself stays running) at this point:

To give some context:
-Came through the door to the right, hugged the wall down to the bottom of that room, then went through the door at the bottom. The health bar just off the bottom of the image is my player.
-The gameplay froze after the wizard moved, when the turn switched to the goblin.

(The walls are grey because I was testing adding new tiles. Also ignore the small door to the right of the image, it’s another test I’m doing.)

Thanks!
Chris

EDIT: Gameplay froze in this setup as well:

Ok, I have been able to replroduce your bug. I observed a similar bug a long time back, but thought I had been able to fix it. Maybe this is caused by changes in an Unreal update or unforseen consequences of my own updates. I will look into this and report back with a solution. I will probably first have the time tomorrow, but I promise I will find the cause and fix it as soon as I’m able.

Thank you for the continued support!

I look forward to your fix. In the meantime, I can continue to work on other aspects of the project.

Thanks!

Ok, I’ve found a solution to the game freezing, though I’m not 100% certain on the cause yet. It seems like one of the later UE4 updates has caused an issue with using event dispatchers on child actors, which screws up using my Pathfinding per Tick macro in the grid manager child actor in the 2D game example. You can prevent the game from freezing by replacing the Pathfinding per Tick event call in the Search for targets behind friendly units of ATBTT_AI_Controller with a regular pathfinding function. This should probably still not cause a framerate drop when calculating pathfinding. Here is what to replace:

Old:

New:

I will look more into this to discover the true source of the issue. It does not occur with the regular toolkit, only the 2D example. As I mentioned it probably has to do with event dispatchers not working properly for child actors.

Hi ,

This looks like a great toolkit. I am really excited to start working with this. I was wondering if there was a simple way to port this project into a C++ project so I could use the combination of blueprints and C++. I tried by creating an empty C++ project and then migrating the assets from this project into that C++ project. However, my first pass was unsuccessful because I could not get the mouse to recognize the input to the pawn (i.e select the grid to move to). I figure this has something to do with the player controller and perhaps re-parenting, however I am not exactly sure. Anyways, any help on this front would be appreciated.

Thanks,

Hello grizfb75. After migrating you will need to copy the config files (Unreal Projects[Project Name]\Config) from the project you created with ATBTT to your new C++ project. The config files contain input and my custom trace channels among other things.

Would it be possible to use the Advanced Turn Based Tile Toolkit in Unity, too?

No, sorry, but it is Unreal Engine only. Unity has a somewhat similar toolkit called the Turn Based Toolkit, though: Unity Asset Store - The Best Assets for Game Making

It lacks some of the features of ATBTT, such as support for very large or multi-layer grids, but ot has other features, such as a built-in ability system. The guy who makes it seems to provide great support as well.

No problem. I was just curious.

I think it would be fair to sell further upgrades of your toolkit as dlc, because your toolkit and especially your support are amazing.

Sorry for the delay, I’m moving in my new house hand I had no internet for a few weeks. I’ll do that as soon as I can :slight_smile:

I have had others suggest that before, and I have briefly considered it. However, I think it is better for users to know that when they buy the toolkit they buy the entire thing, and can expect all future updates to work for them. It also makes it easier for me to provide support if there are not multiple different versions being used.

I will do my best to answer, in that case. However, know that I am away on my honeymoon and will not have access to my computer with UE4 until I’m back in three weeks time, so I will not be able to test things out myself or paste screenshots of blueprints until then.

No worries, I’ll try to restart my project from start, I’ll figure myself what I did wrong. Congrats for your wedding then and enjoy your honeymoon ! :slight_smile:

Feel free to ask me questions here nonetheless. I might be able to answer even without being able to consult the toolkit itself.

Hey . Love the toolkit so far. Quick question though. You’ve got a game mode set up but I was wondering if it would be possible to use the ATBTT to create a board game in a first person game without changing game modes out of the first person game mode. Thank you for your help!

Hiya there I realise this maybe already asked but its really hard to really check, I mean this is post 970 xD

I’d like to ask about implementing a few different mechanics, I’ll bullet point them and hopefully ones that have already been asked you can direct me to or whatever :slight_smile:

-Fog of war. Ideally I’d like it that the squares outside of a units range would be dark or non viewable?

-Doors. I’d like to better control where players can move and I think doors would so this however implementing that with unit interaction etc I imagine would be difficult?

-Camera blocking. I’d like to limit where the camera can move so that players cannot move the camera off the map however when I tried doing this, I cannot stop the camera from moving away from the grid.

-Wizards or custom units. I realise that you’ve done a video on both importing your own units and destructible pawns, this is great as it is one of the mechanics that a unit I plan to bring into my game. however I would also like them to have the ability to heal or defend other units, is this a possibility? or will it be very difficult to implement?

-Objectives. I would like to make objectives in levels so the win conditions are not simply kill all the enemy. For example steal/loot/pick up this thing, save/capture/help this unit, kill this particular unit. how could I do this?

-One team progressing through levels. So the idea of my current game is that I am going to be doing a campaign of a series of levels that the player has to take their team through. Meaning that players will have to choose their team at the start of the campaign or perhaps at the beginning of certain levels eg choose how many melee, ranged and wizard units you want in your team. This also means that teams have to progress through the levels so the game has to bring them from level 1 to level 2 which I am not sure how to do.

Thanks in advance! I realise this is a lot to ask so I apologise about that and completely understand it may take a while or not be possible to do everything, but these are things I’d like to do and if its possible that would be great =D

Actually , I got everything working within our framework.