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
  #226    
Old March 14th, 2010, 07:37 AM
mitchel1's Avatar
mitchel1
Rom-hacker/scripter
 
Join Date: Jan 2007
Location: Carbon box, near you!
Gender: Male
Nature: Naive

Advertise here
-Delete- Problem has been solved
__________________


Last edited by mitchel1; March 14th, 2010 at 11:10 AM.
Reply With Quote
  #227    
Old March 15th, 2010, 11:44 AM
iTeruri's Avatar
iTeruri
iAm
 
Join Date: May 2006
Location: The Nederlands
Nature: Relaxed
Hey, JPAN.

I still love your hacked engine, however I was wondering the following...
I need a normal wild battle, just like special 0x97 you made. However, I need the encounter rate to be separate from the map I use the special on. I was wondering if you could make it so you can set a var to the encounter rate you want (with special 0x97) and if you set that var to 0x0 it'll just use the encounter rate of the map you're on.

Alright, that's kinda vague, so I'll give an example...
If you use special 0x97 while on route 1, you have a 7% chance of fighting a pokémon.
However, with my idea, you can set a var (let's say 0x8004) to whatever amount you want, but the normal grass keeps it's 7% encounter rate. So I'll set var 0x8004 to 0x80 so the encounter rate becomes 50%. (I'm useing a-map's encounter ratio here)

Anyway, thanks in advance and keep up the great work.
Reply With Quote
  #228    
Old March 23rd, 2010, 09:28 AM
metapod23's Avatar
metapod23
Hardened Trainer
 
Join Date: Mar 2009
Gender: Male
Nature: Timid
I've written a tutorial on how to add new OWs with JPAN's hacked engine here:

http://www.pokecommunity.com/showthread.php?t=211535

Thanks to JPAN for his help in figuring out how to do it correctly.

Any comments would be appreciated.
__________________
Reply With Quote
  #229    
Old March 23rd, 2010, 05:26 PM
BlitŻ's Avatar
BlitŻ
guahh my dog is so cute
 
Join Date: Feb 2009
Location: Bay Area, Califronia.
Age: 19
Gender: Male
Nature: Jolly
Wow! I are amazed-zors just by the description. Just think of what you can do! All the Ow's you'll need, changing tile behaviors, <3. I do have a preliminary question before I start using this though, if I apply this to my hack, which is already pretty far on its way, can I still patch this to it and keep all my work, and still have all these great features?
Nvm, i are stupid to not look on the first page ;D
__________________

Last edited by BlitŻ; March 23rd, 2010 at 06:01 PM.
Reply With Quote
  #230    
Old March 23rd, 2010, 06:07 PM
Full Metal's Avatar
Full Metal
C(++) Developer.
Community Supporter
 
Join Date: Jan 2008
Location: In my mind.
Age: 19
Gender: Male
Nature: Timid
Send a message via Windows Live Messenger to Full Metal
O.o?? u just now found this place?
jpan--did you use XSE/PKSV in removing all the scripts, or did you use some other sort of method that i don't know of..?
hm...i guess making a tool to do that (remove all scripts found in a game) wouldn't be hard...load the map header, load the maps, scan for scripts, remove scripts and continue. Granted the program would take ages to run, and a good while to code i think. Just kinda curious...(cuz the removal of scripts is the main thing i like about the patch, as i've not used much of the other features yet...)
__________________

★ full metal.

I like to push it,
and push it,
until my luck is over.
Reply With Quote
  #231    
Old March 24th, 2010, 11:50 AM
NarutoActor's Avatar
NarutoActor
The rocks cry out to me
Community Supporter
 
Join Date: Jan 2009
Location: Brooklyn/Marlboro
Age: 20
Gender: Female
Nature: Bashful
Send a message via AIM to NarutoActor Send a message via Windows Live Messenger to NarutoActor
Open up the offset of the script in a hex editor, and change the bytes to FF's.
__________________
~There are those people who understand hex, F the rest
Reply With Quote
  #232    
Old March 24th, 2010, 01:44 PM
Full Metal's Avatar
Full Metal
C(++) Developer.
Community Supporter
 
Join Date: Jan 2008
Location: In my mind.
Age: 19
Gender: Male
Nature: Timid
Send a message via Windows Live Messenger to Full Metal
That sounds long and tedious...
--Thats why i asked him; you might be right, but there might be another way he did it...that is more effiicient
__________________

★ full metal.

