An idea: No AQ/AW timers on bosses, allowing multiple fighters vs bosses.
dot_ditto
Member Posts: 1,442 ★★★★
So I've been giving this a thought over time, and wanted to share the idea, along with details, on this idea here.
Short version for the TLDR group
The following will layout the idea - and the how to - of allowing multiple people to fight an AQ or AW miniboss or boss at the same time.
The idea here is, it helps solves some issues that seem to arise in AQ and AW from time to time. Such as waiting for somebody else to finish fighting the boss ... you have to go in 1 at a time. Fight timers on the miniboss/boss are eliminated - thereby also removing potential issues/bugs/cheats using the timer (ie Corvus, IronMan, etc.).
And onto the details ...
So yes, I know this is going to be long, so I'm going to try to break things down so it's easier to follow/understand. yes, there's a lot to it, yes, I'm sure a lot will just not read and think "OMG no, it won't work". That's fine .. It "can" work ... that's not the debate here the real question is how to make it work, and is it really worth it?
Ok, moving along, first off, why?
So I've always thought it would make sense to have multiple people being able to fight the boss at same time. After all, when fighting Thanos (in comics/movie/etc, for example), the champions don't sit by idly while Thanos slaps one of them silly. They attack in concert, at the same time. Now, of course, we're limited with the game design/purpose and our technology and timings of people logging in .. sure .. but I think it's actually very easy to allow multiple players to "go at it".
Also, this would eliminate the need for fight Timers. Really, the only reason for timers right now is to prevent a player from either trolling, or being "trapped" into an unwinable fight for an extended period. You have a few min to take a crack at the boss, then have to defer to others. Based on how it's setup "now", this makes sense. The timers - although not necessarily liked by all - are necessary based on the current setup. (we just wish they were longer )
With the ability of multiple players to join in, however, the timers lose their necessity. You can last 10 min in a fight? that's fine, others can join and contribute some damage just fine without being blocked by you. No more waiting ... no more weird cheese loopholes like the Corvus one, or such. But imho the removal of timers completely here, I think would be a really big win on this.
Ok, so that's fine .. but "how" would it work?
I mean it'll break the game right? Right ?
I could spend time here bashing Kabam on their ability/inability to code .. but that's not what this is about. This is about trying to provide a constructive idea . complete with "how to" steps to try to help out as much I can. I don't claim to know everything about their system, however, my background is 20+ years of working in the software development industry. I'd like to think I picked a trick or two up in that time
Ok, so first off, server load. The panic shoppers here will be screaming "but having 10 people all fighting the same boss will add extra server load to the system!".
No, actually it wouldn't. Think about it. If 10 people are playing, and fighting 10 different fights, the server load is .. "something" (doesn't matter what). If those 10 same people are all fighting, instead, the same target ... the server load is ... "the same". Yes, the same. Exactly the same. There is no reason to believe that fighting a different fight adds/changes the server load (significantly). So, no, in fact, nothing here changes the server load, for better or worse. It's going to be the same.
Logistics - how to track damage from multiple players into a single pool?
This is actually very simple - it almost manages itself, really. Currently - I believe - the fights that take place are already in communication with the game as the fight progresses. I believe this, because in the middle of some fights, I see the network bar show up red when it thinks it can't talk to the servers. And if it can't talk to the servers for long enough, it times out of the fight, and brings the game down. So just because I'm in a fight doesn't mean I'm no longer in communication with the servers. The connections are there - they're being maintained - they're being "USED".
Well, we USE them .. every few seconds (whatever rate they currently poll for information - I'm not suggesting changing that - use what you have), the client and the server do a handshake .. share information. The client sends it's latest update of damage to the server, the server let's the client know what the latest health total is of the target. The server will keep handling the incoming health total, minus the incoming damage, and send back the adjustment to all players. This little bit of math is small, quick, and not difficult to track on the fly.
What players will see, is the boss' health pool suddenly drop a bit every so often. This drop would represent the damage his allies have done to the boss. Once the server detects that the boss is dead (ie 0 health), it flags him as "dead" in addition to the health total - to avoid any odd interactions with things like Hela/Phoenix/etc .. where they have special things happen at/near 0 health. ie once 1 player has bypassed that event (ie the indestructible/revive/whatever), and managed to bring them down ... that's it .. they're done. And the flag/information gets handed around and picked up by other players ... eventually. Hopefully not long, assuming polling happens every few seconds or so.
ok, but what about champs like Phoenix or Ultron, who heal up ??
Admittedly, this is the only real problem area, and needs some good options - so please share if you have any. Here's what I came up with:
When 1 player triggers such an event, that healing happens .. and is shared with the server, thereby having the server updating the health of the target. At the same time, the server registers that that ability was used (ie Phoenix revive). And is then "suppressed" or prevented from triggering again for anyone else as long as somebody is fighting. So in short, it would only trigger once. (worst case, it is possible it could trigger multiple times depending on the polling interval, however, the server could easily keep a check to correct any additional triggers from actually adding to the server health)
Unless ... all players are no longer fighting her. Once nobody is fighting her, the next time you go in - just like now - that ability will again be able to trigger.
Alternatively, it could be set to trigger a set # of times to increase challenge if it's deemed appropriate. However, I don't think it's really needed - nor does it change the nature of this concept.
So here's a working example:
Let's say we have Thanos, with 100k health.
Player 1 joins the fight, and starts fighting a 100k Thanos.
Player 2 joins in about the same time, also fighting a 100k Thanos.
Player 1 manages to deal about 10k dmg in the first few seconds and he then polls to the server.
P1 and Server health: 90k
in the next few seconds, P2 polls, and sends in 12k dmg. His Thanos is at 88k health.
Server health drops to 78k health, and P2 sees the update as his Thanos drops to 78k.
Player 3 joins the fight, and begins fighting a 78k health Thanos.
Player 1 polls again, sending a 5k dmg in, and gets an update: 73k Thanos, his health dropping from 85k.
...
this continues until:
We have 3 players still in the fight.
Thanos health on server is 10k
P1 is showing as 15k
P2 as 10k
P3 as 10K
P1 polls with the server, and sends in 12k dmg.
Server updates and registers
Ok, so what do you think? I know some people hate change and such so won't bother really giving this a chance, but I'm hoping this gives some ideas to Kabam, and some thoughts on how to handle these things in future.
Cheers!
Short version for the TLDR group
The following will layout the idea - and the how to - of allowing multiple people to fight an AQ or AW miniboss or boss at the same time.
The idea here is, it helps solves some issues that seem to arise in AQ and AW from time to time. Such as waiting for somebody else to finish fighting the boss ... you have to go in 1 at a time. Fight timers on the miniboss/boss are eliminated - thereby also removing potential issues/bugs/cheats using the timer (ie Corvus, IronMan, etc.).
And onto the details ...
So yes, I know this is going to be long, so I'm going to try to break things down so it's easier to follow/understand. yes, there's a lot to it, yes, I'm sure a lot will just not read and think "OMG no, it won't work". That's fine .. It "can" work ... that's not the debate here the real question is how to make it work, and is it really worth it?
Ok, moving along, first off, why?
So I've always thought it would make sense to have multiple people being able to fight the boss at same time. After all, when fighting Thanos (in comics/movie/etc, for example), the champions don't sit by idly while Thanos slaps one of them silly. They attack in concert, at the same time. Now, of course, we're limited with the game design/purpose and our technology and timings of people logging in .. sure .. but I think it's actually very easy to allow multiple players to "go at it".
Also, this would eliminate the need for fight Timers. Really, the only reason for timers right now is to prevent a player from either trolling, or being "trapped" into an unwinable fight for an extended period. You have a few min to take a crack at the boss, then have to defer to others. Based on how it's setup "now", this makes sense. The timers - although not necessarily liked by all - are necessary based on the current setup. (we just wish they were longer )
With the ability of multiple players to join in, however, the timers lose their necessity. You can last 10 min in a fight? that's fine, others can join and contribute some damage just fine without being blocked by you. No more waiting ... no more weird cheese loopholes like the Corvus one, or such. But imho the removal of timers completely here, I think would be a really big win on this.
Ok, so that's fine .. but "how" would it work?
I mean it'll break the game right? Right ?
I could spend time here bashing Kabam on their ability/inability to code .. but that's not what this is about. This is about trying to provide a constructive idea . complete with "how to" steps to try to help out as much I can. I don't claim to know everything about their system, however, my background is 20+ years of working in the software development industry. I'd like to think I picked a trick or two up in that time
Ok, so first off, server load. The panic shoppers here will be screaming "but having 10 people all fighting the same boss will add extra server load to the system!".
No, actually it wouldn't. Think about it. If 10 people are playing, and fighting 10 different fights, the server load is .. "something" (doesn't matter what). If those 10 same people are all fighting, instead, the same target ... the server load is ... "the same". Yes, the same. Exactly the same. There is no reason to believe that fighting a different fight adds/changes the server load (significantly). So, no, in fact, nothing here changes the server load, for better or worse. It's going to be the same.
Logistics - how to track damage from multiple players into a single pool?
This is actually very simple - it almost manages itself, really. Currently - I believe - the fights that take place are already in communication with the game as the fight progresses. I believe this, because in the middle of some fights, I see the network bar show up red when it thinks it can't talk to the servers. And if it can't talk to the servers for long enough, it times out of the fight, and brings the game down. So just because I'm in a fight doesn't mean I'm no longer in communication with the servers. The connections are there - they're being maintained - they're being "USED".
Well, we USE them .. every few seconds (whatever rate they currently poll for information - I'm not suggesting changing that - use what you have), the client and the server do a handshake .. share information. The client sends it's latest update of damage to the server, the server let's the client know what the latest health total is of the target. The server will keep handling the incoming health total, minus the incoming damage, and send back the adjustment to all players. This little bit of math is small, quick, and not difficult to track on the fly.
What players will see, is the boss' health pool suddenly drop a bit every so often. This drop would represent the damage his allies have done to the boss. Once the server detects that the boss is dead (ie 0 health), it flags him as "dead" in addition to the health total - to avoid any odd interactions with things like Hela/Phoenix/etc .. where they have special things happen at/near 0 health. ie once 1 player has bypassed that event (ie the indestructible/revive/whatever), and managed to bring them down ... that's it .. they're done. And the flag/information gets handed around and picked up by other players ... eventually. Hopefully not long, assuming polling happens every few seconds or so.
ok, but what about champs like Phoenix or Ultron, who heal up ??
Admittedly, this is the only real problem area, and needs some good options - so please share if you have any. Here's what I came up with:
When 1 player triggers such an event, that healing happens .. and is shared with the server, thereby having the server updating the health of the target. At the same time, the server registers that that ability was used (ie Phoenix revive). And is then "suppressed" or prevented from triggering again for anyone else as long as somebody is fighting. So in short, it would only trigger once. (worst case, it is possible it could trigger multiple times depending on the polling interval, however, the server could easily keep a check to correct any additional triggers from actually adding to the server health)
Unless ... all players are no longer fighting her. Once nobody is fighting her, the next time you go in - just like now - that ability will again be able to trigger.
Alternatively, it could be set to trigger a set # of times to increase challenge if it's deemed appropriate. However, I don't think it's really needed - nor does it change the nature of this concept.
So here's a working example:
Let's say we have Thanos, with 100k health.
Player 1 joins the fight, and starts fighting a 100k Thanos.
Player 2 joins in about the same time, also fighting a 100k Thanos.
Player 1 manages to deal about 10k dmg in the first few seconds and he then polls to the server.
P1 and Server health: 90k
in the next few seconds, P2 polls, and sends in 12k dmg. His Thanos is at 88k health.
Server health drops to 78k health, and P2 sees the update as his Thanos drops to 78k.
Player 3 joins the fight, and begins fighting a 78k health Thanos.
Player 1 polls again, sending a 5k dmg in, and gets an update: 73k Thanos, his health dropping from 85k.
...
this continues until:
We have 3 players still in the fight.
Thanos health on server is 10k
P1 is showing as 15k
P2 as 10k
P3 as 10K
P1 polls with the server, and sends in 12k dmg.
Server updates and registers
Ok, so what do you think? I know some people hate change and such so won't bother really giving this a chance, but I'm hoping this gives some ideas to Kabam, and some thoughts on how to handle these things in future.
Cheers!
0