Announcement

Collapse
No announcement yet.

[SUPPORT] Advanced Turn Based Tile Toolkit

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

    Originally posted by Skulldug View Post
    Edit: After looking into it more it seems the grid manager doesn't like my custom mesh, your default map seems ok. I will look into this some more.

    Edit 2 : Yup, doesn't like my custom mesh !.(maybe because it is scaled up too much?)
    Just letting you know that I've now confirmed this bug and am currently working on fixing it. Cannot give you a quick solution at the moment other than having show default tile set to true and then hiding the grid manager immediately after begin play.

    Originally posted by VitorSilvestre View Post
    Great job on the last update! Im getting familiar and had a few problems, cna I send that here?
    Thanks! Yep, this is the best place for it.

    Originally posted by VitorSilvestre View Post
    BP_Unit_Anim_Adv
    minimum range not seem to apply damage when range is bigger than 2.
    Also when trying to set move range to 1, it get into walk turn loop, until attack.
    Had trouble aiming a unit with grid size bigger than 1.
    Ok, I've been waiting for these sorts of reports. I was expecting there to be quite a few bugs showing up after release, even though I spent a lot of time bug testing. I always forget testing the minimum range stuff... I've confirmed that these bugs exist on my end and I'm working on fixing them now. Thanks a lot for reporting these to me. As for your last issue, that is to be expected. Big unit support is highly experimental at the moment, and I would not recommend using at the moment unless you are very experienced with the toolkit and UE4 and are prepared to do a lot of work yourself. In the next version it should work out of the box. I'm moving the Size variable into an "experimental" tag for the hotfix I'm working on now to make this clearer.

    Edit: Here is a fix for the issue when move is set to one (in the event graph of BP_Ability_MoveAttack, in the Click comment box)



    Originally posted by VitorSilvestre View Post
    Got caught by surprise with this update! Some really interesting stuff, how is the multyplayer going to be? Are we going to need to host a server it or the players?
    Multiplayer works now if you want to test it out. One player acts as the server, while others are clients. It is currently set up to work with Steam by default. Set the startup map to the multiplayer menu in Maps/MP, package the project, run it on two computers logged on to two different Steam accounts (the download region in steam settings must be the same for both machines. A quirk of UE4 test builds) and it should work just like that.

    Originally posted by Skulldug View Post
    I was wondering if you could explain how to go about using a static mesh as a pawn, do I just have to create a new pawn class and add relevant functions from the bp_unit ?
    The unit blueprint is referenced all over the place, so if you create a new class instead of a child of the unit blueprint you're going to get into all sorts of problems. Instead, create a new child blueprint of BP_Unit. Then place a static mesh component into it and you are almost done. There is one thing missing to make it work, and that is to make sure the OnHit event dispatcher is called at the same time as when an attack is shown to hit. If you do not call OnHit when using the default attack abilities, the game will not progress after you click attack, as it is waiting for the attack animation to say that it has hit. I'm adding a call to OnHit in the event graph of BP_Unit for the hotfix to make this clearer.

    I'm on to fixing all the issues you have listed now. I'll get back to you both when I've found solutions to them.
    Last edited by Monokkel; 04-02-2018, 04:40 PM.
    The Advanced Turn Based Tile Toolkit (Marketplace page - Feedback thread)

    Comment


      Awesome Monokkel, I was just wondering about the static mesh because I was trying to use blender to make lod's for the skeletal meshes and was getting no where. BUT, I have a program, Ultimate Unwrap 3D and it has a poly reduction tool that works perfectly for skeletal meshes, even the UE4 man. I cant believe I missed that in UU3D. Thank for the help and I am really looking forward to the hot fix. By the way...are you ever gonna get a "Donate" button some where ? . Thanks again !

      Comment


        Edit: Oooh, my post #1000! Apparently I'm Elite, now. Have to use those 1337 skillz to improve the toolkit further.

        Originally posted by Skulldug View Post
        Awesome Monokkel, I was just wondering about the static mesh because I was trying to use blender to make lod's for the skeletal meshes and was getting no where. BUT, I have a program, Ultimate Unwrap 3D and it has a poly reduction tool that works perfectly for skeletal meshes, even the UE4 man. I cant believe I missed that in UU3D. Thank for the help and I am really looking forward to the hot fix. By the way...are you ever gonna get a "Donate" button some where ? . Thanks again !
        You're doing me a big favour by reporting bugs, so no need to donate to me for fixing them. As far as I see it, buying the toolkit gives everyone right to as good support as I'm able to give. Unwrapping and LODs is outside my area of expertise, so if you run into any issues with the toolkit when it comes to these things, let me know. I'll continue to look into the DisplayStaticMesh issue.

        VitorSilvestre : Gotten around to the minimum range issue now. I have added the following to the FindVisibleUnitsInRange function. I could in theory skip the branch and just have everything using FindDistance, even when MinRange < 2, however FindVisibleUnitsInRange is sometimes called multiple times during a single tick for the AI, so this is done to make it as efficient as possible.

        Click image for larger version  Name:	FindVisibleUnitsInRange.PNG Views:	2 Size:	245.6 KB ID:	1454257
        ​​​​
        Attached Files
        Last edited by Monokkel; 04-02-2018, 06:36 PM.
        The Advanced Turn Based Tile Toolkit (Marketplace page - Feedback thread)

        Comment


          Skulldug : Try this out for your custom default tile mesh issues:



          If your custom default tile mesh is of a different size than the default one, note that you will have to make rescaled versions of the TilesInMoveRange etc. meshes. I considered automating this resizing, but keeping it manual allows users to more easily use markers that don't take up an entire tile, if this is what they want. Maybe I'll add a toggleable option for this in a later version.
          The Advanced Turn Based Tile Toolkit (Marketplace page - Feedback thread)

          Comment


            Congrats Monokkel "THE ELITE", I will give it a try and let you know how it goes, Thanks

            Comment


              Hey Guys,

              I think I found a bug, but it could be Unreal-wise, not sure. When I open the BP_Playercontroller_AtBTT I wont get the green compiled tick showing up. same goes for saving. It works though but it is kinda gliched out.

              So just to let you know, no rush and have a good week everyone.

              Greetings

              Comment


                Originally posted by Notoriousdude View Post
                Hey Guys,

                I think I found a bug, but it could be Unreal-wise, not sure. When I open the BP_Playercontroller_AtBTT I wont get the green compiled tick showing up. same goes for saving. It works though but it is kinda gliched out.

                So just to let you know, no rush and have a good week everyone.

                Greetings
                Yeah, this is a known bug and it is a bit annoying. It is just a visual bug in the engine and does not affect anything, but I'm still trying to fix it. Strangely it compiles fine if you first open any of the functions in the player controller. It only happens if you compile while in the event graph.
                The Advanced Turn Based Tile Toolkit (Marketplace page - Feedback thread)

                Comment


                  Hey,

                  Yeah I thought about that. Anyway, I want to implement a inventory and equitment system but I kinda dont know where should I place it. I started to code it into BP_Unit but I couldnt get the inputs working so I made it now into the BP_Playercontroller_ATBTT its working there but I dont think it should be there because its unit related. And I fear that when I pickup an item every unit gets it. or maybe I start entire new BP only for this? But yeah I really like the new system you made!

                  Greetings

                  Comment


                    Originally posted by Notoriousdude View Post
                    Hey,

                    Yeah I thought about that. Anyway, I want to implement a inventory and equitment system but I kinda dont know where should I place it. I started to code it into BP_Unit but I couldnt get the inputs working so I made it now into the BP_Playercontroller_ATBTT its working there but I dont think it should be there because its unit related. And I fear that when I pickup an item every unit gets it. or maybe I start entire new BP only for this? But yeah I really like the new system you made!

                    Greetings
                    Thanks! Yeah, organizing and knowing where to put stuff if something that takes practice. One of the big reasons for my refactoring was that I had worked up a much better understanding of this over the years, and felt compelled to move blueprints around to more sensible places. I agree that it makes the mosts sense to have inventory systems at least in part tied up to each unit, and I don't why that shouldn't work. Seems like the sort of thing that would make sense to have in a blueprint component. Perhaps also a larger inventory manager singleton blueprint that does most of the hard work, but references inventory components on the unit for the specific data. This might also be something a data table is well suited for... Well, the devil is in the details and the best implementation depends a lot on what you are trying to do. Maybe I could help you understand why the input is not working? Could you be a bit more specific as to what goes wrong?
                    The Advanced Turn Based Tile Toolkit (Marketplace page - Feedback thread)

                    Comment


                      Yes I understand it way better than before because of the refactoring. Im still more a beginner when it comes to coding but it motivates a lot if the main work is done so Im very enthusiastic about your toolkit. With input I meant the keybindings, I only got my inventory opening when I put it into the BP-Playercontroller. What makes sense though. I using a youtube tutorial for that but its for a thirdperson-character. So I need to rethink parts of it. basically I want the unit in a collison area around an item and when the mouse hovers over the object it starts to highlight the item then click on it and it goes into the inventory. Maybe I look into some documentation about the things you mentioned so I find something to solve it. I also started the inventory thing yesterday, so I probably asked to early. sorry about that.

                      Comment


                        hi. i'm junghoon. Our team is developing games using these tools.
                        I have one question. What if you want to make the enemy unit recognize as an object?
                        What I want is that the enemy within range is treated like obstacle.
                        please reply

                        Comment


                          Originally posted by Monokkel View Post
                          Skulldug : Try this out for your custom default tile mesh issues:



                          If your custom default tile mesh is of a different size than the default one, note that you will have to make rescaled versions of the TilesInMoveRange etc. meshes. I considered automating this resizing, but keeping it manual allows users to more easily use markers that don't take up an entire tile, if this is what they want. Maybe I'll add a toggleable option for this in a later version.
                          That works perfectly Monokkel, I hope that wasn't too hard to find and fix. (I was using rescaled versions of all tiles also), Thanks

                          Comment


                            Hey Monokell or other toolkit user, I want check if my target is more then 1 tile away from attacker when attacking to change attack animation. Does anyone know how to check this?

                            Comment


                              Originally posted by Notoriousdude View Post
                              Yes I understand it way better than before because of the refactoring. Im still more a beginner when it comes to coding but it motivates a lot if the main work is done so Im very enthusiastic about your toolkit. With input I meant the keybindings, I only got my inventory opening when I put it into the BP-Playercontroller. What makes sense though. I using a youtube tutorial for that but its for a thirdperson-character. So I need to rethink parts of it. basically I want the unit in a collison area around an item and when the mouse hovers over the object it starts to highlight the item then click on it and it goes into the inventory. Maybe I look into some documentation about the things you mentioned so I find something to solve it. I also started the inventory thing yesterday, so I probably asked to early. sorry about that.
                              Ok, I see. I misunderstood what you meant by input. You can setup units to receive input in their blueprint settings, but I would not recommend this as you would need to add branches to all units to make sure that they are the active unit which would trigger for all units every time you click the input key, which is both clunky and inefficient. Epic generally advises to put input in the player controller anyway.

                              But that receiving the input is handled by the player controller does not mean that the rest of the logic cannot be handled in another blueprint. In fact that is exactly what I'm doing with the ability blueprints. If you choose to do inventory like you describe it (using collision and clicking), here is one way to make it work:

                              Handle the click event in the player controller. If you detect that you have clicked an item we want to know if is on a tile next to the active unit and that the active unit is currently being controlled by the player who owns the player controller receiving the input. For this last part, check the nodes following the click input in the player controller, where I do this already.

                              For finding out whether the item is adjacent to the unit you can use the GetDistanceInTilesBetweenIndexes (or a similar name. Cannot check now) function in BP_GridManager. The input for this function is two grid indexes, so you would want to convert the location of the item to a grid index by using the ConvertLocationToIndex function also in BP_GridManager. You can also be a lot more lazy and simply take the location of the active unit and the item and check if the distance between them is lower than TileSizeX * 2.

                              Now after you've confirmed that the item clicked is adjacent to the active unit, you can activate a custom event or function in either your item or your unit or inventory manager for adding the item to the unit's inventory. There are many ways to do this, of course. Personally I might have added an event (perhaps an interface event) to the item, which includes an input for the unit picking up the item. Then for this event you could choose to play whatever animation or sound you want for picking the item up and then add it to an item array stored on the unit (or whatever method you are using for storing the item).

                              Sorry if my explanation is a bit vague, but since I'm not exactly sure how your inventory system works I have to be a bit general in my response. Let me know if what I said makes sense to you or not.

                              Originally posted by losemarins View Post
                              hi. i'm junghoon. Our team is developing games using these tools.
                              I have one question. What if you want to make the enemy unit recognize as an object?
                              What I want is that the enemy within range is treated like obstacle.
                              please reply
                              Hi junghoon. I'm not sure I understand exactly what you mean by "treated like an obstacle". Enemy units are by default treated at least somewhat like and obstacle, in that you cannot move through them. Please go into more detail and I will do my best to help.

                              Originally posted by Skulldug View Post

                              That works perfectly Monokkel, I hope that wasn't too hard to find and fix. (I was using rescaled versions of all tiles also), Thanks
                              Great! No, it was pretty easy to fix when I knew what the problem was. I had just set up some stuff wrong in the grid manager, and I just had to connect it correctly. Thanks for reporting the bug. I have now sent Epic a hotfix which includes fixes to all the issues reported in the last few days, as well as a few more I've found on my own.

                              Originally posted by Nobleactual View Post
                              Hey Monokell or other toolkit user, I want check if my target is more then 1 tile away from attacker when attacking to change attack animation. Does anyone know how to check this?
                              You can use the GetDistanceInTilesBetweenIndexes function (again, not sure if I got the name exactly right) in BP_GridManager for this. Input the grid index of the attacker and target and use a branch to check if the return value is greater than one.
                              The Advanced Turn Based Tile Toolkit (Marketplace page - Feedback thread)

                              Comment


                                Hello Monokkel!

                                Awsome toolkit and awsome support. I'm a completely new UE4 user that has a grandiose project ahead of me As a beginner, I'm sorry if my coming question/questions are very "high and low" but I will do my best of understanding your answers.
                                I followed the UE4 Tutorial for the Multiplayer project and I am now trying to weave that together with your latest update of the toolkit. Everything works fine when using Open Level to go to either your Example map or my own newly created map using your BP_Gridmanager. However, as my project will have a lobby (world map) before entering each level I need to use ServerTravel to migrate both server and clients together to the new map. When I do this however, I end up floating in the middle of the map with no control over my pawn. I suspect the difference between Open Level and Server Travel is that Open Level recreates Game Modes, Player Controllers etc so that something is "in the way" of your toolkit taking over.

                                My question is, is this something that you have tried and have some kind of "aha!" solution for, or at least a place where I should start my debugging. I will of course continue learning your toolkit but it's quite vast for a beginner so will probably take me a long time to get to a solution all on my own.

                                Anyways, rambling over and thanks again for all the hard work!

                                Cheers,
                                Mivke

                                Comment

                                Working...
                                X