Jump to content

Kairi

Member
  • Posts

    18
  • Joined

  • Last visited

Reputation

10 Good

About Kairi

  • Birthday 03/03/1993
  1. <p><p><p><p><p><p>You're welcome. <img src="<fileStore.core_Emoticons>/emoticons/tongue.png" alt=":P" srcset="<fileStore.core_Emoticons>/emoticons/tongue@2x.png 2x" width="20" height="20" /></p></p></p></p></p></p>

  2. Your original question appears to be falling apart. You are aware that Team Galactic is not in Heart Gold and Soul Silver, right?
  3. Well, Team Galactic are the easiest sprites to find. You just have to open up a map of any of the Lakes in PPRE and see which sprites show up several times. Males are 124 and females 125 (decimal). These are the ones in Diamond and Pearl (for the most part, they carry over into Platinum)
  4. So as far as data goes, you open up the file in question and the code just processes it. So think of yourself as the interpreter. ReadByte() means read 1 byte. ReadUInt16() means read 2 bytes. ReadInt8() means read 1 byte as an integer, and so on. battleuse is a specific effect unfortunately. Most items just have 0 for defaults. itemcategory and itemtype might do the trick though.
  5. yes, PPRE's source. The effect is made up of bytes 0 and 1 (Not too important). Category is byte 2 of each move file. Base power is byte 3... and so on.
  6. This part of PPRE may be relevant to you then. self.effect.setCurrentIndex(ord(file[0])|(ord(file[1])<<8)) self.category.setCurrentIndex(ord(file[2])) self.basePower.setValue(ord(file[3])) self.accuracy.setValue(ord(file[5])) self.type.setCurrentIndex(ord(file[4])) self.ctype.setCurrentIndex(ord(file[13]))#contest type self.pp.setValue(ord(file[6])) self.effectChance.setValue(ord(file[7])) self.priority.setValue(ord(file[10])) ord(file[0])|(ord(file[1])<<8) is a uint16 that occupies bytes 0 and 1.
  7. Using this format, I have the full BW PokeTEX list. The first couple are a little glitchy. list..txt
  8. You have a certain number of day slots and that is it. The swarms apply to swarm Pokemon in that area. If you modify those, then only the swarms will change. There isn't really a script, but rather hardcoded gamecode that defines the swarm events. There was slight thought about that in this hack, and there was a conclusion that some of the "unknowns" in the PPRE trainer editor specified the AI and the abilities. Further documentation is lacking. PPRE can edit scripts (with some glitchiness). It can modify anything shown on the map tab. The trainer editor works fully (except for phrases). The Pokemon Editor works. Everything else is Read-Only.
  9. Let alone all of the previously mentioned ways of adding data was just appending to NARC files. There is also large binary compiled arrays within the ARM and Overlays, eg. Egg Moves. Those need to be expanded, and there is no good way of doing that at all.
  10. type1 = reader.ReadByte() effectcategory = reader.ReadByte() category = reader.ReadByte() power = reader.ReadByte() acc = reader.ReadByte() pp = reader.ReadByte() priority = reader.ReadInt8() hits = reader.ReadByte() minhits = hits & 0xf maxhits = hits >> 4 resulteffect = reader.ReadInt16() effectchance = reader.ReadByte() status = reader.ReadByte() minturns = reader.ReadByte() maxturns = reader.ReadByte() crit = reader.ReadByte() flinch = reader.ReadByte() effect = reader.ReadUInt16() targethp = reader.ReadInt8() userhp = reader.ReadByte() target = reader.ReadByte() stats = []#Stats affected magn = []#How much stat gets affected schance = []#Likeliness of effect for i in range(3): stats.append(reader.ReadByte()) for i in range(3): magn.append(reader.ReadInt8()) for i in range(3): schance.append(reader.ReadByte()) reader.Accel(2) flags = reader.ReadUInt16() Flags 0x1 Causes Contact 0x2 Requires Charge 0x4 Requires Recharge 0x8 Blocked by Protect (and Detect) 0x10 Can be reflected by Magic Coat 0x20 Can be snatched 0x40 Can be reflected by Mirror Move 0x80 Punch move 0x100 Sound move 0x200 Affected by Gravity 0x400 Melts frozen targets 0x800 Hits far opponent in triple battles 0x1000 Healing move 0x2000 Hits through Substitute
  11. Well, it's a little hackish, (but that's okay because we are hackers), but if you use PPRE to get the NARC file, you can then grab the specific file from a narc editor like this one. Then you just need to edit the single file and not worry about offsets. Raw hex is probably the best way to go on this one.
  12. both a/0/0/2 and a/0/0/3 contain text. One contains story, the other menus and whatnot. Partially translated (before English version came out): https://github.com/projectpokemon/Pokemon-Black-White-Translation-Files
  13. Here's the code I use for Pokemon data (all games) if game != "bw": h = height.ReadUInt32() w = weight.ReadUInt32() bases = [] for i in range(6): bases.append(reader.ReadByte()) type1 = reader.ReadByte() type2 = reader.ReadByte() catch = reader.ReadByte() if game == "bw": stage = reader.ReadByte() else: baseexp = reader.ReadByte() ev = reader.ReadUInt16() effort = [] for i in range(0,12,2): effort.append((ev>>i)&3) item1 = reader.ReadUInt16() item2 = reader.ReadUInt16() if game == "bw": reader.Accel(2) gender = reader.ReadByte() steps = reader.ReadByte() happy = reader.ReadByte() exprate = reader.ReadByte() egg1 = reader.ReadByte() egg2 = reader.ReadByte() ability1 = reader.ReadByte() ability2 = reader.ReadByte() if game == "bw": ability3 = reader.ReadByte() else: ability3 = 0 flee = reader.ReadByte() if game == "bw": reader.Accel(5) color = reader.ReadByte() if game == "bw": baseexp = reader.ReadUInt16() h = reader.ReadUInt16() w = reader.ReadUInt16()
  14. well, for flags, I would go from 0x3FFFF and go down. 0x40?? are local flags (reusable on each map) and above that are variables (I believe). So if you use 16383, 16382, 16381... you should be fine.
  15. The Pokemon data only allows from the first two of the 3 abilities at random. There isn't any reasonable way to extend it to get the third. If you are completely insane, you could remove an existing Pokemon and clone another Pokemon to that one's spot and make it exactly the same except for the ability.
×
×
  • Create New...