The PokéCommunity Forums  

Go Back   The PokéCommunity Forums > ROM Hacking > Tools, Tutorials & Resources
Sign Up Rules/FAQ Live Battle Blogs Mark Forums Read

Notices

Tools, Tutorials & Resources Various tools to help you develop your hacks can be found here.
New threads in this forum are to be approved by a moderator before they are displayed.


Reply
 
Thread Tools
  #1    
Old January 27th, 2009, 12:30 AM
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
Hello all, and thanks for even opening this! ^-^

Anyways... I am not about to make this all flashy and pretty, because it isn't, these scripting techniques should not be tried unless you are sure you know what you are doing!
This is for Advanced - Expert Scripters, fluent in PokeCode. (XSE is preferable, since that is what I will be using.)
Also, in each special script I show you, I will use 'OFFSET-A', or 'OFFSET-B' as placeholders for whatever you want.

Okies...
here is the first thing I will be including in this document...
The quite sought after...
Explaining the Daycare Script

Ok, First off, lets post the WHOLE code, then I'll break it down, and explain each line individually.

Code:
#dynamic 0x800000

#org @start
lock
faceplayer
special 0x187
special2 LASTRESULT 0x178
compare LASTRESULT 0x1
if 0x1 goto @OFFSET-A
msgbox @OFFSET-B 0x5
compare LASTRESULT 0x0
if 0x1 goto @OFFSET-C
special2 LASTRESULT 0x84
compare LASTRESULT 0x1
if 0x1 goto @OFFSET-D
fadescreen 0x1
special 0xBC
waitstate
compare 0x8004 0x6
if 0x4 goto @OFFSET-E
special2 LASTRESULT 0x85
compare LASTRESULT 0x0
if 0x1 goto @OFFSET-H
special2 0x8005 0xBA
special 0x176
cmdc3 0x2F
release
end
Now, I know this is really scary, so big and burly, nasty and such, but it can all be explained, and that is what I will do...

Code:
#dynamic 0x800000

lock
faceplayer
-------------------------------
You know what these do...
Code:
special 0x187
-------------------
I am still doing research on this particular special command... but I suggest leaving it at the top, or the script wont go as planned...
Code:
special2 LASTRESULT 0x178
compare LASTRESULT 0x1
if 0x1 goto @OFFSET-A
-------------------------------
special2 LASTRESULT 0x178, assigns LASTRESULT with either 1, or 0, like a binary switch.
It set it to 1 if there ARE pokemon already stored using this script, 0 is set, if there are no pokemon previously stored.
compare LASTRESULT 0x1, checks if LASTRESULT is set to 1, for Pokemon already stored.
if 0x1 goto @OFFSET-A, means, if LASTRESULT is set to 1, go to the specified offset, usually used in order to either return the pokemon, or tell the player that they already have a pokemon deposited.
Code:
msgbox @OFFSET-B 0x5
compare LASTRESULT 0x0
if 0x1 goto @OFFSET-C
-----------------------
An experienced scripter such as yourself would know this bit of code.
I use this to ask the player if they WANT to deposit a pokemon.
If they say no, it goes to OFFSET-C.  This Portion of code is Optional, and may be removed if you are stealing a pokemon for an event of sorts.
Code:
special2 LASTRESULT 0x84
compare LASTRESULT 0x1
if 0x1 goto @snippet9
-------------------------
special2 LASTRESULT 0x84, sets LASTRESULT to be either 0 or 1, but this time, 1 means that you only have one pokemon in your party, and 0 means you have more than one.
This is useful, so the player doesn't accidentally give away his.her last pokemon!
You should know what the Compare and the IF commands do by now...
Code:
fadescreen 0x1
special 0xBC
waitstate
compare 0x8004 0x6
if 0x4 goto @OFFSET-E
----------------------------
A bigger chunk, but explainable.
You know what fadescreen does.
special 0xBC, brings up the pokemon selection screen, this is needed unfourtunatley... and I have yet to find away around needing this... if you were planning on having a pokemon stolen from the player at all in the game... so sorry...
waitstate, just waits for the Pokemon selection to be made, and waits for the screen to be faded back in.
compare 0x8004 0x6, checks if you pressed the B button, or pressed the cancel button in the pokemon menu.
if 0x4 goto @OFFSET-E, just says if you did press B, or cancel, then go to the offset. useful for canceling the script, and not causing an error by taking an undefined pokemon.
Code:
special2 LASTRESULT 0x85
compare LASTRESULT 0x0
if 0x1 goto @OFFSET-H
-----------------------------
special2 LASTRESULT 0x85, sets LASTRESULT, again, to be either 0, or 1.  This time, if LASTRESULT is 0, that means that if you were to give away the pokemon selected, your last pokemon would be an egg.  And if LASTRESULT is 1, that means that if you gave the selected pokemon away, that you will still have pokemon to defend yourself with.
This is VERY useful, in order to prevent the player from playing with nothing but an egg, which could lead to errors.
OFFSET-H is the offset to lead AWAY from this script if all that would be left is an egg.
Code:
special2 0x8005 0xBA
---------------------------
This sets 0x8005 to the value stored in 0xBA, 0xBA is the Pokemon Species # of the pokemon selected, this is optional, but recomended, it is also useful for making the pokemon cry happen, like when selecting a pokemon from Professor Oak.
Code:
special 0x176
cmdc3 0x2F
----------------
I am still doing research on these two commands, but I believe that when they are put in this order, and used together like this, they remove the selected pokemon from the party!
DO NOT change them, remove them, or do anything to them, or the script will not work!
Code:
release
end
-----------
If you need an explanation about this, you should not be reading this, you are not ready.
As you can see, I have explained how to take pokemon from the player, in (somewhat decent) detail.
If you have any questions, you know how to post here!

