I just made a major discovery regarding how the MR2 Shrine generates statistics for monsters from CDs. There's a lot more work I need to do, but I'll post some initial findings as a bit of a "teaser" and to raise the spirits of everyone who's been doing research.
My new hypothesis: The MR2 shrine uses a table of 60 sets of six numbers to generate statistics. The set of numbers corresponding with PSec2 is added to baseline stats for the main and sub breeds to generate the stat numbers.
PMin1
PMin2
PSec2
Main/Sub
Lif
Pow
Int
Ski
Spd
Pow
1
0
1
Gaboo/Gaboo
185
136
38
67
173
73
1
0
2
Gaboo/Gaboo
206
147
31
45
176
86
1
0
3
Gaboo/Gaboo
190
142
49
58
182
69
1
0
4
Gaboo/Gaboo
205
126
50
48
160
84
1
1
1
Tiger/Zuum
75
106
128
187
163
103
1
1
2
Tiger/Zuum
96
117
121
165
166
116
1
1
3
Tiger/Zuum
80
112
139
178
172
99
1
1
4
Tiger/Zuum
95
96
140
168
150
114
In each case, the Tiger/Zuum's stats equal the corresponding Gaboo/Gaboo's stats -110, -30, +90, +120, -10 and +30 respectively.
The baseline for Gaboo (the one you can get at the Market) is 190/120/30/40/150/70. If the baseline for Datonare is 80/90/120/160/140/100, this would strongly support my findings.
The 60x6 table would look something like this:
PSec2
+Lif
+Pow
+Int
+Ski
+Spd
+Def
0
6
16
18
24
26
4
1
-5
16
8
27
23
3
2
16
27
1
5
26
16
3
0
22
19
18
32
-1
4
15
6
20
8
10
14
...and so on.
OK, I'm getting excited. «smile»
By Quincunx on Tuesday, August 7, 2001 - 07:14 am:
I'm going to need some sedatives. «grin»
Just figured I'd mix a baseline Tiger and a baseline Zuum to see if the resulting Datonare would have the stats mentioned above.
I got the Zuum from the market. Its stats are 130/120/80/140/100/110.
No Tigers in the market. I checked my CD collection. Ping! Negativland's "Escape From Noise" makes a pure Tiger. Its stats are 88/115/142/191/150/57.
I Shrined two of these Tigers and combined them. The resulting Tiger's stats: 81/93/131/164/141/70.
I then Shrined two more of the Tigers and combined them. The resulting Tiger's stats: again, 81/93/131/164/141/70.
I then combined the two new Tigers. The third-generation Tiger's stats: 80/90/130/160/140/70.
Since these are all multiples of 10, it looks like this is the baseline for Tiger.
I then combined the baseline Tiger with the market Zuum. The result: a Datonare (Tiger/Zuum). Its stats: 80/90/120/160/140/100.
This matches my prediction from the previous post!
Conclusions: Combining two pairs of a pure monster from CD, then combining the resulting monsters, appears to yield a baseline version of that monster. In my previous post, I'm definitely on to something.
Now here's a mystery.
Breed
Lif
Pow
Int
Ski
Spd
Def
Baseline Tiger
80
90
130
160
140
100
Baseline Zuum
130
120
80
140
100
110
Baseline Datonare
80
90
120
160
140
100
The only stat difference between basline Tiger and baseline Datonare is Int. Since Zuum's Int is 50 less than Tiger's Int, Datonare's Int is 10 less than Tiger, its Main.
A guess here: The baseline stat for a mixed breed is the baseline stat for its main breed, minus 10 for every full 50 points lower the baseline stat for the sub breed is than the main breed.
Nope, no luck there. Look at Crab Saurian (Arrow Head/Zuum).
Breed
Lif
Pow
Int
Ski
Spd
Def
Baseline Zuum
130
120
80
140
100
110
Baseline Arrow Head
120
80
70
30
40
170
Baseline Crab Saurian
130
120
80
150
110
140
The pattern held for the first three stats, but the last three don't follow at all.
Oh, well... can't expect to crack all the game's secrets in one morning. «shrug»
By Quincunx on Tuesday, August 7, 2001 - 07:43 am:
Here's the full table if anyone wants to look into it on their own. (Yes, I burned 60 CDs to get this table. Good thing they were on sale.)
PSec2
+Lif
+Pow
+Int
+Ski
+Spd
+Def
0
6
16
18
24
26
4
1
-5
16
8
27
23
3
2
16
27
1
5
26
16
3
0
22
19
18
32
-1
4
15
6
20
8
10
14
5
-6
23
8
11
25
16
6
17
7
22
20
22
11
7
17
0
6
19
33
-6
8
7
18
24
23
6
21
9
-5
11
29
6
17
19
10
1
12
21
29
11
5
11
-2
25
3
19
19
15
12
21
17
28
25
8
-7
13
-2
10
23
22
9
18
14
23
-2
26
16
16
-1
15
-6
15
16
14
22
17
16
12
13
12
4
31
9
17
18
21
11
18
17
4
18
7
2
7
20
33
3
19
0
28
14
3
20
5
20
5
-1
15
13
18
6
21
16
11
17
5
4
19
22
14
2
19
17
18
7
23
-3
19
22
21
15
0
24
20
24
4
23
6
8
25
19
7
7
32
23
-6
26
2
14
18
28
28
8
27
8
16
27
9
5
20
28
18
1
24
31
11
-2
29
12
13
14
7
24
17
30
1
3
28
24
8
22
31
-1
10
11
24
26
-4
32
10
15
25
8
16
9
33
6
6
25
32
12
-8
34
9
14
26
27
5
10
35
10
19
12
10
24
12
36
13
9
10
30
15
11
37
14
21
13
31
14
-3
38
21
3
6
10
31
13
39
2
22
14
3
12
12
40
5
20
21
21
25
-7
41
11
17
-1
11
21
15
42
11
5
16
17
27
18
43
22
0
15
16
9
13
44
-4
26
23
22
27
-4
45
13
27
5
25
30
-5
46
6
5
1
15
29
20
47
23
1
18
26
3
1
48
15
9
0
14
14
22
49
-4
28
29
6
19
-5
50
4
4
17
15
29
4
51
-3
23
2
28
7
6
52
8
25
13
7
21
7
53
9
18
3
9
32
-3
54
-7
24
2
30
28
-2
55
22
-1
27
29
10
0
56
4
12
10
2
7
14
57
-1
4
5
26
30
21
58
20
26
20
4
4
10
59
19
20
0
13
20
1
Best composite: PSec2 = 6 or 8 (+99) Worst composite: PSec2 = 56 (+49)
Caveat: All this data comes from CDs with one track. There could well be an additional figure from another track that is added or subtracted.
By CatsGodot on Tuesday, August 7, 2001 - 07:55 am:
VERY KEWL.
--Cats
By CatsGodot on Tuesday, August 7, 2001 - 07:58 am:
Btw, from which table is "PSec2"? Which track is this referring from--the total time of the CD, or the first track? Are you referring to control A2?
--Cats
By Quincunx on Tuesday, August 7, 2001 - 08:00 am:
I just compared this table to Enigma's Mum Mew family in the thread Modifying subcode to affect stats and monster type in Monster Rancher 2, and the numbers match up.
The only odd thing is that when I reverse the calculation, it gives me baseline stats for a Mum Mew of 103/68/87/132/144/107. Of course, this is for a 12-track disc, not a 1-track disc like I was using.
So the stat formula appears to be something like SN=BN+MN+T(PSec2,N), where N is [1 for Lif, 2 for Pow... 6 for Def], SN is the value the Shrine generates for the Nth stat, BN is the baseline stat value, MN is some other modifier that I haven't worked out yet, and T(PSec2,N) is the entry on the above table corresponding to the PSec2 value and the stat.
By Quincunx on Tuesday, August 7, 2001 - 08:07 am:
Cats: By PSec2, I'm referring to the PSec value from Entry 2, which would be the total time of the CD. It's also the length of the first track on the CDs I burned, because they were one-track CDs. But the numbers under Entry 3 are not particularly interesting: PMin=0, PSec=2, Frame=0, PLBA=0. They just tell where the first track starts, not its length.
I'm not sure what you mean by control A2. The entry with Point=0xa2 is Entry 2, the one I'm using the PSec from, but the Control value for that entry is 0x00, as it is for all entries on these CDs.
By CatsGodot on Tuesday, August 7, 2001 - 08:18 am:
Short answer: Okay, I got it. I kinda figured you were using total time (by $A2 control, I'm referring to subcode table $A2, which *is* the total length of the CD)--since you stated you were using a 1-track only CD. But I wanted to make sure I (and anyone else reading) was absolutely clear on the postings.
Something else I'm thinking...what if the monster type itself is independent of the values *on* the CD (aside from hard-coded rares)? What if the M:S:Fs all yield differing stats, and then those stats determine the creature--ie, instead of saying:
MM:SS:FF will yield a Suezo. Now use the seconds to determine its stats...
It does this:
MM:SS:FF makes the following stats: xx-xx-xx-xx-xx-xx. Now which monster and subbreed match closely with it?
I admit, it's a bit of a longshot, but certainly worth considering.
Btw, you may also want to look at the thread I just posted about "updated" research--I have some burnt Gaboos there, too, along with times and stats.
--Cats
By Quincunx on Tuesday, August 7, 2001 - 08:33 am:
Thanks for the clarification on $A2. There are three levels on which we can talk about the makeup of a CD: (1) the actual subcode (using the term technically correctly here), (2) the table of contents based on PMin, PSec, PFrame, PLBA, etc., and (3) the lengths of the tracks in minutes and seconds and frames. Since they're all being used by various people, things get misunderstood sometimes.
And as for your latest thought, it's not the most elegant solution programmingwise, but it is possible. Looks like more research and less sleep for me. «grin»
By Quincunx on Tuesday, August 7, 2001 - 09:32 am:
Here's a bit more data I've uncovered.
PMin1
PMin2
PSec2
Main/Sub
Lif
Pow
Int
Ski
Spd
Def
1
1
0
Tiger/Zuum
86
106
138
184
166
104
1
2
0
Monol/Zuum
96
126
138
124
56
154
1
3
0
Gali/Zuum
106
146
158
134
116
104
1
4
0
Baku/Jell
156
136
108
124
96
134
1
5
0
Ghost/Ghost
106
106
138
164
176
84
1
6
0
Suezo/Zuum
86
136
168
154
116
104
1
7
0
Niton/Kato
96
76
128
104
146
134
1
8
0
Zuum/Baku
136
136
98
134
116
104
1
9
0
Kato/Mocchi
76
96
188
164
176
94
1
10
0
Zuum/Baku
136
136
98
134
116
104
1
11
0
Naga/Zuum
116
166
78
164
126
124
First, the obvious: All the last digits match in each column. More evidence to support my hypotheses so far.
Next, the subtler: There's a lot of Zuum subs here: Tiger/Zuum, Monol/Zuum, Gali/Zuum, Suezo/Zuum and Naga/Zuum. So why not Baku/Zuum, Ghost/Zuum, Niton/Zuum and Kato/Zuum? Because there are no such monsters in the game.
And why Zuum/Baku and not Zuum/Zuum? I'm not sure. One possibility is that there's a table in the Shrine program that has a special sub "breed" which is Pure; that is to say, if the sub is Pure, it makes the pure-breed form of the main breed. If the sub is the same as the main, on the other hand, the Shrine may change the sub to a different type.
All this is sheer hypothesis, of course. I have so much more research to do, and I can't stay awake any longer today, so it will have to wait for tomorrow. But I feel like I've found the first couple of bones in an archaeological dig, and that means the rest of the skeleton can't be too far away, right? «smile»
By CatsGodot on Tuesday, August 7, 2001 - 06:34 pm:
Question: I don't have limited resources, but that doesn't mean I don't have *any*. Are there some times you want tested, or the rest of us to try out? I figure, the more that do this, the faster it can be done.
I see this chart, and I tend to agree with your hypothesis that non-existant critters are replaced with existant ones.
--Cats
By CatsGodot on Tuesday, August 7, 2001 - 06:45 pm:
Errghhh...sorry, that first line should have read "I may have limited resources"...
Lesson here, kiddies: never post with a fever. Even random words will make sense.
And a sinewave would make sense...I mean, you're talking time, whose base is 60 minutes/60 seconds. 360 degrees / 60 = 6. Possibly correlation? What if each value is determined by a difference phase or constant against a sine/cos/tan of the given second (or given second * 6)?
--CG
By Quincunx on Wednesday, August 8, 2001 - 12:25 am:
Cats: I've still got hundreds of blank CD-Rs, so resources aren't an issue for me And I thank you for the kind and generous offer of assistance, but for the time being, since I'm still in the exploration stage, I'm not really able to say, "OK, Cats, could you check this range from X to Y?"... generally because I'm working very methodically in large bursts.
And time is not a factor for me. Since I have few obligations in life, I have "all the time in the world" to work on this project. Also, I've got the perfect set-up ergonomicswise for doing this kind of work, and it only takes a hair over a minute for me to go from one disc to the next, since I burn disc 073 as I'm shrining disc 072.
The problems with collaboration on this outweigh the work it would save me if someone were to help out. I'd be more helped by insights and observations on my posts than I would by other people burning CD-Rs for me outside of my "controlled environment."
Thanks for the offer, though! «beaming smile»
By Quincunx on Wednesday, August 8, 2001 - 12:30 am:
As for the sine wave, does anyone know if PS hardware can do trig on the fly? Or would that be a cumbersome software task? I'd guess that any machine that can render a 3D environment and trace a trajectory can calculate a sine.
Regardless, I honestly don't think it's that complex, especially after discovering that the random factors in stat generation apparently come from a number table, not a formula. I'd expect it's probably more like X=A+B+C than X=50 sin (A+B)+tan-1C.
By CatsGodot on Wednesday, August 8, 2001 - 10:21 am:
Well, it's probably a lut--this is my thought process, and pretty useful, considering how much code I wrote to do 3d animations myself (ie "before" OpenGL).
If you're doing a one-time trig function, it doesn't matter. The fpu (which, i think i can safely assume, is a part of the ps processor) handles it. It's slow if you do it 100x over the timespan of a second, but doing it 6 times every minute or so...well...no one really notices it.
So, then, when I had to get around that, how did I handle it? A lut (LookUp Table). Basically, if i had an angle (or, usually, an angle between 5 or 6 degrees, to minimize memory/space), the function would use an optimized switch statement and return the value instantly. (Or something very similar to those lines--i don't remember if i did a quick-array-check--it a static array, and i instantly calculated the offset within the array...but this is neither here nor there...)
Point is: I tend to agree it's a lut. The values may have been generated previously, but it's still possible that a very simple trig equation was used, as well. Whatever.
Anyway, my offer still stands. It should like you've got a far better setup than I; the only thing I should try to "one up you" is see if VPC will accept MR2 on my G4. On my iBook, it would run (SLOWLY), but it wouldn't allow me to shrine critters. (That way, i don't even have to move in the least--burn, run VPC, shrine, burn, etc...but it sounds like you've got me beat there anywho).
Anyhow, just let me know if you want a series of CDs to analyze. I may just do some anyway, who knows. Blah.
--Cats
By Quincunx on Friday, August 10, 2001 - 11:13 pm:
Here's a way to actually use this PSec2 data and CloneCD to do something useful: tweak the stats of a monster on one CD to create another CD with stats more aligned to your preferences.
This won't make a Pixie with 220 Pow or a Golem with 210 Int. But if you have a CD that makes a monster you like but you'd like to, say, boost its Lif and Def a few points at the expense of a few points of Int, here's how.
NOTE: This will NOT work with rares! Tweaking the ToC data from a rare will likely give you a random common monster.
NOTE: This method will NOT give your monster 999s or even 500s for stat values. At best, you will get a gain of as much as 30 in one stat, and no more than 50 in the composite.
1) First, you must have the Table of Contents data (popularly called "subcode") for the monster you wish to modify. Either use CloneCD to make the Image.ccd file from a CD you have, or use subcode data listed on this site.
2) Using the table below, look at which stat(s) you want to increase and find the corresponding number.
3) Under Entry 2 in the Table of Contents data in Image.ccd, replace the number in the line that says PSec= with the number you found in step 2.
3a) Recalculate the PLBA for Entry 2. PLBA = (PMin * 60 + PSec) * 75 + PFrame -150. Update the value in the Image.ccd file.
4) Now burn the CD as you normally would.
Again, it's only a small gain, but it has the potential to help your monster succeed, especially at a young age.
Stat(s) to increase...
Use this PSec value
Lif
14 (high Int, low Pow and Def) or 47 (high Ski and Int, low Pow, Spd and Def)
Pow
19 (low Lif and Ski) or 49 (high Int, low Lif,Ski and Def)
Int
9 (high Def, low Lif and Ski) or 49 (high Pow, low Lif,Ski and Def)
Ski
25 (high Lif and Spd, low Pow, Int and Def) or 33 (high Int, low Pow, Spd and Def)
Spd
7 (high Lif, low Pow, Int and Def) or 18 (low Pow and Int)
Def
30 (high Int and Ski, low Lif, Pow and Spd) or 48 (high Lif, low Int)
Lif+Pow
58 (low Ski and Spd)
Lif+Int
12 (high Ski,low Spd and Def) or 14 (low Pow and Def)
Lif+Ski
25 (high Spd, low Pow, Int and Def) or 55 (high Int, low Pow, Spd and Def)
Lif+Spd
38 (high Def, low Pow, Int and Ski)
Lif+Def
48 (low Int)
Pow+Int
49 (low Lif, Ski and Def)
Pow+Ski
54 (high Spd, low Lif, Int and Def)
Pow+Spd
45 (high Lif and Ski, low Int and Def)
Pow+Def
2 (high Lif and Spd, low Int and Ski)
Int+Ski
33 (low Pow, Spd and Def)
Int+Spd
3 (high Pow, low Lif and Def)
Int+Def
30 (high Ski, low Lif, Pow and Spd)
Ski+Spd
54 (high Pow, low Lif, Int and Def)
Ski+Def
57 (high Spd, low Lif, Pow and Int)
Spd+Def
57 (high Ski, low Lif, Pow and Int
Note: Only entries giving the maximum possible values of the desired stat(s) have been listed. In the parenthetical comments above, "high" indicates stats in the top third of the possible range, while "low" indicates stats in the bottom third.
I could do the best values for each set of three stats, but that's 40 more entries.
By Enigma on Saturday, August 11, 2001 - 05:38 pm:
I'd like to express my thanks to those of you who have taken up the cause. We're finally coming up with some actual results. Never fear, I'm still doing some of this on my own as time permits (time being my one limiting resource, with that odd PSX that actually reads CD-RW's). Last week I was able to put together another list of 20 monsters (Sneak Hoppers pulled off in consecutive seconds from Mellow Gold. Yes, I still haven't quite given up the foolish notion that Moo might be found), and I'll use your data to compare stat variations.
By mepersoner on Saturday, August 11, 2001 - 09:37 pm:
Hmmmm... I just read this entire thread... very useful knowledge.
By Quincunx on Sunday, August 12, 2001 - 04:21 am:
I know there's still one other factor that affects stats besides the PSec2 table and base stats for the breed. It's a set of constants, one for each stat, that is added in, and comes from somewhere like number of tracks or ToC data for Entry 4 or later. It's why, say, all pure Galis with PSec2 of 8 don't have the same stats.
I've run into a small obstacle in my research, as I've burned over 60 more CDs looking for a loop in monster breed from modifying PMin2 and haven't found one. Coincidentally, I also didn't find a Worm or a Dragon in the series. But I'm still going, a little at a time.
By John Hawley on Sunday, August 12, 2001 - 08:56 am:
Don't know if this helps, but going through the CD lists I've noticed that almost all the records for Dragon and Worm are on audio CDs. There's a total of 8 or 9 games that produce Dragon or Worm.
By Quincunx on Monday, August 13, 2001 - 02:47 am:
John: Actually, I have only run PMin2=1 to PMin2=65 so far; I won't have truly finished the cycle until I get to PMin2=80, which is the theoretical maximum for a CD. There's also the possibility that Worm and Dragon are not findable in the simple search I am doing (one-track audio CDs with PSec2=0) and must come from multi-track CDs. I hope to get to this by Wednesday morning.
Danz: What you're suggesting seems unlikely to be possible. In all my observations, the list of techs seems not to come from the Table of Contents data, but directly from the monster breed. The one exception I've seen to this is a CD exists which makes a pure Worm that gets Roll Assault, but this disc may be considered a rare. [For more info: The Laboratory > Subcode Data Files > Monster Rancher 2 Subcode > CD Subcode Data Archive /??? Monsters > MR2: Worm/Worm (???) (Modified CDD)] But it may be possible; I won't rule it out. If and when I get to the point where I can generate at will a monster of any breed with desirable stats, this is something I might look at.