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.


Advertise here

Reply
Click here to go to the first staff post in this thread.  
Thread Tools
  #126    
Old December 24th, 2009, 09:31 PM
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

Advertise here
Quote:
Originally Posted by JPAN View Post
Posting here to tell you all that the new version is now available on the first post. Lot's of changes were made there, but some new features are really worth talking about, and are too big for that post space.
Oh,this is really the best Chistmas gift for me,thank you,JPAN!
I think I'll devote myself how to use the new features several days.
By the way,is it possible to make a script while a trainer sees you but not a tranierbattle script?
__________________
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
  #127    
Old December 25th, 2009, 08:31 AM
JPAN
pokemon rom researcher
 
Join Date: Dec 2008
Quote:
Originally Posted by liuyanghejerry View Post
Oh,this is really the best Chistmas gift for me,thank you,JPAN!
I think I'll devote myself how to use the new features several days.
By the way,is it possible to make a script while a trainer sees you but not a tranierbattle script?
While I am working on it, it wasn't ready for christmas release, so I decided to include it on next release. Curiously enough, another of the "tile specials", that finds if a person is looking at a given location in the map, at a distance set by the view radius (that would allow you to replace the trainer scripts for one single walking script) was also not finished in time. But don't worry, for next release should solve the "patching erase my work" problem.
__________________
Here are the links for my work


Currently working on:
Battle Script Documentation
Another large project
Reply With Quote
  #128    
Old December 27th, 2009, 12:29 PM
diegoisawesome's Avatar
diegoisawesome
Not the Script Help Thread
Community Supporter
 
Join Date: Dec 2007
Location: Goldenrod City, Johto
Age: 17
Gender: Male
Nature: Quirky
I am trying to fix a few bugs I accidentally made in my game. I would like to see where the dada overwrites the main engine for a few of them, but it never says what or where you have to patch any of the specials to point to your code.
__________________


My other resources:
My Website
diegoisawesome's MEGA-HUGE XSE Scripting Tutorial
diegoisawesome's Miscellaneous Finds
The Ruins of Alph Puzzles
Reply With Quote
  #129    
Old December 29th, 2009, 03:31 PM
helloNL
Beginning Trainer
 
Join Date: Oct 2009
Gender: Male
what i understand is that you now can add more pallettes sprites pokemon trainers
but how do we do that?
Reply With Quote
  #130    
Old December 30th, 2009, 12:31 AM
raupy's Avatar
raupy
A Visual Basic programmer
 
Join Date: Dec 2009
Age: 15
Gender: Male
Argh, for english ROMs...

Please make it compatible for German ROMs!

This is a great work!

mfg
raupy
__________________
▬|████|▬ This is Nudelholz. Copy Nudelholz in your Signatur to make better Kuchens and other Teigproducts!
(Nudelholz, teig and Kuchens are German Words, this is a German joke xD)
Reply With Quote
  #131    
Old December 31st, 2009, 03:34 PM
Quil
Me
 
Join Date: Dec 2006
Age: 18
Nature: Sassy
Somehow to the patch ****s the dynamic OW 240.. When I encounter it in my screen the game crashes, and at a normal rom i see the basic player ow (nothing set)
This is the way I used the dynamicly generate trainers, but it bugs now :C fffuu
__________________


Reply With Quote
  #132    
Old January 2nd, 2010, 03:48 PM
HackChu's Avatar
HackChu
I need a haircut...
Community Supporter Tier 1
 
Join Date: Jan 2007
Location: Bankrupt Amerika
Age: 21
Gender: Male
Nature: Modest
This is nice but I don't know how to use it and the doc that this came with comes up with a error saying that it can't do some conversion.

"Unable to load graphics conversion filter.Continue with document conversion?" was the error I get.

So when I hit yes it keeps coming up until I press no, please help...
__________________
Join us!

My 'learning how to combine battle scripts' thread:
http://www.pokecommunity.com/showthread.php?t=183001

SoulSilver FC:1162 1864 5409
Name: Ethan

Black FC: 2666 1354 4379
Name: Ashton

White 2 FC: 1120 8065 3049
Name: Nate

3DS Friend Code: 1349-4646-2412
Name: tysonrss
Reply With Quote
  #133    
Old January 2nd, 2010, 04:30 PM
0m3GA ARS3NAL's Avatar
0m3GA ARS3NAL
Im comin' home...
Community Supporter Tier 1
 
