Announcement

Collapse
No announcement yet.

[SUPPORT] Advanced Turn Based Tile Toolkit

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    @nrm2112: The very question you're asking there is actually the reason I started working on this in the first place! I wanted to test out if blueprints were viable for making an entire game.

    Back when I started, even more than now, there were a lot of people who said you had to use C++ if you wanted to make anything serious. This toolkit handles all the heaviest operations you need when making most turn based strategy games, and does so in less than a frame for even long paths and visibility tracing. From this I can pretty confidently state that the assertion that you can't make a full game in blueprints is simply false. Certainly for turn based games, at the very least.

    I wrote a thorough writeup of my process of learning UE4 and making this toolkit on Reddit a few weeks ago. You might want to read it if you're just starting out and have doubts about the power of blueprints, like I did.
    The Advanced Turn Based Tile Toolkit (Marketplace page - Feedback thread)

    Comment


      Originally posted by Monokkel View Post
      Hi Wisdom-HELLy,

      I've made an inititative sorting algorithm as per your request. Replace the nodes in the "Sort Pawns in initiative order" funtion with these and the pawns should be sorted automatically. You'll of course have to replace the initiative variables I've used here with your own. I've used floats in this case.

      http://blueprintue.com/view/9WttiyPK/

      Edit: In case you haven't used bluprintue before, copy the code below the graph on bluprintue directly into the appropriate event graph in your project.

      Edit 2: This does naturally not work in conjunction with allowing to switch between pawns by clicking on them.
      Hi Monokkel,

      Great!
      I actually created a new custom function and attached it in the grid manager blueprint instead of your Sort "Pawns in initiative order", but as I said before I had a lot of problems.
      Actually I'm not completely sure that was my fault or perhaps I've found an Unreal Engine 4 bug or glitch.
      When I will have time I will paste to you the old algorythm, just to let you understand what I did and maybe to understand what went wrong.
      If you prefer I can send it on a private message or share the graph here, then if it is really an UE4 bug I can send the snapshot to Epic to help other unfortunate people.

      Meanwhile, I'd like to implement your algorythm, but actually I'm not able to scroll the blueprint to see it entirely. How can I use keyboard or mouse to scroll the view in BlueprintUE.com?

      Anyway thank you very much, you just saved me from another week-end of pain
      Fantasy Turn-Based Tactical Game
      STEAM: https://store.steampowered.com/app/9...Arcane_Legacy/
      IG: https://www.instagram.com/arcanelegacyofficial/
      FB: https://www.facebook.com/ArcaneLegacy/
      WEB: http://www.arcanelegacy.com

      Comment


        No problem I needed to add this functionality sooner or later anyway. I won't be adding it to the main blueprint, since it's a bit too game specific, but I'll be adding it when I make my dungeon crawler example map. As for the link, you don't need to see the entire graph. Just copy the text code under the graph and paste it directly into your blueprint graph.

        Feel free to post your old algorithm here, and we can try to figure out what went wrong.
        The Advanced Turn Based Tile Toolkit (Marketplace page - Feedback thread)

        Comment


          You can see my blueprint below:

          Click image for larger version

Name:	HellyInsertionSortBlueprint.jpg
Views:	1
Size:	501.5 KB
ID:	1071683

          Sorry if you see it badly but I had to let all blueprint boxes closest together as possible to put all in a single screenshot.
          Anyway, I think that is pretty clear to understand.
          Last edited by Wisdom-HELLy; 04-01-2015, 06:11 AM.
          Fantasy Turn-Based Tactical Game
          STEAM: https://store.steampowered.com/app/9...Arcane_Legacy/
          IG: https://www.instagram.com/arcanelegacyofficial/
          FB: https://www.facebook.com/ArcaneLegacy/
          WEB: http://www.arcanelegacy.com

          Comment


            Could you paste it into BlueprintUE so I can test it out myself?

            And here is a screenshot of my solution if you prefer that to BlueprintUE:

            Click image for larger version

