Go Back   The PokéCommunity Forums > ROM Hacking > Research & Development
Reload this Page Changing and Altering Cries in Gold/Silver/Crystal

Notices
For all updates, view the main page.

Research & Development Got a well-founded knack with ROM hacking? Love reverse-engineering the Pokémon games? Or perhaps you love your assembly language. This is the spot for polling and gathering your ideas, and then implementing them! Share your hypothesis, get ideas from others, and collaborate to create!
Research & Development programs in this forum are subject to moderator approval before they are displayed.



Reply
 
Thread Tools
  #1    
Old March 23rd, 2008 (01:54 AM). Edited March 23rd, 2008 by Coolboyman.
Coolboyman's Avatar
Coolboyman Coolboyman is offline
Veteran Hacker
 
Join Date: Sep 2003
Location: The East Bay
Age: 27
Gender: Male
Nature: Bold
Posts: 466
This tutorial will allow you to change the cries of your Pokemon to whatever you want. This is a very important factor if you're going to add your own custom pokemon, or Pokemon from newer generations. You need a hex editor, theres no other way around this and you'll have to learn to live with it.

Each cry declaration is 6 bytes long, and located at F2747. They are in order of Pokedex number. To find what Pokemon you want to edit, simply take your windows calculator (If you don't have windows or cant find the calculator, USE GOOGLE to find an online version to convert hex to dec).

Let's say we want to edit Zubat's cry. Zubat's number 41, now subtract that by 1, then multiply that by 6, which equals 240. Convert it to hex (F0), and add that to the starting location (F2747), and it equals F2837. That is where Zubat's cry is.

01 = Basic sound. You know that some pokemon share the same cry, but did you know that there are only 67 unique cries in the game? Here is a list of them.

00 = Sandshrew
01 = Nidoran F
02 = Slowpoke
03 = Kangaskhan
04 = Charmander
05 = Snorlax
06 = Voltorb
07 = Muk
08 = Oddish
09 = Raichu
0A = Nidoqueen
0B = Diglett
0C = Seel
0D = Drowsee
0E = Pidgey
0F = Bulbasaur
10 = Spearow
11 = Rhydon
12 = Golem
13 = Blastoise
14 = Pidgeotto
15 = Weedle
16 = Caterpie
17 = Ekans
18 = Fearow
19 = Clefable
1A = Venonat
1B = Lapras
1C = Metapod
1D = Squirtle / Zubat
1E = Paras
1F = Growlithe
20 = Krabby
21 = Psyduck
22 = Rattata
23 = Vileplume
24 = Vulpix
25 = Weepinbell
26 = Marill
27 = Spinarak
28 = Togepi
29 = Girafarig
2A = Raikou
2B = Mareep
2C = Togetic
2D = Hoothoot
2E = Sentret
2F = Slowking
30 = Cyndaquil
31 = Chikorita
32 = Totodile
33 = Gligar
34 = Cleffa
35 = Slugma
36 = Ledyba
37 = Entei / Celebi
38 = Wooper
39 = Mantine
3A = Steelix
3B = Natu
3C = Teddiursa
3D = Sunflora
3E = Ampharos
3F = Suicine
40 = Pichu
41 = Aipom / Ho-oh
42 = Dunsparce
43 = Donphan

As we can see here, these cries can be altered so they sound nothing like each other, such as Celebi and Entei, and Squirtle and Zubat. Do NOT go above 44, it will create glitch cries that can have odd effects to the music, and may take forever to finish.

02 = KEEP THIS VALUE AT 00! This is the ninth bit to basic sounds, and if you change it to 01 or above, the cry will be glitched. This sparks some curiosity, hinting maybe Gamefreak was originally going to put in more cries.
03 = Pitch. The higher the value is, the higher the pitch is, and visa versa.
04 = This is a cool effect, it creates a single echo of the cry. The higher the value, the more loud the echo is. Mostly used by Johto Pokemon, one of them is Chikorita, who uses FF, being the highest echo the game can allow.
05 = Length. The higher the value is, the longer the cry is stretched out. The "normal" length is usually 80. However, some Pokemon, especially Johto use 00 with the next byte as 01
06 = This is the next byte to the length. Only 00 and 01 are used, and can be used to REALLY stretch out the cries. However, you can go 02 and above, but that could make the cries way too long...

Heres some examples of cries.
Metapod: 1C 00 CC 00 81 00
Chikorita: 31 00 F0 FF B0 00
Entei: 37 00 00 00 80 01
Celebi: 37 00 4A 01 11 01
Mewtwo: 1E 00 99 00 7F 01
Mew: 1E 00 EE 00 7F 01

And now you know how to edit the cries.

TRIVIA:
Want to know why Missingno typically has Nidoran/sandshrew's cry, but shorter? Gamefreak made all of the values in the cry 00. The method in Red/Blue is similar, but no second bytes to each method and no echo value. So 00 as the Base cry, 00 as the length, and 00 as the pitch, you have Missingno's cry!

Attached is a recording of all of the cries used with no special pitch and average length. You can use these for reference.
Attached Files
File Type: zip Cries.zip‎ (329.8 KB, 102 views) (Save to Dropbox)
__________________
Check out my Youtube channel. All about ROM Hacks, Indie Games and more!

Brown:


Prism : - Four Gym Summer 2010 Beta available now!

Twitter
Reply With Quote
  #2    
Old March 23rd, 2008 (08:25 PM). Edited March 23rd, 2008 by IIMarckus.
IIMarckus's Avatar
IIMarckus IIMarckus is offline
J946@5488AA97464
 
Join Date: Oct 2007
Gender:
Posts: 402
Great stuff as always, Koolboyman. For those who are curious, offsets in other games are:

0F2787 (Crystal)
039446 (Red/Blue)
039462 (Yellow)
Reply With Quote
  #3    
Old March 24th, 2008 (07:02 AM).
cooley's Avatar
cooley cooley is offline
///Keepin' it simple
Silver Tier
 
Join Date: Feb 2007
Location: United States
Age: 20
Gender: Male
Nature: Impish
Posts: 1,150
Send a message via Windows Live Messenger to cooley Send a message via Skype™ to cooley
How do you guys discover these things?
Do you just see bytes and know what they mean in hex?

A few more Tutorials and I'm back to hacking gold!
Aftr The Advanced Hack of course

Isn't there a Tool for editing cries? I think I saw one before

Offtopic (even hough you might not care): My gold hack is still being worked on. I can't seem to get trainerbattles to work, I would look
at nintendo's scripts, but I don't know where to start.

*EDIT:
I know where to start (thanks to Megamap), sorry for spamming up thread!
__________________

Reply With Quote
Reply
Quick Reply

Sponsored Links
Thread Tools

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are UTC -8. The time now is 12:07 AM.