I like to push it,
and push it,
until my luck is over.
Reply With Quote
  #233    
Old March 24th, 2010, 11:46 PM
iTeruri's Avatar
iTeruri
iAm
 
Join Date: May 2006
Location: The Nederlands
Nature: Relaxed
JPAN also made a patch that removes all scripts from the game and nothing else. You'll have to look for it, but it's out there.
Reply With Quote
  #234    
Old March 25th, 2010, 06:27 AM
Full Metal's Avatar
Full Metal
C(++) Developer.
Community Supporter
 
Join Date: Jan 2008
Location: In my mind.
Age: 19
Gender: Male
Nature: Timid
Send a message via Windows Live Messenger to Full Metal
yea, i know about that patch check my signature under "recommended patches"...
i was just curious about how he did it -.-??
__________________

★ full metal.

I like to push it,
and push it,
until my luck is over.
Reply With Quote
  #235    
Old March 29th, 2010, 02:30 PM
ShinyBill
Beginning Trainer
 
Join Date: Feb 2010
Gender: Male
Nature: Hardy
I saw some post about saying that var 0x800C (Where the player is facing) is usable anymore. Is that true? Because I want to make a script and it needs the use of that variable.
Reply With Quote
  #236    
Old March 29th, 2010, 03:26 PM
NarutoActor's Avatar
NarutoActor
The rocks cry out to me
Community Supporter
 
Join Date: Jan 2009
Location: Brooklyn/Marlboro
Age: 20
Gender: Female
Nature: Bashful
Send a message via AIM to NarutoActor Send a message via Windows Live Messenger to NarutoActor
I highly doubt that, but even if it is, just use a copy byte, and copy the facing into a different temporary var.
__________________
~There are those people who understand hex, F the rest
Reply With Quote
  #237    
Old March 29th, 2010, 05:05 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 ShinyBill View Post
I saw some post about saying that var 0x800C (Where the player is facing) is usable anymore. Is that true? Because I want to make a script and it needs the use of that variable.
I found that too. Just use this:

Code:
setvar 0x800C 0x0000
copybyte 0x020370D4 0x02036E58
compare 0x800C 0x01                  'Is the player facing down?
if 0x01 call @down
compare 0x800C 0x02                  'Is the player facing up?
if 0x01 call @up
compare 0x800C 0x03                  'Is the player facing left?
if 0x01 call @left
compare 0x800C 0x04                  'Is the player facing right?
if 0x01 call @right
It works the same.
__________________
あなた は しきしゃ です
わたし は ばか です
Reply With Quote
  #238    
Old March 30th, 2010, 12:22 AM
ShinyBill
Beginning Trainer
 
Join Date: Feb 2010
Gender: Male
Nature: Hardy
Thanks about that, now my script should work =D.

EDIT: Well my script didn't work.

I'm using PokéScript.

Code:
#org $start
lockall
special 0x8F
checkattack 0x1D
compare 0x800D 0x06
if 0x01 goto $dontknow
storepokemon2 0x00 0x800D
setanimation 0x00 0x800D
message $message1
$message1 1 = Do you want to use ROCK CLIMB\nto climb them?
boxset 5
compare 0x800D 0x00
if 0x01 goto $dontwant
doanimation 0x25
waitstate
setvar 0x800C 0x0
copybyte 0x020370D4 0x02036E58
compare 0x800C 0x1
if 0x01 goto $down
compare 0x800C 0x2
if 0x01 goto $up
compare 0x800C 0x3
if 0x01 goto $left
compare 0x800C 0x4
if 0x01 goto $right
end

#org $down
addvar 0x8005 0x1
special 0x7F
compare 0x8005 0x008D
if 0x01 goto $stepdown
compare 0x8005 0x008D
if 0x00 goto $endingstepdown
end

#org $up
subvar 0x8005 0x1
special 0x7F
compare 0x8005 0x008D
if 0x01 goto $stepup
compare 0x8005 0x008D
if 0x00 goto $endingstepup
end

#org $left
subvar 0x8004 0x1
special 0x7F
compare 0x8005 0x008D
if 0x01 goto $stepleft
compare 0x8005 0x008D
if 0x00 goto $endingstepleft
end

#org $right
addvar 0x8004 0x1
special 0x7F
compare 0x8005 0x008D
if 0x01 goto $stepright
compare 0x8005 0x008D
if 0x00 goto $endingstepright
end

#org $stepdown
applymovement $1down
goto $down

