Announcement

Collapse
No announcement yet.

Assault

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

    [CONCEPT ART] Assault

    As the thread's tag implies, this is not a prototype or any other playable form, but an attempt to put our minds and see what we need from Epic to make the assault gamemode possible through blueprints. (aka we first have to go through the concept)
    I've had a talk earlier on with Vlad, trying to think of possible ways that Assault gamemode can be achieved/made. (since this is a catch 22, because we need maps for the gamemode to function, but we also need the gamemode for maps to work - thus the question is how do we start?)

    First things first, we need to analyze what Assault is composed of:
    • Timelimit
    • Checkpoints (which are triggered by objectives)


    The game logic, then, revolves around how many checkpoints a team has reached and on how much time:
    • If a team managed to complete all the checkpoints, then the other team has to complete them on less time than the first team did.
    • If a team managed to get to a certain checkpoint and then the time ran out, the other team has to complete one checkpoint further to win.


    Upon having these points analyzed, we come to the following conclusions of how things (in our new game) need to be done:
    • Objectives and defender/attacker spawns (can also refer to them as checkpoint locations), world interaction (buttons, levers, cables, turrets, etc), and world transformation (for example a gate/door opening, a bridge lowering, etc) would need to happen via level blueprints. Much like how DM-Overlord's system works right now.
    • There needs to be a communication between the Map's blueprint and the Gamemode blueprint. Our checkpoint and spawn logic should be handled by the Gamemode blueprint (but our Gamemode blueprint needs to scan these groups and their locations off the current Map, and put them inside our arrays during the Gamemode's initialization), when players trigger a certain objective inside the map, the Gamemode should be able to get notified of this event; and in turn the GameState should advance the game/action in the next checkpoint in the array. (assuming that checkpoints are in the form of actors that we're placing inside an array)
    • The gamemode blueprint should then handle the scoring logic as well. If a team completed the last checkpoint inside our array, then end the round and measure how much time has elapsed. Or, if the round timelimit got exhausted, check at which checkpoint the team managed to get to (or complete). Consequently, for the next round, swap the defenders and the attackers and: set the timelimit to the elapsed time in which the attacking team managed to complete the assault, previous round. Or keep the default round time limit, and have the checkpoint progression be the deciding factor for the win (if the new attackers advance one checkpoint further than the previous team did last round)


    In order the achieve the above functionallity we would need the following:
    1. An objective actor class that can be used to notify the Gamemode blueprint that the checkpoint has been reached. (This can already be done in blueprints, but the key part here is that Assault map creators and the creator of the gamemode blueprint, need to agree on the format, standards and functionality that this actor type has to have)
    2. Ability to trigger the end of the game if a certain event has happened. (We can trigger the end of the round inside the blueprints, because well, that's where we define the round behavior and create the rounds itselves. But we cannot trigger the end of the game if at round #2 the other team completed the objectives faster. So this is something that Epic has to provide through blueprints for us)
    3. Ability to include spawnpoints in groups and ways for the gamemode/blueprint to control how spawning is happening. For example in specific groups that we choose, at a given time, whilst ignoring all the other spawn locations/groups. (Because we can always tell which is the attacker, the defender, and what checkpoint we are on, through the usage of flags, but we need to avoid having the players spawn all over the place. Therefore the second key feature that Epic needs to provide, inside blueprints, is A) The ability to define actor groups for the map creators and B) The ability to dictate a player to spawn in a specific group of spawnpoints. For example when the checkpoint advances, move our checkpoint flag to the new checkpoint, to indicate the new attacker and defender spawnpoint groups, and then proceed to spawn the players that have the attacker flag to the attacker spawnpoint group and the players that have the defender flag to the defender spawnpoint group)


    I believe that this is all of the logic needed, in a nutshell. If points 2 and 3 on the last paragraph are any easy for Epic to pull off, then I believe we're good to go on developing a fully functional assault mode, and maps for it.
    I would like that any of the guys that are currently involved with Gamemode blueprints creation (and from what I've seen we're quite a few), to come inside this thread and activelly discuss and collaborate on how we can develop this.
    Last edited by FrostbyteGR; 05-17-2015, 10:42 AM.
    > FreezeTag [Blueprint]
    > Reimagining of Greed [BluePrint]
    > Avarice, a DM-variant of Greed [BluePrint]

    #2
    Originally posted by FrostbyteGR View Post
    [*]Ability to trigger the end of the game if a certain event has happened. (We can trigger the end of the round inside the blueprints, because well, that's where we define the round behavior and create the rounds itselves. But we cannot trigger the end of the game if at round #2 the other team completed the objectives faster. So this is something that Epic has to provide through blueprints for us)

    This might be doable without relying on Epic to actually implement anything.

    In GameState we have the function
    Code:
    UFUNCTION(BlueprintCallable, BlueprintAuthorityOnly, Category = GameState)
    	virtual void SetGoalScore(int32 NewGoalScore);
    By default the game relies on GoalScore to determine the end of the game, so what you'd do is just set up your final objective to set the GoalScore to some value that would end the game.

    EDIT: I just tried to set this up and test it myself, but it seems like this is hampered by the use if a raw integer type in the SetGoalScore function. There was an update on May 13 by Pete that fixes this, but we'll have to wait until the next build release to make any progress with Blueprints here.


    Originally posted by FrostbyteGR View Post
    [*]Ability to include spawnpoints in groups and ways for the gamemode/blueprint to control how spawning is happening. For example in specific groups that we choose, at a given time, whilst ignoring all the other spawn locations/groups. (Because we can always tell which is the attacker, the defender, and what checkpoint we are on, through the usage of flags, but we need to avoid having the players spawn all over the place. Therefore the second key feature that Epic needs to provide, inside blueprints, is A) The ability to define actor groups for the map creators and B) The ability to dictate a player to spawn in a specific group of spawnpoints. For example when the checkpoint advances, move our checkpoint flag to the new checkpoint, to indicate the new attacker and defender spawnpoint groups, and then proceed to spawn the players that have the attacker flag to the attacker spawnpoint group and the players that have the defender flag to the defender spawnpoint group)[/LIST]
    I haven't investigated this thoroughly at all, but it seems feasible to have each team have a 'spawn room' with a teleporter (or teleporters) that access other areas of the map. Again, dirty way to work around existing limitations, but it should work.
    Last edited by Wail; 05-17-2015, 12:47 PM.
    Join Project: Open Tournament: OpenTournamentGame.com | Project Trello | Discord | YouTube

    Subscribe to /r/UnrealSeries - The subreddit for free & uncensored discussion of Unreal series games!

    Unreal Prime Weapons: Impact Hammer | Enforcer | BioRifle | Shock Rifle | Link Gun | Ripper | Minigun | Flak Cannon | Rocket Launcher | Sniper Rifle | Grenade Launcher | Dispersion Pistol

    Comment


      #3
      I actually dont like Assault as it was done in the past, it largely turned into a race and I dont think that really promotes deep strategy. Basically though alot of gamemodes revolve around Capture Points, you could call them checkpoints, nodes, domination points or whatever you like but the basic generic functionally is very similar across all these.

      I think it might be best to start with possible Assault scenarios then try to design the implementation around how it will actually be used than come up with some mystical ideal about how things "should" work before the fact. I would love to see some creativity here
      Upon release, Unreal Tournament 2004 was met with widespread critical acclaim. Several critics praised the unique, fast-paced, fun and challenging nature of the game as its main selling points, while fans touted the post-release support and extensive modding capabilities.

      Comment


        #4
        Originally posted by MonsOlympus View Post
        I actually dont like Assault as it was done in the past, it largely turned into a race and I dont think that really promotes deep strategy. Basically though alot of gamemodes revolve around Capture Points, you could call them checkpoints, nodes, domination points or whatever you like but the basic generic functionally is very similar across all these.

        I think it might be best to start with possible Assault scenarios then try to design the implementation around how it will actually be used than come up with some mystical ideal about how things "should" work before the fact. I would love to see some creativity here
        One thing that might be worth considering is applying a time penalty to a team based on their deaths.

        (This was kind of done with 2k4's respawning system, but indirectly.)

        Then you have an incentive to do the objectives fast but also to not just dive right in suicidally. Maybe those can counterbalance each other.
        Join Project: Open Tournament: OpenTournamentGame.com | Project Trello | Discord | YouTube

        Subscribe to /r/UnrealSeries - The subreddit for free & uncensored discussion of Unreal series games!

        Unreal Prime Weapons: Impact Hammer | Enforcer | BioRifle | Shock Rifle | Link Gun | Ripper | Minigun | Flak Cannon | Rocket Launcher | Sniper Rifle | Grenade Launcher | Dispersion Pistol

        Comment


          #5
          I dont see why speed should be promoted over strategy in Assault, if there is a faster strat it'll be posted online then it takes little to no skill to simply learn it to muscle memory. To have equal options, to have a true choice about which direction you take tactically will lead to a better gametype, splitting teams into squads of different sizes depending on the map, who gets what weapons or pilots what vehicles (team builds) can become something important then. I know speed is an important factor in any UT game and Im not suggesting its removal just it taking a back seat in favour of other skills coming forward like accuracy, defense and clever inspired strategy similar to mobas without the need for indepth statistics or classed based play. We have a race gamemode already
          Upon release, Unreal Tournament 2004 was met with widespread critical acclaim. Several critics praised the unique, fast-paced, fun and challenging nature of the game as its main selling points, while fans touted the post-release support and extensive modding capabilities.

          Comment


            #6
            Originally posted by Wail View Post
            I haven't investigated this thoroughly at all, but it seems feasible to have each team have a 'spawn room' with a teleporter (or teleporters) that access other areas of the map. Again, dirty way to work around existing limitations, but it should work.
            I actually thought of making an invisible sphere/box actor (to mark the spawn area), and then transform the player's location randomly in one of the spawnpoints that it overlaps. By using those spheres/boxes we should be able to grab spawnpoints/actors as groups (and then we can work our magic by flagging stuff). But my thought is, if we get all those actors inside an array, can we surelly say that they will be placed in order (every time too) and not scrambled?
            Because if we can also get them in the correct sequence, then we can also 100% control who spawns where and when.

            Originally posted by MonsOlympus View Post
            I think it might be best to start with possible Assault scenarios then try to design the implementation around how it will actually be used than come up with some mystical ideal about how things "should" work before the fact. I would love to see some creativity here
            I understand what you're trying to say, however I think we need to dial-in the basic functionality first and get something which works and is solid, before we try to see how we can spice up the gameplay.
            Last edited by FrostbyteGR; 05-17-2015, 01:45 PM.
            > FreezeTag [Blueprint]
            > Reimagining of Greed [BluePrint]
            > Avarice, a DM-variant of Greed [BluePrint]

            Comment


              #7
              Originally posted by FrostbyteGR View Post
              I actually thought of making an invisible sphere/box actor (to mark the spawn area), and then transform the player's location randomly in one of the spawnpoints that it overlaps. By using those spheres/boxes we should be able to grab spawnpoints/actors as groups (and then we can work our magic by flagging stuff). But my thought is, if we get all those actors inside an array, can we surelly say that they will be placed in order (every time too) and not scrambled?
              Because if we can also get them in the correct sequence, then we can also 100% control who spawns where and when.
              I'm currently working on Invasion and if I have 10 spawn points, index 0 reliably refers to the same point... I don't know if we can rely on that, but thus far based on the testing that I've been doing this is worth trying.

              Originally posted by FrostbyteGR View Post
              I understand what you're trying to say, however I think we need to dial-in the basic functionality first and get something which works and is solid, before we try to see how we can spice up the gameplay.
              100% agreed.
              Join Project: Open Tournament: OpenTournamentGame.com | Project Trello | Discord | YouTube

              Subscribe to /r/UnrealSeries - The subreddit for free & uncensored discussion of Unreal series games!

              Unreal Prime Weapons: Impact Hammer | Enforcer | BioRifle | Shock Rifle | Link Gun | Ripper | Minigun | Flak Cannon | Rocket Launcher | Sniper Rifle | Grenade Launcher | Dispersion Pistol

              Comment


                #8
                After doing further investigation using the latest C++ from GitHub, it looks like my idea of having a simple objective actor that sets the GameState's GoalScore won't actually work. Need to investigate further workarounds.
                Join Project: Open Tournament: OpenTournamentGame.com | Project Trello | Discord | YouTube

                Subscribe to /r/UnrealSeries - The subreddit for free & uncensored discussion of Unreal series games!

                Unreal Prime Weapons: Impact Hammer | Enforcer | BioRifle | Shock Rifle | Link Gun | Ripper | Minigun | Flak Cannon | Rocket Launcher | Sniper Rifle | Grenade Launcher | Dispersion Pistol

                Comment


                  #9
                  Originally posted by FrostbyteGR View Post
                  I understand what you're trying to say, however I think we need to dial-in the basic functionality first and get something which works and is solid, before we try to see how we can spice up the gameplay.
                  Yes but I can see from the first post in your first dot point you have railroaded yourself into a speed based gametype.
                  Upon release, Unreal Tournament 2004 was met with widespread critical acclaim. Several critics praised the unique, fast-paced, fun and challenging nature of the game as its main selling points, while fans touted the post-release support and extensive modding capabilities.

                  Comment


                    #10
                    Please make it close to UT99 assault

                    Comment


                      #11
                      Originally posted by MonsOlympus View Post
                      I actually dont like Assault as it was done in the past, it largely turned into a race and I dont think that really promotes deep strategy. Basically though alot of gamemodes revolve around Capture Points, you could call them checkpoints, nodes, domination points or whatever you like but the basic generic functionally is very similar across all these.
                      Promote deep strategy? Assault matches in UT99 continue to have deep and all-encompassing tactics and teamwork. Any 'deeper' and you don't have a game anymore, but a chess match. Part of what makes UT99 AS so deep and thorough is the ability for teams to rocket launch one another. It turns the game from a 2D "time-based, run at the enemy until you win or draw" game into "outsmart, outcoordinate, outplay" and focuses more on execution as a team rather than ones' ability to run in a straight line, like UT2k4 did.

                      As for other objectives, I really like the idea of adding domination points into AS objectives, perhaps one team controlling two objectives at once, which gives the defending team the opportunity to reverse some of it and contest. Ultimately the mapmakers are going to have a lot of say in stuff like that, so ban willhaven from coming near UT4's AS and all's well.
                      Purveyor of Unreal Tournament.

                      <khxmz> thanksgiving is about being thankful for what you have nvz, not asking your favorite game developer for more hats

                      Comment


                        #12
                        Originally posted by Wail View Post
                        One thing that might be worth considering is applying a time penalty to a team based on their deaths.

                        (This was kind of done with 2k4's respawning system, but indirectly.)

                        Then you have an incentive to do the objectives fast but also to not just dive right in suicidally. Maybe those can counterbalance each other.
                        This has been discussed and it was widely viewed as a horrible idea. This negatively impacts the gametype overall. There's no reason to slow the game down. This hurts the entire team and the pace of play. It's up to the mapmakers to develop balanced maps, and this was done without ANY problems in UT99. Turning the game into a two-dimensional yawnfest will be horrible for the game and lead to another dead gametype right out of the box.
                        Purveyor of Unreal Tournament.

                        <khxmz> thanksgiving is about being thankful for what you have nvz, not asking your favorite game developer for more hats

                        Comment


                          #13
                          Originally posted by smantz0rZ View Post
                          This has been discussed and it was widely viewed as a horrible idea. This negatively impacts the gametype overall. There's no reason to slow the game down. This hurts the entire team and the pace of play. It's up to the mapmakers to develop balanced maps, and this was done without ANY problems in UT99. Turning the game into a two-dimensional yawnfest will be horrible for the game and lead to another dead gametype right out of the box.
                          What I was suggesting has no impact on the actual pace of the game, just on the 'score.'

                          I get where you're coming from in that you have a concept of 'Assault' that should not be changed, but it's kind of contrary to good practice to come in and tell people who are trying to hash out new ideas that they shouldn't be allowed to be creative and explore other ideas for new gametypes.
                          Join Project: Open Tournament: OpenTournamentGame.com | Project Trello | Discord | YouTube

                          Subscribe to /r/UnrealSeries - The subreddit for free & uncensored discussion of Unreal series games!

                          Unreal Prime Weapons: Impact Hammer | Enforcer | BioRifle | Shock Rifle | Link Gun | Ripper | Minigun | Flak Cannon | Rocket Launcher | Sniper Rifle | Grenade Launcher | Dispersion Pistol

                          Comment


                            #14
                            Originally posted by smantz0rZ View Post
                            Ultimately the mapmakers are going to have a lot of say in stuff like that, so ban willhaven from coming near UT4's AS and all's well.

                            This made me laugh.

                            Comment


                              #15
                              Haha smantie zu geil! xD

                              b2t:

                              This seems to be a tricky one with doing it at the actual state.

                              However it seems possible and i like the ideas which came up above.

                              Curious where this will go....

                              And ocf ut99 style
                              UT4 ASSAULT - Server Admin | Community Admin
                              UT4ASSAULT.COM
                              ‚Äč

                              Forum Thread | UTA Discord | UTA Facebook
                              UTA Steam Group | Email me

                              Comment

                              Working...
                              X