Join Date: Jan 2008
Location: Superjail Penitentiary
Age: 21
Gender: Male
Nature: Gentle
Quote:
Originally Posted by tyson View Post
This is nice but I don't know how to use it and the doc that this came with comes up with a error saying that it can't do some conversion.

"Unable to load graphics conversion filter.Continue with document conversion?" was the error I get.

So when I hit yes it keeps coming up until I press no, please help...
Yeah, the file is a Word File, you'll need to install Microsoft Word, or Open Office (Open Office is free)
Google is your friend.
__________________
>Boot Jailbot
>Pass *****
.
.
Jailbot OS Ver 1.1.2
Greetings Warden
of Superjail Penitentiary
Awaiting user input...

>Display User_Info
╠══User Info══╣
Username:
0m3GA ARS3NAL
Age: 18
Sex: Male ♂
Race: Caucasian
Quote:
"What is this
I don't even..."

M/O: Often acts out to get attention, but recently has changed that. Has been studying up on hacking information and hopes to participate in more advanced hacking discussion.
╠══End of File══╣
Awaiting user input...

>
Reply With Quote
  #134    
Old January 2nd, 2010, 05:05 PM
helloNL
Beginning Trainer
 
Join Date: Oct 2009
Gender: Male
he sais in other words that he uses word or openoffice
Reply With Quote
  #135    
Old January 2nd, 2010, 05:34 PM
HackChu's Avatar
HackChu
I need a haircut...
Community Supporter Tier 1
 
Join Date: Jan 2007
Location: Bankrupt Amerika
Age: 21
Gender: Male
Nature: Modest
Yeah I understood thanks OA!
__________________
Join us!

My 'learning how to combine battle scripts' thread:
http://www.pokecommunity.com/showthread.php?t=183001

SoulSilver FC:1162 1864 5409
Name: Ethan

Black FC: 2666 1354 4379
Name: Ashton

White 2 FC: 1120 8065 3049
Name: Nate

3DS Friend Code: 1349-4646-2412
Name: tysonrss
Reply With Quote
  #136    
Old January 5th, 2010, 09:53 AM
LiekingOfMudkipz's Avatar
LiekingOfMudkipz
Beginning Trainer
 
Join Date: Sep 2009
Location: Egland
Age: 18
Gender: Male
Nature: Calm
It's not explained I dont think for your multichoice boxes on how to lead the script somewhere else after clicking on one of the options. Where would I put the

if 0x1 goto @XXXXX

Or something else for each choice ? I need it desperatly and if I get help on how to do this then I could use the hacked engine in the way I wish and it';s a big help already! Thanks.
Reply With Quote
  #137    
Old January 9th, 2010, 10:50 AM
Deokishisu's Avatar
Deokishisu
Mr. Magius
 
Join Date: Feb 2006
Location: If I'm online, it's a safe bet I'm at a computer.
Gender: Male
Nature: Relaxed
Quote:
Originally Posted by LiekingOfMudkipz View Post
It's not explained I dont think for your multichoice boxes on how to lead the script somewhere else after clicking on one of the options. Where would I put the

if 0x1 goto @XXXXX

Or something else for each choice ? I need it desperatly and if I get help on how to do this then I could use the hacked engine in the way I wish and it';s a big help already! Thanks.
Code:
setvar 0x8006 0x0 
loadpointer 0x0 @firstchoice 'your first multichoice text
special 0x25
setvar 0x8006 0x1
loadpointer 0x0 @secondchoice 'your second multichoice text
special 0x25
multichoice 0x0 0x0 0x20 0x0 'the two 0's, and then the position x and y
compare LASTRESULT 0x0 'if 1st choice goto
if 0x1 goto @firstchosen
compare LASTRESULT 0x1 'if 2nd choice goto
if 0x1 goto @secondchosen
compare LASTRESULT 0x7F 'if B was pressed goto
if 0x1 goto @Bpressed
^short example for you, includes somewhere to go if B was pressed.


My question is regarding the walking scripts. I'm not sure how to compile them. Do I compile a call command to my walking script at 0x1a4e2c? But then what do I do with var 0x407e? I'm just generally confused with this one. I'm trying to do the secondary "bag" thing suggested in the readme for a pseudo-PokeGear-like thingy. By pressing both L+R to activate it. I just don't know how to go about doing it.
Reply With Quote
  #138    