#org $stepup
applymovement $1up
goto $up

#org $stepleft
applymovement $1left
goto $left

#org $stepright
applymovement $1right
goto $right

#org $endingstepdown
applymovement $1down
$1down 1 ; #binary 0x10 0xFE
pausemove 0
releaseall
end

#org $endingstepup
applymovement $1up
$1up 1 ; #binary 0x11 0xFE
pausemove 0
releaseall
end

#org $endingstepleft
applymovement $1left
$1left 1 ; #binary 0x12 0xFE
pausemove 0
releaseall
end

#org $endingstepright
applymovement $1right
$1right 1 ; #binary 0x13 0xFE
pausemove 0
releaseall
end

#org $dontknow
message $message3
$message3 1 = A Pokémon could climb them.
boxset 6
releaseall
end

#org $dontwant
releaseall
end
These settings are temporary, like behavior byte, the attack and such.
The scripts stops right before he checks the player facing location.

Last edited by ShinyBill; March 30th, 2010 at 10:54 AM.
Reply With Quote
  #239    
Old April 1st, 2010, 03:35 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 have a suggestion for this engine.
Why not make a tile-attribute hack, much like the other one, but this time, with walk-into scripts?
__________________


My other resources:
My Website
diegoisawesome's MEGA-HUGE XSE Scripting Tutorial
diegoisawesome's Miscellaneous Finds
The Ruins of Alph Puzzles
Reply With Quote
  #240    
Old April 1st, 2010, 03: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
Huh.

Is it just me, or does this remove everything from Pallet Town, including the Fly Spot? I tried it on a clean ROM and it does the same thing...
__________________
Brony represent.
Reply With Quote
  #241    
Old April 1st, 2010, 03:48 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 ShinyBill View Post
Thanks about that, now my script should work =D.

EDIT: Well my script didn't work.

I'm using PokéScript.

Code:
#org $start
lockall
special 0x8F
checkattack 0x1D
compare 0x800D 0x06
if 0x01 goto $dontknow
storepokemon2 0x00 0x800D
setanimation 0x00 0x800D
message $message1
$message1 1 = Do you want to use ROCK CLIMB\nto climb them?
boxset 5
compare 0x800D 0x00
if 0x01 goto $dontwant
doanimation 0x25
waitstate
setvar 0x800C 0x0
copybyte 0x020370D4 0x02036E58
compare 0x800C 0x1
if 0x01 goto $down
compare 0x800C 0x2
if 0x01 goto $up
compare 0x800C 0x3
if 0x01 goto $left
compare 0x800C 0x4
if 0x01 goto $right
end

#org $down
addvar 0x8005 0x1
special 0x7F
compare 0x8005 0x008D
if 0x01 goto $stepdown
compare 0x8005 0x008D
if 0x00 goto $endingstepdown
end

#org $up
subvar 0x8005 0x1
special 0x7F
compare 0x8005 0x008D
if 0x01 goto $stepup
compare 0x8005 0x008D
if 0x00 goto $endingstepup
end

#org $left
subvar 0x8004 0x1
special 0x7F
compare 0x8005 0x008D
if 0x01 goto $stepleft
compare 0x8005 0x008D
if 0x00 goto $endingstepleft
end

#org $right
addvar 0x8004 0x1
special 0x7F
compare 0x8005 0x008D
if 0x01 goto $stepright
compare 0x8005 0x008D
if 0x00 goto $endingstepright
end

#org $stepdown
applymovement $1down
goto $down

#org $stepup
applymovement $1up
goto $up

#org $stepleft
applymovement $1left
goto $left

#org $stepright
applymovement $1right
goto $right

#org $endingstepdown
applymovement $1down
$1down 1 ; #binary 0x10 0xFE
pausemove 0
releaseall
end

#org $endingstepup
applymovement $1up
$1up 1 ; #binary 0x11 0xFE
pausemove 0
releaseall
end

#org $endingstepleft
applymovement $1left
$1left 1 ; #binary 0x12 0xFE
pausemove 0
releaseall
end

#org $endingstepright
applymovement $1right
$1right 1 ; #binary 0x13 0xFE
pausemove 0
releaseall
end

#org $dontknow
message $message3
$message3 1 = A Pokémon could climb them.
boxset 6
releaseall
end

