Announcement

Collapse
No announcement yet.

Last Team Standing (Next TAM/BTA)

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

    [PROTOTYPE] Last Team Standing (Next TAM/BTA)


    Overview:

    Last Team Standing is a remake of the famous Team Arena Master from UT2004 or Battle Team Arena in UT3. The objective is to recreate most of the features provided by its predecessors, but also to improve and expand upon some of the mechanics and systems they offer.

    Description:

    This is a round-based game mode, supporting 2-4 teams. The host must set the number of rounds inside their Rules.ini file with the "?GoalScore=X" command. A round lasts for 90 seconds, after which the overtime mechanics are started (players take 5 damage every 2.5 seconds). If the overtime starts and a winner is not found within 3 minutes, the remaining players will get killed, resulting in a point awarded randomly to one of the teams.

    A typical round unfolds like this:
    • The teams get spawned in opposite and as equally distant as possible groups, as far away from the center of the map.
    • After the spawning, the weapons are locked until a 3-seconds countdown finishes. Player are free to move around the map during this countdown. They can also fall without taking damage or fall outside the map and get respawned.
    • Once the countdown is finished, the weapons are unlocked and the protection is off.
    • A round ends when there is only 1 team left with at least 1 member alive.
    • After the winning team receives a point, there is a 5-seconds break meant to allow players to relax. Damage does not get applied during this window.
    Download:

    Dropbox Link

    Changelog:

    Code:
    Version 2.2:
    
    - Recooked for build 2/1/2016.
    - Major reorganization and optimization changes.
    - Fixed specific widget.
    - Fixed weapons not being locked occasionally.
    - Removed AntiCamp feature. It is now available as a mutator.
    - Added mechanic to end the round if it stays in overtime for 3 minutes.
    - Improved spawning. Players should no longer spawn in mid-air or in inappropriate places (e.g. green goo on DM-DeckTest).
    
    Version 2.1:
    
    - Updated to work with the latest patch.
    - Fixed a bug which didn't lock the bots' weapons.
    - Specific widget temporarily removed, due to compatibility issues; will be back soon.
    
    Version 2.0:
    
    - Fixed widgets not disappearing when the ESC menu is displayed.
    - Improved widgets functionality (more organized and more efficient).
    - Widgets now display the teammates' equipped weapon (Credits to FrostbyteGR for the idea).
    - Widgets now display the teammates' health and armor separately (Credits to FrostbyteGR for convincing me).
    - Improved PlayerController workaround for the spectator system; it's much more efficient now.
    
    Version 1.9:
    
    - Fixed widgets not disappearing after the match ended; they now disappear properly.
    - Found a workaround for an issue with the match ending; previously, the match would not end when the score limit was reached (this was caused by the game itself; it only checks for score when a kill has occurred, therefore the match would end in the following round, when the first player died).
    - Fixed widgets still displaying when the scoreboard was active (widgets are still displayed when the ESC menu is enabled, though; haven't found a fix yet); they are now hidden while the scoreboard is active.
    - Greatly improved camping detection algorithm.
    - Replaced "CamperWarning" system announcer from "Siphon" to a powerup expiring warning (less aggressive and more general).
    - Fixed "CamperWarning" announcer: the announcer still plays on all the clients, but it plays on the camper's character; therefore, it can be heard and located accurately via sorround sound similar to how projectiles are heard; should provide an extra-punishment.
    - Tweaked some values with the "CamperWarning" system: A warning is issued after 7.5 seconds of camping. After another 2.5 seconds, the player takes 25 Damage and continues to take 25 damage every 5 seconds.
    - Fixed an issue with the "CamperWarning" system: no longer possible to end up on the other side of the map and get damage (this was caused by moving somewhat slower; its been decreased to a common-sense value); at any time, the player has 10 seconds to move outside a 1000 Range radius of his current location to avoid receiving damage.- Fixed an issue caused by the spawning algorithm on DM-Cannon: when spawned on top of the cannon, the player would be forced to play with a side-way view until his next spawn (provided he didn't spawn on the cannon again); it's now been corrected.
    
    Version 1.8:
    
    - Added "Camper Warning" mechanics (currently, if camping for over 10 seconds, drains 20 HP per 2.5 seconds; Range=1000); Values can be tweaked later on.
    - Tidied up the TeamInfo and RoundTimer widgets.
    - Various significant code optimizations.
    - Reduced ammo from 100% to the base ammo for each weapon (this is temporary, due to a limitation I encountered; as I stated before, this will, ideall, be configurable).
    
    Version 1.7:
    
    - Added a round timer (the default round duration is set to 2 minutes).
    - Added overtime mechanics (drains 5 health/armor every 2.5 seconds).
    - Created a placeholder widget which shows the remaining players alive.
    - Solved an elementary bug with the spawn system; still not sure how I missed it in the first place.
    
    Version 1.6:
    
    - Bulletproof spawn algorithm; works flawlessly for any number of teams.
    - Resolved a few bugs which appeared in 1.5.
    - Simplified code.
    
    Version 1.5:
    
    - Improved spawn algorithm (the algorithm itself now supports N-teams and I believe it to be extremely efficient at this point; no known issues yet).
    
    Version 1.4:
    
    - Fixed improper announcers when counting down to unlock weapons (it was potentially deafening).
    - Custom spawn spots system (it still needs a bit of work, but I think it works flawlessly 95% of the time; at this time, this system does NOT support 4-teams; that remains WIP).
    
    Version 1.3:
    
    - Simplified code.
    - Added spectator system (developed in collaboration with FrostbyteGR; tests so far show it works, but it needs proper multiplayer testing).
    - Added bot support.
    - Added max ammo at the beginning of each round (temporary; ideally, it will be configurable).
    - Fixed announcers.
    - Found a workaround for an issue with locking the weapons (the related description from Version 1.2 still has the same outcome).
    - Any and all respawn-related issues have been removed.
    
    Version 1.2:
    
    - Significantly simpler and more organized code.
    - Custom tick rate (the server still ticks at its normal rate, which tests show to be well over 60 per second, but the code only runs 4 times per second; this will hopefully reduce overall lag, if any; no known bugs at the moment).
    - Theoretically supports any number of teams (not only 4); however, there are currently no working HUDs and skins for other teams than Red and Blue; in time, FrostbyteGR and I plan to have fully working LTS/FT for up to 4 teams; ideally, the number of teams will be an option for hosts to play with, similar to other settings/mutators.
    - Respawn time is no longer an issue; players now remain dead indefinetely until the round ends.
    - Added draw situations (credits to FrostbyteGR for the idea): players who try to kamikaze in a 1v1 situation will end up denying the round point for all the teams.
    - Proper scoring announcers for up to 4 teams and draw situations.
    - Improved the weapons locking system by managing it globally (used to be managed by characters themselves); NOTE FOR THE DEVS: although this disables firing with the built-in function, it does not disable the client's weapon animations/sounds.
    - Added audio (visual still lacking) countdown before unlocking the weapons.
    
    Version 1.1:
    
    - Enabled "ForceRespawn" by default.
    - Disabled damage during the time after a round has ended until the next one begins.
    
    Version 1.0:
    
    - Basic functionality for the Arena version.

    [SPECIAL THANKS]:

    1. Devs & Community - Various people helped me solve various elementary, yet crucial issues.
    2. Community Ambassador Raxxy - Manages the implementation of the GameMode on his custom hubs.
    3. FrostbyteGR -
    After version 1.0, various parts of the code were adapted in collaboration with him. Be sure to check out his FreezeTag (FREON) GameMode.
    4. Phoenix Clan | [PHX] - (www.phoenix-4ever.de) - They had the first servers up and running and always up to date with my custom GameModes.
    Last edited by vlad.serbanescu11; 02-21-2016, 04:51 AM. Reason: Update

    #2
    Great news. As soon it is ready to run on server i will switch one or open a new one for that

    Comment


      #3
      Originally posted by [PHX]Big_Deal View Post
      Great news. As soon it is ready to run on server i will switch one or open a new one for that
      Well, it is basically server-ready. Community member IsSuE was kind enough to make a .pak for me which you can find here [EDIT: obsolete link removed]. Simply put it in your UnrealTournamentDev/UnrealTournament/Content/Paks folder and you will see it in-game.

      In case you decide to use it on a server, don't forget to turn ForceRespawn on
      Last edited by vlad.serbanescu11; 02-18-2016, 05:52 AM. Reason: Removed obsolete link

      Comment


        #4
        Sorry, I'm not actually too familiar with TAM, or BTA. What does this game type entail? I feel that I am either not understanding the initial post correctly, or the information regarding the style of play is not present.

        In either case, I look forward to updates! Some of the mutator ideas you have mentioned would definitely be welcome.
        My maps:

        CTF-DBMBridge: https://forums.unrealtournament.com/...-CTF-DBMBridge
        Feedback: "Not too bloody shabby" - Me

        Comment


          #5
          Originally posted by DolphinBuffMan View Post
          ...the information regarding the style of play is not present.
          Indeed, it is not. I thought most people knew what TAM/BTA meant. I apologize for that!

          There are 2 teams. In both previous gametypes (-- TAM/TeamArenaMaster was the original, in UT2004; BTA/BattleTeamArena succeeded it in UT3 --) players would start with all weapons except the Translocator and the Redeemer (and typically LG, not Sniper, never both) and with 100 Health/ 100 Armor. Each player had only 1 life per round. If they got killed they would enter a spectator mode, being able to spectate only their teammates. The round would end only when an entire team was dead (the other, by definition, was alive; the last Red player(s) could never die exactly at the same time with the last Blue player(s); even a split second difference would declare the last remaining team alive the winner). Think of it as a LastTeamStanding mode.

          In Unreal Arena, I removed the mandatory "all weapons" feature by introducing a built-in mutator which gives players all the weapons. But since it's a mutator, it can be removed, allowing for a normal TDM, only round-based (like in the description above). I don't think this has ever been done before. It simply adds more flexibility for the gametype.
          Last edited by vlad.serbanescu11; 05-01-2015, 06:25 AM.

          Comment


            #6
            I think I one-upped you, regarding the all-weapons/arena modification.

            Check my latest FreezeTag blueprints, I have included a function that if it detects that the arena variable is set to true, it gives health/armor, disables self/fall damage, and gives only what weapons the map has available. (for example if a map doesn't have the bio rifle, you will not get it)
            The initialization is done in the constructor, and you can also see what kind of changes I made in the event graph (event begin play, and damage, sections)
            Last edited by FrostbyteGR; 05-04-2015, 05:28 AM.
            > FreezeTag [Blueprint]
            > Reimagining of Greed [BluePrint]
            > Avarice, a DM-variant of Greed [BluePrint]

            Comment


              #7
              Originally posted by FrostbyteGR View Post
              I think I one-upped you, regarding the all-weapons/arena modification.

              Check my latest FreezeTag blueprints, I have included a function that if it detects that the arena variable is set to true
              What I did was to create a mutator and for the purpose of exposing Unreal Arena to the general public (who I assume doesn't like complications) I made that mutator built-in the gametype. So if I simply remove the mutator, it would create a round-based classic TDM, which I don't think it has ever been done before (in any UT). I have no idea whether people will like that idea or not, but once Unreal Arena gains more popularity, I will release a version without this mutator built-in. I will include the mutator in the download pack, though).

              Thanks for pointing me at your newest blueprints ! I will surely have a look. I gave you a suggestion regarding the draw/tie-breaker scenario over here.

              Hope it helps !

              Comment


                #8
                hi vlad,

                I could just try your mod with another person (1v1 only) by creating the match in a hub. It seems to work as intended, but nobody could join the server after the game started (they instantly suicided/quit)

                Comment


                  #9
                  Originally posted by Chaos.Engine View Post
                  hi vlad,

                  I could just try your mod with another person (1v1 only) by creating the match in a hub. It seems to work as intended, but nobody could join the server after the game started (they instantly suicided/quit)
                  Thank you for your feedback !

                  Bugs (major or minor) were bound to come since it's barely the first release. Regarding this particular issue, I haven't had the resources to test this scenario. But now that I am aware of it I will try to get some friends and test it this weekend (unless someone beats me to it).

                  Can you please provide more details on what happened when a player joined your game? After the first suicide, do they constantly respawn and suicide? Do they just suicide and stay dead? Are they listed on the HUD under any team?

                  Comment


                    #10
                    That bug is caused by hubs not forcing data down clients throats once a match is started, only before during hub match setup.

                    You'll need to create an unreal arena match on the hub, when you do, the hub will send you the data, and you'll be able to play normally after that (once per mod update)

                    Comment


                      #11
                      Originally posted by vlad.serbanescu11
                      I'm close to releasing a BombingRun gametype, probably next week)

                      My opinion is that you first should finish one project before you start another. There is so much to do in Unreal Arena.

                      Comment


                        #12
                        Originally posted by [PHX]Big_Deal View Post
                        My opinion is that you first should finish one project before you start another. There is so much to do in Unreal Arena.
                        I developed Bombing Run whenever I ran into a wall with Unreal Arena. Also, I had a lot of free time these past 2 weeks. Things are going to change.

                        Indeed, there is still much work to be done with Unreal Arena. Some of it is possible, some is not (due to UEditor limitations). I will improve it, I promise.

                        Comment


                          #13
                          i needz updatez
                          i mean i will suck in this game mode as i suck in instagib ( sad sad sad lost all my skill) but i want this mod so bad...

                          Comment


                            #14
                            A few suggestions:

                            -Unreal Arena sounds a bit redundant in Unreal Tournament, why not simply go for Arena?

                            Now three unique mutators for this gametype:

                            -Strangelove Mode (In a reference to RocketX, though you don't literally ride the 'Deemer in this mode):
                            -The best player in each team gets a Redeemer every round.
                            -The “Dr. Strangelove” is always exposed on sight by the Redeemer in his/her back, and he/she must plan the best moment to fire it, as it’s a game changer as well as a position exposer, and the Doctor is vulnerable when “riding” it.

                            -Brute Levelling (If you think of a better name, be my guest):
                            -Based on the leading team’s advantage, the losing team can get buffs, while the winning one is nerfed at the start of each round.

                            You could also include FreezeTag as an unique mutator, I dunno. The rules are very similar.

                            Comment


                              #15
                              Great work so far, vlad! I played a bit last night on stream but probably didn't give it a fair shake due to being a bit over-exhausted from work and lack of sleep. However, from my initial impressions here is some quick feedback:

                              - My biggest complaint is the lack of proper spectator upon dying. I know you've already listed it on your upcoming features, but I wanted to reiterate its importance. Players will become frustrated upon dying when they're forced to stare at a wall until the round ends, not knowing what is happening. Much like CS:GO, there are immense benefits to being able to spectate your teammate once you are dead. First and foremost, it keeps you engaged and involved in the game while you wait for the next round. Second, it allows you to see how your teammate is playing and perhaps learn from both his mistakes and successes. Lastly, you could potentially communicate with your teammate if you're on ts3 or mumble. I would make this a high priority if at all possible.

                              - I think the Custom HUD is the next most important feature to add. I found myself not knowing if my teammate was alive or dead, or how many of my opponents were still alive which greatly affects how you will play the situation.

                              - Finally, I felt the shock ammo was a bit too low, but that's a personal preference thing and I know many will not agree. In previous similar iterations (Rocket Arena), I always liked that shock and rockets had plenty of ammo while weapons like link, flak, sniper, and stinger were all very limited in ammo. Again, this will likely come down to personal preference, but if you made it easily adjustable in the settings for the gametype, server admins could test different ammo counts and people will gravitate to the ones they like best.

                              All in all, great start to a gamemode I always enjoyed playing and one that can really help players improve their fragging ability. I hope to do some more playtesting of it in the future and I'll try to provide some more specific feedback when I can. Thanks again for your work!
                              Former CEVO-TV CS:GO Commentator (CEVO)
                              Owned Well Co-Founder/Commentator
                              Major League Unreal Tournament Co-Founder
                              Twitch.TV | YouTube | Twitter

                              Comment

                              Working...
                              X