Announcement

Collapse
No announcement yet.

FPS Tower Defense Toolkit

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

    #61
    Originally posted by Stormrage256 View Post
    You could either try out fullscreen in standalone. Or you could just check if the resolution used for 'Play in New Window' under the 'Play' section in Editor Preferences is something different from 16:9. Also in either case, could you verify if the Tower Bases/Tower points value are changing when you spawn towers in the level?
    playing in new editor window makes it work perfectly thanks, its just the pie window that is there automatically where it's messed up

    Comment


      #62
      Originally posted by tamaster92 View Post
      playing in new editor window makes it work perfectly thanks, its just the pie window that is there automatically where it's messed up
      Awesome Then it's probably an issue with the widget handling some odd aspect ratio incorrectly. Thanks for letting me know anyway. I'll just double check on the common resolutions before submitting the next update.
      Unreal Possibilities
      Grid Creation Systems | Tower Defense Starter Kit | Floating Damage Texts

      Comment


        #63
        Update 5 (v1.5) [Compatible with v4.9 & v4.10 of Unreal Engine] project files now available on the Unreal Engine Marketplace. This update focuses primarily on optimization of Tower AI & simplification of the Tower Spawning system. Listed below is a brief overview of the code changes included in this update:

        - The threat detection & handling logic for Shockwave Tower, Laser Tower, Sniper Tower, Machine Gun Tower & Trap classes have been optimized with a new & simplified workflow.

        - The Game Director class & it's dependents, including the Behavior Tree have been completely phased out. The Tower Spawn Handler class now handles dynamic nav path validation when spawning Tower Bases. The nav path spline creation/updates logic have been moved to the Enemy Spawn Point class, while the Player Respawn logic now resides in the Game Mode class.

        - The Tower Spawn Handler code has been modified to always retrieve grid data directly from the Grid Arrays instead of occasionally using the data from Tower actors, in order to maintain consistency.

        - Changes to the grid data will be made directly to the Grid Arrays in the Game State class, instead of updating the temporary Grid Arrays within Tower Spawn Handler.

        - The collision responses for both Holographic & Actual Towers have been updated to focus only on the absolutely necessary parameters.

        - Local variables replace Global variables within functions & construction scripts of Towers & Tower Spawn Handler.

        - Added fix to a v1.4 bug responsible for hiding Tower Build HUD when Timed Waves were deactivated.

        - Replaced a potentially expensive operation from Wave Handler with more optimized workflow.

        - Replaced unnecessary casting operations with equivalent object references passed in as input parameters during class initialization events.

        - Improvements to visual design of Tower Spawn/Range Display.

        - Grid Data Structs updated to increase readability.

        - Minor code simplification for Player Character class.

        That covers all the changes to be introduced in v1.5. This update along with the previous update cover most of the pressing issues regarding code optimization & bug fixes. Starting with the next update, the FPS Tower Defense Toolkit will be receiving additional features again.

        [All relevant code changes within blueprints have been marked with the bool variable 'Version1.5' as well as comments designated with the prefix 'Version 1.5']

        ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

        Documentation plus changes to be made in the Content Browser: https://forums.unrealengine.com/show...l=1#post349197
        Last edited by Stormrage256; 02-25-2016, 02:26 AM.
        Unreal Possibilities
        Grid Creation Systems | Tower Defense Starter Kit | Floating Damage Texts

        Comment


          #64
          Hey Stormrage256, Excellent looking kit & excellent customer communication. Always appreciate seeing a dev that's willing to assist with a package after purchase. I'm currently working on a VR tower defense type game in Unity, but am thinking about switching over to UE4 after seeing this kit. I have a few questions before making the switch
          1) Do you use pooling for enemies, turrets, ect...? Basically, is everything pretty well optimized even for use on mobile?
          2) I'm currently using your common tower with hub rotation on Y axis and Weapon rotation on X/Z axis. Is this something that is included in your tower scripts or something you could easily implement?
          3) Referencing question 2, I see that you can place the build grids at any rotation (AWESOME). This is something that would greatly affect the towers rotation based on the common towers I explained. For example: I place a tower with common script on a plane with an angle greater than 0, now it's all screwed up. Is this something that would be easy to implement?
          4) Is everything based on ray casting from a certain transform from the main camera, towers, enemies, etc? (Maybe there is be public drop down for adding multiple fire points?) This would be great if I'm going to be using the kit for for my game. For VR there is usually a ray cast from the main camera used for looking at and selecting objects, UI, etc..

          For reference, you can check the current Unity asset I'm using: https://www.assetstore.unity3d.com/en/#!/content/1024

          I think that about covers it. Thanks for creating this and I look forward to hearing back

          Comment


            #65
            Originally posted by ROMAD View Post
            Hey Stormrage256, Excellent looking kit & excellent customer communication. Always appreciate seeing a dev that's willing to assist with a package after purchase. I'm currently working on a VR tower defense type game in Unity, but am thinking about switching over to UE4 after seeing this kit. I have a few questions before making the switch
            1) Do you use pooling for enemies, turrets, ect...? Basically, is everything pretty well optimized even for use on mobile?
            2) I'm currently using your common tower with hub rotation on Y axis and Weapon rotation on X/Z axis. Is this something that is included in your tower scripts or something you could easily implement?
            3) Referencing question 2, I see that you can place the build grids at any rotation (AWESOME). This is something that would greatly affect the towers rotation based on the common towers I explained. For example: I place a tower with common script on a plane with an angle greater than 0, now it's all screwed up. Is this something that would be easy to implement?
            4) Is everything based on ray casting from a certain transform from the main camera, towers, enemies, etc? (Maybe there is be public drop down for adding multiple fire points?) This would be great if I'm going to be using the kit for for my game. For VR there is usually a ray cast from the main camera used for looking at and selecting objects, UI, etc..

            For reference, you can check the current Unity asset I'm using: https://www.assetstore.unity3d.com/en/#!/content/1024

            I think that about covers it. Thanks for creating this and I look forward to hearing back
            Hi ROMAD, thanks for your feedback. I have checked out the videos for the aforementioned toolkit as well, & it's been an inspiration for me to keep working on new updates. I do not have plans for adding custom pathing, but I would definitely love to look into other features like perk system, global abilities, etc.

            1. It does not use any sort of object pooling at the moment & hasn't been optimized to be used on mobiles. Part of the reason is that I did not anticipate anyone coming up with the idea to use it on mobiles, since without VR, FPS games don't typically work that well on mobiles. But now that you've mentioned it, I'll keep that in mind when working on the future updates. I cannot promise it without creating a working prototype first, but I'll let you know if it's making it into the toolkit soon.

            2. By common tower, are you referring to the Attack Tower parent class? If so, it does not directly have any inbuilt function to turn around since not all the turrets require this effect. Examples include aoe towers like shockwave and boost. However, if you check out the Sniper Tower, you'll notice that it's turret while attached to the tower at one end, is free to move in any direction. You can find this feature in the 'Turn to Acquire Target' function. Now since what you want is slightly different as you need the tower itself to rotate while limiting the degrees of freedom of the turret, it will require some minor changes. You can copy & implement the logic from screenshot below to achieve the required result at your end. If it feels satisfactory, you could just copy the function & function call logic to the tower parent itself.

            [See attached Image]

            Since the machine gun & sniper tower both have somewhat similar turret rotation, it's kind of redundant. So I'll replace the sniper tower turret rotation with the logic that you suggested so that it's available out of the box. It should make it into the 6th update.

            3. I will test out the above sniper tower code on an inclined plane and let you know if it needs any changes.

            4. Yes the tower placement, grid detection, target health display on HUD, firing projectiles, etc are all based on ray casting from the main player camera. So if the camera is pointed directly at an enemy unit, the HUD displays its health. Similarly point it a grid generator and you get a holographic tower displayed at the focused grid cell, etc. I'm not sure if I understood what you meant by multiple fire points. Could you elaborate on that?
            Attached Files
            Last edited by Stormrage256; 09-29-2016, 01:23 AM.
            Unreal Possibilities
            Grid Creation Systems | Tower Defense Starter Kit | Floating Damage Texts

            Comment


              #66
              Originally posted by ROMAD View Post
              Hey Stormrage256, Excellent looking kit & excellent customer communication. Always appreciate seeing a dev that's willing to assist with a package after purchase. I'm currently working on a VR tower defense type game in Unity, but am thinking about switching over to UE4 after seeing this kit. I have a few questions before making the switch
              1) Do you use pooling for enemies, turrets, ect...? Basically, is everything pretty well optimized even for use on mobile?
              2) I'm currently using your common tower with hub rotation on Y axis and Weapon rotation on X/Z axis. Is this something that is included in your tower scripts or something you could easily implement?
              3) Referencing question 2, I see that you can place the build grids at any rotation (AWESOME). This is something that would greatly affect the towers rotation based on the common towers I explained. For example: I place a tower with common script on a plane with an angle greater than 0, now it's all screwed up. Is this something that would be easy to implement?
              4) Is everything based on ray casting from a certain transform from the main camera, towers, enemies, etc? (Maybe there is be public drop down for adding multiple fire points?) This would be great if I'm going to be using the kit for for my game. For VR there is usually a ray cast from the main camera used for looking at and selecting objects, UI, etc..

              For reference, you can check the current Unity asset I'm using: https://www.assetstore.unity3d.com/en/#!/content/1024

              I think that about covers it. Thanks for creating this and I look forward to hearing back
              As for your third question, the default behavior for placement of towers on inclined grid generators is as depicted:

              [Moved to attachment view]

              As you can see, the towers/tower bases themselves are not rotated to match the rotation of the underlying grid generator, except in the xy plane. This makes sure that the towers are always in an upright position similar to what you would see in a game like Sanctum 2.

              If what you intend to implement is about having the towers rotating with complete 360 degrees freedom, changing the spawning code to set the correct alignment is easy.

              [Moved to attachment view]

              However adjusting the tower plus turret rotation based on this & enemy AI location would require some more complex vector math.
              Attached Files
              Last edited by Stormrage256; 09-29-2016, 01:23 AM.
              Unreal Possibilities
              Grid Creation Systems | Tower Defense Starter Kit | Floating Damage Texts

              Comment


                #67
                Update 5 just went live on the marketplace. For more details, check out: https://forums.unrealengine.com/show...l=1#post445592
                Unreal Possibilities
                Grid Creation Systems | Tower Defense Starter Kit | Floating Damage Texts

                Comment


                  #68
                  FPS Tower Defense Toolkit: How to change tower meshes during tower upgrades

                  The most straight forward way to change the tower mesh would be to just access the Tower actor & replace it's mesh when upgrading the tower stats. This can be done by extending the 'UpgradeTower' interface function implementation in the 'BP_AttackTowerActual' blueprint with the code to replace the static mesh used for the tower. Here's a sample screenshot depicting the required modifications:

                  Click image for larger version