#org $dontwant
releaseall
end
These settings are temporary, like behavior byte, the attack and such.
The scripts stops right before he checks the player facing location.
Try replacing this line...
Code:
copybyte 0x020370D4 0x02036E58
With these...
Code:
#raw 0x15
#raw 0xD4
#raw 0x70
#raw 0x03
#raw 0x02
#raw 0x58
#raw 0x6E
#raw 0x03
#raw 0x02
__________________
あなた は しきしゃ です
わたし は ばか です
Reply With Quote
  #242    
Old April 1st, 2010, 04:08 PM
Full Metal's Avatar
Full Metal
C(++) Developer.
Community Supporter
 
Join Date: Jan 2008
Location: In my mind.
Age: 19
Gender: Male
Nature: Timid
Send a message via Windows Live Messenger to Full Metal
Quote:
Originally Posted by ShinyBill View Post
Thanks about that, now my script should work =D.

EDIT: Well my script didn't work.

I'm using PokéScript.

Code:
#org $start
lockall
special 0x8F
checkattack 0x1D
compare 0x800D 0x06
if 0x01 goto $dontknow
storepokemon2 0x00 0x800D
setanimation 0x00 0x800D
message $message1
$message1 1 = Do you want to use ROCK CLIMB\nto climb them?
boxset 5
compare 0x800D 0x00
if 0x01 goto $dontwant
doanimation 0x25
waitstate
setvar 0x800C 0x0
copybyte 0x020370D4 0x02036E58
compare 0x800C 0x1
if 0x01 goto $down
compare 0x800C 0x2
if 0x01 goto $up
compare 0x800C 0x3
if 0x01 goto $left
compare 0x800C 0x4
if 0x01 goto $right
end

#org $down
addvar 0x8005 0x1
special 0x7F
compare 0x8005 0x008D
if 0x01 goto $stepdown
compare 0x8005 0x008D
if 0x00 goto $endingstepdown
end

#org $up
subvar 0x8005 0x1
special 0x7F
compare 0x8005 0x008D
if 0x01 goto $stepup
compare 0x8005 0x008D
if 0x00 goto $endingstepup
end

#org $left
subvar 0x8004 0x1
special 0x7F
compare 0x8005 0x008D
if 0x01 goto $stepleft
compare 0x8005 0x008D
if 0x00 goto $endingstepleft
end

#org $right
addvar 0x8004 0x1
special 0x7F
compare 0x8005 0x008D
if 0x01 goto $stepright
compare 0x8005 0x008D
if 0x00 goto $endingstepright
end

#org $stepdown
applymovement $1down
goto $down

#org $stepup
applymovement $1up
goto $up

#org $stepleft
applymovement $1left
goto $left

#org $stepright
applymovement $1right
goto $right

#org $endingstepdown
applymovement $1down
$1down 1 ; #binary 0x10 0xFE
pausemove 0
releaseall
end

#org $endingstepup
applymovement $1up
$1up 1 ; #binary 0x11 0xFE
pausemove 0
releaseall
end

#org $endingstepleft
applymovement $1left
$1left 1 ; #binary 0x12 0xFE
pausemove 0
releaseall
end

#org $endingstepright
applymovement $1right
$1right 1 ; #binary 0x13 0xFE
pausemove 0
releaseall
end

#org $dontknow
message $message3
$message3 1 = A Pokémon could climb them.
boxset 6
releaseall
end

#org $dontwant
releaseall
end
These settings are temporary, like behavior byte, the attack and such.
The scripts stops right before he checks the player facing location.
(sorry irish_witch)
DONT USE POKESCRIPT!
XSE, and PKSV are much better and updated, plus there is (that i know of) lots more support available.
__________________

★ full metal.

I like to push it,
and push it,
until my luck is over.
Reply With Quote
  #243    
Old April 1st, 2010, 04:49 PM
PeregrineFig's Avatar
PeregrineFig
Starting Pokémon Obsidian
 
Join Date: Feb 2010
Location: Michigan, USA
Age: 19
Gender: Male
Nature: Hardy
Quote:
Originally Posted by Ninja Caterpie View Post
Huh.

Is it just me, or does this remove everything from Pallet Town, including the Fly Spot? I tried it on a clean ROM and it does the same thing...
I patched this over my hack, which was using only scripts in the 700000s. It wiped clean almost everything from what was formerly Pallet Town. But for me it left the flight spot intact, just deleted all my people, step-tiles, signposts, warps, and level scripts. Oddly, though, it only did this to map 3.0.
__________________
Current Projects:
POKéMON AQUA SAPPHIRE
POKéMON OBSIDIAN

