The PokéCommunity Forums  

Go Back   The PokéCommunity Forums > ROM Hacking > Research & Development
Sign Up Rules/FAQ Live Battle Blogs Mark Forums Read

Notices

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 October 16th, 2008, 09:44 AM
Mastermind_X's Avatar
Mastermind_X
ASM-Hacker
 
Join Date: Feb 2007
Location: Germany
Gender:
Nature: Adamant
Send a message via ICQ to Mastermind_X
Fancy Knowledge #3 - Using Two Different Musics In One Event

Heyho. Some people asked how zel was able to use more than 1 music in his battles. I created that feature a year ago and called it "jukebox". I think it's time now to explain how it works... (I think zel won't have a problem if i tell it...)

You can find it here:
http://sfc.pokemon-inside.net/lesson.php?id=13&lang=en


greetz
MX

P.S. If you find offsets for other versions than Fire Red US and you want to share them with others post them in this thread or send me a PM.
Reply With Quote
  #2    
Old October 17th, 2008, 02:45 AM
liuyanghejerry's Avatar
liuyanghejerry
Trainer
 
Join Date: Jan 2008
Location: China,Xi'an
Nature: Calm
Send a message via ICQ to liuyanghejerry Send a message via Windows Live Messenger to liuyanghejerry Send a message via Yahoo to liuyanghejerry
Your page is kind of in disorder about the binary...
Anyway,thanks~
__________________
Zel,thethethethe,LU-HO,Darthatron,HackMew,ZodiacDaGreat,Juan,score_under,JPAN,Tamah-chan,I really appreciate your kindness and your help!:D


I did something that really bad.But made all Chinese can hack Pokemon, too.If you guys hate me, I totally understand,but cannot do anything but force to keep everything.
If there must be someone to undertake all spit and curse, it must be me.

Last edited by liuyanghejerry; October 17th, 2008 at 02:45 AM. Reason: Add a thank
Reply With Quote
  #3    
Old October 17th, 2008, 07:43 AM
Νιτραμ
Trainer
 
Join Date: Nov 2007
Hey, the tutorial is really nice, it will find sure good use in many hacks.

I don't like being noobish and ask questions in wrong places, but isn't it October already, M_X?
__________________
If you remeber me, feel free to send me a PM ;-)
Reply With Quote
  #4    
Old October 17th, 2008, 12:46 PM
cooley's Avatar
cooley
///Keepin' it simple
 
Join Date: Feb 2007
Location: United States
Age: 19
Gender: Male
Nature: Impish
Send a message via Windows Live Messenger to cooley Send a message via Skype™ to cooley
Very useful, indeed. I would make a tool, but I don't know if I can...or rather feel like it.
I'll be using this, and good luck! Especially with that Day&Night System
__________________

Reply With Quote
  #5    
Old October 17th, 2008, 02:42 PM
Mastermind_X's Avatar
Mastermind_X
ASM-Hacker
 
Join Date: Feb 2007
Location: Germany
Gender:
Nature: Adamant
Send a message via ICQ to Mastermind_X
Quote:
Originally Posted by liuyanghejerry View Post
Your page is kind of in disorder about the binary...
Anyway,thanks~
Uhm. What exactly do you mean? Oo

Edit: @ Martin™
It is. Well. Do you want to have a D/N system that crashes for unknown reasons when you switch pokemon in battle? ^^° I try to fix that problem... -.-

Last edited by Mastermind_X; October 17th, 2008 at 03:30 PM.
Reply With Quote
  #6    
Old October 18th, 2008, 02:20 AM
liuyanghejerry's Avatar
liuyanghejerry
Trainer
 
Join Date: Jan 2008
Location: China,Xi'an
Nature: Calm
Send a message via ICQ to liuyanghejerry Send a message via Windows Live Messenger to liuyanghejerry Send a message via Yahoo to liuyanghejerry
Well,sorry for my bad English...I mean this:


__________________
Zel,thethethethe,LU-HO,Darthatron,HackMew,ZodiacDaGreat,Juan,score_under,JPAN,Tamah-chan,I really appreciate your kindness and your help!:D


I did something that really bad.But made all Chinese can hack Pokemon, too.If you guys hate me, I totally understand,but cannot do anything but force to keep everything.
If there must be someone to undertake all spit and curse, it must be me.
Reply With Quote
  #7    
Old October 18th, 2008, 10:36 AM
Lady Berlitz's Avatar
Lady Berlitz
Cinnamon ♪
 
Join Date: May 2007
Location: An igloo in Canada
Nature: Adamant
This tutorial seems quite useful. I liked how you said that it's "fancy knowledge", Mastermind.
I will definitely be using this in the future for my hack.

Thanks for writing/translating this, Mastermind.
__________________
_█████████_
_█▄█████▄█_
_█▼▼▼▼▼▼▼█_
██_______██
_█▲▲▲▲▲▲▲█_
_█████████_
_██_____██_
Reply With Quote
  #8    
