View difference between Paste ID: cdGDm5ak and X9DaBDdT
SHOW: | | - or go back to the newest paste.
1
Quick crashcourse on formatting:
2
	$## means the number "##" is in hexadecimal.
3
	@ prefix means this is an address. The number following maybe be suffixed with .b,.w, or .l, meaning it's a byte, 16bit word, or 32bit long integer.
4
	An address may be followed by [#] meaning there are # entities of the specified type located here.
5
	Rank numbers are specified in the most understandable way; an increase in rank (or positive value) makes the game harder, and decrease makes it easier. Do note that the actual rank value is stored in the opposite way; a decrease in the value makes the game harder. This is worth noting for the starting/minimum rank values.
6
7
8
rank_start_base_mul: @$20F9CE.w
9
	This is depending on the button you hit to exit test mode, or the button held when the machine reboots.
10
	If the start button was held/hit, value is $100. Otherwise, $C0.
11
	This value is "sticky", in that it only needs to be done once, then the cabinet is locked to that value until next reboot.
12
13
difficulty_dip: @$20F9FA.b
14
	Picked based on Difficulty DIP switches. easy,normal,hard,veryhard = 0,1,2,3
15
timer_dip: @$20F9FB.b
16
	Picked based on Timer Rank DIP switches. low,normal,high,highest = 0,1,2,3
17
18
course_x2: @$20E6A6.b
19
	Picked based on difficulty selection. training,normal,advanced,boss = 0,2,4,6
20
21
rank_start_tbl: @$C7E.w[4] $FF,$F8,$F0,$E0
22
rank_start_mul_tbl: @$C86.w[4] $100,$100,$E0,$D0
23
rank_timer_start_tbl: @$C8E.w[4] $00,$04,$10,$40
24
25
rank: @$20F9D0.l
26
rank_frame: @$20F9D4.l
27
rank_min: @$20F9D8.l
28
29
rank_min = rank_start_tbl[difficulty_dip] * rank_start_base_mul * rank_start_mul_tbl[course_x2/2]
30
rank_frame = rank_timer_start_tbl[timer_dip]
31
32
Rank begins counting at the character select screen, and is set to rank_min at that point.
33-
Rank will never be greater than rank_min, and never lower than 0.
33+
Rank will never be "greater" than rank_min, and never "lower" than 0.
34-
Each frame, rank will be decreased by rank_frame PLUS HOW MANY UNUSED CREDITS ARE IN THE MACHINE HOLY SHIT YAGAWA YOU GENIUS
34+
Each frame, rank will be increased by rank_frame PLUS HOW MANY UNUSED CREDITS ARE IN THE MACHINE HOLY SHIT YAGAWA YOU GENIUS
35
Upon continue, rank does not reset, but rank_frame DOES.
36
37
Difficulty |   Easy  |  Normal |   Hard  | VeryHard|
38
-----------|---------|---------|---------|---------|
39
Training   | $FF0000 | $F80000 | $F00000 | $E00000 |
40
  Non-Start| $BF4000 | $BA0000 | $B40000 | $A80000 |
41
-----------|---------|---------|---------|---------|
42
Normal     | $FF0000 | $F80000 | $F00000 | $E00000 |
43
  Non-Start| $BF4000 | $BA0000 | $B40000 | $A80000 |
44
-----------|---------|---------|---------|---------|
45
Advanced   | $DF2000 | $D90000 | $D20000 | $C40000 |
46
  Non-Start| $A75800 | $A2C000 | $9D8000 | $930000 |
47
-----------|---------|---------|---------|---------|
48
Boss Only  | $CF3000 | $C98000 | $C30000 | $B60000 |
49
  Non-Start| $9B6400 | $972000 | $924000 | $888000 |
50
-----------|---------|---------|---------|---------|
51
52
Frame rank used in code: @$9F2
53
54
No rank for stage clear/boss kill
55
No rank for autofire change
56
57
Bullet seal: @$3A99E, for $800
58
	Exceptions:
59
		Boredom doesn't rank up for sealing his helis
60
		Others?
61
Bomb: @$306BC, for $8000 (regardless of full or not)
62
Graze: @$9AA2, for -$80 per frame per bullet, graze animation denotes a graze
63
64
Shot rank: @$3040C
65
	Rank is added for each bullet fired, not each time the ship "fires"
66
	All non-piercing main shots are worth 6 rank each.
67
	All piercing main shots are worth $28 rank each.
68
	For characters with mixed shots, the rank increase is as according to each bullet.
69
70
Option rank:
71
	Rank is added for each bullet fired, not each time the option "fires"
72
73
   Character | Rank |   Code  |
74
-------------|------|---------|
75
        D.D. | $004 | @$36868 |
76
      Shorty | $040 | @$37794 |
77
       Jyuji | $004 | @$36EA8 | Options rank per frame laser being fired.
78
-------------|------|---------|
79
       Maria | $028 | @$36A06 |
80
      Golden | $004 | @$36CE0 |
81
    Strawman | $01C | @$370EA |
82
-------------|------|---------|
83
    Birthday | $028 | @$372C4 |
84
       Tag-T | $090 | @$37794 |
85
        Adam | $01E | @$36B84 |
86
-------------|------|---------|
87
Silver Sword | $004 | @$30D62 |
88
 Grasshopper | $004 | @$30D62 |
89
Flying Baron | $004 | @$30D62 |
90
  Wild Snail | $004 | @$30D62 |
91
-------------|------|---------|
92
        Gain | $01E | @$32520 |
93
      Chitta | $004 | @$32DC6 |
94
    Miyamoto | $028 | @$331BA |
95
     Bornnam | $01C | @$33784 |
96
     Car-Pet | $028 | @$36602 |
97
-------------|------|---------|
98
99
Death: @$2FA96
100
	(Rest is characters alive after death)
101
Rest | Value
102
-----|---------
103
0    | -$400000
104
1    | -$100000
105
2    | -$040000
106
3    | -$010000
107
108
Extend: @$3016E
109
	(Rest is characters alive before extend)
110
	Dropping has no effect
111
	Special Extend has same rank effect as a regular extend at same rest
112
Rest | Value
113
-----|--------
114
0    | $000000 // Shouldn't be possible normally
115
1    | $080000
116
2    | $100000
117
3    | $200000
118
4    | $400000
119
120
Item:
121
	No extra rank for reaching "next level" of anything
122
    Type | Value   | Code
123
---------|---------|-------
124
  SmShot | $000100 | @$2FCA2
125
 CashWad | $000400 | @$302BE
126
BombFrag | $000800 | @$2FD24
127
 BigShot | $008000 | @$2FD94
128
  Option | $008000 | @$2FE72
129
 BigBomb | $020000 | @$2FE12
130
131
Medal: @$30010
132
	Dropping has no effect
133
    Type  | Value
134
----------|--------
135
 100~900  | $000
136
1000~9000 | $100
137
    10000 | $200
138
139
Special item get:
140
     Type | Value    | Code
141
----------|----------|--------
142
ShadowOpt | Frame+=0 | @$2FF42
143
  BigShot | Frame+=1 | @$2FDF2
144
   SmShot | Frame+=1 | @$2FDF2
145
   Option | Frame+=1 | @$2FFC6
146
  WideOpt | Frame+=1 | @$2FF7A
147
RollinOpt | Frame+=1 | @$2FF96
148
SearchOpt | Frame+=2 | @$2FF2C
149
HomingOpt | Frame+=2 | @$2FF5E