Reply With Quote
  #244    
Old April 1st, 2010, 08:59 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 PeregrineFig View Post
I patched this over my hack, which was using only scripts in the 700000s. It wiped clean almost everything from what was formerly Pallet Town. But for me it left the flight spot intact, just deleted all my people, step-tiles, signposts, warps, and level scripts. Oddly, though, it only did this to map 3.0.
For me, it only did it to map 3.0 as well. It wiped everything except for warps and fly-spots from every other map, and absolutely EVERYTHING from 3.0, including the fly spot.

And this is on a clean ROM.
__________________
Brony represent.
Reply With Quote
  #245    
Old April 2nd, 2010, 03:43 AM
ShinyBill
Beginning Trainer
 
Join Date: Feb 2010
Gender: Male
Nature: Hardy
Quote:
Originally Posted by Darthatron View Post
Try replacing this line...
Code:
copybyte 0x020370D4 0x02036E58
With these...
Code:
#raw 0x15
#raw 0xD4
#raw 0x70
#raw 0x03
#raw 0x02
#raw 0x58
#raw 0x6E
#raw 0x03
#raw 0x02
I'm gonna try that right now.

Quote:
Originally Posted by Full Metal View Post


(sorry irish_witch)
DONT USE POKESCRIPT!
XSE, and PKSV are much better and updated, plus there is (that i know of) lots more support available.
Don't think that way... sorry but since I use XSE database, thu commands and functions are the same. I just use XSE for decompiling scripts.
Reply With Quote
  #246    
Old April 30th, 2010, 08:44 AM
altariaking's Avatar
altariaking
Needs NO VMs...
 
Join Date: Dec 2009
Location: Scotland, Lesmahagow
Age: 39
Gender: Male
Nature: Naive
Send a message via Windows Live Messenger to altariaking
ok, i did everything you said for new pallettes, but all it did was change the hero's pallette, and only in vba.
how do i fix that?
__________________
http://www.pokecommunity.com/member.php?u=253113
Reply With Quote
  #247    
Old April 30th, 2010, 04:55 PM
Criisss's Avatar
Criisss
Beginning Trainer
 
Join Date: Sep 2009
Gender: Male
I'm trying to use the special 0x58, but not how to use the variable 0x8006 to load the pointer...

Someone can give me an example of how to use all special so I can understand?

I managed to use the special 0x56 to swarm-roam pokemon, but I could not with this ...

Last edited by Criisss; May 16th, 2010 at 01:32 PM.
Reply With Quote
  #248    
Old May 10th, 2010, 04:02 PM
Shiny Quagsire's Avatar
Shiny Quagsire
どないやねん, ヤドン
 
Join Date: May 2009
Location: Hoenn Safari Zone
Age: 16
Gender: Male
Nature: Jolly
I found a rather annoying problem in the application.
When you open the character hack or overworld hack, you can't close the dialog window. It is annoying if you pushed it by accident.
__________________



Reply With Quote
  #249    
Old May 17th, 2010, 09:54 PM
ShyRayq's Avatar
ShyRayq
Unprofessional Unprofessional
 
Join Date: Aug 2007
Gender: Male
Nature: Adamant
Quote:
Originally Posted by shiny quagsire View Post
I found a rather annoying problem in the application.
When you open the character hack or overworld hack, you can't close the dialog window. It is annoying if you pushed it by accident.
Yeh that happens to me as well
and i also didnt understand the overworld tutorial very well
so can you explain it to me?
__________________
3DS Friend Code: 5069-3944-3902
IGN: Peter, Pokemon Y
Friend Safari: (Fighting) Throh, Meditite, Breloom
Live Pokedex Completed as of 02/03/14
Big thanks especially to DestinedJagold, Xerneas_X and Elements1

PM me if you want to trade, or add my FC.
Reply With Quote
  #250    
Old May 25th, 2010, 03:25 PM
Sonikku17's Avatar
Sonikku17
Wanderer
 
Join Date: Aug 2008
Age: 22
Nature: Impish
I have a quick question regarding special 0x18B, the "Show uncompressed picture" special. For the most part, I get how it works. However, I'm a bit confused about the first part of the table, the fossil pointer. It says it is a
"pointer to a section of data that has the needed information for the function to work," but I'm not sure what this means, or what the needed information would be. If anyone can help me understand this, it would be greatly appreciated!
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 11:17 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.