Download

[SUPPORT] Advanced Turn Based Tile Toolkit

Hello, i was wondering how I can make unique tiles that gives units abilities. However, from what I’ve made it seems to pass the ability to the camera rather than the unit.

Hello Dr. Thanks for getting the update out so quick, it just arrived in my vault and am going to check it out once it’s downloaded. Have a great holiday and I will be checking in here to help as much as I can, I am sure others here will do the same, as you have some very talented users here.

Hello, I’m using ATBTT well. By the way, when will the function of a large unit become perfect?
I have to solve the problem that I see on the screen shot.
I need a large unit to navigate through the red dotted line…
Please teach me the way.

https://jira.line.games/secure/attachment/12213/12213_image-2019-01-28-11-40-54-382.png

I think I understood what you meant, but I should have been clearer in my answer. The toolkit does not have any procedural map building built in, but the line trace grid generation system should work well with many other procedural generation systems (several of which are available on the marketplace). You can of course run your own solution, and ATBTT gives you some things you can use. If all you want is to place random meshes on all tiles you could for instance create an array of meshes, loop through all of these and create an instanced static mesh component for each. Store a reference to each ISM in an array and loop through all grid indexes, picking from your tile ISMs and placing an instance for each. That is a potential starting point.

Could you explain what you want to achieve in a bit more detail? Do you for instance want a tile a unit can move on so that the unit gains a new ability (say from picking up a gun), or are you talking about something else?

Good to hear, Skulldug. I’ve found that providing support for game developers is fantastic compared to the horror stories one hears about other kinds of software support. People here are generally knowledgable, self-driven and tech-savvy, which makes things so much easier.

Hi, I’m afraid I cannot see your screenshot. Could you try reuploading or adding a link? As for your question, I’m not sure big unit functionality will ever be “perfect”. I’ve learned while developing this toolkit that every new feature added makes adding new features in the future more complicated, since they need to work together with every other feature. The large unit stuff affects so much other stuff (pathfinding, visibility, targeting of abilities, display of ability areas of effect etc. etc.) that making it work with everything else is prohibitively time consuming.

Still, I believe the underlying system I’ve made is solid and can be built upon by anyone who needs big units in their game. However, be aware that having big units in your game will require a lot of extra work. I can help you in this support thread with any specific problems you run into along the way.

OK. I uploaded the screen shot again.
I’m talking about Big Unit Pathfinding.
My only wish is that pathfinding is perfect.
Please look at my screen shot again and answer me.

Hmm, it works fine when I’m testing it. What version are you using? What variables have you altered on the GridManager and units?

hi knut

For some reason, I find it difficult to apply something that I thought will be simple enough, I hope that you may be able to direct me to the right place.

I tried to create the effect of the outline for the tile marker (similar to your 2d example)

I used the PostProcessVolume in the level and used the PP_Outline but its not working.

can you explain the steps I have to do to make it work?

By the way, the last upgrade you did to the turn manager really fixes a lot of the difficulties that were in the past (I have not checked it In depth)

thanks in advance

leo

leo

Hey all, after looking into the big unit stuff for @jh0620 I realized that I’d forgotted to fix something in the newest update, causing marker meshes to not resize and reposition appropriately for big units (this is unrelated to @jh0620’s reported issue, which I have not been able to replicate). I also tested out a few other things and realized I was a bit quick to send out the last update without doing some more testing. Just some very minor changes related to the example maps (Hydra’s Lair and JungleRaid). See my Trello for details (see the v.2.31 card). I have sent a new update to Epic already.

Here are the steps:

  1. Copy the PostProcessVolume from the 2D map
  2. In whatever ability you are using select the TileMarkers you want to render in custom depth. Set their material to something non-translucent (DefaultMaterial, for instance) and in its rendering settings set RenderInMainPass to false and RenderCustomDepth to true.

That should do it. Note that it can often look a bit wonky in a 3D-world, though, but it depends a lot on your levels.

thanks knut, didn’t put RenderInMainPass to false. its working fine

cheers

leo