Old January 9th, 2010, 07:16 PM
JPAN
pokemon rom researcher
 
Join Date: Dec 2008
Quote:
Originally Posted by Deokishisu View Post
My question is regarding the walking scripts. I'm not sure how to compile them. Do I compile a call command to my walking script at 0x1a4e2c?
Compiling a script to work with the walking scripts is the same as compiling it to work anywhere else. just put it on the ROM somewhere. Afterwards, change the 0s at 0x1a4e2c to the pointer to the script location.
Quote:
Originally Posted by Deokishisu View Post
But then what do I do with var 0x407e?
Var 0x407e is the activate this script variable. If you want the script you just placed at 0x1a4e2c to be active, you must set the variable to 1, in the normal variable-setting fashion. Otherwise it won't run.
Quote:
Originally Posted by Deokishisu View Post
I'm trying to do the secondary "bag" thing suggested in the readme for a pseudo-PokeGear-like thingy. By pressing both L+R to activate it. I just don't know how to go about doing it.
In here, just do it like if you were about to create a simple talk-to script that did that. So, my guess is that it would have a key check followed by a call if true to the script of the said function. Just don't forget about the small detail about the wild battles, as that script sounds like the kind that never turns off, and to set the help option off, as it will always activate before the script.
__________________
Here are the links for my work


Currently working on:
Battle Script Documentation
Another large project
Reply With Quote
  #139    
Old January 9th, 2010, 09:41 PM
Deokishisu's Avatar
Deokishisu
Mr. Magius
 
Join Date: Feb 2006
Location: If I'm online, it's a safe bet I'm at a computer.
Gender: Male
Nature: Relaxed
Thanks JPAN! You really cleared a lot up for me. And thank god you reminded me about the wildpokemon bit, I would've been poking around forever before I realized what I missed. ^_^

Oh, and I have a quick suggestion for the next release. I'm not actually sure if this is possible now, because I haven't fiddled around with it, but how about the ability to disable key presses? During timed minigames and such, having the player able to use the start menu wouldn't be the greatest thing ever. And perhaps disabling some things on the start menu itself. Sometimes we wouldn't want the player to save, (such as that "Erase Party Pokemon Special" that would wipe the Pokemon out of memory between saves), use the bag, or look at their Trainer Card. I also wouldn't mind a special that would disable and enable the Help Menu itself. It just seems cumbersome and annoying.

Thanks again for your help JPAN, and great work!
Reply With Quote
  #140    
Old January 9th, 2010, 10:21 PM
colcolstyles's Avatar
colcolstyles
Yours truly
 
Join Date: May 2008
Location: The Bay Area
Gender: Male
Nature: Lonely
Quote:
Originally Posted by Deokishisu View Post
Oh, and I have a quick suggestion for the next release. I'm not actually sure if this is possible now, because I haven't fiddled around with it, but how about the ability to disable key presses? During timed minigames and such, having the player able to use the start menu wouldn't be the greatest thing ever. And perhaps disabling some things on the start menu itself. Sometimes we wouldn't want the player to save, (such as that "Erase Party Pokemon Special" that would wipe the Pokemon out of memory between saves), use the bag, or look at their Trainer Card. I also wouldn't mind a special that would disable and enable the Help Menu itself. It just seems cumbersome and annoying.
I second this. Though I don't think I, personally, would have much use for disabling the entire menu, it might be nice to be able to disable certain functions like the Bag. Actually, I think the Bag is disabled in one of the Battle Frontier zones in Emerald so maybe we could take a look at some of those specials and try to port them to Fire Red.

Also, when you mention the "help menu" do you mean the menu that pops up when the player presses 'L' or 'R'? Because the player can choose to disable that menu in the Options tab from the Start Menu so if we could locate where the Options (text speed, text box type, etc.) are stored in the RAM, we could probably override the player's settings temporarily to disable the Help Menu.
__________________

Brother of Vrai
Reply With Quote
  #141    
Old January 9th, 2010, 10:42 PM
Darthatron's Avatar
Darthatron
巨大なトロール。
Community Supporter Tier 2
 
Join Date: Jan 2006
Location: Melbourne, Australia
Age: 22
Gender: Male
Nature: Modest
Quote:
Originally Posted by colcolstyles View Post
I second this. Though I don't think I, personally, would have much use for disabling the entire menu, it might be nice to be able to disable certain functions like the Bag. Actually, I think the Bag is disabled in one of the Battle Frontier zones in Emerald so maybe we could take a look at some of those specials and try to port them to Fire Red.