Name:	veIpR2e.png
Views:	1
Size:	415.9 KB
ID:	1071688
            Last edited by Monokkel; 04-01-2015, 07:27 AM.
            The Advanced Turn Based Tile Toolkit (Marketplace page - Feedback thread)

            Comment


              Below you can find the blueprintue of my insertion sort blueprint implementation:

              http://blueprintue.com/view/4He3AR2K/
              Fantasy Turn-Based Tactical Game
              STEAM: https://store.steampowered.com/app/9...Arcane_Legacy/
              IG: https://www.instagram.com/arcanelegacyofficial/
              FB: https://www.facebook.com/ArcaneLegacy/
              WEB: http://www.arcanelegacy.com

              Comment


                Originally posted by Monokkel View Post
                Planned Features (Percentage Completed)
                - Have movable and visible tiles in range meshes conform to the underlying landscape (95%)
                - Auto generate walkability and grid maps based on terrain without having to place tile meshes (80%)
                - Add more options for displayng and calculating visibility and pathfinding (sprinting, multi-turn movement (Civ-style), displaying walkability and visibility simultaneously) (50%)
                - Adding the option of spreading demanding operations over multiple ticks, improving performance on weaker hardware (50%)
                - Improved support for using sprites and 2D assets (30%)
                - Touch controls (10%)
                - Increase modularity of blueprints.
                - Add example maps of more specific TBS genres with custom code:
                --- 4X strategy (building and exploring)
                --- XCOM-like (Cover system ++)
                --- D&D-like (Dungeon visibility, complex game mechanics)
                - True height maps with overlapping grids.
                - Multiplayer support.
                - Units larger than one tile.

                I think those are the big ones, though I've probably forgotten a few.
                Hi Monokkel,

                When do you think these will be available? :-)

                Comment


                  Originally posted by Wisdom-HELLy View Post
                  Below you can find the blueprintue of my insertion sort blueprint implementation:

                  http://blueprintue.com/view/4He3AR2K/
                  I spent some time looking at your blueprint and I can't find anything obviously wrong with it. I'm having a bit of a hard time debugging it, though. There are a lot of temporary variables changing that are dependent on one another so it's hard to grasp everything that's going on. I would suggest doing what I do sometimes and write down an array of pawns using pen and paper. Then go through the blueprint and adjust the array and variables on paper just like it would have happened in the graph. It takes some time, but when working with confusing, interdependent blueprints it's sometimes what I have to do to find the error.

                  Sorry I couldn't help you find the error, but I'm pretty tired after working on the toolkit all day. You should probably use the solution I gave you anyway, since it's cleaner and requires no temporary variables. I can recommend you use more foreach loops, by the way. There are a couple of places where you could have simplified the graph significantly by using them instead of forloops.

                  Originally posted by Oskarek15 View Post
                  Hi Monokkel,

                  When do you think these will be available? :-)
                  Hi Oskarek,

                  I'm glad you asked. Finishing the update is taking longer than I originally planned for a variety of reasons. The main one is that I've decided to split the Grid Manager blueprint up and distribute it among Game Mode, pawns, the grid manager and player and AI controllers. Making the toolkit more modular will make adding future updates simpler, and prevent users from having to re-add every new feature they've made every time I add an update. I pushed this up to the highest priority as something that had to be in place before adding more updates, as it will serve as the base for all future additions. Reorganizations is tedious work and takes a lot of time. I'm working most free hours I've got on it, but it's a bit slow going. I'm closing in on my goal, though.

                  For my next update I will probably add auto grid generation and meshes conforming to the landscape, but not the mobile support stuff. The auto generation is a big change to the underlying system, and is thus something I want to get out early. The mobile controls is something that can be added on top quite easily later, so I'm saving that for the update after.

                  To give you a straight answer to your question I estimate having the first update done in just over a weeks time.
                  Last edited by Monokkel; 04-01-2015, 05:45 PM.
                  The Advanced Turn Based Tile Toolkit (Marketplace page - Feedback thread)

                  Comment


                    Hi Monokkel,

                    I've tried your algorythm, it's very clear and fast, so I've definitely chosen to use it in my project.

                    Meanwhile, I've also finally implemented an insertion sort working solution, if somebody needs this kind of sorting (mostly in the game projects where unit array is almost sorted every time: in this case the insertion sort it's the best algorythm with a linear O(n) quantity of operations) you can find it here:

                    http://blueprintue.com/view/lvEnWUAO/

                    This insertion sort order elements with an ASC sort direction, so you should put the lower initiative value for the units you want to attack first.
                    Fantasy Turn-Based Tactical Game
                    STEAM: https://store.steampowered.com/app/9...Arcane_Legacy/
                    IG: https://www.instagram.com/arcanelegacyofficial/
                    FB: https://www.facebook.com/ArcaneLegacy/
                    WEB: http://www.arcanelegacy.com

                    Comment


                      You should probably also post it in the blueprint subforum where more people might see it. I did something similar back when I was using A* instead of Dijkstra where I was sorting several times every tick. For something that's going to be sorted once it's a bit overkill, which is why I made the simpler algorithm. I'll be including it in the project at a later point, when I make my dungeon crawler example map.

                      In other news I'm done splitting up the Grid Manager and spreading it across the Game Mode, Player Controller, AI controller, Player Pawn Camera and Unit Pawns. It took four days of hard work, but now I can soon begin working on finishing up grid auto generation.
                      The Advanced Turn Based Tile Toolkit (Marketplace page - Feedback thread)

                      Comment


                        Hi there!

                        I haven't started doing any major work (mostly just playing around and learning) because I know the structure of the blueprints is changing. I'm excited for modularity update so I can rest easy knowing that I will be able to integrate new features and changes that you add to the toolkit in the future.

                        Please release the update soon, thanks!

                        - Sam

                        Comment


                          Originally posted by fxs_gamdevsam View Post
                          Hi there!

                          I haven't started doing any major work (mostly just playing around and learning) because I know the structure of the blueprints is changing. I'm excited for modularity update so I can rest easy knowing that I will be able to integrate new features and changes that you add to the toolkit in the future.

                          Please release the update soon, thanks!

                          - Sam
                          Glad to hear you're having fun with the toolkit. Even though I've done a lot of restructuring, the underlying logic is very special, so any modifications you do shouldn't be too hard to convert. Just a warning, though. Even though I expect to be done in a week, Epic is often extremely slow with adding updates, so you can probably expect a couple of weeks more for them to upload the new version.
                          The Advanced Turn Based Tile Toolkit (Marketplace page - Feedback thread)

                          Comment


                            Hello, I was wondering what the best way to create a single tile preset that covers multiple tiles is. Say you have a wall with an entry way that spans three tiles. You want the end tiles to be blocked and the center one walkable.

                            Comment


                              @Gryphun: You mean for creating pre-made rooms of muliple tiles that you can place in your level without placing them individually? A similar question has been asked earlier in this thread. To give you the short answer I believe that the best way to do this currently is to place the tiles in the viewport, selecting them all and grouping them (ctrl + G). Then you can copy the groupl and place it elsewhere in the level. In the next update I'm releasing there will be a different way of doing this as well. You will be able to generate walkability of meshes and terrain placed in the level without having to place any tile actors. This way you can simply model rooms of any size in whatever software you prefer, set the collision to block PathTrace, place them in the level and check "auto generate walkability and height".
                              The Advanced Turn Based Tile Toolkit (Marketplace page - Feedback thread)

                              Comment


                                Sorry, I should have included more details. I have a function that, right now, places random(blocking) tiles in the scene in BeginEventPlay callback. This works great for items that only cover a single tile. I want to be able to procedurally place items that cover multiple tiles.

                                I guess the one way to do this currently is to write the blueprint for each item that will spawn blockers at the correct locations.

                                Thought it sounds like your update will solve my issue. Thanks.

                                Comment

                                Working...
                                X