Old October 18th, 2008, 11:19 PM
Νιτραμ
Trainer
 
Join Date: Nov 2007
@M_X: Ah, so that is the reason. Sorry then " I hope you will be able to fix it.

Anyway, I am going to try out this tutorial, it will sure be great for me - already planned different wild Pokémon music on different parts of region. I would like to ask: Where the heck you know all this from? You're amazing, did you know?

@liuyanghejerry: Which browser are you using? If Internet Explorer 6- or one of browsers using its rendering engine (Maxthon for example), it should not be a surprise. If you're using a more standards-compilant browser such as IE8 or Firefox and the rest, then I have no idea.
__________________
If you remeber me, feel free to send me a PM ;-)
Reply With Quote
  #9    
Old October 19th, 2008, 04:56 PM
Megiddo-san's Avatar
Megiddo-san
Barium - Summer '12 Return?
 
Join Date: Dec 2007
Location: Where you least expect it
Age: 22
Gender: Male
Nature: Relaxed
Send a message via Windows Live Messenger to Megiddo-san
I have double checked my hex and have tried both hex and decimal for music values, but it isn't working for me. This is the script that changes it. #org @begin
setvar 0x1014 0x298
setvar 0x1016 0x299
message @this
boxset 6
release
end
#org @this
= Music test.
__________________

Hashire! Asu e tsudzuku shinka no micha wa
Reply With Quote
  #10    
Old October 19th, 2008, 08:37 PM
ZodiacDaGreat's Avatar
ZodiacDaGreat
Working on a Mobile System
 
Join Date: Feb 2007
Location: South Pacific
Age: 21
Gender: Male
Nature: Relaxed
Send a message via ICQ to ZodiacDaGreat
@Megiddo - It doesn't work like that, you have to use it before a wildbattle or trainerbattle. How?

1. Well, find the song that the wildbattle/trainerbattle plays.
2. Setvar 0x1014 the song it plays. (Original Song)
3. Setvar 0x1016 to the song you want it to play.

Ao, in simple terms its changing the played music, through setvars, by setting the original song to 0x1014 and set a new song to 0x1016. If the vars don't work, it can be changed:
Quote:
0xcfff64:
[14 10 00 00] // nr of 1st variable containing music number to replace
[15 10 00 00] // nr of 2nd variable containing music number to replace
[16 10 00 00] // nr of 1st variable containing the value to replace with
[17 10 00 00] // nr of 2nd variable containing the value to replace with
[FF FF 00 00] // value the vars have to be set to in order to disable the track loader
[55 E4 06 08] // std_func_getvaradress + 1; don't change it!
[0F D1 1D 08] // return adress + 1
[9C 32 4A 08] // channel table (usually you don't have to change it)
[CC 32 4A 08] // pointer to the music-pointer-table
Change 1410, 1510, 1610, 1710 to something that works, thats the veryr reason why MX, block quoted this part.

Anyway, Good News is you may see a tool soon
__________________
Reply With Quote
  #11    
Old October 20th, 2008, 05:27 AM
Megiddo-san's Avatar
Megiddo-san
Barium - Summer '12 Return?
 
Join Date: Dec 2007
Location: Where you least expect it
Age: 22
Gender: Male
Nature: Relaxed
Send a message via Windows Live Messenger to Megiddo-san
I think I need new ones. I tried putting them before a trainerbattle in a script. Thanks. I'm going to try others.

Edit: I just made that work by using different variables. It needn't be in the same script.
__________________

Hashire! Asu e tsudzuku shinka no micha wa

Last edited by Megiddo-san; October 20th, 2008 at 05:33 PM.
Reply With Quote
  #12    
Old January 7th, 2010, 03:21 PM
Drayano's Avatar
Drayano
Axe me a question, I dare you.
 
Join Date: Nov 2004
Location: Wales, UK
Age: 21
Gender: Male
Nature: Calm
I've tried to do this a couple times now and each time I try the game just stops; you try to load the game, the blue background of the intro opens, and it just stops there.

I've double checked the hex to make sure I've input it correctly and I've put it in the same locations as described on the tutorial, so I've also used the same pointer in the second part where I'm attaching it to the musicloader.

I tried toying around with the var numbers in the hex (the 14 10 00 00, 15 10 00 00 etc) but changing them didn't fix anything. As far as I can tell the Fire Red ROM started doing this intro freeze after I put in the hex that is in the first part of the tutorial.

Either way, I've tried this three odd times now and got the same result every time... would anyone happen to have any idea why the game keeps doing this whenever I put in the hex?

edit: Okay I took a look at AdvanceMap at the broken ROM and it seems that all of the tiles are broken :x
__________________
Pokémon Blaze Black + Volt White