Also, when you mention the "help menu" do you mean the menu that pops up when the player presses 'L' or 'R'? Because the player can choose to disable that menu in the Options tab from the Start Menu so if we could locate where the Options (text speed, text box type, etc.) are stored in the RAM, we could probably override the player's settings temporarily to disable the Help Menu.
The pointer at 0x0300500C points to some data that may be of help.

Code:
[Name (8 bytes)]
[Gender (1 byte)]
[??? (1 byte)]
[Trainer ID (2 bytes)]
[Secret ID (2 bytes)]
[Hours of play (2 bytes)]
[Minutes (1 byte)]
[Seconds (1 byte)]
[Milliseconds (1 byte)]
[Options (3 bytes)]
Credits to HackMew for a base of this data. Link.

The 14th byte (or first byte in the "Options" part mentioned above) there changes when you change the "Button" option

Code:
00 > Help
01 > LR
02 > L=A
I didn't do much research on it, so that's all I have.
__________________
あなた は しきしゃ です
わたし は ばか です
Reply With Quote
  #142    
Old January 10th, 2010, 09:15 AM
Deokishisu's Avatar
Deokishisu
Mr. Magius
 
Join Date: Feb 2006
Location: If I'm online, it's a safe bet I'm at a computer.
Gender: Male
Nature: Relaxed
Quote:
Originally Posted by colcolstyles View Post
Also, when you mention the "help menu" do you mean the menu that pops up when the player presses 'L' or 'R'? Because the player can choose to disable that menu in the Options tab from the Start Menu
Yes, I do mean that help menu and I am aware that it can be disabled by the player. I just think that it'd be a lot easier if I could just disable it completely, no fuss and no worrying that I might accidentally trap a player by requiring a button press that could lead them to the never-ending help menu pop ups of doom.

EDIT: One more quick suggestion. Maybe a toggle Running Shoes special so the player doesn't have to hold down B like in HGSS? That'd be pretty convenient in my opinion.

EDIT2: Now that I'm thinking about it, if the disable/enable Help Function was implemented, could I just put the disable help special before the LR checker in the walking script and re-enable it if L+R aren't pressed and at the end of the walking script itself? That way, no matter what the player has it set to, they can use the Help function and still utilize the secondary menu.

Last edited by Deokishisu; January 10th, 2010 at 11:11 AM.
Reply With Quote
  #143    
Old January 11th, 2010, 12:33 PM
iTeruri's Avatar
iTeruri
iAm
 
Join Date: May 2006
Location: The Nederlands
Nature: Relaxed
I was wondering if you could ass something like 0x800C but something that DOES work in scripts and walking scripts. Could be a special or a plain old var like 0x800C.

This would be great as 0x800C doesn't working with scripts and walkings scripts and it would be very nice if it did.
Reply With Quote
  #144    
Old January 11th, 2010, 01:18 PM
Deokishisu's Avatar
Deokishisu
Mr. Magius
 
Join Date: Feb 2006
Location: If I'm online, it's a safe bet I'm at a computer.
Gender: Male
Nature: Relaxed
Hey JPAN, I ran into more trouble with the walking scripts. I compiled my script into the ROM, and decided to test it by assigning it to a regular signpost event before going through and putting the pointer. Unfortunately, when I activate the script, whether pressing the right button combination or not, it freezes. I was wondering if you could take a look at my script to see if I used one of your commands wrong. If you can't see anything wrong with it, then it's just a general scripting problem I'll have to figure out :P

I warn you, it's pretty long. But I really think the problem might lie early on, because nothing's happening at all. The blank release and end things for the "Use [HM]" offsets are just because I haven't figured how to do them yet. Just ignore it for now please. The radio's all the same because I haven't gotten around to expanding the song table and adding my own songs.

Spoiler:
#dynamic 0x7360CC
#org @start
call @realstart
end

#org @realstart
checkflag 0x106
if 0x0 goto @endit
special2 0x8006 0x2e
compare 0x8006 0x3
if 0x1 goto @menu
special 0x8f
special2 0x800d 0x7f
compare 0x800d 0x1
if 0x1 goto @grass
compare 0x800d 0x2
if 0x1 goto @water
release
end

#org @grass
special 0x97
release
end

#org @water
special 0x98
release
end

#org @endit
release
end

