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
Click here to go to the first staff post in this thread.  
Thread Tools
  #201    
Old September 26th, 2013, 02:10 PM
karatekid552's Avatar
karatekid552
What happens if I push it?....
 
Join Date: Nov 2012
Location: Do you really want to know? Really?
Gender: Male
Nature: Bold
Send a message via AIM to karatekid552 Send a message via Windows Live Messenger to karatekid552 Send a message via Skype™ to karatekid552
Quote:
Originally Posted by Jambo51 View Post
That's because it HAS to be hardcoded, by definition. The GBA does nothing without code, and having a sprite "follow" you is among the more difficult things to achieve in ASM.

However, writing a new engine from scratch actually makes it relatively simple to achieve.

Anyway, technically, everything is hardcoded into the GBA games. Scripts are just combinations of pre-set pieces of code, after all.
I tend to think of scripting as a higher level language, per se. I know how it all interlocks, but it just helps when thinking about how things work. What I was trying to say is that there is no way to do it with scripting alone and have it actually look good. ASM needs to be used.

Sending a pm to you, one sec...
__________________

Paired with Simba
Reply With Quote
  #202    
Old October 12th, 2013, 06:55 PM
Shiny Hilbert's Avatar
Shiny Hilbert
 
Join Date: Feb 2013
Location: -Mossdeep City, Hoenn
Gender: Male
Nature: Jolly
Any news or progress on this?
Reply With Quote
  #203    
Old October 12th, 2013, 08:33 PM
karatekid552's Avatar
karatekid552
What happens if I push it?....
 
Join Date: Nov 2012
Location: Do you really want to know? Really?
Gender: Male
Nature: Bold
Send a message via AIM to karatekid552 Send a message via Windows Live Messenger to karatekid552 Send a message via Skype™ to karatekid552
Quote:
Originally Posted by Shiny Hilbert View Post
Any news or progress on this?
I talked to Jambo, and he wants us to do a complete reboot of the project. His method, even though it worked, was very "clunky", and he is convinced there is a better way to do things. So, when I find some time, I'll be looking into it.
__________________

Paired with Simba
Reply With Quote
  #204    
Old October 13th, 2013, 12:55 AM
Jambo51's Avatar
Jambo51
Glory To Arstotzka
 
Join Date: Jun 2009
Gender: Male
Nature: Quiet
Quote:
Originally Posted by karatekid552 View Post
I talked to Jambo, and he wants us to do a complete reboot of the project. His method, even though it worked, was very "clunky", and he is convinced there is a better way to do things. So, when I find some time, I'll be looking into it.
As a further to this, if you don't manage to find a better way, I'll release my code to you guys. Seem fair?
__________________
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
  #205    
Old October 13th, 2013, 09:40 AM
karatekid552's Avatar
karatekid552
What happens if I push it?....
 
Join Date: Nov 2012
Location: Do you really want to know? Really?
Gender: Male
Nature: Bold
Send a message via AIM to karatekid552 Send a message via Windows Live Messenger to karatekid552 Send a message via Skype™ to karatekid552
Quote:
Originally Posted by Jambo51 View Post
As a further to this, if you don't manage to find a better way, I'll release my code to you guys. Seem fair?
Definitely fair. Since you have already done this, do you have any good ideas on alternate approaches? Your way involved writing directly to the OAMT states and manipulating the other sprite each frame. I have had thoughts of hacking the createsprite command so that it creates and then maintains a sprite one tile behind the player. On a warp, since there is no last tile, it wouldn't be loaded until the player steps off. And, if the player doubles back, then just swap their positions.
__________________

Paired with Simba
Reply With Quote
  #206    
Old October 14th, 2013, 04:39 PM
Shiny Quagsire's Avatar
Shiny Quagsire
I like .short's because they're comfy and easy to wear.
 