I’ve tried this method a couple times and despite the output log verifying a random index from said array per iteration on the forloop, the entire grid’s tiles still instantiate from one sole element from the array. Any idea why this may be?

output log

modified bp

Thank you for responding. I hope to achieve multiple effects such as allowing a unit to move again, giving them an ability and/or to do damage around them. Also when tested out my current panels it should give them an ability however it seem that instead of the unit’s hitbox registering it hitting the camera hitbox instead for passing on an ability.

Jolly good

You have not fully understood how instanced static meshes work. When you create an instanced static mesh component, all instances tied to that component must use the same mesh. You are changing the mesh of the component, which causes all instances tied to that component to change. If you want different tiles you need multiple different components (one for each mesh). You can use multiple AddInstancedStaticMeshComponent nodes, set the static mesh of each and store the output (of AddInstanced…) in an array of instanced static mesh components. Perhaps you have three instanced (grass, dirt, stone). When you want to add a stone tile you would get element 3 from the instanced static mesh component array and add an instance of this component to the world.

I recommend checking out the 2D example (in the Maps/2D folder). In this map there are examples of picking up weapons, healing potions and trigger plates.

Hello, been following this since i purchased it some time ago. I like that it keeps getting updates and improvements. I would like to make a hex grid that is not rectangular in shape, but “hexagonal”, that is, it extends out a radius of hexes from a central hex. Does ATBTT currently support this and I don’t see it? If not, is this something that is doable with minor tinkering to the hex grid BP?

Hey Luthervian, you could do this by using a rectangular grid and just not spawning tiles on the corner locations. This is what I have suggested before, but I had some free time today, so I threw together something a bit more elegant.

First in BP_GridManager_Hex I set GridSizeY to always equal GridSizeY, as this would always be true for a hexagonal shaped grid:

Next, in the CreateGridLocations function, I use GetIndexesInRange (which is overridden to use hex math in BP_GridManager_Hex) to get grid locations in a hexagonal shape. I use some simple math to find the center and radius of the hex grid (note that I’m just replacing the code for a flat grid in the example below, but the same should work for the heightmap setup in the same function):

Next, in SpawnTileGrid I spawn the tile instances using the output of CreateGridLocations:

Finally, I make sure CreateGridLocations is run before SpawnTileGrid in BP_GridManager’s Construction Script:

Et voila:

Fast reply and extremely helpful and informative, thank you! I’m struggling with figuring this stuff out so this was very useful - again, thank you.

Hey Knut - still unable to figure out the initiative problem but we got something different to bother you with :(:smiley:
For some reasons the walk path spline and the cover markers when hovering over tiles are only displayed when holding the right mouse button - have you ever experienced something like this?

Happy to help!

What was the result of my last suggestion for the turn order stuff? What is the last action printed?

For the right mouse button stuff, what you’re seeing is probably the suggested path. In MoveAttack and some other abilities I added the option to display a suggested path (using the AI functionality of that ability). So I guess that part is working as intended, but you’ve somehow broken something in the regular hover functionality? I’d recommend printing strings along the hover execution chain (starting in the player controller, through Ability_Base, Ability and the specific ability you are using to see where it breaks.

Thanks for your reply - will check out your hints tomorrow - one more issue we found: AI controlled units somehow start their attack animations way too early - during the first moments of movement towards player faction units - seems like we broke a lot here :smiley:

Hi, Monokkel

I’ve been I’ve purchased your plugin and I have been trying to go through the tutorials and the example maps but I am having a little trouble. First off I can’t find the map Bunkers or the Heightmap_example folder. Also in the Jungle Raid demo map, when I play it, no UI shows up on the screen and once I move the first unit, all the units just start moving themselves in a never ending sequence, even my team. What am I doing wrong?

Thank you.

hi samtsion](https://forums.unrealengine.com/member/403687-samtsion)

1.the map Bunkers or the Heightmap_example [FONT=Helvetica,Arial,Verdana,sans-serif]is not in new build, only in the older version .
2. in the the Jungle Raid demo map if I remember correctly, I think the player on the map all set as aicontrolled that’s way they are moving by themselves - just unchecked the aicontrolled box in each of the player you want to control.
hope its help

leo