Announcement

Collapse
No announcement yet.

[SUPPORT] Advanced Turn Based Tile Toolkit

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

    elec2ron: Darn, that's what I get for doing last minute multiplayer testing before sending the update out. I forgot to reset the DefaultControllingPlayer variable value to 0 for one of the player units in the example map. I'll do this minor fix and send out a new one tonight.

    For converting, the safest way is usually to migrate and copy over your own additions to a fresh ATBTT project. I have tried to mark all changes with a boolean named 1.82, which you can search for though the find window, but I'm likely to have skipped marking some very minor changes. I'm afraid there is no simple way to automatically update a project.
    The Advanced Turn Based Tile Toolkit (Marketplace page - Feedback thread)

    Comment


      Got it updated without too much hassle, have a better setup now so i can deal with future updates better.

      Thanks again for the updates and all the support you provide.

      Comment


        Ok, I fixed the minor bug. Epic should soon upload a new version. No reason to wait for this if you have already downloaded the version I uploaded yesterday. Just set DefaultOwningPlayer for all units in the example map to 0 if you want this to work in single player.

        v1.82 (15.05.18)
        • Re-added refactored version of the 2D example map "Hydra's Lair"
        • Added object system for interacting with custom objects on tiles (see weapons in Hydra's Lair for an example)
        • Various minor changes and bug fixes (see Trello for details).
        The Advanced Turn Based Tile Toolkit (Marketplace page - Feedback thread)

        Comment


          Awsome job man!

          Now I'm back here with another question of course In my project I will partly have the deployment phase prior to the activation of units (which works nicely now, as far as I have come with it). But I will also have one more phase that will be repeatable every round prior to the activation of units (a phase where you choose which abilities you'd like to use). After this the units will be ordered on initiative and take their respective turns. Do you have already some kind of round counter and some kind of Unit_Has_Acted_This_Round boolean? If not, do you have some idea on how and where to implement that? That will of course be the deciding factor if we should proceed to End Turn at once or if the Unit should activate.
          I'm thinking a check inside of BeginUnitTurn in BP_TurnManager but where is a tougher choice

          Comment


            Originally posted by Mivke1 View Post
            Awsome job man!

            Now I'm back here with another question of course In my project I will partly have the deployment phase prior to the activation of units (which works nicely now, as far as I have come with it). But I will also have one more phase that will be repeatable every round prior to the activation of units (a phase where you choose which abilities you'd like to use). After this the units will be ordered on initiative and take their respective turns. Do you have already some kind of round counter and some kind of Unit_Has_Acted_This_Round boolean? If not, do you have some idea on how and where to implement that? That will of course be the deciding factor if we should proceed to End Turn at once or if the Unit should activate.
            I'm thinking a check inside of BeginUnitTurn in BP_TurnManager but where is a tougher choice
            Yep, these things already exist. It is the Exhausted variable in BP_Unit and the CurrentTurn variable in BP_TurnManager. Check out the SetNextTurnIfUnitExhausted function in BP_TurnManager to see how and where it is implemented.
            The Advanced Turn Based Tile Toolkit (Marketplace page - Feedback thread)

            Comment


              Hey I was wondering how I could change it so that the spline path from the unit is visible at all times when selecting it to move and the cursor is always present. Currently the spline path for me only appears when holding right click, but I want to use right click for UI navigation as a "Back button", and I think it'd be weird to have it have those two unrelated functions. I am currently using the advanced units and grid manager.

              When I look at the default map and how it used to be, it seems like it didn't use to happen. I must have changed something that ruined it, do you know what blueprint I have to edit to change it back?
              Last edited by HaxorViper; 05-15-2018, 09:09 PM.

              Comment


                Hey Monokkel, very appreciative for all the hard work you put into these updates and bug fixes. 1.8+ is vastly more efficient, readable and adaptable. Burning the hours up on development now after a bit of a time-consuming upgrade.

                Comment


                  Originally posted by Monokkel View Post

                  Yep, these things already exist. It is the Exhausted variable in BP_Unit and the CurrentTurn variable in BP_TurnManager. Check out the SetNextTurnIfUnitExhausted function in BP_TurnManager to see how and where it is implemented.
                  Cool! I checked that function out and if I understand correctly when a Unit Pending Activation is exhausted then you loop through all the other units and set them to not exhausted and when that is done you set CurrentTurn to the one after the exhausted unit? I tried unplugging the loop in that function and go straight from Exhausted True to CurrentTurn ++ to see if eventually all Units would be exhausted and no turn would activate but that didn't happen Will test further when I can, for me what I would want to make is list of exhausted (or un-exhausted) Units. When that list is full (or empty ) Start New Round would fire instead of Begin Unit Turn.

                  Cheers man, gotta run to work now!

                  Comment


                    Originally posted by Mivke1 View Post

                    Cool! I checked that function out and if I understand correctly when a Unit Pending Activation is exhausted then you loop through all the other units and set them to not exhausted and when that is done you set CurrentTurn to the one after the exhausted unit? I tried unplugging the loop in that function and go straight from Exhausted True to CurrentTurn ++ to see if eventually all Units would be exhausted and no turn would activate but that didn't happen Will test further when I can, for me what I would want to make is list of exhausted (or un-exhausted) Units. When that list is full (or empty ) Start New Round would fire instead of Begin Unit Turn.

                    Cheers man, gotta run to work now!
                    So the idea behind the function is that at the end of a unit's turn Exhausted is set to true for that unit and it is put at the end of the initiative order array. When the turn manager attempts to activate a new unit and finds that it is exhausted this means that all units have acted and we are back to the first unit that got activated this turn. This tells the turn manager that the turn is done and that we should start a new one, which makes it increase the turn counter by one and set exhausted to false for all units.

                    From reading your reply I assume you want to prevent the turn manager from automatically starting a new turn after all units have acted one turn and wait for player input? If so you would want to add a branch preventing the rest of the execution chain from activating whenever the turn counter increases.
                    The Advanced Turn Based Tile Toolkit (Marketplace page - Feedback thread)

                    Comment


                      Originally posted by Monokkel View Post

                      So the idea behind the function is that at the end of a unit's turn Exhausted is set to true for that unit and it is put at the end of the initiative order array. When the turn manager attempts to activate a new unit and finds that it is exhausted this means that all units have acted and we are back to the first unit that got activated this turn. This tells the turn manager that the turn is done and that we should start a new one, which makes it increase the turn counter by one and set exhausted to false for all units.

                      From reading your reply I assume you want to prevent the turn manager from automatically starting a new turn after all units have acted one turn and wait for player input? If so you would want to add a branch preventing the rest of the execution chain from activating whenever the turn counter increases.
                      Ah, ok! I think I misunderstood how you meant Turn and Round. So, since the CurrentTurn raises by one when you hit an exhausted unit (meaning everyone has acted) it basically raises by one each time EVERY Unit has acted? I misunderstood and thought CurrentTurn was more similar to the index of the initiative ordered units, if you understand what I mean.
                      Thanks for the clarification, this will do wonders for me I think!
                      I will let you know how it turns out. Also, I haven't forgotten about the ServerTravel stuff, just haven't had much time lately. Will get back to you with that aswell asap.
                      Cheers!

                      Comment


                        Originally posted by Mivke1 View Post

                        Ah, ok! I think I misunderstood how you meant Turn and Round. So, since the CurrentTurn raises by one when you hit an exhausted unit (meaning everyone has acted) it basically raises by one each time EVERY Unit has acted? I misunderstood and thought CurrentTurn was more similar to the index of the initiative ordered units, if you understand what I mean.
                        Thanks for the clarification, this will do wonders for me I think!
                        I will let you know how it turns out. Also, I haven't forgotten about the ServerTravel stuff, just haven't had much time lately. Will get back to you with that aswell asap.
                        Cheers!
                        Just take your time with the ServerTravel stuff. It will take a long time before I can implement it anyway, so no worries.
                        The Advanced Turn Based Tile Toolkit (Marketplace page - Feedback thread)

                        Comment


                          Monokkel

                          Hello again, just wanted to give a quick update about that Udemy Tutorial. (Ben Tristems "The Unreal Engine Developer Course - Learn C++ & Make Games")
                          I've gotten through about two sections of it so far and already have a pretty firm understanding of basic C++. They move you from Visual Studio to Unreal in a way that is really helpful for people who have never messed with Unreal before, and they go out of their way to promote good practices and backing up your work. As someone who had pretty much no programming experience when I started I can absolutely recommend this course to anyone else who asks about learning. Not sure if it was as heavily updated when you used the course but they actually updated a few videos in the course for 4.17-4.19 which really helps clear confusion across different version.

                          Thanks again for recommending that to me, that's been the best learning source for me so far and I've spent the last few days soaking up what I can.
                          Last edited by OperatorCrux; 05-18-2018, 01:26 AM. Reason: Fixed spelling

                          Comment


                            OperatorCrux : Good to hear my recommendation has been useful. Ben Tristem is nothing if not thorough and I agree that his focus on best practices is one of the things that makes his tutorial series superior to many others.
                            The Advanced Turn Based Tile Toolkit (Marketplace page - Feedback thread)

                            Comment


                              Alright so the reason why my splines weren't showing was because the game thought I was hovering over UI so it hid it for me (Although the UI wasn't shown, I was adding an inventory system and appear to have bugged it). I haven't fixed it, but provisionally I enabled it to show the path while on a UI.

                              Also, I am currently implementing menu navigation for in between moving and attacking. But I don't know where I would call it to add it to the viewport and wait until it's done. The move_attack ability does two things, moving and attacking, so I want to spawn the menu widget after finishing your move or staying put, and waiting to allow you to target for the attack ability until the attack command is called from the menu, or skipping it entirely by ending your turn in the menu.

                              I want my flow to look like this:
                              You start the game without having anything selected > You click on one of your units > The unit displays its movement range > Switch: You move: (Once you reach your target index you spawn a player menu), You stay put: (Immediately spawns a player menu) //Once in the player menu, you can select various different options, but I want to cover attack and wait first// > Switch: Attack: (The active unit's inventory pops up and you can select your weapon > Target enemy and UI for battle forecast shows up > Combat happens > The active unit ends its turn.), Wait: (The unit skips targeting and ends turn.)

                              What I am having problems with is getting it onto a queue where it waits for you to be done with the menu navigation before allowing you to target the enemy, I don't know where I'd implement this to happen in an orderly manner. Do I make spawning the menu a queue action to put it between the movement and the attack? I am not sure if I should count this as an action or if the format is compatible for spawning widgets. I also don't know how to properly implement a check for either ending your turn or moving and ending your move animation, if I add this action in both instances, wouldn't it add the spawn menu action two times?

                              Comment


                                This is a question for anyone here really... But I have several player units running around/away from a monster that they cant kill. The only way to defeat it is to collect several pickups.The only functionality I have so far is if the units get close enough to the pickups, they make a sound and destroy themselves...

                                Now the issue is all the tutorials (at least 10 of them) I have seen teach you how to have a single player character keep track of the number/score. But in my case I have several pawns that do the collecting instead. Im obviously new to Blueprints but I see no way how to do it on my own at this point. Plus once I do get them collected lets say 4/4 are collected I need to figure out how to get the monster pawn to lose all its health...

                                Only other way I can think about doing this, would be if before the pickups destroy themselves they somehow do damage to the monster and once they are all picked up its enough damage to kill it. versus the "Pickup counter" way of doing it

                                If anyone has any tips on how to do it, I would Greatly appreciate it and pass on the tales of your heroics to future generations XD ...

                                Comment

                                Working...
                                X