Don't ask about how to return taken pokemon to the player, I am still working out the kinks to that!
__________________
>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...

>

Last edited by Spherical Ice; April 15th, 2010 at 07:44 AM.
Reply With Quote
  #2    
Old January 27th, 2009, 12:43 PM
Cy-Chan's Avatar
Cy-Chan
GSC Hacker
 
Join Date: Jan 2005
Location: UK, England.
Age: 23
Gender:
Nature: Timid
Send a message via Windows Live Messenger to Cy-Chan
Nice tutorial. A long-ass method of returning the Pokémon would be to save the Pokémon's statistics into RAM (copybyte) at the end of this script, and then to copyvar them back in a different script.
__________________
Cy-Chan's Guide to Pointers for Newbies!
Cy-Chan's Guide to Move Hacking for Newbies!
Cy-Chan's Fire Red Sound-type Patch (for Newbies?)
Cy-Chan's God-Awful Pixel Art
Reply With Quote
  #3    
Old January 27th, 2009, 12:48 PM
Surf's Avatar
Surf
...
 
Join Date: Jul 2008
Location: Rust
Age: 19
Gender: Male
Nature: Relaxed
Send a message via Windows Live Messenger to Surf
Yes you posted it!
You are seriously a scripting god Omega
I needed the take pokemon for globel earth
Tanks
__________________
I'm looking for some good (When I say good,
I mean you can hold your own by yourself)
N**i Zombies players, to form a team or even a
clan, to play with casually.
Send me a PM with your Highest Level and your PSN,
and I'll get back to you.
Reply With Quote
  #4    
Old January 27th, 2009, 01: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 Cy-Chan View Post
Nice tutorial. A long-ass method of returning the Pokémon would be to save the Pokémon's statistics into RAM (copybyte) at the end of this script, and then to copyvar them back in a different script.
Actually, there is a command built into the game for returning the taken pokemon...

Hehe, I am just working out the kinks... and trying to find out how to copy a value loaded into [buffer1] into a variable...
If you can help me do that, then I'll post how to return pokemon, since that is needed to do so...
I've read your stuff, tutorials and such, but I like your style Cy-Chan, and you seem to know alot about the more advanced things about a Pokemon ROM... so I gotta ask, do you know how to copy [Buffer1] to a varialbe? (Like LASTRESULT or 0x8008?)
__________________
>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...

>

Last edited by 0m3GA ARS3NAL; January 27th, 2009 at 01:39 PM.
Reply With Quote
  #5    
Old January 27th, 2009, 02:16 PM
Ninja Caterpie's Avatar
Ninja Caterpie
Sitting by the back window
 
