Floodwaters bug and what it revealed

Ohboy
Ohboy Posts: 1,766 Chairperson of the Boards
OK now that it's gone, I guess we can discuss what we found out from the bug. I'm sure I'm not the only one toying with it to coax secrets from the coding behind the game. 

Here's what I got:

1) full hp of a plane walker is stored as 0 in the internal life counter. The displayed number is the result of taking that life counter and doing some basic arithmetic. 

2) there is no safety checking in the life counter. It can go above 0.

3) there is safety checking in the display process. It will display max hp even if the internal counter goes above 0.

4) the only safety check on the internal life counter occurs when healing is used. After healing, the code checks if life counter is above 0, and will reset it to 0 if so. 

5) creature life counters work as one would expect. They do not start at 0 for max toughness. 

6) the game ends when the internal counter says so. The display is purely cosmetic. 

Comments

  • Volrak
    Volrak Posts: 732 Critical Contributor
    Ohboy said:

    1) full hp of a plane walker is stored as 0 in the internal life counter. The displayed number is the result of taking that life counter and doing some basic arithmetic.
    It seems possible that all of the insights here may also be consistent with a "damage counter" implementation for HP tracking, which starts at 0 and increases when damage is taken, rather than a zero/negative "life counter".
  • Skiglass6
    Skiglass6 Posts: 149 Tile Toppler
    What we learned is D3 knew about this exploit and didn't close it for a full set cycle. Allowing players to exploit the game during events to gain rewards. And before anyone says anything, I used the exploit once in story mode to take screen shots and show other coalition members when someone asked about it. 
  • Ohboy
    Ohboy Posts: 1,766 Chairperson of the Boards
    Skiglass6 said:
    What we learned is D3 knew about this exploit and didn't close it for a full set cycle. Allowing players to exploit the game during events to gain rewards. And before anyone says anything, I used the exploit once in story mode to take screen shots and show other coalition members when someone asked about it. 

    I assure you that other than saving time, this exploit is quite unstable to use for event objectives. 

    I say that from experience of playing around with it for a long time to do experiments.

     Volrak said:
    Ohboy said:

    1) full hp of a plane walker is stored as 0 in the internal life counter. The displayed number is the result of taking that life counter and doing some basic arithmetic.
    It seems possible that all of the insights here may also be consistent with a "damage counter" implementation for HP tracking, which starts at 0 and increases when damage is taken, rather than a zero/negative "life counter".
    That's true, and there's no real way to test it. I just went with the way it was easier to visualize in my head. 
  • shteev
    shteev Posts: 2,031 Chairperson of the Boards
    Ohboy said:
    Skiglass6 said:
    What we learned is D3 knew about this exploit and didn't close it for a full set cycle. Allowing players to exploit the game during events to gain rewards. And before anyone says anything, I used the exploit once in story mode to take screen shots and show other coalition members when someone asked about it. 

    I assure you that other than saving time, this exploit is quite unstable to use for event objectives.
    Naah, you just have to make sure you deal 0 damage to your opponent before you hit him with the bug.