Welcome Guest [Log In] [Register]
Add Reply
Telefang 2 Denjuu Data.
Topic Started: Oct 1 2008, 12:00 AM (792 Views)
Blaziken257
Member Avatar
In severe illness!
I found out how most of the moveset/type/evolution/stat data in Telefang 2 works. However, it's a bit more complicated than it is in Telefang 1. Here are the details:

- The data is located in a slightly different place in Power version than it is in Speed version. In Power version, this data starts at $4F6BD8 and ends at $4F7DCF. In Speed version, this data starts at $4F68B8 and ends at $4F7AAF.
- Each Denjuu is 23 bytes (HEX 17) long in this game, instead of 16 bytes (HEX 10) like it is in Telefang 1.
- Here's something complicated: Unlike Telefang 1, the order is NOT the same as the order in the game's Picture Book. Instead, the game internally orders the data differently. Here's the order that the Denjuu appear in the ROM:

http://telefang.wikia.com/wiki/List_of_Den...by_index_number

(Though, if you think THAT's bad, try dealing with Pokémon Red/Blue/Yellow!)
- The base stats have some weird system, which I'll go over later.
- Here's the format:

Code:
 
aa bb cc dd ee ff gg hh ii jj kk ll mm nn oo pp qq rr ss tt uu vv ww

· aa = Type
      This uses the same format that Telefang 1 uses. Here it is in case you forgot:
      00 = Mountain
      01 = Grassland
      02 = Forest
      03 = Aquatic
      04 = Sky
      05 = Desert
      Anything else = glitch type
· bb = Base HP 1 (Yes, there are two bytes, I'll go over that later)
· cc = Base HP 2
· dd = Base Speed 1
· ee = Base Speed 2
· ff = Base Attack 1
· gg = Base Attack 2
· hh = Base Defense 1
· ii = Base Defense 2
· jj = Base Electric 1
· kk = Base Electric 2
· ll = Move 1
      I don't have a list of all the moves in order yet. Until then, refer to $09D5D0-$09DC0F in the ROM (it's the same for Power and Speed) for the proper order for the moves. The first "move" (????) starts at 00, and continues on until the last move, ノバスマッシャー  / Novasmasher, is at C7. Anything after that is either a battle item (yes, it can be used as a move, strangely enough), or an invalid move that causes the game to freeze up.
· mm = Move 2
· nn = Move 3
· oo = Move 4
      This is always a Denma Attack, meaning it will deplete DP depending on the move, and run off the Electric stat. It is possible to stick an ordinary move that isn't normally used as a Denma Attack in this slot without any problems (and vice-versa), except I think it will now run off the Electric stat.
· pp = Level of learning 5th move
      If it doesn't learn one, then this value is FF.
· qq = Move 5
      This move replaces the 2nd moveslot. A lot of Denjuu, if not all, happen to learn this move BEFORE Move 4. If it doesn't learn a move the replaces the 2nd moveslot, this value is 00.
· rr = Level of learning 3rd move
· ss = Level of learning 4th move
· tt = Level of Natural Evolution
      If a Denjuu doesn't evolve naturally, this value is 00. This is true even if it mod evolves. I have no idea where the data for Mod Evolution is.
· uu = Denjuu it naturally evolves into
      Unlike Telefang 1, this doesn't go by the order of the Picture Book. Rather, it uses this order: http://telefang.wikia.com/wiki/List_of_Denjuu_in_Telefang_2_by_index_number . Just take the index number on that page and convert it to hex. If a Denjuu doesn't naturally evolve, this is 00 (this means that no Denjuu can ever evolve into the Basic form of Mosukobii).
· vv = ???
· ww = ???


Now about the base stats. They're confusing as hell. They are made up of TWO bytes instead of one! The first byte of each base stat has a big influence on the stat. Even if you increase this value by 1, it increases the stat by a LOT. Sometimes it causes the stat to go past 255 and ends up decreasing it. Oh, and it's always a low number, usually somewhere between 01 and 06 (inclusive). The second byte has a smaller influence, and you have to increase this number by a LOT just to increase the stat by a little bit. It's a larger value from the first byte, though. It's confusing, and I haven't figured out how this works yet.

And finally, to make this whole thing easier to understand, let me show you all an example -- I'll use the Basic form of Rex. In Power, this data is located from $4F7C04-$4F7C1A, and from Speed, it's located from $4F78E4-$4F78FA. Either way, the data is the same, so let's look at it.

Code:
 
01 01 A8 06 80 01 86 03 86 03 82 31 02 BC 90 0A 06 08 12 18 B5 00 0F


01 = Rex is Grassland type.
01 A8 = Rex's base HP
06 80 = Rex's base Speed
01 86 = Rex's base Attack
03 86 = Rex's base Defense
03 82 = Rex's base Electric stats
31 = Rex learns つめ / Claw as its first move.
02 = Rex learns ひめたま / Falling Star as its second move.
BC = Rex learns ちょうはつ / Provoke as its third move.
90 = Rex learns ブラスター / Blaster as its fourth move.
0A = Rex replaces its second move at Level 10.
06 = Rex replaces its second move with かえんだん / Flame Shot.
08 = Rex learns its third move (ちょうはつ / Provoke) at Level 8.
12 = Rex learns its fourth move (ブラスター / Blaster) at Level 18.
18 = Rex naturally evolves at Level 24.
B5 = Rex evolves into... well, the first natural form of Rex. If you look at the link above, the index number of first natural form of Rex is 181 (which is B5 in decimal).
00 = ??? (I have no idea what this does)
0F = ??? (Again, I have no idea what this does)

And there you have it. I spent over a hour making this post, so I hope this was useful to some of you!
Offline Profile Quote Post Goto Top
 
Kimbles
Member Avatar
For the bright future!!
Jeez, awesome job. XD Thank you for always working on this.

In case it helps confirm stuff, here's Rex's entry in the guide...

Move 1: つめ Claw
Move 2: ひのたま [10] Fireball
Move 3: ちょうはつ (8) Provoke
Denma: ブラスター (18) Blaster
...The square brackets evidently meaning that the move evolves at that level. D: It lists what a move evolves into on the attack list in the back. *sigh* I probably would have missed that...

It also lists the stats, and says they're the stats of the Denjuu at level 1. D:
HP: 14
DP: 100 (it's 100 for every Denjuu, so I don't know why it's listed..)
Attack: 12
Defense: 6
Speed: 8
Denma: 6

So yeah, looks like everything's right. XD I'll see what I can do translating the attacks, now~
Offline Profile Quote Post Goto Top
 
Kid Sonic
Telefreak
Blaziken257,Oct 1 2008
12:00 AM
(quote removed)

Maybe the last two have to do with his force evo's or other things a denjuu does in the game.
Edited by Kimbles, Aug 16 2011, 12:54 PM.
Posted ImagePosted Image
Offline Profile Quote Post Goto Top
 
Blaziken257
Member Avatar
In severe illness!
Kimbles,Oct 1 2008
05:31 AM
Jeez, awesome job. XD Thank you for always working on this.

In case it helps confirm stuff, here's Rex's entry in the guide...

Move 1: つめ Claw
Move 2: ひのたま [10] Fireball
Move 3: ちょうはつ (8) Provoke
Denma: ブラスター (18) Blaster
...The square brackets evidently meaning that the move evolves at that level. D: It lists what a move evolves into on the attack list in the back. *sigh* I probably would have missed that...

It also lists the stats, and says they're the stats of the Denjuu at level 1. D:
HP: 14
DP: 100 (it's 100 for every Denjuu, so I don't know why it's listed..)
Attack: 12
Defense: 6
Speed: 8
Denma: 6

So yeah, looks like everything's right. XD I'll see what I can do translating the attacks, now~

You're welcome!

I didn't know that moves "evolve." They really don't, though. I mean, I can change Rex's "evolved" move (in this case, かえんだん / Flame Shot) with some other move, and it won't affect other Denjuu that have Fireball! But in any case, is it true that every Denjuu that knows Fireball eventually learns Flame Shot?

The stats you listed don't match up with the hex values I have at all... which is annoying. Ugh...

By the way, I spent a while making this page here:

http://www.freewebs.com/blaziken257/Telefa...2/movelist.html

I spent a while dumping the text a second time (I did it before for an old topic on this board, but I realized I made a few typos, so I did it again, and hopefully, everything is right this time). I listed them in order to make it easier to hack, and I listed hex values to the left, and put romaji and the translations that RacieB came up with a while ago. So, you can use this for reference. Though, can you make sure I spelled everything right?

(And sorry for the really plain look -- I was focused on putting the content in at first, so making the page look pretty was an afterthought to me. I'll add a CSS in soon...)

Kid Sonic,Oct 1 2008
08:19 AM
Blaziken257,Oct 1 2008
12:00 AM
(quote removed)

Maybe the last two have to do with his force evo's or other things a denjuu does in the game.

Yeah, but it doesn't really fit, though, if you look at the last two bytes of all the other Denjuu. I am still wondering what "other things" that could be, though... but I have no idea what it could be...
Edited by Kimbles, Aug 16 2011, 12:56 PM.
Offline Profile Quote Post Goto Top
 
andwhyisit
Member Avatar
Telefreak
Kimbles
Oct 1 2008, 10:31 PM
DP: 100 (it's 100 for every Denjuu, so I don't know why it's listed..)

In case smilesoft changed their minds about it being the same for all denjuu during development, or maybe it was originally different values. *shrug*
If I say that I am going to do something and I don't get around to it then please remind me.
Offline Profile Quote Post Goto Top
 
Kid Sonic
Telefreak
Blaziken257,Oct 1 2008
09:46 PM
Kimbles,Oct 1 2008
05:31 AM
Jeez, awesome job. XD Thank you for always working on this.

In case it helps confirm stuff, here's Rex's entry in the guide...

Move 1: つめ Claw
Move 2: ひのたま [10] Fireball
Move 3: ちょうはつ (8) Provoke
Denma: ブラスター (18) Blaster
...The square brackets evidently meaning that the move evolves at that level. D: It lists what a move evolves into on the attack list in the back. *sigh* I probably would have missed that...

It also lists the stats, and says they're the stats of the Denjuu at level 1. D:
HP: 14
DP: 100 (it's 100 for every Denjuu, so I don't know why it's listed..)
Attack: 12
Defense: 6
Speed: 8
Denma: 6

So yeah, looks like everything's right. XD I'll see what I can do translating the attacks, now~

You're welcome!

I didn't know that moves "evolve." They really don't, though. I mean, I can change Rex's "evolved" move (in this case, かえんだん / Flame Shot) with some other move, and it won't affect other Denjuu that have Fireball! But in any case, is it true that every Denjuu that knows Fireball eventually learns Flame Shot?

The stats you listed don't match up with the hex values I have at all... which is annoying. Ugh...

By the way, I spent a while making this page here:

http://www.freewebs.com/blaziken257/Telefa...2/movelist.html

I spent a while dumping the text a second time (I did it before for an old topic on this board, but I realized I made a few typos, so I did it again, and hopefully, everything is right this time). I listed them in order to make it easier to hack, and I listed hex values to the left, and put romaji and the translations that RacieB came up with a while ago. So, you can use this for reference. Though, can you make sure I spelled everything right?

(And sorry for the really plain look -- I was focused on putting the content in at first, so making the page look pretty was an afterthought to me. I'll add a CSS in soon...)

Kid Sonic,Oct 1 2008
08:19 AM
Blaziken257,Oct 1 2008
12:00 AM
(quote removed)

Maybe the last two have to do with his force evo's or other things a denjuu does in the game.

Yeah, but it doesn't really fit, though, if you look at the last two bytes of all the other Denjuu. I am still wondering what "other things" that could be, though... but I have no idea what it could be...

Well there are a few factors:

-The overwolrd sprite
-The random phone calls
-Who they can call on in battle
-Evo items meant for them
-Did you even count the battle sprites?
Edited by Kimbles, Aug 16 2011, 12:58 PM.
Posted ImagePosted Image
Offline Profile Quote Post Goto Top
 
Kimbles
Member Avatar
For the bright future!!
I'm sorry to stray from the topic here, but please, please stop quoting entire stacks of posts if you aren't replying to all of them specifically. It makes the topic very annoying to read. When you reply to a post, it lets you remove all but the part of the post you're replying to, so please make use of it. ):
I'm not singling you out here, because if it was anyone else I'd complain at them, too. XD Could you at least edit your last post to be shorter?

Blaziken, that list really helps a lot. XD It doesn't need to be fancy, don't worry. I'm checking the spelling and stuff right now. *nod*
It looks like for attack evolution (the guide does use the word for evolution), not all denjuu that know the attack will have the attack evolve, but those that do will have it turn into the same thing. Usually. XD There's a couple that have two different possibilities...*sigh* Just skimming, I count 17 moves with evolutions, and 3 of them that split. Most likely, they tried to keep it consistant but those couple exceptions made it so they had to set it seperately for every Denjuu. *nod*

Edit:
Alright, finished checking. XD The spelling and romaji seem to all be perfect. That "suddenness" attack that shows up at 3B, 3C, 43, 50, 59, 5A, and 83, doesn't appear at all in the guide. D: Also, the guide is missing "bakudan" (bomb) at 8D. D: I dunno if that makes it different, or if it's just a mistake in the guide, since the T1 list was missing an attack too...

A lot of those english names are pretty awkward, but it looks like they were done with the same dictionary I use. :/ I could try going over them again later, but for the most part I would need to see what the attack looks like in-game to name it... And I haven't even touched Telefang 2 yet, since I'm trying to beat 1 first. D: What will help is getting the attack descriptions from the guide, since they explain the effects and everything in stylish kanji. :O Those'd help a lot in narrowing down the meanings, like for example that "daikiatsu" refers to air pressure rather than steam pressure, which has different kanji. I can get those for sure. XD
Offline Profile Quote Post Goto Top
 
andwhyisit
Member Avatar
Telefreak
Kid Sonic
Oct 3 2008, 12:42 PM
Well there are a few factors:

-The overwolrd sprite
-The random phone calls
-Who they can call on in battle
-Evo items meant for them
-Did you even count the battle sprites?

The battle and encyclopedia sprites as well as phone calls would be in the same order as the denjuu. Sprite group 5F and phone call group 5F will go with denjuu 5F.

Evo items and such would be stored separately just like in T1, and most likely in the same order as all the others.

Basically the engine is most likely set up so that all it needs to grab information on individual denjuu is their internal number.

The only thing that doesn't follow this system is the overworld sprite ordering. But it is most likely referenced by its internal number and assigned somewhere to the denjuus' internal number, like the denjuu type does. Maybe that's what offsets 22 or 23 are used for.
If I say that I am going to do something and I don't get around to it then please remind me.
Offline Profile Quote Post Goto Top
 
Kimbles
Member Avatar
For the bright future!!
Since I'm looking at this again... Can someone check and see what the "botsu" (suddenness?) attacks do? It looks like it's a dummy attack, but I'm curious if it has any actual effects.
"Botsu" could also mean "discard", so it might just be where attacks were removed... (Which would explain the random placement on the list.)
Offline Profile Quote Post Goto Top
 
Blaziken257
Member Avatar
In severe illness!
Since the way that stats work have been baffling people for quite some time (well, it's certainly baffled me), I decided to reverse engineer Power Version with small amounts of success. Here are some new things that I found:

- The first byte for a stat (which I labeled as "Base HP 1", etc.) is actually a pointer to a lookup table for one of the variables, which is dependent on the Denjuu's level. The lookup table is 100 (0x64) bytes long, with one byte for each level that the Denjuu gains. The values increase for each level, and due to this setup, there are different growth rates for each Denjuu here. In Power Version, the lookup table starts at 0x4F7DD0.

- The second byte for a stat (which I labeled as "Base HP 2") is not as well known and does not influence the stat as much, but it is known that there are different effects for when this value is greater than 0x80.

I'm pretty sure that this is the case for all stats, but I only looked at this for HP so far.

Anyway, here is code that I found and partially looked at. If you want to try understanding the rest of it, be my guest. (And yes, I realize there is a typo in the first paragraph, oh well.)

Finally, RacieB discovered that when mod evolving Denjuu, the stats change depending on the item used. That has to be looked into as well.
Edited by Blaziken257, Jul 11 2011, 07:45 PM.
Offline Profile Quote Post Goto Top
 
Blaziken257
Member Avatar
In severe illness!
I found some things since I last posted here. You can read my notes here. Basically, what I found is that the formula for a stat works like this:

gm/128

g = The growth rate for a Denjuu. This is basically a lookup table, with arbitrary values depending on the Denjuu's level. You can find a table here, with values for each level for each group. This is a bit similar to experience groups in Pokémon. In the ROM, as stated before, you can find this starting at 0x4F7DD0 in Power Version. (I haven't looked at Speed Version yet, so I don't know where it is there. It may or may not be in the same place.) In the Denjuu data structure in ROM (starts at 0x4F6BD8 in Power Version and 0x4F68B8 in Speed Version), there are two bytes for each stat, and this is the first byte.
m = A constant multiplier which affects how fast a stat grows. Since this value can range from 0-255, effectively a stat is scaled from anywhere between 0 to 255/128, in multiples of 1/128. After multiplying, the stat is always rounded down. In the Denjuu data structure in ROM, this is the second byte. When I said "it is known that there are different effects for when this value is greater than 0x80" earlier, it turns out that this constant value causes the stat to multiply the number greater than 1 when it is above 0x80 (since it is divided by that number), and multiplies it by a number less than 1 when less than 0x80.

For example, let's look at Rex (Basic)'s HP:

His data is from 4FC704-4FC71A in Power Version and 4FC3E4-4FC3FA in Speed Version. The second byte in this data (4FC705 in Power, 4FC3E5 in Speed) determines which stat group Rex belongs in for HP, and the third byte in this data (4FC706 in Power, 4FC3E6 in Speed) determines how much to multiply the stat by.

As we can see, Rex's HP is in stat group 1. Let's suppose he is at Level 4. According to this, his HP should be 18 at level 4, since he is in group 1. But you also have to multiply it. The next byte is 0xA8, which is 168 in decimal. So you'll have to multiply 18 by 168/128. The result is 23.625, which rounds down to 23. So, Rex's HP will be 23 at level 4.

NOTE: This formula does not take into account evolution items' effects on stats, because they haven't been fully researched yet. But here is what I know:

- In the 36-byte array for Denjuu data structures in RAM, the index number of the item used to evolve the Denjuu appears to be stored in the 34th byte. For example, the first Denjuu's data is from 0x02000000-0x02000027, and the index number of the item will be in 0x02000022.
- A value is stored in the 4th byte (e.g. in 0x02000004) which appears to add to each stat by this constant value. The value appears to be determined from some array starting at 0x102660 in ROM (at least in Power Version). I'm not sure where exactly the game looks (i.e. I don't know what determines the array element here); this appears to be some currently unknown value that is apparently unrelated to the item. Also, this value appears to max out at 70 (decimal).
- Another value is stored in the 13th byte (e.g. in 0x0200000D). The purpose of this is currently unknown. The game also reads from the same array (the one that starts at 0x102660 in ROM), but this time it reads from the byte afterwards. Again, I don't know how the game determines the array element.

Sorry if this is confusing. I'll figure out more later, I guess. Or hopefully someone else might be able to.
Edited by Blaziken257, Aug 16 2011, 11:32 AM.
Offline Profile Quote Post Goto Top
 
1 user reading this topic (1 Guest and 0 Anonymous)
DealsFor.me - The best sales, coupons, and discounts for you
« Previous Topic · Telefang - Hacking · Next Topic »
Add Reply