Join Date: Mar 2008
Location: Best City OCE
Age: 18
Gender: Male
Nature: Bold
Yeah, the only problem is, normally, returning Pokemon involves paying. To cancel that out, we just need to find out how much money is taken away and use givemoney to give that much. :\
__________________
Brony represent.
Reply With Quote
  #6    
Old January 27th, 2009, 08:06 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 Ninja Caterpie View Post
Yeah, the only problem is, normally, returning Pokemon involves paying. To cancel that out, we just need to find out how much money is taken away and use givemoney to give that much. :\
Exactly my problem... You guessed it exactly
__________________
>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
  #7    
Old January 27th, 2009, 09:52 PM
thethethethe
Gym Leader
 
Join Date: Jun 2007
Location: Melbourne, Australia
Gender: Male
Quote:
Originally Posted by Cy-Chan View Post
Nice tutorial. A long-ass method of returning the Pokémon would be to save the Pokémon's statistics into RAM (copybyte) at the end of this script, and then to copyvar them back in a different script.
Not necessarily. You could just go with a software interrupt or a DMA transfer, Although I've never really used the DMA transfers much.
But if you went that way, there isn't too much point in going with removing the Pokemon through ways of the in built scripting engine thing, you'd just go with this way.

Quote:
Originally Posted by 0m3GA ARS3NAL View Post
... so I gotta ask, do you know how to copy [Buffer1] to a varialbe? (Like LASTRESULT or 0x8008?)
A variable's length is only two bytes long. Buffer1, if I'm not mistaken is a string. Unless the length of buffer1 is only two characters long, a copy from a buffer to a variable isn't what you want.

Then again, I haven't done too much lately and I could be wrong.
__________________
Gone.
Reply With Quote
  #8    
Old January 27th, 2009, 10:18 PM
destinedjagold's Avatar
destinedjagold
Oh Hai Thar~ 'ω'
Community Supporter
 
Join Date: May 2007
Location: Philippines
Gender: Male
Nature: Careful
taking a pokemon, huh? it's really cool.
useful for my hack.

thanks for this.
__________________
3DS FC: 0061-1111-6462
SV: 1364 | Rock Safari: Dwebble, Corsola and Barbaracle
Reply With Quote
  #9    
Old January 27th, 2009, 11:48 PM
Cy-Chan's Avatar
Cy-Chan
GSC Hacker
 
Join Date: Jan 2005
Location: UK, England.
Age: 23
Gender:
Nature: Timid
Send a message via Windows Live Messenger to Cy-Chan
What thethethethe said pretty much sums it up, I'd think... I can't really expand on that.

Maybe if you tried checking where the Pokémon is stored in RAM, after being taken? In order to retrieve it, the data still has to be there, after all.
__________________
Cy-Chan's Guide to Pointers for Newbies!
Cy-Chan's Guide to Move Hacking for Newbies!
Cy-Chan's Fire Red Sound-type Patch (for Newbies?)
Cy-Chan's God-Awful Pixel Art
Reply With Quote
  #10    
Old January 28th, 2009, 12:03 AM
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 Cy-Chan View Post
What thethethethe said pretty much sums it up, I'd think... I can't really expand on that.

Maybe if you tried checking where the Pokémon is stored in RAM, after being taken? In order to retrieve it, the data still has to be there, after all.
Hey now... I might be good, but I am not THAT good, I dont know how to do that...
__________________
>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
  #11    
Old January 28th, 2009, 05:45 AM
Cy-Chan's Avatar
Cy-Chan
GSC Hacker
 
Join Date: Jan 2005
Location: UK, England.
Age: 23
Gender:
Nature: Timid
Send a message via Windows Live Messenger to Cy-Chan
Quote:
Originally Posted by 0m3GA ARS3NAL View Post
Hey now... I might be good, but I am not THAT good, I dont know how to do that...
VBA's memory viewer. 0x02024284 contains your team's stats. Make a copy of this script, and see where the lost Pokémon's data is moved to.

If it's not moved (the data simply disappears), then the game has no way of remembering the Pokémon deposited, and no return Pokémon script can be made from this script. If it is moved, well... good!
__________________
Cy-Chan's Guide to Pointers for Newbies!
Cy-Chan's Guide to Move Hacking for Newbies!
Cy-Chan's Fire Red Sound-type Patch (for Newbies?)
Cy-Chan's God-Awful Pixel Art
Reply With Quote
  #12    