Join Date: May 2009
Location: Hoenn Safari Zone
Age: 16
Gender: Male
Nature: Jolly
Quote:
Originally Posted by karatekid552 View Post
Definitely fair. Since you have already done this, do you have any good ideas on alternate approaches? Your way involved writing directly to the OAMT states and manipulating the other sprite each frame. I have had thoughts of hacking the createsprite command so that it creates and then maintains a sprite one tile behind the player. On a warp, since there is no last tile, it wouldn't be loaded until the player steps off. And, if the player doubles back, then just swap their positions.
What I was thinking is to just store the player's previous map coordinates every time they are changed and create/modify an overworld sprite accordingly. Because that's all the follow-me system really does is move where your player last was before.
__________________



Reply With Quote
  #207    
Old October 23rd, 2013, 06:32 PM
sab's Avatar
sab
Now too much of a life.
 
Join Date: Jul 2008
Location: Midgar
Age: 18
Gender: Male
Nature: Timid
Quote:
Originally Posted by shiny quagsire View Post
What I was thinking is to just store the player's previous map coordinates every time they are changed and create/modify an overworld sprite accordingly. Because that's all the follow-me system really does is move where your player last was before.
That's what I was thinking, hence my extremely basic script posted a back on page five, but it has some problems. You'd also have to store when different types of motion were used, e.g. ledge jump, surf, etc. You'd also have to worry about things like warping. The coordinates would be located in the wrong place right after a warp unless you hid the sprite directly after a teleport. It seems to me like you'd also have to store all of the previous comparisons that were used for the player, then use them again, or just recalculate it entirely.
__________________
anCay ouyay eakspay igpay atinlay? Ifay osay easeplay m.p.ay
emay enthay opycay anday astepay isthay inay ouryay ignaturesay.

Last edited by sab; October 23rd, 2013 at 06:40 PM.
Reply With Quote
  #208    
Old October 23rd, 2013, 06:47 PM
FBI agent's Avatar
FBI agent
Imagine something beautiful
 
Join Date: Jan 2013
Location: Unknown Island
Gender: Male
Quote:
Originally Posted by sab View Post
That's what I was thinking, hence my extremely basic script posted a back on page five, but it has some problems. You'd also have to store when different types of motion were used, e.g. ledge jump, surf, etc. You'd also have to worry about things like warping. The coordinates would be located in the wrong place right after a warp unless you hid the sprite directly after a teleport. It seems to me like you'd also have to store all of the previous comparisons that were used for the player, then use them again, or just recalculate it entirely.
I would just omit surfing and warping for now. Once the more basic things are done, a warp can be solved by just calling the original code again with a new set of parameters. As for surfing...**** surfing.