Name:	TUp.png
Views:	1
Size:	298.4 KB
ID:	1120659

                  As for making animations for the same, I'm not very good with animations, but the above logic can be extended to call a new function that animates the tower. It might also require changing the base Tower mesh from a static mesh to a skeletal mesh. This way, it should be possible to have a tower raise it's turrets or light up and do other sorts of cool stuff when they're upgraded.
                  Last edited by Stormrage256; 12-28-2016, 06:39 AM.
                  Unreal Possibilities
                  Grid Creation Systems | Tower Defense Starter Kit | Floating Damage Texts

                  Comment


                    #69
                    I've added a FAQ section at the end of the first post of the thread, based on the questions that I usually get from people. I hope to keep it updated regularly with new & relevant information. Here's the quicklink: https://forums.unrealengine.com/show...l=1#post349194
                    Unreal Possibilities
                    Grid Creation Systems | Tower Defense Starter Kit | Floating Damage Texts

                    Comment


                      #70
                      Wow, you've been busy, thanks for the lengthy reply. Everything looks/sounds great, should be switching over soon. "Multiple fire points" meaning the current tower is using multiple cannons and will be firing from multiple barrel ends. I'm used to, in Unity, being able to add the tower, select how many fire points, their transform (end of each barrel) and enter attributes, etc... I'm sure it's easy enough in UE4. Look forward to seeing this mature, keep up the great work.

                      Comment


                        #71
                        Originally posted by ROMAD View Post
                        Wow, you've been busy, thanks for the lengthy reply. Everything looks/sounds great, should be switching over soon. "Multiple fire points" meaning the current tower is using multiple cannons and will be firing from multiple barrel ends. I'm used to, in Unity, being able to add the tower, select how many fire points, their transform (end of each barrel) and enter attributes, etc... I'm sure it's easy enough in UE4. Look forward to seeing this mature, keep up the great work.
                        Cool, that shouldn't be hard to implement. Let's just take the example of Machine Gun Tower. By default, it has one turret named 'TowerGun' & an arrow component at the barrel end named 'BulletDirectionArrow'. The arrow component is added as a child to the tower gun & always points in the direction of the turret. As a result, it will automatically update it's direction based on the tower gun orientation.

                        [Image moved to attachment view]

                        You could add another tower gun plus arrow component alongside the original one.

                        Then within the 'FocusTowerGunOnActiveTarget' function, just add code to update the rotation of the new tower gun similar to how it's done for the second tower. This will be useful if you want both tower guns to independently focus on the same target unit. If that's not required, ignore this step.

                        Next step is to add an extra spawn projectile node similar to the existing one, but at the second tower arrow, within the 'AttackActiveTarget'. With that you should be able to have multi turret towers working.

                        As an extra measure, you could add an extra line trace for the second tower gun while doing the vision check in the 'FindTarget'.
                        Attached Files
                        Last edited by Stormrage256; 09-29-2016, 01:24 AM.
                        Unreal Possibilities
                        Grid Creation Systems | Tower Defense Starter Kit | Floating Damage Texts

                        Comment


                          #72
                          FPS Tower Defense Toolkit Basics: Tower Manager

                          The 'BP_TowerManager' is one of the core actors in the FPS Tower Defense Toolkit & is primarily responsible for the management of towers at runtime. It handles the following functions:

                          1. Build/Upgrade/Destroy towers.
                          2. Keeps track of all Towers in the level through the "Towers" array.
                          3. Enables players to have Towers Focus Fire on a single target.
                          4. Dynamically updates Grid Data based on Tower placement.
                          5. Enables setting of default Towers available to the player for each level using "BaseTowerModels" array.
                          6. Stores info about the physical attributes of Tower Holograms in the 'HoloConstructorData' array.

                          Click image for larger version  Name:	tm.png Views:	26 Size:	230.2 KB ID:	1437255
                          Last edited by Stormrage256; 04-24-2020, 06:33 AM.
                          Unreal Possibilities
                          Grid Creation Systems | Tower Defense Starter Kit | Floating Damage Texts

                          Comment


                            #73
                            FPS Tower Defense Toolkit Basics: Enemy AI

                            The FPS Tower Defense Toolkit has 3 different types of enemy AI bots: Core Bomber, Melee & Ranged. They're derived from the parent class 'BP_EnemyAI_Parent', which houses the core logic for all types of enemy bots. These include moving toward the power core, turning to face a target, handling damage receive events as well as update calls to wave handler when the bot is destroyed.

                            1. Core Bomber: The Core Bomber bot is a slow moving unit with a large pool of hit points. It does not possess any threat detection logic. Apart from moving toward the Core, it's only other functionality is to self destruct to do massive damage to the Core, which is handled through the custom event 'Event Attack Active Target'.

                            2. Melee: The Melee bot has an intermediate level of speed & hit points when compared to the Core Bomber & the Ranged bot. It's 'Vision Check' function continuously searches for the player character & determines if it's within range using a combination of distance, angular & line trace checks. Once within the range of the player, it will move on to attack the player. If the player leaves it's vision range, it reverts to it's original state & moves on to attack the Core

                            3. Ranged: The Ranged bot is a fast moving offensive unit with ranged attacks. It has low hit points compared to the other bots. Like the Melee bot, it uses a 'Vision Check' function to search & attack the player if it's within range. In addition to that, the Ranged bot can also mark the player as a target, if the player keeps attacking it from directions that are not within it's direct vision range. This feature is handled by the function 'Detect Target When Attacked'.

                            The Enemy AI Bots use the default nav mesh based pathfinding to dynamically alter their paths at runtime based on the placement of tower based around the level. They do not use any sort of crowd movement or inter bot collisions, but instead use randomized approach vectors from the Enemy Spawn Point towards the Power Core. This makes sure that the bots do not always end following the exact same paths even if the general path direction remains the same & hence prevents crowding at the exact same point near the Power Core.
                            Unreal Possibilities
                            Grid Creation Systems | Tower Defense Starter Kit | Floating Damage Texts

                            Comment


                              #74
                              I just want to say awesome job Stormrage256. Not only with the toolkit but the great support you are giving. I was thinking about purchasing it and after reading how well you respond to questions I'm going to pull the trigger. I'm new to Unreal Engine 4, coding and game design altogether so I figured getting a toolkit like this will help me learn blueprints by being able to see how everything works together and just jump in and play around with it.
                              Last edited by scynoth; 02-06-2016, 07:00 PM. Reason: Misspellings

                              Comment


                                #75
                                Originally posted by scynoth View Post
                                I just want to say awesome job Stormrage256. Not only with the toolkit but the great support you are giving. I was thinking about purchasing it and after reading how well you respond to questions I'm going to pull the trigger. I'm new to Unreal Engine 4, coding and game design altogether so I figured getting a toolkit like this will help me learn blueprints by being able to see how everything works together and just jump in and play around with it.
                                Thanks for your generous feedback, scynoth. I hope that this will be a fun experience for you.

                                If you have any doubts or suggestions regarding the toolkit, feel free to contact me either through this forum or through the support mail @ rohitmohan.k@outlook.com.
                                Unreal Possibilities
                                Grid Creation Systems | Tower Defense Starter Kit | Floating Damage Texts

                                Comment

                                Working...
                                X