6.8 KiB
6.8 KiB
| 1 | system | original_rule | evidence | mvp_active_deviation | demo_default | status |
|---|---|---|---|---|---|---|
| 2 | base player stats | ATK20, HP500, AIM1.5, DEF10, EVA1, COUNTER10, ASP100, CRIT10 | battleplayerdefaultstat.csv | HP100, DEF5, AIM100%, EVA0%, CRIT5%, ASP multiplier1.0; ATK20 and COUNTER10 retained | frozen values in v0.2.7 | intentional deviation |
| 3 | battle cadence | real-time automatic cooldown/attack-speed system; each living actor schedules independently; interval=100/finalAttackSpeed | BattleController/native combat reverse | none; v0.2.8 adopts the original real-time cooldown scheduler and removes strict alternating turns | no global 0.25-second clamp | source-aligned |
| 4 | damage and lifesteal rounding | source keeps floating damage through HP subtraction and lifesteal uses ceil(finalDamage*rate/100) | combat native reverse report | none in calculation; UI may round only for display | positive lifesteal result has minimum heal 1 | source-aligned |
| 5 | counterattack | independent >= RandomInt(1,101) check; triggered DamageMeta can miss or crit and uses defense; no lifesteal | combat native reverse report | none in calculation | base counter rate10 | source-aligned |
| 6 | revive | Revive blessing exists and original product also contains revive/ad paths | augment.csv ID106 + native metadata | all revive disabled | run ends at HP<=0 | intentional deviation |
| 7 | potions | 9 shop potion offers | ingameshoplist.csv offers143..151 | single healing potion only | 10% maxHP, base capacity1 | intentional deviation |
| 8 | board lifetime | one persistent 44-position board mutates across loops | BoardController native refresh path | none | 4 large + 40 small | source-aligned |
| 9 | new-run generation | SpawnInitialTiles -> SpawnAllCornerTiles -> AddRandomGoodTiles(8) | InitNewGame native state machine | Good metadata deck is reduced to implemented events | 8 attempts, not 8 guaranteed placements | mixed |
| 10 | Start normal refresh order | source call order differs from the product transaction order | Start MoveNext calls 0x5541AC0, 0x5544C94, 0x554661C, 0x5546828, 0x55472D8 | shop interaction -> final Boss judgment -> Floor reward -> non-final loop and purchased Tile commit -> Good -> Enemy -> heal -> resume | 30% maxHP heal | intentional transaction-order deviation |
| 11 | next-loop tile injection | AddRandomGoodTiles(loop+2), then AddRandomEnemyTile(enemyTilesPerLoop,false) | BoardController.AddNextLoopTiles native | none in structure | enemyTilesPerLoop=3 until serialized value is recovered | partial/default |
| 12 | Good event deck | new-account deck has 8 OutGameTile metadata: 100,103,106,109,112,124,133,136 | outgametile.csv/outgametileskill.csv | runtime deck: tile IDs137,141,143,151,164,169 plus fixed AUGMENT124 | 169 gate overridden only for validation | intentional deviation |
| 13 | Corner set | 8 enabled Corner tile rows:125,126,127,128,129,131,167,175 with gates | newtile.csv | only 125,127,128,129,131 | consumed Corner locally refreshes to another legal Corner | intentional deviation + edge default |
| 14 | building / exterior houses | Housing Support 129 rolls two independent D6; A+B is the base construction-attempt count; actual construction is capped by eligible spaces in the upcoming row; exact reward conversion is unresolved | CornerDiceBuilding runtime path + corner-rules.csv | enable one exterior house slot per ordinary small tile; place without replacement on the next clockwise board side; houses persist independently of underlying tile mutation until final Boss conversion; Urban Planning 152 adds 2 attempts | 1 spirit stone per actual house; no eligible slot resolves as zero; final Boss conversion clears all houses | source structure + MVP executable edges |
| 15 | blessing catalog | 31 enabled main-mode blessings, equal base prob weight10 | augment.csv + runtime observation for DoubleHeal | 28 active; disable IDs106,156,157; show exactly 3 distinct candidates; all definitions return to pool after choice; stackable values add | DoubleHeal adds 8% max-HP healing per acquired copy on Natural Double; Urban Planning 152 is unique and adds 2 construction attempts | intentional scope and stacking rule |
| 16 | shop catalog | 96 offers: TILE12/AUGMENT31/POTION9/STAT13/FIXED30/LOTTO1 | ingameshoplist.csv | load all, enable 77 offers in runtime pools | see 03-shop-product-whitelist.csv | intentional scope filter |
| 17 | shop slots | 3 fixed + 3 random | shop native/config reverse | none in count; random slots are equal-weight without replacement, cannot duplicate on one screen, and sold-out items stay excluded for the current visit | next shop activation clears the sold-out visit set; owned stackable blessings may recur | source-aligned + MVP draw edge rules |
| 18 | shop reroll | price=3+2*k, k starts0; free reroll does not advance k | gameconfig.csv ID119 + native shop reverse | none | no hard cap | source-aligned |
| 19 | ordinary repeat purchase | price does not automatically rise; buyCount limits stock | ingameshoplist.csv | none | fixed price | source-aligned |
| 20 | fixed potion upgrades | separate rows encode price ladder, not dynamic markup | offers165..194 | mapped onto the single potion | count 10..78, heal 7..100, refill5 | source structure + MVP mapping |
| 21 | black market | base + trunc(base*surchargePercent/100); percent unresolved | CornerBlackMarket native reverse | none in formula | 50% surcharge | partial/default |
| 22 | equipment quality | six weights 210:60:28:4:1:4 | weapondrop.csv | none | no pity | source-aligned |
| 23 | equipment level | Floor/Floor+1/Floor+2 relative weights90:5:1 | gameconfig.csv ID100 + native reverse | none | weighted normalized draw | source-aligned |
| 24 | equipment salvage | exact in-run conversion values not closed | consumer unresolved | quality values1/2/4/8/12/16 | fixed per quality | demo economy |
| 25 | enemy death reward | death-time generation path confirmed; no unified probabilities recovered | combat/drop reverse | 95/4/1 normal and fixed+5:2 elite | see defaults table | demo economy |
| 26 | boss mid-fight gear | one mid-fight gear appearance observed; condition unknown | runtime observation | trigger at first <=50% crossing | once per boss | demo threshold |
| 27 | DiceGauge pressure | source hidden gauge 0->50->100, then 4-roll counter, then 4 distinct non-AUGMENT pressure tiles | stage config + IL2CPP + runtime | enter at50; +25 per player action; at100 count down4 rolls; pressure action resets to0; shortage does not downgrade and delays conversion | resolved pressure tile becomes Empty | intentional cycle deviation + frozen edge rules |
| 28 | final Boss conversion movement | source overflow edge not fully observed | Start/Boss branch partial + gameplay decision | preserve remainingSteps after 44-tile conversion; if zero require one more Roll and new landing | current standing tile is not a new landing | MVP frozen |
| 29 | Floor point reward | original loop reward resources and stage multipliers differ | ingamereward.csv | 10+5*Floor in-run points | integer | intentional economy replacement |