EDIT:
My bad algorithm (I didn't bother to check if someone came up with this already, sorry):
Have 4 variables change every time the player takes a step depending on the direction of the step. Darthatron and I had something that ran everystep and changed a variable, so this is easily possible. Something like:
Player up: var1 is 0x1
Player down: var2 is 0x1
Player left: var3 is 0x1
Player right: var4 is 0x1
Note var 1,2,3,4 are set to 0x0 after the following sprite is moved.
Now the sprite following the player is always behind the player, so set it to be Player (coord X-var3 + var 4) (coord Y-var2 + var1)

This way we do 4 variable writes and 4 variable reads per step (not much right?). We can also figure out which walk animation to apply to the sprite too depending on which var is 0x1. Also if the player is just turning around, this doesn't move the sprite following him.
__________________
...

My name forum name is FBI Agent, though a lot of kids call me FBI because they're lazy. I run an ASM request/resource thread feel free to request me any cool ideas you have!

My current projects:
- PokeDex hack fixes

Last edited by FBI agent; October 23rd, 2013 at 06:57 PM.
Reply With Quote
  #209    
Old October 24th, 2013, 02:43 AM
karatekid552's Avatar
karatekid552
What happens if I push it?....
 
Join Date: Nov 2012
Location: Do you really want to know? Really?
Gender: Male
Nature: Bold
Send a message via AIM to karatekid552 Send a message via Windows Live Messenger to karatekid552 Send a message via Skype™ to karatekid552
Quote:
Originally Posted by FBI agent View Post
I would just omit surfing and warping for now. Once the more basic things are done, a warp can be solved by just calling the original code again with a new set of parameters. As for surfing...**** surfing.

EDIT:
My bad algorithm (I didn't bother to check if someone came up with this already, sorry):
Have 4 variables change every time the player takes a step depending on the direction of the step. Darthatron and I had something that ran everystep and changed a variable, so this is easily possible. Something like:
Player up: var1 is 0x1
Player down: var2 is 0x1
Player left: var3 is 0x1
Player right: var4 is 0x1
Note var 1,2,3,4 are set to 0x0 after the following sprite is moved.
Now the sprite following the player is always behind the player, so set it to be Player (coord X-var3 + var 4) (coord Y-var2 + var1)

This way we do 4 variable writes and 4 variable reads per step (not much right?). We can also figure out which walk animation to apply to the sprite too depending on which var is 0x1. Also if the player is just turning around, this doesn't move the sprite following him.
I actually really like this, however 8 calls to the var decrypter every frame may be a lot. Idk. In which case, we could just use one var, and set bits, not bytes, or simply use a byte of RAM (which will be super fast to read and write to.)
__________________

Paired with Simba
Reply With Quote
  #210    
Old October 24th, 2013, 04:15 AM
FBI agent's Avatar
FBI agent
Imagine something beautiful
 
Join Date: Jan 2013
Location: Unknown Island
Gender: Male
Quote:
Originally Posted by karatekid552 View Post
I actually really like this, however 8 calls to the var decrypter every frame may be a lot. Idk. In which case, we could just use one var, and set bits, not bytes, or simply use a byte of RAM (which will be super fast to read and write to.)
You're right, the bits would be easier. Though I should mention it's every step, not frame :)
__________________
...

My name forum name is FBI Agent, though a lot of kids call me FBI because they're lazy. I run an ASM request/resource thread feel free to request me any cool ideas you have!

My current projects:
- PokeDex hack fixes
Reply With Quote
  #211    
Old October 24th, 2013, 05:06 AM
karatekid552's Avatar
karatekid552
What happens if I push it?....
 
Join Date: Nov 2012
Location: Do you really want to know? Really?
Gender: Male
Nature: Bold
Send a message via AIM to karatekid552 Send a message via Windows Live Messenger to karatekid552 Send a message via Skype™ to karatekid552
Quote:
Originally Posted by FBI agent View Post
You're right, the bits would be easier. Though I should mention it's every step, not frame
Right, that is true. Now we need to find the routine that moves the player. Then we can branch it and use it to move other NPC's also.
__________________

Paired with Simba
Reply With Quote
  #212    
Old October 24th, 2013, 09:21 AM
FBI agent's Avatar
FBI agent
Imagine something beautiful
 
Join Date: Jan 2013
Location: Unknown Island
Gender: Male
Quote:
Originally Posted by karatekid552 View Post
Right, that is true. Now we need to find the routine that moves the player. Then we can branch it and use it to move other NPC's also.
I think you're thinking too deeply into it. We don't need to branch from any player movement routine. We can simply branch from the routine that runs every step. If we branch from there, and know X,Y that the sprite needs to be at as well as the animation the sprite needs to do, then the problem is solved. It's been a while since I've done any ASM work, but the algorithm steps would be something like:


--Stuff--
--Start of routine per step--
-- Branch @code --
--Rest of routine per step -- (note this is stuff used by the game)
-- Stuff --


-- @code --
step 1: assign variables in accordance to algorithm
step 2: calculate x and y of sprite (note we don't need current sprite x and y, just player's x and y which is stored and easily locatable)
step 3: move sprite to x/y and do animation <-- hard part? I think you should make a subroutine for this tbh.
step 4: reset vars to 0
step 5: return safetly

EDIT: 06D5E8 was where the routine that activates every step was at. Well, I think it was there atleast :P
__________________
...

My name forum name is FBI Agent, though a lot of kids call me FBI because they're lazy. I run an ASM request/resource thread feel free to request me any cool ideas you have!

My current projects:
- PokeDex hack fixes

Last edited by FBI agent; October 24th, 2013 at 09:38 AM.
Reply With Quote
  #213    
Old October 24th, 2013, 05:18 PM
karatekid552's Avatar
karatekid552
What happens if I push it?....
 
Join Date: Nov 2012
Location: Do you really want to know? Really?
Gender: Male
Nature: Bold
Send a message via AIM to karatekid552 Send a message via Windows Live Messenger to karatekid552 Send a message via Skype™ to karatekid552
Quote:
Originally Posted by FBI agent View Post
I think you're thinking too deeply into it. We don't need to branch from any player movement routine. We can simply branch from the routine that runs every step. If we branch from there, and know X,Y that the sprite needs to be at as well as the animation the sprite needs to do, then the problem is solved. It's been a while since I've done any ASM work, but the algorithm steps would be something like:


--Stuff--
--Start of routine per step--
-- Branch @code --
--Rest of routine per step -- (note this is stuff used by the game)
-- Stuff --


-- @code --
step 1: assign variables in accordance to algorithm
step 2: calculate x and y of sprite (note we don't need current sprite x and y, just player's x and y which is stored and easily locatable)
step 3: move sprite to x/y and do animation <-- hard part? I think you should make a subroutine for this tbh.
step 4: reset vars to 0
step 5: return safetly

EDIT: 06D5E8 was where the routine that activates every step was at. Well, I think it was there atleast
No. This won't work easily. You see, sprites are drawn by pixel, not the X/Y blocks. The reason I want to use the original move player routine is because it will do all of those calculations for us. Converting pixels to blocks will be a pain in the butt. Trust me, I have seen the way Jambo did it, and that involved directly moving the sprites in the OAM registers, which are done by pixels. While this does work, it is what we want to avoid.

"step 3: move sprite to x/y and do animation <-- hard part? I think you should make a subroutine for this tbh."

Why write our own? The game already has one. Let's use it.
__________________

Paired with Simba
Reply With Quote
  #214    
Old October 24th, 2013, 05:33 PM
FBI agent's Avatar
FBI agent
Imagine something beautiful
 
Join Date: Jan 2013
Location: Unknown Island
Gender: Male
Quote:
Originally Posted by karatekid552 View Post
No. This won't work easily. You see, sprites are drawn by pixel, not the X/Y blocks. The reason I want to use the original move player routine is because it will do all of those calculations for us. Converting pixels to blocks will be a pain in the butt. Trust me, I have seen the way Jambo did it, and that involved directly moving the sprites in the OAM registers, which are done by pixels. While this does work, it is what we want to avoid.

"step 3: move sprite to x/y and do animation <-- hard part? I think you should make a subroutine for this tbh."

Why write our own? The game already has one. Let's use it.
Nonono, not make our own "move sprite" subroutine. I mean make our own subroutine that determines which "move sprite" to use (I.e which animation/direction). Catch my drift?

Edit:

"step 3: move sprite to x/y and do animation <-- hard part? I think you should make a subroutine for this tbh."
I say we just run a script here that contains a single applymovement command on the following overworld.
So the routine determines which applymovement script to run (possible? I think it is).

EDIT2: Also if we were just using the original Player move routine then you'd still have to do calculations since the sprite is always BEHIND the player.
__________________
...

My name forum name is FBI Agent, though a lot of kids call me FBI because they're lazy. I run an ASM request/resource thread feel free to request me any cool ideas you have!

My current projects:
- PokeDex hack fixes

Last edited by FBI agent; October 24th, 2013 at 05:41 PM. Reason: edit
Reply With Quote
  #215    
Old October 24th, 2013, 06:20 PM
karatekid552's Avatar
karatekid552
What happens if I push it?....
 
Join Date: Nov 2012
Location: Do you really want to know? Really?
Gender: Male
Nature: Bold
Send a message via AIM to karatekid552 Send a message via Windows Live Messenger to karatekid552 Send a message via Skype™ to karatekid552
Quote:
Originally Posted by FBI agent View Post
Nonono, not make our own "move sprite" subroutine. I mean make our own subroutine that determines which "move sprite" to use (I.e which animation/direction). Catch my drift?

Edit:

"step 3: move sprite to x/y and do animation <-- hard part? I think you should make a subroutine for this tbh."
I say we just run a script here that contains a single applymovement command on the following overworld.
So the routine determines which applymovement script to run (possible? I think it is).

EDIT2: Also if we were just using the original Player move routine then you'd still have to do calculations since the sprite is always BEHIND the player.
First, I want to see how the game moves the player. Maybe it is just an applymovement. In which case, we can simply write a routine which stores the past two movements of the player, and we read from the second one to determine the next movement of the follower.

Here, set a break on the applymovement routine. See if it runs when you walk. It probably doesn't, but it is worth a shot.
__________________

Paired with Simba
Reply With Quote
  #216    
Old October 24th, 2013, 06:41 PM
FBI agent's Avatar
FBI agent
Imagine something beautiful
 
Join Date: Jan 2013
Location: Unknown Island
Gender: Male
Quote:
Originally Posted by karatekid552 View Post
First, I want to see how the game moves the player. Maybe it is just an applymovement. In which case, we can simply write a routine which stores the past two movements of the player, and we read from the second one to determine the next movement of the follower.

Here, set a break on the applymovement routine. See if it runs when you walk. It probably doesn't, but it is worth a shot.
That actually sounds like a nice way to do it. Actually even if there is a small delay between the little sprite following, that'd still be a good first step. Wanna try it?
__________________
...

My name forum name is FBI Agent, though a lot of kids call me FBI because they're lazy. I run an ASM request/resource thread feel free to request me any cool ideas you have!

My current projects:
- PokeDex hack fixes
Reply With Quote
  #217    
Old October 25th, 2013, 04:17 AM
karatekid552's Avatar
karatekid552
What happens if I push it?....
 
Join Date: Nov 2012
Location: Do you really want to know? Really?
Gender: Male
Nature: Bold
Send a message via AIM to karatekid552 Send a message via Windows Live Messenger to karatekid552 Send a message via Skype™ to karatekid552
Quote:
Originally Posted by FBI agent View Post
That actually sounds like a nice way to do it. Actually even if there is a small delay between the little sprite following, that'd still be a good first step. Wanna try it?
Sure. In fact, a small delay would be cool, since it will look more realistic.
__________________

Paired with Simba
Reply With Quote
  #218    
Old October 25th, 2013, 07:19 AM
FBI agent's Avatar
FBI agent
Imagine something beautiful
 
Join Date: Jan 2013
Location: Unknown Island
Gender: Male
Quote:
Originally Posted by karatekid552 View Post
Sure. In fact, a small delay would be cool, since it will look more realistic.
Yeah, a delay is nice, but I want it to be smooth in the end. Where if I hold down the up button the hero continuously moves up rather than move up once, wait for sprite to catch up, move up again...sorta thing. Basically we don't want a lagging feeling.

I'm a little cramped this Friday with academic activities, so lets try to get working early Saturday morning.
__________________
...

My name forum name is FBI Agent, though a lot of kids call me FBI because they're lazy. I run an ASM request/resource thread feel free to request me any cool ideas you have!

My current projects:
- PokeDex hack fixes
Reply With Quote
  #219    
Old October 25th, 2013, 08:30 AM
daniilS's Avatar
daniilS
busy trying to do stuff not done yet
 
Join Date: Aug 2013
Age: 15
Gender: Male
I have had an idea about how to do this. First, we have to assign a high, unused number to the following sprite. Then we have to create a branch to a subroutine directly after the hero proceeds to move. This is what it will look like, in this specific order:
  • Following disabled check
    Spoiler:
    A check is run based on predefined things (like a certain minor tileset) whether following is disabled or not. If yes, set the disable byte to 01. If no, set it to 00. This byte will also be used when disabling following altogether through an option and/or level scripts.
  • Surfing/biking check
    Spoiler:
    If the player is going to surf or cycle, or is doing it now, the surf/bike byte is set to 01. If not, it's set to 00.
  • Ledge jump check
    Spoiler:
    Tricky one. If the player wants to jump, set the jump byte to 03. If it's on 02, set it to 01 and jump baced on the sprite facing. If it's on 01, set it to 00.
  • Skip following and hidesprite check
    Spoiler:
    This checks the first two bytes described above. If any of them has a value of 01, the following sprite will be hidden and the subroutine will end.
  • Skip following check
    Spoiler:
    This checks the third byte described above. If it has a value of 02, the following sprite WILL NOT be hidden, but the subroutine will end.
  • Applymovement
    Spoiler:
    The moving part. It checks the sprite facing and does a step in that direction (applymovement).
  • Sprite existance check
    Spoiler:
    If the sprite doesn't exist, then use the method described by FBI Agent to make it appear.

Another subroutine gets called AFTER the hero sprite has been moved. The only thing it does is making the following sprite face the player.



I haven't tested it out myself, because I lack the ASM skills to do this. I may also have made some very stupid mistakes in this. However, I hope this helps towards creating a fully-working follow me script.(Or should I say routine?)
__________________

Thanks to JPAN, Jambo51, Shiny Quagsire and knizz for teaching me almost everything I know about hacking, through tutorials or in person.
Reply With Quote
  #220    
Old October 25th, 2013, 12:50 PM
karatekid552's Avatar
karatekid552
What happens if I push it?....
 
Join Date: Nov 2012
Location: Do you really want to know? Really?
Gender: Male
Nature: Bold
Send a message via AIM to karatekid552 Send a message via Windows Live Messenger to karatekid552 Send a message via Skype™ to karatekid552
Quote:
Originally Posted by daniilS View Post
I have had an idea about how to do this. First, we have to assign a high, unused number to the following sprite. Then we have to create a branch to a subroutine directly after the hero proceeds to move. This is what it will look like, in this specific order:
  • Following disabled check
    Spoiler:
    A check is run based on predefined things (like a certain minor tileset) whether following is disabled or not. If yes, set the disable byte to 01. If no, set it to 00. This byte will also be used when disabling following altogether through an option and/or level scripts.
  • Surfing/biking check
    Spoiler:
    If the player is going to surf or cycle, or is doing it now, the surf/bike byte is set to 01. If not, it's set to 00.
  • Ledge jump check
    Spoiler:
    Tricky one. If the player wants to jump, set the jump byte to 03. If it's on 02, set it to 01 and jump baced on the sprite facing. If it's on 01, set it to 00.
  • Skip following and hidesprite check
    Spoiler:
    This checks the first two bytes described above. If any of them has a value of 01, the following sprite will be hidden and the subroutine will end.
  • Skip following check
    Spoiler:
    This checks the third byte described above. If it has a value of 02, the following sprite WILL NOT be hidden, but the subroutine will end.
  • Applymovement
    Spoiler:
    The moving part. It checks the sprite facing and does a step in that direction (applymovement).
  • Sprite existance check
    Spoiler:
    If the sprite doesn't exist, then use the method described by FBI Agent to make it appear.

Another subroutine gets called AFTER the hero sprite has been moved. The only thing it does is making the following sprite face the player.



I haven't tested it out myself, because I lack the ASM skills to do this. I may also have made some very stupid mistakes in this. However, I hope this helps towards creating a fully-working follow me script.(Or should I say routine?)
Your ideas sound good, but I think you are over complicating it. If the player move like I think it moves, then we just need to log movements, and apply them to a sprite following him. At that point, only a var is needed as to log the event number of the sprite to move and a boolean to say if it is active. This would eliminate the need for ledge, hidesprite, and existence checks. Until we know how the player moves, we can't move forward on this.
__________________

Paired with Simba
Reply With Quote
  #221    
Old October 25th, 2013, 01:05 PM
ep!c
Banned
 
Join Date: Mar 2013
Gender: Male
Send a message via Skype™ to ep!c
This would be much easier, if GBA would allow multithreading
I give you a tip: calling the scripthandler instead of ASMing everything
(like getplayerpos or applymovement), you save much time with it.
Reply With Quote
  #222    
Old October 25th, 2013, 06:36 PM
karatekid552's Avatar
karatekid552
What happens if I push it?....
 
Join Date: Nov 2012
Location: Do you really want to know? Really?
Gender: Male
Nature: Bold
Send a message via AIM to karatekid552 Send a message via Windows Live Messenger to karatekid552 Send a message via Skype™ to karatekid552
Quote:
Originally Posted by ep!c View Post
This would be much easier, if GBA would allow multithreading
I give you a tip: calling the scripthandler instead of ASMing everything
(like getplayerpos or applymovement), you save much time with it.
My goal is to do something of this sort, but first we need to know how to player moves. Then I can move the other character based upon the player's movements. I don't want to only use scripting commands because that can get clunky.
__________________

Paired with Simba
Reply With Quote
  #223    
Old October 26th, 2013, 01:43 AM
ep!c
Banned
 
Join Date: Mar 2013
Gender: Male
Send a message via Skype™ to ep!c
Not only.. I meant just a few that doesnt move sprites or generates them.
Reply With Quote
  #224    
Old October 26th, 2013, 03:44 AM
BugMania's Avatar
BugMania
The Bug Master
 
Join Date: Jun 2013
Gender: Male
Nature: Quiet
Quote:
Originally Posted by ep!c View Post
This would be much easier, if GBA would allow multithreading
I give you a tip: calling the scripthandler instead of ASMing everything
(like getplayerpos or applymovement), you save much time with it.
If I understand your idea, could be changing clothes in the game.
For if it is possible for a sprite walk along with the player ...
It would be sensational!
__________________
Even the smallest of beings can achieve the greatest of obstacles!
Click in the spoiler, if you dare!
Spoiler:


L
et's dream bigger than our bodies can endure!
G
et to the extreme!

See my works here

Reply With Quote
  #225    
Old October 26th, 2013, 10:10 AM
karatekid552's Avatar
karatekid552
What happens if I push it?....
 
Join Date: Nov 2012
Location: Do you really want to know? Really?
Gender: Male
Nature: Bold
Send a message via AIM to karatekid552 Send a message via Windows Live Messenger to karatekid552 Send a message via Skype™ to karatekid552
Quote:
Originally Posted by BugMania View Post
If I understand your idea, could be changing clothes in the game.
For if it is possible for a sprite walk along with the player ...
It would be sensational!
We can already change clothes................ Look at my "Real Realtime Player Customization" on PHO.



~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Okay, so I'm currently looking into how the player moves. It definitely isn't applymovement.

DavidjCobb found the X,Y ram a long time ago. http://www.pokecommunity.com/showpos...&postcount=197

[0x03005008] + 0x0000 2b Camera X-position
[0x03005008] + 0x0002 2b Camera Y-position

This will be useful.
__________________

Paired with Simba

Last edited by karatekid552; October 27th, 2013 at 04:48 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 02:30 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.