#org @menu
lock
checkflag 0x107
if 0x1 call @GammaMenu
checkflag 0x108
if 0x1 call @DeltaMenu
checkflag 0x109
if 0x1 call @OmegaMenu
setvar 0x8006 0x0
loadpointer 0x0 @ALPHAC
special 0x25
checkitem 0x35 0x1
if 0x1 call @Phero
checkitem 0x16A 0x1
if 0x1 call @Seeker
multichoice 0x0 0x0 0x20 0x1
if 0x0 call @choseALPHA
if 0x1 call @chosePhero
if 0x2 call @choseSeeker
release
end

#org @chosePhero
release
end

#org @choseSeeker
release
end

#org @GammaMenu
setvar 0x8006 0x0
loadpointer 0x0 @GAMMAC
special 0x25
checkitem 0x35 0x1
if 0x1 call @Phero
checkitem 0x16A 0x1
if 0x1 call @Seeker
multichoice 0x0 0x0 0x20 0x1
if 0x0 call @choseGAMMA
if 0x1 call @chosePhero
if 0x2 call @choseSeeker
release
end

#org @DeltaMenu
setvar 0x8006 0x0
loadpointer 0x0 @DELTAC
special 0x25
checkitem 0x35 0x1
if 0x1 call @Phero
checkitem 0x16A 0x1
if 0x1 call @Seeker
multichoice 0x0 0x0 0x20 0x1
if 0x0 call @choseDELTA
if 0x1 call @chosePhero
if 0x2 call @choseSeeker
release
end

#org @OmegaMenu
setvar 0x8006 0x0
loadpointer 0x0 @OMEGAC
special 0x25
checkitem 0x35 0x1
if 0x1 call @Phero
checkitem 0x16A 0x1
if 0x1 call @Seeker
multichoice 0x0 0x0 0x20 0x1
if 0x0 call @choseOMEGA
if 0x1 call @chosePhero
if 0x2 call @choseSeeker
release
end

#org @Phero
setvar 0x8006 0x2
loadpointer 0x0 @PheromonesText
special 0x25
return

#org @Seeker
setvar 0x8006 0x1
loadpointer 0x0 @VSSeekerText
special 0x25
return

#org @choseALPHA
msgbox @ALPHAsbanter MSG_NORMAL
setvar 0x8006 0x0
loadpointer 0x0 @MapChoice
special 0x25
checkitem 0x36 0x1
if 0x1 call @haveradio
multichoice 0x0 0x0 0x20 0x1
if 0x0 call @chosemap
if 0x1 call @choseradio
release
end

#org @haveradio
setvar 0x8006 0x1
loadpointer 0x0 @Radiochoice
special 0x25
return

#org @chosemap
special 0xFB
release
end

#org @choseradio
setvar 0x8006 0x0
loadpointer 0x0 @radiochoice1
special 0x25
setvar 0x8006 0x1
loadpointer 0x0 @radiochoice2
special 0x25
setvar 0x8006 0x2
loadpointer 0x0 @radiochoice3
special 0x25
setvar 0x8006 0x3
loadpointer 0x0 @radiochoice4
special 0x25
setvar 0x8006 0x4
loadpointer 0x0 @radiochoice5
special 0x25
multichoice 0x0 0x0 0x20 0x1
if 0x0 call @choseradio1
if 0x1 call @choseradio2
if 0x2 call @choseradio3
if 0x3 call @choseradio4
if 0x4 call @choseradio5
release
end

#org @choseradio1
playsong 0x157 0x0
release
end

#org @choseradio2
playsong 0x157 0x0
release
end

#org @choseradio3
playsong 0x157 0x0
release
end

#org @choseradio4
playsong 0x157 0x0
release
end

#org @choseradio5
playsong 0x157 0x0
release
end

#org @choseGAMMA
msgbox @GAMMAsbanter MSG_NORMAL
setvar 0x8006 0x0
loadpointer 0x0 @MapChoice
special 0x25
checkitem 0x36 0x1
if 0x1 call @haveradio
checkflag 0x820
if 0x1 call @havebadge
multichoice 0x0 0x0 0x20 0x1
if 0x0 call @chosemap
if 0x1 call @choseradio
if 0x2 call @choseHM
release
end

#org @havebadge
setvar 0x8006 0x2
loadpointer 0x0 @HMchoice
special 0x25
return