Old January 28th, 2009, 12:50 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 Cy-Chan View Post
VBA's memory viewer. 0x02024284 contains your team's stats. Make a copy of this script, and see where the lost Pokémon's data is moved to.

If it's not moved (the data simply disappears), then the game has no way of remembering the Pokémon deposited, and no return Pokémon script can be made from this script. If it is moved, well... good!
So... I know about the Memory Viewer, and that particular offset... But I dont understand how I'll be able to move the "Moved" Pokemon back to the party. Wouldn't that require ASM? Or... Does the command movebyte hold some significance in this situation?
__________________
>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
  #13    
Old January 28th, 2009, 02:41 PM
Cy-Chan's Avatar
Cy-Chan
GSC Hacker
 
Join Date: Jan 2005
Location: UK, England.
Age: 23
Gender:
Nature: Timid
Send a message via Windows Live Messenger to Cy-Chan
Ah! Well, I'm not sure, really. I was just saying, the Pokémon needs to be stored in RAM after it's taken away, otherwise it can't be returned, right?
__________________
Cy-Chan's Guide to Pointers for Newbies!
Cy-Chan's Guide to Move Hacking for Newbies!
Cy-Chan's Fire Red Sound-type Patch (for Newbies?)
Cy-Chan's God-Awful Pixel Art
Reply With Quote
  #14    
Old January 28th, 2009, 08:13 PM
Gamer2020's Avatar
Gamer2020
This love is a sickness...
 
Join Date: Jun 2008
Location: Violet city!
Gender: Male
Nature: Bold
Send a message via AIM to Gamer2020 Send a message via Windows Live Messenger to Gamer2020 Send a message via Yahoo to Gamer2020 Send a message via Skype™ to Gamer2020
I thought of something that may or may not help. Don't ridicule me cause im only an ok scripter.

But maybe you can figure out a give pokemon script if you look at the daycare script. They always give back the pokemon and stuff. idk. it's just an idea.
__________________
I find it amusing how people my steal ideas and then claim to be the first one to do something.

A present to people learning to make ROM hacking tools. - https://dl.dropboxusercontent.com/u/..._Functions.zip

If you want a successor to PGE then download this: http://www.pokecommunity.com/showthread.php?t=311461

This site likes to keep things quiet and buries things. Over the years I have seen many injustices on this website to members of the ROM hacking community. Some where even very important people in the community that are now gone. If you want a website where you will be treated fairly and you can voice your opinion while learning more about ROM hacking then please join the following website.
http://pokemonhackersonline.com/
Reply With Quote
  #15    
Old January 28th, 2009, 09:42 PM
Ninja Caterpie's Avatar
Ninja Caterpie
Sitting by the back window
 
Join Date: Mar 2008
Location: Best City OCE
Age: 18
Gender: Male
Nature: Bold
Quote:
Originally Posted by Gamer2020 View Post
I thought of something that may or may not help. Don't ridicule me cause im only an ok scripter.

But maybe you can figure out a give pokemon script if you look at the daycare script. They always give back the pokemon and stuff. idk. it's just an idea.
That's exactly what he's doing. It's why he needs to give money to the player, so no money's lost. :D
__________________
Brony represent.
Reply With Quote
  #16    
Old January 28th, 2009, 09:56 PM
Gamer2020's Avatar
Gamer2020
This love is a sickness...
 
Join Date: Jun 2008
Location: Violet city!
Gender: Male
Nature: Bold
Send a message via AIM to Gamer2020 Send a message via Windows Live Messenger to Gamer2020 Send a message via Yahoo to Gamer2020 Send a message via Skype™ to Gamer2020
Quote:
Originally Posted by Ninja Caterpie View Post
That's exactly what he's doing. It's why he needs to give money to the player, so no money's lost. :D
Oh ok. (stupid me) It's still a useful script even without the give pokemon. For example you can somethingin the begining of a hack where you have a team but they get stolen or something.

EDIT* would this script work with ruby?
__________________
I find it amusing how people my steal ideas and then claim to be the first one to do something.

A present to people learning to make ROM hacking tools. - https://dl.dropboxusercontent.com/u/..._Functions.zip

If you want a successor to PGE then download this: http://www.pokecommunity.com/showthread.php?t=311461