Last edited by Drayano; January 7th, 2010 at 03:31 PM.
Reply With Quote
  #13    
Old August 7th, 2012, 05:53 PM
aar2697
 
Join Date: Jun 2010
Age: 17
Gender: Male
Send a message via Skype™ to aar2697
Drayano, it doesn't work with my ROM either for some reason. I'm having the same problem as you. Luckily I made a backup.
Reply With Quote
  #14    
Old August 14th, 2012, 08:45 AM
thanethane98's Avatar
thanethane98
Self Proclaimed Expert
 
Join Date: Jun 2012
Nature: Relaxed
Quote:
Originally Posted by aar2697 View Post
Drayano, it doesn't work with my ROM either for some reason. I'm having the same problem as you. Luckily I made a backup.
I had the same problem at first, but I found out what I did wrong. You have to remember to flip your offset when putting it into the music loader. Such as, I had 0x810211 as my offset. So I originally put that in as 81 02 11 00, while I needed to put it in as 11 02 81 08. I'm not an expert with this, but I'm pretty sure that 08 always needs to go on the end of the offset, somebody can correct me if I'm wrong though.

Good luck!
Reply With Quote
  #15    
Old August 15th, 2012, 05:34 PM
Golden Empoleon
 
Join Date: Jan 2011
Gender: Male
When I go to this part Im kinda lost lol

01 49 08 47 00 00 [XX XX XX XX] 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

And my pointer is F1 FE CF 08 also but everytime i do this from 0x1DD0F6 to 0x1DD10E
my rom will end up crashing.
Reply With Quote
  #16    
Old August 15th, 2012, 09:05 PM
thanethane98's Avatar
thanethane98
Self Proclaimed Expert
 
Join Date: Jun 2012
Nature: Relaxed
Quote:
Originally Posted by Golden Empoleon View Post
When I go to this part Im kinda lost lol

01 49 08 47 00 00 [XX XX XX XX] 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

And my pointer is F1 FE CF 08 also but everytime i do this from 0x1DD0F6 to 0x1DD10E
my rom will end up crashing.
How exactly does it crash? When I originally did this, my hex editor actually expanded the rom when I typed in stuff like this, which leads to the ROM being unusable.

I've actually managed to get this working, but to do it I had to take a look at another hack that had successfully done this. Take a look at Azure Horizons if you're stuck, the makers of it have it inserted and working correctly so it's a great example.
__________________
Back and ROM hacking again!
Reply With Quote
  #17    
Old August 15th, 2012, 10:23 PM
Golden Empoleon
 
Join Date: Jan 2011
Gender: Male
Thanks thanethane98 for the input.
It didn't crash this time and you was right that
was a great example.

Now all I need help is the setvar.
Btw. I am using pokescript.

Last edited by Golden Empoleon; August 15th, 2012 at 11:37 PM.
Reply With Quote
  #18    
Old August 16th, 2012, 11:02 AM
thanethane98's Avatar
thanethane98
Self Proclaimed Expert
 
Join Date: Jun 2012
Nature: Relaxed
Quote:
Originally Posted by Golden Empoleon View Post
Thanks thanethane98 for the input.
It didn't crash this time and you was right that
was a great example.

Now all I need help is the setvar.
Btw. I am using pokescript.
I believe with the modified version used in Azure Horizons it's 7030 and 7033. That worked for me in XSE, and it should work for you no matter what program you're using for scripting.
__________________
Back and ROM hacking again!
Reply With Quote
  #19    
Old August 16th, 2012, 11:19 AM
Team Fail's Avatar
Team Fail
A Little Bit Of Sparkle
Community Supporter
 
Join Date: May 2009
Age: 19
Gender: Male
Nature: Brave
I've actually been looking for something like this for the last little bit, actually. I'll have to give this a try and give it a shot at implementing it in a hack.

Although, with a repointed sound table, this will be fun.
__________________

Pairs:
Kevin, Echidna
Follow me on Twitter! @TeamFail
Alt 1, リザードン
Miiverse
Pokémon Hackers Online
Alt 2: Jack Cayman



[04:20.39] <@GoGo> I WILL INSERT WITH PLEASURE
[04:20.45] <@GoGo> shut it Bela

[05:41.55] <Team_Fail> Blue Spider is interesting, but #MEHMasterRace
[05:42.20] <diegoisawesome> Team_Fail: Sounds like a bunch of unmotivated people that still want to try to take over the world
Reply With Quote
  #20    
Old August 16th, 2012, 11:50 AM
thanethane98's Avatar
thanethane98
Self Proclaimed Expert
 
Join Date: Jun 2012
Nature: Relaxed
Quote:
Originally Posted by Team Fail View Post
I've actually been looking for something like this for the last little bit, actually. I'll have to give this a try and give it a shot at implementing it in a hack.

