• Just a reminder that providing specifics on, sharing links to, or naming websites where ROMs can be accessed is against the rules. If your post has any of this information it will be removed.
  • Ever thought it'd be cool to have your art, writing, or challenge runs featured on PokéCommunity? Click here for info - we'd love to spotlight your work!
  • Our weekly protagonist poll is now up! Vote for your favorite Conquest protagonist in the poll by clicking here.
  • Welcome to PokéCommunity! Register now and join one of the best fan communities on the 'net to talk Pokémon and more! We are not affiliated with The Pokémon Company or Nintendo.

[Audio] Randomized cry?

  • 17
    Posts
    4
    Years
    • Seen Jan 4, 2025
    Basically for a specific Mon, I'd like it to be able to use a set of cries (in this case 3), randomly used every time it appears/is thrown out into battle
    Looking at cry_tables.inc and direct_sound_data.inc in the sound folder, and pokemon.c in src. Any ideas?
     
    I see two ways of doing this, one that just affects cries in battle, but may not be 100% efficient, and another that will affect battle cries, Pokedex cries, and every other cry that will work 100%.

    Regardless of which option you choose, you're obviously going to need to add your cries into the game. I'm not very skilled nor knowledgeable in that area, so if you don't know how to do that, hopefully someone who does will post in here. All I know is that you'll have to add all of your Pokemon's cries to the cry table (obviously). You should only have one of your three cries in the Pokemon's proper position within the cry table. What I mean by that is since Bulbasaur is species 1 within the game, its cry is at the top of the list. Ivysaur is species 2, so it comes after Bulbasaur's cry, and so on down the line. Whatever your Pokemon's species number is, place only one of the Pokemon's cries at that spot. Put the rest of the cries at the bottom of the cry table. You have to put the other ones at the bottom, otherwise if the Pokemon immediately after your special Pokemon were to cry, it would end up using the second cry of your new Pokemon instead of its own. Then all other Pokemon below would have their cries offset by two, causing a great deal of crying chaos. Remember the numbered positions that those other two cries at the bottom have, as well as the position of your Pokemon species, as those will be important later. I'm going to use the names CRY_2_POSITION and CRY_3_POSITION for the numbered locations of the two bottom cries.

    Option 1: Just in Battle, Possibly less Efficient
    Spoiler:


    Option 2: Affects All Possible Cries, Guranteed
    Spoiler:


    With that, you should have a randomized cry for your Pokemon. There's a lot in there, so if anything's unclear or doesn't seem to work, just let me know, and I'll try to clarify a bit more!
     
    Several things
    -Is cry position just the file directory of the audio bin?
    -random .h being included has this error
    [PokeCommunity.com] Randomized cry?

    using Item and Battle Expansion

    Edit: Fixed! include random.h just needs to be after global
    Also cryposition is just mon ID. I'll use the unused unowns!
    Thanks for the help!
     
    Last edited:
    Back
    Top