My A* Pathfinding blueprint or: How Not to Build a Blueprint

To describe it briefly it will be a squad based, procedural dungeon crawler. Think of a simplified X-COM/Temple of Elemental Evil with randomized worlds and dungeons.

Nice. Throw in diablo/borderlands style loot and sold! :slight_smile:

download link no longer works :frowning:

This is a pretty old version of my pathfinding solution from more than half a year ago, so I hope I still have it lying around. I’m away from home at a conference at the moment, but I’ll look into it when I get back.

Your link damaged. please correct it.

I’ve searched for the project, and I’m unsure if I still have any of the old files. I’ll search for it some more, but it looks like I might have deleted it by mistake. I’ll look for it some more, though. I might still have a copy on another disk.

Edit: Ignore that. I found it! It’s been fun looking through the old blueprints. The version I’m re-uploading is a slightly newer version than the one that was previously in this thread, though still roughly eight monts old, and uses binary heap sorting for the open list. This version is from when the pathfinding was at its most complex. Shortly after I made this version I started simplifying the algorithms, since this was overkill for what I needed. Anyways, here is a fresh download link :slight_smile:

Dear : :smiley: I would love to learn how to do this myself from scratch using blueprints. I understand it is a big job for you to make a tutorial going through everything in the system, but i would gladly pay for a good tutorial on how to do this.

I bought a book on amazon about this called building an RPG with Unreal, but unfortunately this was only using C++, which not only is totally greek to me, but also is totally not interesting. I love blueprints, i hate C++ :wink:

If anyone could make a tutorial on this I would be more than willing to pay for it, written or video, I dont really care :slight_smile: :slight_smile:

Lots of love
M

please provide me your link again,thanks!

i download the zip from your link. but it is not like yours picture after i play
it,i want to know the reason

@


I expect this is the fact im running it on a newer version than it was originally setup - any ideas what is going on here? Nothing responds to input (ue4.24)
thanks!

How about that, you resurrected an eight year old thread of mine :slight_smile: I can’t in good conscience recommend using these blueprints today. I had only used Unreal Engine for a few months when I originally made this thread and there are a number of issues with it. The good news is that I’ve kept expanding and building upon the above code more or less continously for the last eight years. You can get the result of all that work on the marketplace here: Advanced Turn Based Tile Toolkit in Blueprints - UE Marketplace (unrealengine.com). It is an asset that costs money, though.

To figure out what is wrong with the project in this thread I’d have to download it and do a lot of digging and testing, which is time I don’t currently have. Here are the steps I recommend, though: Download the version of UE4 this was made it (check what UE4 version was live in August 2014) and run it on that version. It should run correctly there. Then open your newer, converted project and use Print Strings and Breakpoints to see where the code acts differently.

From there you can try to piece together the things you need to change to get it working. If you run into any such specific differences that you are not able to fix, let me know in this thread with a screenshot of the relevant code and an explanation of what difference you are seeing and I’ll see if I have some suggestions.

There is almost no reason to use anything else but Dijkstra for turn-based games. A dumb C++ script I had at some point could go through ~50 tiles before hitching. Chances are, you may want to highlight all the “valid tiles to move to” anyway, and you’d end up using Dijkstra for that.

Actually you should just build Dijkstra first anyway. A* is Dijkstra with a bias for the “next try” order slapped on top of it. If you can make Dijkstra, then A* isn’t much more than that.

This is what 50 tiles of movement looks like.

1 Like