Although, with a repointed sound table, this will be fun.
Good luck.

The only problem I've had with this at the moment is that it seems to have errors when you attempt to use it with a normal trainer (one that battles you when you're in their sight). Has anyone else had this issue?
__________________
Back and ROM hacking again!
Reply With Quote
  #21    
Old August 16th, 2012, 11:57 AM
Golden Empoleon
 
Join Date: Jan 2011
Gender: Male
#org $script
setvar 0x7030 0x297
setvar 0x7033 0xblah
trainerbattle 0x00 0x0001 $see $win
$see 1 = Battle me!
$win 1 = I lost.
message $after
$after 1 = You're tough.
boxset 6
release
end

This my script for pokescript
And it still not working for me.
Is it the same for xse

Last edited by Golden Empoleon; August 16th, 2012 at 01:27 PM.
Reply With Quote
  #22    
Old August 16th, 2012, 12:26 PM
Jambo51's Avatar
Jambo51
Glory To Arstotzka
 
Join Date: Jun 2009
Gender: Male
Nature: Quiet
Quote:
Originally Posted by Golden Empoleon View Post
#org $script
setvar 0x7030 0x297
setvar 0x7033 0xblah
trainerbattle 0x00 0x0001 $see $win
$see 1 = Battle me!
$win 1 = I lost.
message $after
$after 1 = You're tough.
boxset 6
release
end

This my script for pokescript
Is it the same for xse
This script won't work. Trainerbattles ONLY work if the first command in the script is the trainerbattle itself. The only exception to this is type 0x1 of trainerbattles.

That's why this method is limited. It can execute changes like regional music, or class based music if you're extremely careful and clever, but it's incapable of more complex changes.
__________________
Hey guys, please check out my recreations of the gen 1 and 2 music on my custom engine at my SoundCloud! - Here!
Reply With Quote
  #23    
Old August 16th, 2012, 01:45 PM
Golden Empoleon
 
Join Date: Jan 2011
Gender: Male
Quote:
Originally Posted by Jambo51 View Post
This script won't work. Trainerbattles ONLY work if the first command in the script is the trainerbattle itself. The only exception to this is type 0x1 of trainerbattles.

That's why this method is limited. It can execute changes like regional music, or class based music if you're extremely careful and clever, but it's incapable of more complex changes.
Thanks Jambo51 for this input :D
Also, your last video on youtube was so
amazing i am really a fan but anyways so where
do i put the setvars or i should redue this script.

#org $script
trainerbattle 0x1 0x1 $see $win
$see 1 = Blah
$win 1 = Blah Blah.
message $after
$after 1 = Blah Blah Blah.
boxset 6
setvar 0x7030 0x297
setvar 0x7033 0xblah
release
end

Redid the script

Last edited by Golden Empoleon; August 16th, 2012 at 03:05 PM. Reason: Your double post has been automatically merged.
Reply With Quote
  #24    
Old August 16th, 2012, 03:47 PM
Jambo51's Avatar
Jambo51
Glory To Arstotzka
 
Join Date: Jun 2009
Gender: Male
Nature: Quiet
No, it's not possible to use this method to change the music for each trainer. This is because that setvar won't be used until after the battle is finished. It works for rival style trainers, since they execute parts of scripts before battling, but it won't work with normal trainers for the aforementioned reason. You can set the vars in a level script if all trainers in the area need a different music (a Team Rocket takeover of a place, for example), but you can't set each trainer in an area individually.
__________________
Hey guys, please check out my recreations of the gen 1 and 2 music on my custom engine at my SoundCloud! - Here!
Reply With Quote
  #25    
Old August 16th, 2012, 06:30 PM
Golden Empoleon
 
Join Date: Jan 2011
Gender: Male
Okay I see what you are saying and its makes perfect
sense.

So the level script

#org $script
setvar 0x7030 0x297
setvar 0x7033 0xblah
release
end

and i put this in advance map
the area i chose (like you said a bad guys area)
script it to one of the green boxes idk lol
This is confusing in a good way
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
Minimum Characters Per Post: 25



All times are UTC -8. The time now is 07:35 PM.


Style by Nymphadora, artwork by Sa-Dui.
Like our Facebook Page Follow us on Twitter © 2002 - 2014 The PokéCommunity™, pokecommunity.com.
Pokémon characters and images belong to The Pokémon Company International and Nintendo. This website is in no way affiliated with or endorsed by Nintendo, Creatures, GAMEFREAK, The Pokémon Company or The Pokémon Company International. We just love Pokémon.
All forum styles, their images (unless noted otherwise) and site designs are © 2002 - 2014 The PokéCommunity / PokéCommunity.com.
PokéCommunity™ is a trademark of The PokéCommunity. All rights reserved. Sponsor advertisements do not imply our endorsement of that product or service. User generated content remains the property of its creator.