Series
Golden Sun
3 games, 2001–2010.
Games
Interactive: timeline (needs JavaScript)
The series by yearMechanics
A marked cell changed from the game before. “Uses” means the game has the mechanic, with no variant recorded yet.
Every claim, by mechanic and game
| Concept | Golden Sun 2001 |
|---|
| Random number generator | |
| Status recovery | - In the matching C of the North American and European release, eight unnamed functions (
Func_80bf250 to Func_80bf484) each count down one of a unit's turn counters by 1 per call: the attack, defense, and resist modifiers (attackModTurns, defenseModTurns, resistModTurns, field names from the decompilers' struct Unit), and delude, confuse, charm, stun, and sleep. A counter that reaches 0 ends the effect, and for a modifier also zeroes the modifier. Otherwise the unnamed Func_80bf208 rolls for an early end, with the turns left T and a base B per counter: 30 for an attack modifier, 20 for defense and resist, 30 for delude, 60 for confuse, 70 for charm, 40 for stun, 50 for sleep. A modifier rolls only while it is negative (a lowered stat), so a raised stat lasts its full count. The roll happens only when T is 5 or less, and succeeds when (3 × the unit's luck − 5T + B) × 655 is at least a 16-bit RPGRandom result, so a check succeeds about (3 × Luck − 5T + B)% of the time (computed: 655 is about 1% of 65,536; the comparison is signed, so a negative sum never succeeds, and a sum over 100 always does). Success zeroes the counter, and a modifier's value too. Func_80bf208 calls _GetUnit with no argument, so the unit it reads is whatever its first argument left in r0, the unit being checked (the atlas's reading of the matching build). Which routines call these eight, and how often, is still assembly. Code
|