This site likes to keep things quiet and buries things. Over the years I have seen many injustices on this website to members of the ROM hacking community. Some where even very important people in the community that are now gone. If you want a website where you will be treated fairly and you can voice your opinion while learning more about ROM hacking then please join the following website.
http://pokemonhackersonline.com/
Reply With Quote
  #17    
Old January 28th, 2009, 11:15 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 Gamer2020 View Post
Oh ok. (stupid me) It's still a useful script even without the give pokemon. For example you can somethingin the begining of a hack where you have a team but they get stolen or something.

EDIT* would this script work with ruby?
I doubt it... I am certain that the special commands are different in Pokemon Ruby version...
But it is not hard to figure out... Just look at the Daycare script from ruby and do some testing with that!

(Also, this script is not very practical for stealing pokemon... since you have to select the pokemon yourself... but I think it might work like a phony pokemon daycare, like Cassidy and Burt did on an episode of pokemon... *Butch yells- I TOLD YOU, MY NAME IS BUTCH!*
__________________
>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
  #18    
Old January 29th, 2009, 09:41 PM
Gamer2020's Avatar
Gamer2020
This love is a sickness...
 
Join Date: Jun 2008
Location: Violet city!
Gender: Male
Nature: Bold
Send a message via AIM to Gamer2020 Send a message via Windows Live Messenger to Gamer2020 Send a message via Yahoo to Gamer2020 Send a message via Skype™ to Gamer2020
Quote:
Originally Posted by 0m3GA ARS3NAL View Post
I doubt it... I am certain that the special commands are different in Pokemon Ruby version...
But it is not hard to figure out... Just look at the Daycare script from ruby and do some testing with that!

(Also, this script is not very practical for stealing pokemon... since you have to select the pokemon yourself... but I think it might work like a phony pokemon daycare, like Cassidy and Burt did on an episode of pokemon... *Butch yells- I TOLD YOU, MY NAME IS BUTCH!*
Oh yeah I didn't think of that. But there has to be a way to do it without you picking your pokemon. Like in Gold with the bug catching contest. You could only use one pokemon. and the guy held the others.
__________________
I find it amusing how people my steal ideas and then claim to be the first one to do something.

A present to people learning to make ROM hacking tools. - https://dl.dropboxusercontent.com/u/..._Functions.zip

If you want a successor to PGE then download this: http://www.pokecommunity.com/showthread.php?t=311461

This site likes to keep things quiet and buries things. Over the years I have seen many injustices on this website to members of the ROM hacking community. Some where even very important people in the community that are now gone. If you want a website where you will be treated fairly and you can voice your opinion while learning more about ROM hacking then please join the following website.
http://pokemonhackersonline.com/
Reply With Quote
  #19    
Old January 29th, 2009, 09:55 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 Gamer2020 View Post
Oh yeah I didn't think of that. But there has to be a way to do it without you picking your pokemon. Like in Gold with the bug catching contest. You could only use one pokemon. and the guy held the others.
You still had to select the pokemon you wanted to use though...
If I could figure out how to ASM hack... I would do it... does anyone know where I can find some semi-understandable ASM tutorials? (I have always wanted to learn ASM, but I could never find a tutorial that I could understand...)
__________________
>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
  #20    
Old January 30th, 2009, 06:03 AM
Giga Universe's Avatar
Giga Universe
Working on a tool.
 
Join Date: Aug 2007
Location: South Africa
Age: 19
Gender: Male
Nature: Calm
Send a message via ICQ to Giga Universe Send a message via AIM to Giga Universe Send a message via Yahoo to Giga Universe Send a message via Skype™ to Giga Universe
OMG. I have been trying to find this for ages, and here it is sticking out at me. This will really help me with my one script, so Thanks! All I need to do now is find out how to remove the select a Pokemon Special. Maybe it uses one of the special variables, such as 0x8002?
__________________
Reply With Quote
  #21    
Old January 30th, 2009, 09:10 AM
HackMew's Avatar
HackMew
Mewtwo Strikes Back
 
Join Date: Jun 2006
Sorry if I say that but... this is just the way the Pokémon Daycare works. It's not really like a "takepokemon" in the true meaning of the term. Basically a surrogate, if you ask me. "Who cares if it works?" you may say. Well, it doesn't really work because you wouldn't be able to use the daycare in your hacks. Keep in mind Daycare = eggs as well.

Now, what's my idea about takepokemon?
ASM hacking + scripting of course. First you need to make the usual checks to make sure the player has at least 2 Pokémon (the second one not being an egg, for example). Then you would set a variable, like 0x8000, in order to choose the Pokémon that should be taken away. Then you would check the value hold by the variable is in a proper range, that is it couldn't be 0x5 when you have just 2 Pokémon. If everything was fine you set another variable like 0x8001 to either 0x0 or 0x1. The reason of this will be explained in a minute. Then an ASM script would be called. The ASM script would first check if some Pokémon was taken away already. If so, unless variable 0x8001 is set to 0x1, the ASM script would end. Otherwhise it would get the Pokémon data and store it on a safe memory area (overwriting anything there in case a Pokémon was removed already and 0x8001 was set to 0x1). Then the Pokémon data would be erased and the rest of the data adjusted eventually. Finally a "takepokemon flag" would be set. That flag would be useful of course in case you want to get back the Pokémon with another ASM script later on or in case you want to check if a Pokémon was taken away so far. Pretty complex? Maybe. I wish I knew more ASM.
__________________
Reply With Quote
  #22    
Old January 30th, 2009, 03:13 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
True HackMew, this is not quite a 'tekepokemon' per say, but it is an acceptable placeholder...
For instance, you could infact add a daycare later in the game, if this event were to come first.
(In the hack I am working on, the player has the option of giving a little girl her first pokemon, and later in my hack, there is in fact a daycare, and it works out perfectly... I have tested it and everything.)
But I do think ASM would work much better, that is why I want to learn it, and that is why I said...
Quote:
Originally Posted by 0m3GA ARS3NAL
You still had to select the pokemon you wanted to use though...
If I could figure out how to ASM hack... I would do it... does anyone know where I can find some semi-understandable ASM tutorials? (I have always wanted to learn ASM, but I could never find a tutorial that I could understand...)
So if you can find one, please tell me... and I'll start working on it... or you people can just ask M_X about it when he is done with D&N, he might do it...
__________________
>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
  #23    
Old January 30th, 2009, 08:25 PM
Liquid Shadow's Avatar
Liquid Shadow
xD
 
Join Date: Mar 2008
Gender:
Quote:
Originally Posted by 0m3GA ARS3NAL View Post
So... I know about the Memory Viewer, and that particular offset... But I dont understand how I'll be able to move the "Moved" Pokemon back to the party. Wouldn't that require ASM? Or... Does the command movebyte hold some significance in this situation?
Hmm ok, I think this is possible using the loadbytefrompointer and writebytetooffset commands. This commands were explained in one of the recent RHNs. Check it out, they teach you how to use that command to change the players OW. I'm still learning how to use these commands properly, but I think it should work in theory if the Pokemon data is moved to some other place. I think it would require a lot of loadbytetooffset and writebytooffset commands though.
__________________

4 truths of life
1. You cannot touch all your teeth with your tongue.
2. All idiots, after reading the first truth, will try it.
3. And discover that the first truth is a lie.
4. You're smiling now because you're an idiot.
Reply With Quote
  #24    
Old January 30th, 2009, 08:50 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 NeoNemesis View Post
Hmm ok, I think this is possible using the loadbytefrompointer and writebytetooffset commands. This commands were explained in one of the recent RHNs. Check it out, they teach you how to use that command to change the players OW. I'm still learning how to use these commands properly, but I think it should work in theory if the Pokemon data is moved to some other place. I think it would require a lot of loadbytetooffset and writebytooffset commands though.
!!!!I have been trying to find those offsets! Can you please link me to that particular RHN?!!!!

(But yeah, I do believe that this method would work, I have renamed the first bit of information, to 'Explaining the Daycare Script'. But I do believe if I could find the location the pokemon were stored, I could pull this off... I can't find it though...)
__________________
>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
  #25    
Old January 30th, 2009, 09:15 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
I can try to attempt a routine a cheapo one first without any check for egg or party amount then improve from there. I don't promise anything though XD
__________________

Last edited by ZodiacDaGreat; January 30th, 2009 at 09:25 PM.
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 04:44 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.