#org @choseHM
setvar 0x8006 0x0
loadpointer 0x0 @Flash
special 0x25
checkflag 0x821
if 0x1 call @cancut
checkflag 0x825
if 0x1 call @canrocksmash
multichoice 0x0 0x0 0x20 0x1
if 0x0 call @useflash
if 0x1 call @usecut
if 0x2 call @userocksmash
release
end

#org @cancut
setvar 0x8006 0x1
loadpointer 0x0 @Cut
special 0x25
return

#org @canrocksmash
setvar 0x8006 0x2
loadpointer 0x0 @RockSmash
special 0x25
return

#org @useflash
release
end

#org @usecut
release
end

#org @userocksmash
release
end

#org @choseDELTA
msgbox @DELTAsbanter MSG_NORMAL
setvar 0x8006 0x0
loadpointer 0x0 @MapChoice
special 0x25
checkitem 0x36 0x1
if 0x1 call @haveradio
checkflag 0x820
if 0x1 call @havebadge
multichoice 0x0 0x0 0x20 0x1
if 0x0 call @chosemap
if 0x1 call @choseradio
if 0x2 call @choseHM
release
end

#org @choseOMEGA
msgbox @OMEGAsbanter MSG_NORMAL
setvar 0x8006 0x0
loadpointer 0x0 @MapChoice
special 0x25
checkitem 0x36 0x1
if 0x1 call @haveradio
checkflag 0x820
if 0x1 call @havebadge
multichoice 0x0 0x0 0x20 0x1
if 0x0 call @chosemap
if 0x1 call @choseradio
if 0x2 call @choseHM
release
end

#org @ALPHAC
= ALPHA

#org @GAMMAC
= GAMMA

#org @DELTAC
= DELTA

#org @OMEGAC
= OMEGA

#org @PheromonesText
= PokéPheromones

#org @VSSeekerText
= VS. Seeker

#org @ALPHAsbanter
= Ugh, yes?

#org @MapChoice
= Map

#org @RadioChoice
= Radio

#org @radiochoice1
= PLACEHOLDERPLACE Station

#org @radiochoice2
= PLACEHOLDERPLACE Station

#org @radiochoice3
= PLACEHOLDERPLACE Station

#org @radiochoice4
= PLACEHOLDERPLACE Station

#org @radiochoice5
= PLACEHOLDERPLACE Station

#org @GAMMAsbanter
= Something you need?

#org @HMChoice
= HMs

#org @Flash
= Flash

#org @Cut
= Cut

#org @RockSmash
= Rock Smash

#org @DELTAsbanter
= How can I help?

#org @OMEGAsbanter
= Can I assist you?
Reply With Quote
  #145    
Old January 11th, 2010, 02:08 PM
JPAN
pokemon rom researcher
 
Join Date: Dec 2008
[QUOTE=Deokishisu;5467551]Hey JPAN, I ran into more trouble with the walking scripts. I compiled my script into the ROM, and decided to test it by assigning it to a regular signpost event before going through and putting the pointer. Unfortunately, when I activate the script, whether pressing the right button combination or not, it freezes.[\QUOTE]
Just by looking at the start of the script, I saw a small problem. You use call, but all paths lead to end, and not return. That call is not necessary, as the script can be used as any other script. Simply place @RealStart address on the table. Also, the reason it seems to be crashing is because when you activate the script, some paths lead to 2-worded multichoices boxes with only one choice loaded. An example is the "Alpha" loading part.
Code:
loadpointer 0x0 @ALPHAC
special 0x25
checkitem 0x35 0x1
if 0x1 call @Phero
checkitem 0x16A 0x1
if 0x1 call @Seeker
multichoice 0x0 0x0 0x20 0x1
Probably more, but check them out.
PS: I have looked over your suggestions, and next release will include a way to have one single script load every time a key combination is loaded. Works fine on test-runs, and is several times more realistic to call a menu from there.
__________________
Here are the links for my work


Currently working on:
Battle Script Documentation
Another large project
Reply With Quote
  #146    
Old January 11th, 2010, 03:04 PM
Deokishisu's Avatar
Deokishisu
Mr. Magius
 
