Sai Winner of Games
Smash Cadet
- Joined
- Aug 25, 2007
- Messages
- 72
- NNID
- SpiralDragon
- 3DS FC
- 1822-0827-5656
I've been wondering exactly what the problem is that required the replay limit to be only 3 minutes. The game runs at 60 frames/sec. Let’s say you can have one input each of those frames, so it should be possible to estimate how much space we need to store a certain time of game data by determining how many unique inputs are possible at a given frame.
If you look at a classic controller, there are 12 buttons + 2 control sticks that you could press at a given time. Let’s say the control sticks have around 360 degrees of possible inputs each. So theres are about 750 possible single button actions. There are a many actions that require 2 simultaneous button presses in Brawl, but let’s say we can press 4 different ones at any given time, so the actions are not underestimated. Since the order of the button press does not matter at a given instant, and you cannot press the same button at a given instant, that gives us (n choose k) = n!/(k!(n-k)!) = 750!/(4!*746!) = 13078382625 possible inputs at a given frame. Notice that not all these possibilities will perform different actions in game, so the real number will be much less.
These possible inputs (13078382625) will fit will fit in 5 bytes (1099511627776 possibilities). So to recreate a replay we need 5 bytes/frame, which is 300 bytes/second. For 10 minutes (600 seconds) of game play, you would need 180000 bytes (180 kB). I'm not at home anymore (thus Wii-less ), so if someone wants to make replays of different times and check to make sure the resulting size is less than 300 bytes/second, this could be verified.
The Wii has 64 MB of main memory, so 10 minutes of game play would need less than 0.3% of the Wii's memory from my rough overestimated size requirement for storing a smash game. I highly doubt brawl uses 99.8% of the main memory at a given time or even close to it.
I don't think saving this data uses additional too much processing power either, because most of the input data needs to pass through memory anyway, so enough memory should really be the only issue. Converting this input data it into the Brawl replay format is probably done at the start screen after the game. To me, it sounds like the 3 minute limit was placed arbitrarily for no reason.
The good news is, if the Wii really has the hardware to store more than 3 minutes, if someone hacked the limit by editing the game disc or using an action replay, in theory, it should not cause any problems.
There may be up to 2 times the game checks for the game time to make sure it is less than 3 minutes. The first could be during the game, when it stores the data and then at the end when it gives you the option of saving the replay. The second one seems the easiest to target. If this check can be replaced with a higher time value, we may be able to make full replays. If it also checks during the game to store the data, it will require editing both check values.
I think it just might be crazy enough to work. Feel free to point out any issues there are (I threw this together somewhat quickly).
If you look at a classic controller, there are 12 buttons + 2 control sticks that you could press at a given time. Let’s say the control sticks have around 360 degrees of possible inputs each. So theres are about 750 possible single button actions. There are a many actions that require 2 simultaneous button presses in Brawl, but let’s say we can press 4 different ones at any given time, so the actions are not underestimated. Since the order of the button press does not matter at a given instant, and you cannot press the same button at a given instant, that gives us (n choose k) = n!/(k!(n-k)!) = 750!/(4!*746!) = 13078382625 possible inputs at a given frame. Notice that not all these possibilities will perform different actions in game, so the real number will be much less.
These possible inputs (13078382625) will fit will fit in 5 bytes (1099511627776 possibilities). So to recreate a replay we need 5 bytes/frame, which is 300 bytes/second. For 10 minutes (600 seconds) of game play, you would need 180000 bytes (180 kB). I'm not at home anymore (thus Wii-less ), so if someone wants to make replays of different times and check to make sure the resulting size is less than 300 bytes/second, this could be verified.
The Wii has 64 MB of main memory, so 10 minutes of game play would need less than 0.3% of the Wii's memory from my rough overestimated size requirement for storing a smash game. I highly doubt brawl uses 99.8% of the main memory at a given time or even close to it.
I don't think saving this data uses additional too much processing power either, because most of the input data needs to pass through memory anyway, so enough memory should really be the only issue. Converting this input data it into the Brawl replay format is probably done at the start screen after the game. To me, it sounds like the 3 minute limit was placed arbitrarily for no reason.
The good news is, if the Wii really has the hardware to store more than 3 minutes, if someone hacked the limit by editing the game disc or using an action replay, in theory, it should not cause any problems.
There may be up to 2 times the game checks for the game time to make sure it is less than 3 minutes. The first could be during the game, when it stores the data and then at the end when it gives you the option of saving the replay. The second one seems the easiest to target. If this check can be replaced with a higher time value, we may be able to make full replays. If it also checks during the game to store the data, it will require editing both check values.
I think it just might be crazy enough to work. Feel free to point out any issues there are (I threw this together somewhat quickly).