Jump to content


  • Posts

  • Joined

  • Last visited


10 Good

About Megadrifter

  • Birthday 01/14/1994

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. Just saying, if you missed it: using HANS and braindump through *hax 2.5, you can patch the game and test your modifications using your own ExeFS and RomFS files on the SD card. Hope you got everything to install *hax 2.5 though.
  2. Hi there. I see you noticed my post about IMG format. So I thought that was the good time to give you some more research I made on GTI. /pokemon/ contains data about Pokémon. It contains 7 files which are : experience.bin, experience.ent, grade.bin, grade.ent, pokemon_data_info.bin, type_data_info.bin and waza_data_info.bin. ENT files contains pointers for their namesake. experience.bin is the experience table for each level of each Pokémon. There are 100 levels per Pokémon (quite obvious, I know...). Each Pokémon table is 0x4C0 bytes long, with an empty padding of 16 bytes (only 0x00). There are some dummed entries, which contains nonsense experience table. I don't know what to think about them. PokemonEntry [ LevelEntry Starts at level 0. 100 entries per Pokémon. [ 0x00 experience 4 uint32 Amount of maximum experience in the current level (Little Endian). Add 1 to get the experience needed to level up. 0x04 addedhp 1 uint8 Added HP when leveling up. 0x05 addedatk 1 uint8 Added Attack when leveling up. 0x06 addeddef 1 uint8 Added Defense when leveling up. 0x07 addedspeatk 1 uint8 Added Special Attack when leveling up. 0x08 addedspedef 1 uint8 Added Special Defense when leveling up. 0x09 lvlpadding 3 - Padding between level. Always 0x00. ] ... 0x4B0 pkmpadding 16 - Padding between Pokémon. Always 0x00. ] ... experience.ent contains pointers to each Pokémon experience table. Each pointer is 4 bytes long. Don't know what is grade.bin about, but according to grade.ent, there's only 3 entries. First one is 0xA0 bytes long, second one go straight to the end. The last value in grade.ent equals the length of grade.bin. pokemon_data_info.bin contains Pokémon informations (wouhou, that's obvious). It has a first empty entry of 0xE0 bytes, so we could think each Pokémon entry is that long. I didn't understand well the structure but I know, thanks to common.bin in /message/ that the Pokémon order is the following (with some unused one between) : Pikachu Raichu Starmie Eevee Vaporeon Jolteon Flareon Chinchou Pichu Marill Azumarill Sunkern Wooper Quagsire Espeon Umbreon Dunsparce Swinub Piloswine Lugia Ho-Oh Wingull Pelipper Azurill Kecleon Bagon Shelgon Salamence Cranidos Rampardos Glameow Purugly Croagunk Toxicroak Leafeon Glaceon Mamoswine Victini Snivy Servine Serperior Tepig Pignite Emboar Oshawott Dewott Samurott Patrat Watchog Lillipup Herdier Stoutland Pansage Simisage Pansear Simisear Panpour Simipour Munna Musharna Blitzle Zebstrika Roggenrola Boldore Gigalith Woobat Swoobat Drilbur Excadrill Audino Timburr Gurdurr Conkeldurr Tympole Palpitoad Seismitoad Sewaddle Swadloon Leavanny Venipede Whirlipede Scolipede Cottonee Whimsicott Petilil Lilligant Sandile Krokorok Krookodile Dwebble Crustle Scraggy Scrafty Yamask Cofagrigus Tirtouga Carracosta Archen Archeops Trubbish Garbodor Zorua Zoroark Minccino Cinccino Gothita Gothorita Gothitelle Ducklett Swanna Emolga Foongus Amoonguss Joltik Galvantula Klink Klang Klinklang Litwick Lampent Chandelure Axew Fraxure Haxorus Cubchoo Beartic Cryogonal Mienfoo Mienshao Druddigon Golett Golurk Pawniard Bisharp Rufflet Braviary Vullaby Mandibuzz Deino Zweilous Hydreigon Larvesta Volcarona Cobalion Terrakion Virizion Tornadus Thundurus Reshiram Zekrom Landorus Kyurem Keldeo Meloetta Meloetta Kyurem Kyurem Pikachu type_data_info.bin contains some Types informations, but I don't know how it works. waza_data_info.bin contains Moves data. There's a first empty entry 0x1E bytes, so again, I could confirm that each one is that long. Didn't took the time to study those, but here's the supposed list of Moves to use (it may contain some French names because that was quickly translate) : Pound Karate Chop Double Slap Comet Punch Mega Punch Pay Day Fire Punch Poinglace Thunder Punch Scratch Vice Grip Guillotine Razor Wind Swords Dance Cut Gust Wing Attack Whirlwind Flying Bind Slam Vine Whip Stomp Double Kick Mega Kick Jump Kick Rolling Kick Sand Attack Headbutt Horn Attack Fury Attack Horn Drill Tackle Body Slam Wrap Take Down Thrash Double-Edge Tail Whip Poison Sting Twineedle Pin Missile Leer Bite Growl Roar Sing Supersonic Sonic Boom Disable Acid Ember Lance-Flamme Mist Water Gun Hydro Pump Surf Ice Beam Blizzard Psybeam Bubble Beam Aurora Beam Hyper Beam Peck Drill Peck Submission Low Kick Counter Seismic Toss Strength Absorb Mega Drain Leech Seed Growth Razor Leaf Solar Beam Poison Powder Stun Spore Sleep Powder Petal Dance String Shot Dragon Rage Danseflamme Thunder Shock Thunderbolt Thunder Wave Thunder Rock Throw Earthquake Fissure Dig Toxic Confusion Psychic Hypnosis Meditate Agility Quick Attack Rage Teleport Dark Mimic Screech Double Team Recover Harden Minimize Smokescreen Confuse Ray Withdraw Defense Curl Barrier Light Screen Haze Reflect Focus Energy Bide Metronome Mirror Move Self-Destruct Bomb'Ruf Lick Smog Sludge Bone Club Fire Blast Waterfall Clamp Swift Skull Bash Spike Cannon Constrict Amnesia Kinesis Soft-Boiled High Jump Kick Intimidate Dream Eater Poison Gas Block Leech Life Lovely Kiss Pique Transform Bubble Dizzy Punch Spore Flash Psywave Splash Acid Armor Crabhammer Explosion Fury Swipes Bonemerang Rest Rock Slide Hyper Fang Sharpen Adaptation Tri Attack Super Fang Slash Substitute Struggle Sketch Triple Kick Thief Spider Web Mind Reader Nightmare Flame Wheel Snore Curse Flail Adaptation Aeroblast Cotton Spore Reversal Spite Powder Snow Protect Mach Punch Scary Face Feint Attack Sweet Kiss Belly Drum Sludge Bomb Mud-Slap Octazooka Spikes Zap Cannon Foresight Prlvt Destin Perish Song Icy Wind Detect Bone Rush Lock-On Outrage Tempêtesable Giga Drain Endure Charm Rollout False Swipe Swagger Milk Drink Spark Fury Cutter Steel Wing Mean Look Attract Sleep Talk Heal Bell Return Present Frustration Safeguard Pain Split Sacred Fire Magnitude Dynamic Punch Megahorn Dragon Breath Baton Pass Encore Pursuit Rapid Spin Sweet Scent Iron Tail Metal Claw Vital Throw Morning Sun Synthesis Moonlight Puis. Cachée Cross Chop Twister Rain Dance Sunny Day Crunch Mirror Coat Psych Up Vit. Extrême Pouv. Antique Shadow Ball Future Sight Rock Smash Whirlpool Beat Up Fake Out Uproar Stockpile Spit Up Swallow Heat Wave Hail Torment Flatter Will-O-Wisp Memento Facade Focus Punch Smelling Salts Follow Me Nature Power Tackle Taunt Helping Hand Trick Role Play VSu Assist Ingrain Superpower Magic Coat Recycle Revenge Brick Break Yawn Knock Off Endeavor Eruption Skill Swap Imprison Refresh Grudge Snatch Secret Power Dive Arm Thrust Camouflage Tail Glow Luster Purge Mist Ball Feather Dance Teeter Dance Blaze Kick Mud Sport Ice Ball Needle Arm Slack Off Hyper Voice Crochetvenin Éclategriffe Blast Burn Hydro Cannon Meteor Mash Astonish Weather Ball Aromathérapi Fake Tears Air Cutter Overheat Odor Sleuth Rock Tomb Silver Wind Metal Sound Grass Whistle Tickle Cosmic Power Water Spout Signal Beam Shadow Punch Extrasensory Sky Dizzy Punch Sand Tomb Sheer Cold Muddy Water Bullet Seed Aerial Ace Icicle Spear Iron Defense Block Howl Dragon Claw Frenzy Plant Bulk Up Bounce Mud Shot Poison Tail Covet Volt Tackle Feuillemagik Water Sport Calm Mind Leaf Blade Dragon Dance Rock Blast Shock Wave Water Pulse Doom Desire Psycho Boost Roost Gravity Ril Miracle Wake-Up Slap Hammer Arm Gyro Ball VSu Recover Brine Natural Gift Feint Pluck Tailwind Acupressure Metal Burst U-turn Close Combat Payback Assurance Embargo Fling Psycho Shift Trump Card Heal Block Wring Out Power Trick Gastro Acid Lucky Chant Me First Copycat Power Swap Guard Swap Punishment Dernierecour Worry Seed Sucker Punch Toxic Spikes Heart Swap Aqua Ring Magnet Rise Flare Blitz Strength Palm Aura Sphere Rock Polish Poison Jab Dark Pulse Night Slash Aqua Tail Seed Bomb Air Slash X-Scissor Bug Buzz Dragon Pulse Dragon Rush Power Gem Drain Punch Vacuum Wave Focus Blast Energy Ball Brave Bird Earth Power Switcheroo Giga Impact Nasty Plot Bullet Punch Avalanche Ice Shard Shadow Claw Thunder Fang Ice Fang Fire Fang Shadow Sneak Mud Bomb Psycho Cut Zen Headbutt Mirror Shot Flash Cannon Rock Climb Defog Trick Room Dragonair Meteor Discharge Lava Plume Tempêteverte Power Whip Rock Wrecker Cross Poison Gunk Shot Iron Head Magnet Bomb Stone Edge Captivate Stealth Rock NSud Herbe Chatter Judgment Bug Bite Tackle Beam Wood Hammer Aqua Jet Attack Order Defend Order Heal Order Head Smash Double Hit Roar of Time Spacial Rend Lunar Dance Crush Grip Magma Storm Dark Void Seed Flare Ominous Wind Shadow Strength Hone Claws Wide Guard Guard Split Power Split Wonder Room Psyshock Venoshock Autotomize PoudreFureur Telekinesis Magic Room Smack Down Storm Throw Flame Burst Sludge Wave Quiver Dance Heavy Slam Synchronoise Electro Ball Soak Flame Tackle Coil Low Sweep Acid Spray Foul Play Simple Beam Entrainment After You Round Echoed Voice Chip Away Clear Smog Stored Power Quick Guard Ally Switch Scald Shell Smash Heal Pulse Hex Sky Drop Shift Gear Circle Throw Incinerate Quash Acrobatics Reflect Type Retaliate Final Gambit Bestow Inferno Water Pledge Fire Pledge Grass Pledge Volt Switch Struggle Bug Bulldoze Frost Breath Dragon Tail Work Up Electroweb Wild Tackle Drill Run Dual Chop Crèvecœur Horn Leech Sacred Sword Razor Shell Heat Crash Leaf Tornado Steamroller Cotton Guard Night Daze Psystrike Tail Slap Hurricane Head Tackle Gear Grind Searing Shot Techno Blast ChantAntique Secret Sword ÈreGlaciaire ChargeFoudre Blue Flare Fiery Dance Freeze Shock Ice Burn Snarl Icicle Crash CoupVictoire Fusion Flare Fusion Bolt Weather Ball Weather Ball Weather Ball Weather Ball Dig Razor Wind Focus Punch Pique Solar Beam Flying Dive Bounce Skull Bash Curse Snore Sleep Talk Bide Revenge Avalanche Fusion Flare Fusion Bolt Sky Drop #N/A #N/A #N/A Future Sight Attaque #N/A #N/A #N/A #N/A Slash Dragon Claw Dragon Tail Dragon Breath Dragon Breath Flying Ice Beam Ice Beam Glaciate Glaciate Flying Blizzard Thunder Fusion Bolt Bolt Strike Bolt Strike Lance-Flamme Lance-Flamme Fusion Flare Fusion Flare Blue Flare Blue Flare Freeze Shock Freeze Shock Ice Burn Ice Burn Pouv. Antique Extrasensory Light Screen Reflect Dragon Rush Aeroblast Aeroblast Hydro Pump Hydro Pump Brave Bird Lance-Flamme Lance-Flamme Sacred Fire Sacred Fire Flying Struggle Struggle Slash Dragon Claw Flying UNUSED UNUSED UNUSED UNUSED UNUSED UNUSED UNUSED UNUSED UNUSED UNUSED UNUSED UNUSED UNUSED UNUSED UNUSED UNUSED UNUSED UNUSED UNUSED UNUSED UNUSED UNUSED UNUSED UNUSED UNUSED UNUSED UNUSED UNUSED UNUSED UNUSED UNUSED UNUSED UNUSED UNUSED UNUSED UNUSED UNUSED UNUSED UNUSED UNUSED UNUSED UNUSED UNUSED UNUSED UNUSED UNUSED UNUSED UNUSED UNUSED UNUSED UNUSED UNUSED UNUSED UNUSED UNUSED UNUSED UNUSED UNUSED UNUSED At the root of the RomFS, there's a file called item_data.bin. That one contains Items data. Each entry looks to be 0x1C bytes long, with an strange ending one of 0x0C bytes. Don't know the whole structure, but for each entry I know that : 0x00 (uint16) seems to be the "category" of item. Throwable, wears, prices, apples, seeds, donuts, devices, vitamins, secrets, orbs, evolve items, keys, lottery tickets, money, treasures, TM's, gifts, rewards (material for Pokémon Paradise buildings), traps and quest items. Maybe not that precise... 0x02 (uint16) is their Price in Poké or Gold Ingot. You can find their order by refering to their names in common.bin text file in your /message_ln/ folder. There's many UNUSED and some dev-only items. TM's don't have any number, so refer to their corresponding move name to know which item it is. You can seek for Stick as the first item, followed by Iron Thorn and Silver Spike. Good luck guys, and thanks for working on those games. EDIT: Just remenber that I made a tool to view the experience table (I may have done some mistakes but it works). Here it is: My code is shitty so I don't think that's a good idea to share it, but you can ask for. GTI_Experience_Viewer.zip
  3. You must open simultaneously Model and Textures.
  4. Got some news for you. I was very busy with some stuff since the last time, but I'm back. I converted an original IMG to a BCLIM, and then tested it with png2bclim, to find some matches between File formats... and it worked well. So : - 0x02 is RGB8; - 0x03 is RGBA8888; - 0x04 is ETC1. I can't find what is 0x05 format, but there're some clues that it is similar to ETC1. I will edit my first post. I'll make a little tool soon to convert directly from IMG to PNG, and much of the code will be from Kaphotics' tool (I'll give you credits for any method I'll take). If anyone wants to help with the last file format, I could give him the method I used.
  5. Ow.. Thanks ! I was using it as a resource, not a reference. I'll keep you informed when I'm done with it. Thanks again for your help.
  6. I don't endian swap pixel bytes, only the header bytes. When I import ETC1.dll in my project, it says that it can't find the DLL file. I arleady know about the difference between 32bit and 24bit. I'm having trouble with the pixel order. When I pass an IMG file through my EXE, it creates a PNG, with 4*4 pixel blocks. But those ones are always separated by white lines. Also, I don't think the order in which the blocks are is good. I'll try to dig in the source code you gave me. Keep searching a little today.
  7. Well, I'm working on Mystery Dungeon : Gates to Infinity and I'm currently trying to convert an IMG file to a PNG. Firstly, let's talk about those IMG files. You can find them in /bg/ and /image_2d/ folders. Their header seems to always be 0x20 bytes long. All values in header are Little Endian. [table=width: 500, class: outer_border, align: left] [tr] [td] Offset [/td] [td] Size [/td] [td] Description [/td] [/tr] [tr] [td]0x00[/td] [td]4[/td] [td]Magic ".cte". { 0x00, 0x63, 0x74, 0x65 }[/td] [/tr] [tr] [td]0x04[/td] [td]4[/td] [td]File format. Possible values : 0x02 (RGB8), 0x03 (RGBA8888), 0x04 (ETC1) or 0x05 (??).[/td] [/tr] [tr] [td]0x08[/td] [td]4[/td] [td]Width. Always a multiple of 4.[/td] [/tr] [tr] [td]0x0C[/td] [td]4[/td] [td]Height. Always a multiple of 4.[/td] [/tr] [tr] [td]0x10[/td] [td]4[/td] [td]Pixel length in bits. 0x18 : 24bits pixels. 0x20 : 32bits pixels.[/td] [/tr] [tr] [td]0x18[/td] [td]4[/td] [td]Pixel data start offset. It looks like its value is always 0x80.[/td] [/tr] [/table] The pixel data is Width * Height * Pixel size long. Using the file format as a reference to CLIM file ones, you can convert those IMG into BCLIM files and then use png2clim to create a PNG. You should have to flip the image to obtain the final result. img2png : soon...
  8. We have this one for french versions of FR/LG, made by Metarkrai : Rebatlle Mewtwo/Zapdos/Articuno/Moltres : 9584746B 390CF182 You may try to translate it for any language you need.
  9. KazoWAR, I got an error while opening a save file. I use A-Save 1.23, trying to open a french Ruby Version save (128kb). The save is at the very start of the game, in the truck at Littleroot Town. Here is the error message : System.IndexOutOfRangeException: L'index se trouve en dehors des limites du tableau. à Pokesav_Advance.Main.button_Open_Click(Object sender, EventArgs e) à System.Windows.Forms.Control.OnClick(EventArgs e) à System.Windows.Forms.Button.OnClick(EventArgs e) à System.Windows.Forms.Button.OnMouseUp(MouseEventArgs mevent) à System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks) à System.Windows.Forms.Control.WndProc(Message& m) à System.Windows.Forms.ButtonBase.WndProc(Message& m) à System.Windows.Forms.Button.WndProc(Message& m) à System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m) à System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m) à System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam) I'm playing on VBA-M from the last WinDS Pro update, and the option Real Time Clock is checked. And here is the save file : 001.pkmrubis-debut.SAV
  10. Does anyone have a code to modify the overworld sprite of the player ? Can't find one for those games nor Black and White.
  11. Hi there. I was wondering how to extract some .garc files from a Pokémon X or Y ROM cause I wanted to use Kaphotics GARCUnpacker. So, what kind of tools do I need to get those files ? Could someone explain me the process to extract them, please ? I know about 3DSExplorer, rom_tool, but sadly nothing else.
  12. Someone found this while using PKHeX : Could you fix it before they believe anything stupid please ?
  • Create New...