Join Date: Feb 2006
Location: If I'm online, it's a safe bet I'm at a computer.
Gender: Male
Nature: Relaxed
Quote:
Originally Posted by JPAN View Post
Just by looking at the start of the script, I saw a small problem. You use call, but all paths lead to end, and not return. That call is not necessary, as the script can be used as any other script. Simply place @RealStart address on the table. Also, the reason it seems to be crashing is because when you activate the script, some paths lead to 2-worded multichoices boxes with only one choice loaded. An example is the "Alpha" loading part.
Code:
loadpointer 0x0 @ALPHAC
special 0x25
checkitem 0x35 0x1
if 0x1 call @Phero
checkitem 0x16A 0x1
if 0x1 call @Seeker
multichoice 0x0 0x0 0x20 0x1
Probably more, but check them out.
PS: I have looked over your suggestions, and next release will include a way to have one single script load every time a key combination is loaded. Works fine on test-runs, and is several times more realistic to call a menu from there.
Alrighty, I see the whole call thing, thanks for pointing it out for me!

So, since my menu changes are depending on what flags are set and items in the player's inventory, I have to do a separate script for each possible combination to avoid the "2-worded multichoices boxes with only one choice loaded" problem? I had assumed that if the script happened to go down a path (due to flags set and items in inventory) which had less than the "maximum" I would let possible, then the multichoice command would just load an appropriate box based on whatever pointers were loaded (based on whatever flags were set and items in the inventory). Apparently I was wrong in assuming that if I'm understanding you correctly. ^^

Thanks again, I'm going to retry the script with your alterations and suggestions. It'll take me a while to get all the possible combinations going, so I think I might wait till it's absolutely needed to begin rescripting that time-consuming part.

P.S. Ooo, that feature for the next release sounds promising. Thanks for considering my suggestions, and keep up the amazing work!
Reply With Quote
  #147    
Old January 14th, 2010, 03:46 AM
Hoshiko Aki's Avatar
Hoshiko Aki
Avatar rules
 
Join Date: Oct 2008
Hello,

I have a question, I'm using this a wile now. Today I wanted to make a swarm but I don't get it how to make it :( Me have read the manual and still i don't get it.

Can some own explain this to me?

Greetings Hoshiko Aki.


BTW sorry for my bad English
Reply With Quote
  #148    
Old January 18th, 2010, 09:12 AM
mindfreak's Avatar
mindfreak
Belgium Rom hacker
 
Join Date: Dec 2007
Hey JPAN,(or someone else.)
Could you explain (once again but more detailed) how you make the new overworld tabels work?
I tried by reading the the info in the source code but I always got confused how many bytes I got to paste where.
__________________
Reply With Quote
  #149    
Old January 18th, 2010, 06:14 PM
Deokishisu's Avatar
Deokishisu
Mr. Magius
 
Join Date: Feb 2006
Location: If I'm online, it's a safe bet I'm at a computer.
Gender: Male
Nature: Relaxed
Quote:
Originally Posted by Hoshiko Aki View Post
Hello,

I have a question, I'm using this a wile now. Today I wanted to make a swarm but I don't get it how to make it :( Me have read the manual and still i don't get it.

Can some own explain this to me?

Greetings Hoshiko Aki.


BTW sorry for my bad English
To make a regular swarm event (not using pre-defined Pokemon), you would add this to whatever script activates it:

Code:
special 0x56
setvar 0x8004 0x(Pokemon Number in Hex)
setvar 0x8005 0x(Chances of appearance: 0x7fff is a 50% chance, 0xffff is always)
setvar 0x8006 0x(Quantity, how many appearances until it turns off: 0x0 is infinite appearances)
setvar 0x8007 0x(Location: 0x0 is all locations (grass, water, fishing, rock smash))
However, it will work for as long as it's on. That is, if you activate your swarm on the first route and don't deactivate it when you leave, that same swarm will occur for every other area you can encounter wild Pokemon in. So to cancel the swarm, add this to the deactivate script:
Code:
special 0x57
I haven't actually used the swarm event since I played around with the engine when it first came out, but I'm almost certain that's it.
Reply With Quote
  #150    
Old January 18th, 2010, 06:21 PM
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
>< I love you,JPAN~~Finally,the trainer flag hack comes true!
Ya,the tool is...a little strange...
While I use it,some labels and buttons are obscured...And the window can maximize- -||


edit:

The button of Trainer Flag Script don't work at all...
If a hack requires var number or something,you can't cancel it.
__________________
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; January 18th, 2010 at 07:06 PM. Reason: Bugs
Reply With Quote
Reply
Quick Reply

Sponsored Links


Advertise here
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 10:49 AM.


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.