Hello. I was wondering how do you do turn based movement in unreal engine? Something like Xcom, Fire Emblem Or Disgaea. I cannot find any tutorial in english. How do you implement turn based movement in Tactical RPG in unreals blueprints. Thank you any help.
hi,
Well, a good idea is to break up what you want to do into parts. if you break down the movement for those games it seems to be tile based. so you pick an end point and your character will the move to where you picked.
you could make a blueprint for the floor tiles and have your character move to the center of the clicked tile. you would want to look up path-finding algorithms for more detailed movement specifically A*Path-finding seems to be what will help you out.
Some really good videos explaining a*:
A* (A Star) Search Algorithm - Computerphile
Dijkstra’s Algorithm - Computerphile
UE4 - A* Pathfinding Tutorial Fast Version
the last one is an implementation tutorial but i highly recommend you familiarize yourself with the path-finding first before you jump into the tut since its not narrated.
I had a project similar to this a few months ago and had to do A LOT of research to get it off the ground i mean i was practicing the algorithms on paper! LOLz
as for the turn based part every character could have a counter that when it fills it is their turn to move and just add its speed value to its counter on tick that way faster characters counter fills up faster and slower characters fills up slower.
final fantasy tactics dose this extremely well i recommend looking at how they did it in the battle mechanics handbook located here
your looking for Appendix A the section on game flow but the entire thing is worth a read
Sorry I can’t just point you to a clear tutorial but armed with this and your own research capabilities your on your way to making a turn based rpg.
cheers bro and best of luck!
Hello. Thank you for your advice and help. And you also have best of luck on your projects. And when you say counter. you mean like little clock counter something like that. then when is their turn then they move.
Additional, would it be similar for AP turn based movement. Like in Wasteland, Shadowrun, Divinity Original sin. Or is it different. you dont have to anwser if you don’t want to.
sorry, not familiar with the AP based movement but:
ok so lets say your character has 5 speed and 3 ap
every loop we would add 5 to his count time and check if it is more than 100. if it is, we allow the character to take his turn. in order for the character to move he requires ap since he only has 3 he can only move 3 tiles. we can use Dijkstra’s Algorithm to determine the area around him where he can move based on the ap he has. then reduce the ap by 1 every time he passes over a tile.
this isn’t the only way to do it. probably not even the best but its a good idea to get started.
Ok, thank you. So I was aiming for like Disgaea or Xcom turn based system. Like in a chess you do your action and then your enemy does it. So would it be similar to apply this system from Final Fantasy Tactics count time system. Thanks for help again.
EDIT: I did some research and found this. So I understood FFT system better. but I was thinking of multi-alternating battle system. And Banner Sagas alternating system isn’t halfbad. Final Fantasy Tactics & Combat Initiative Systems | Game Design Guide - YouTube
not really sure what you mean by a multi-alternating battle system. i looked into banner saga (i havent played it) but as far as i can see the turn system for the characters on the board is almost exactly like FFtactics.
but from the comment i think you want your opponent to have a turn with one of his characters then you get a turn with one of yours.
maybe you can do this with a separate clock tick cycle for each player. so player1 clock-tick cycle executes until his first character gets an action then player2 clock-tick cycle executes until his first character gets an action then back to player1
Clock-tick recap
Final Fantasy Tactics & Combat Initiative Systems Minute 8:25