Go Back   The PokéCommunity Forums > ROM Hacking > Research & Development
Reload this Page The Follow Me Script

Notices
For all updates, view the main page.

Research & Development Got a well-founded knack with ROM hacking? Love reverse-engineering the Pokémon games? Or perhaps you love your assembly language. This is the spot for polling and gathering your ideas, and then implementing them! Share your hypothesis, get ideas from others, and collaborate to create!
Research & Development programs in this forum are subject to moderator approval before they are displayed.



Reply
 
Thread Tools
  #326    
Old 3 Weeks Ago (06:21 AM).
Zehn's Avatar
Zehn Zehn is offline
City of Snow
Crystal Tier
 
Join Date: Oct 2014
Location: England (that's all you need to know)
Gender: Male
Nature: Relaxed
Posts: 422
Send a message via Skype™ to Zehn
But FBI, the wheel can always be rounded more
My suggestion for the warp is to spawn the Ncp underneath you but invisible. When you take the first step the invisiblity is lifted and movement unlocked
__________________
Snowpoint City
"City of Snow"
Supporter City Collab 2015


Crystal Supporter


I'm friendly, shoot me a VM if you want
Reply With Quote
  #327    
Old 3 Weeks Ago (07:16 AM). Edited 3 Weeks Ago by Touched.
Touched's Avatar
Touched Touched is offline
Resident ASMAGICIAN
 
Join Date: Jul 2014
Gender: Male
Posts: 192
Quote originally posted by FBI agent:
If only the link to the source was easier to find. It was in an arbitrary post by daniilS somewhere in this thread. I wish the front post had it there.

Anyways, I don't like the algorithm because it lends itself for unneeded hooks. I think you should look at player sprite's displacement rather than actually registered movement commands. Then you can evade collision detection entirely. X-Y of the player is already stored in RAM, so storing a copy of "last x-y" somewhere surely can't be hard, right?
Only apply a movement to the sprite if the X-Y of the player is changed, or the player talks to it.

For ledges, I suggest trying to freeze the player for half a second until the NPC catches up. I know it feels a little awkward, but unless you can speed the NPC up, I don't see an alternative. :C

I'm also stumped on how you'd get warping to work. It probably would be easiest if the follower was just spawned 1 tile behind the player, but left invisible. Then when the player takes a step, it will show itself and do a movement in the usual way.

The only collision detection you'd need is to make sure NPCs don't walk through the follower (which you already have :D ).

That's what I can gather/think about this follow me implementation. I sorta want to make my own, but daniilS has convinced me that the wheel doesn't need remaking.
I'll try steal the thread :D

I do use displacement - that's the "collision detection", but you need to register the movement type to get the correct animation to play, otherwise it looks weird, you can't have one or the other.

Freezing on ledges looks odd and feels choppy. We need a way to move more pixels while playing the same animation or something.

Warping DOES work, and it's easy to spawn an OW. Its getting it to stay in sync after the warp that's the issue.

EDIT:

Quote originally posted by Zehn:
But FBI, the wheel can always be rounded more
My suggestion for the warp is to spawn the Ncp underneath you but invisible. When you take the first step the invisiblity is lifted and movement unlocked
This is exactly what I do. The trouble is finding out when to hide the NPC and how to move it after the warp. There are different kinds of warps that make this kind of simplistic solution fail. The main problem with implementing this is that there are so many exceptions, so you can't just have a general rule unfortunately.
Reply With Quote
  #328    
Old 3 Weeks Ago (07:21 AM).
Spherical Ice's Avatar
Spherical Ice Spherical Ice is offline
Moderator
CS
 
Join Date: Nov 2007
Location: UK
Posts: 3,417
Send a message via Skype™ to Spherical Ice
Quote originally posted by Touched:
I'll try steal the thread :D
Seeing as you've actually achieved what this thread is for, and as the OP hasn't been online for quite some time, I've actually gone ahead and made you the OP of the thread. It'd be great if you could add the relevant information to the OP, feel free to replace what is in the OP (it will be archived in the revisions if anything goes sour anyway). Enjoy :P
__________________
Reply With Quote
  #329    
Old 3 Weeks Ago (12:56 PM).
HungLikeATauros HungLikeATauros is offline
 
Join Date: Feb 2015
Gender: Male
Posts: 33
Quote originally posted by Touched:
and as far as I am concerned, is a solved problem.
Keep telling yourself that if it helps you sleep at night.

Quote originally posted by FBI agent:
I sorta want to make my own, but daniilS has convinced me that the wheel doesn't need remaking.
Yeah, GoGo and danillS are on some mission to convince people that Follow Me has been figured out completely when it hasn't at all. I guess they'd rather everyone just circle jerk in this thread and accomplish nothing for 5 years like is the case than have you go and actually break new ground.

Quote originally posted by Spherical Ice:
Seeing as you've actually achieved what this thread is for
The thread was for a working Follow Me script. That has not been done. All that's been done is a useless poor man's version that is the equivalent of the dude who walks you to Brock's gym in FR.
Reply With Quote
  #330    
Old 3 Weeks Ago (01:11 PM). Edited 3 Weeks Ago by daniilS.
daniilS's Avatar
daniilS daniilS is offline
busy trying to do stuff not done yet
 
Join Date: Aug 2013
Age: 15
Gender: Male
Posts: 342
Quote originally posted by HungLikeATauros:
Keep telling yourself that if it helps you sleep at night.



Yeah, GoGo and danillS are on some mission to convince people that Follow Me has been figured out completely when it hasn't at all. I guess they'd rather everyone just circle jerk in this thread and accomplish nothing for 5 years like is the case than have you go and actually break new ground.



The thread was for a working Follow Me script. That has not been done. All that's been done is a useless poor man's version that is the equivalent of the dude who walks you to Brock's gym in FR.
Excuse me?
Follow me, the way Touched completed it, has succeeded in fulfilling its purpose: creating an NPC that dynamically follows the player in certain areas, for example those used in Platinum. But nobody ever said it's fully complete. I am NOT on any mission to convince people of anything—I've even had a go at fixing ledges, but put it on hold because of other projects.
The goal of this thread was creating an NPC that follows the player. That has been done. It is in no way close to any kind of script, neither is it to anything else you've called it. The purpose of this thread at this moment is for people to write additions for the existing method and post feedback. Now if you really feel like nothing has been accomplished at all and it's that easy to do, why don't you just do it yourself and share it with the people for everybody to see? Otherways, if you have nothing useful to contribute, then I recommend you to print out your post, roll it up as tightly as possible, and maybe shove it up somewhere.
__________________
Reply With Quote
  #331    
Old 3 Weeks Ago (01:13 PM).
GoGoJJTech's Avatar
GoGoJJTech GoGoJJTech is offline
http://GoGoJJTech.com (WIP!)
Silver Tier
 
Join Date: Nov 2012
Location: Earth
Age: 16
Gender: Male
Nature: Quiet
Posts: 1,968
Quote originally posted by HungLikeATauros:
Keep telling yourself that if it helps you sleep at night.



Yeah, GoGo and danillS are on some mission to convince people that Follow Me has been figured out completely when it hasn't at all. I guess they'd rather everyone just circle jerk in this thread and accomplish nothing for 5 years like is the case than have you go and actually break new ground.



The thread was for a working Follow Me script. That has not been done. All that's been done is a useless poor man's version that is the equivalent of the dude who walks you to Brock's gym in FR.
And how much have you contributed in the last 5 years?
__________________
I believe in Jesus Christ my Savior. If you do too, and aren't scared to admit it, then copy and paste this into your signature.
The SoulSilver Music Patch - The Black Music Patch - Mega-Huge Sappy Tutorial
Romhack.me Profile - Pokecommunity Profile - Pokemonhackersonline Profile - Youtube Channel

Join us in the romhacking chat
Pokémon Platinum Red and Blue
Reply With Quote
  #332    
Old 3 Weeks Ago (01:19 PM). Edited 3 Weeks Ago by Touched.
Touched's Avatar
Touched Touched is offline
Resident ASMAGICIAN
 
Join Date: Jul 2014
Gender: Male
Posts: 192
Quote originally posted by HungLikeATauros:
The thread was for a working Follow Me script. That has not been done. All that's been done is a useless poor man's version that is the equivalent of the dude who walks you to Brock's gym in FR.
I take it you didn't build it then. I really have to make those instructions on how to "compile" it to help noobs like you.

Quote originally posted by HungLikeATauros:
I guess they'd rather everyone just circle jerk in this thread and accomplish nothing for 5 years like is the case than have you go and actually break new ground.
Oh, and it was only a circle jerk until I came.
Reply With Quote
  #333    
Old 3 Weeks Ago (01:38 PM).
HungLikeATauros HungLikeATauros is offline
 
Join Date: Feb 2015
Gender: Male
Posts: 33
Quote originally posted by daniilS:
Follow me, the way Touched completed it, has succeeded in fulfilling its purpose: creating an NPC that dynamically follows the player in certain areas, for example those used in Platinum.
That wasn't its purpose. That just conveniently became its purpose once Touched realized he couldn't figure out a better version. You know damn well this wasn't why Follow Me was strived for. This version is 100% useless to anyone not named GoGoJJTech.
Reply With Quote
  #334    
Old 3 Weeks Ago (01:42 PM).
daniilS's Avatar
daniilS daniilS is offline
busy trying to do stuff not done yet
 
Join Date: Aug 2013
Age: 15
Gender: Male
Posts: 342
Quote originally posted by HungLikeATauros:
That wasn't its purpose. That just conveniently became its purpose once Touched realized he couldn't figure out a better version. You know damn well this wasn't why Follow Me was strived for. This version is 100% useless to anyone not named GoGoJJTech.
This version is useful to anybody who may want a temporary follow me in their hack. And to anybody who—unlike you—is willing to contribute to the current implementation. Touched hasn't killed the project, he's just been quite busy. You, on the other hand, have shown everybody an excellent example of stupidity and ignorance.
__________________
Reply With Quote
  #335    
Old 3 Weeks Ago (01:59 PM).
Touched's Avatar
Touched Touched is offline
Resident ASMAGICIAN
 
Join Date: Jul 2014
Gender: Male
Posts: 192
Quote originally posted by HungLikeATauros:
That wasn't its purpose. That just conveniently became its purpose once Touched realized he couldn't figure out a better version. You know damn well this wasn't why Follow Me was strived for. This version is 100% useless to anyone not named GoGoJJTech.
Why so bitter? Why don't you join us on our IRC (#rhm on irc.linkandzelda.com) and we can work this out in a civilised fashion?
Reply With Quote
  #336    
Old 3 Weeks Ago (02:16 PM).
HungLikeATauros HungLikeATauros is offline
 
Join Date: Feb 2015
Gender: Male
Posts: 33
Quote originally posted by daniilS:
This version is useful to anybody who may want a temporary follow me in their hack. And to anybody who—unlike you—is willing to contribute to the current implementation. Touched hasn't killed the project, he's just been quite busy. You, on the other hand, have shown everybody an excellent example of stupidity and ignorance.
It's called honesty and not sugar-coating things. Sorry if the truth hurts.

Quote originally posted by Touched:
Why so bitter? Why don't you join us on our IRC (#rhm on irc.linkandzelda.com) and we can work this out in a civilised fashion?
There is no bitterness. Look, you say the only thing separating us from the final working Follow Me is the tediousness of editing every tile. Well then let's make a damn army out of the interested parties in this thread (including me) and split up the work. Anything is better than this denial that you guys have been in for 5 years.
Reply With Quote
  #337    
Old 3 Weeks Ago (02:29 PM).
Touched's Avatar
Touched Touched is offline
Resident ASMAGICIAN
 
Join Date: Jul 2014
Gender: Male
Posts: 192
Quote originally posted by HungLikeATauros:
There is no bitterness. Look, you say the only thing separating us from the final working Follow Me is the tediousness of editing every tile. Well then let's make a damn army out of the interested parties in this thread (including me) and split up the work. Anything is better than this denial that you guys have been in for 5 years.
That's why I open sourced it. I was hoping people would do just that, but alas - no pull requests. If you're as committed as you say you are, you can write (constructive) issues and pull requests. We're completely willing to help if you don't know what to do, as I said, you can join the chat on IRC. But we don't like to be outright attacked like this - keep in mind I've invested effort into this project and nothing came out of that effort, so I'm perfectly entitled to put it on the backburner. Put some effort into in and maybe you'll find me more will to put more effort in.

Also, what's this about 5 years. I've barely even been here 1 year...
Reply With Quote
  #338    
Old 3 Weeks Ago (02:54 PM).
Spherical Ice's Avatar
Spherical Ice Spherical Ice is offline
Moderator
CS
 
Join Date: Nov 2007
Location: UK
Posts: 3,417
Send a message via Skype™ to Spherical Ice
Quote originally posted by HungLikeATauros:
It's called honesty and not sugar-coating things. Sorry if the truth hurts.
There's a difference between being honest and being intentionally antagonistic. Act out again and you'll be infracted for disrespect.
__________________
Reply With Quote
  #339    
Old 5 Days Ago (08:35 PM).
kleenexfeu kleenexfeu is offline
 
Join Date: Aug 2013
Gender: Male
Posts: 57
Quote originally posted by Touched:
I'll try steal the thread :D

I do use displacement - that's the "collision detection", but you need to register the movement type to get the correct animation to play, otherwise it looks weird, you can't have one or the other.

Freezing on ledges looks odd and feels choppy. We need a way to move more pixels while playing the same animation or something.

Warping DOES work, and it's easy to spawn an OW. Its getting it to stay in sync after the warp that's the issue.

EDIT:



This is exactly what I do. The trouble is finding out when to hide the NPC and how to move it after the warp. There are different kinds of warps that make this kind of simplistic solution fail. The main problem with implementing this is that there are so many exceptions, so you can't just have a general rule unfortunately.

Is it possible to just hide the follower anytime there is a warp ? You hide it in the same tile of the hero and when we move, the follower appears where the hero was. I know it simplistic but sometimes it works x)
Reply With Quote
  #340    
Old 3 Days Ago (01:52 PM).
Touched's Avatar
Touched Touched is offline
Resident ASMAGICIAN
 
Join Date: Jul 2014
Gender: Male
Posts: 192
Quote originally posted by kleenexfeu:
Is it possible to just hide the follower anytime there is a warp ? You hide it in the same tile of the hero and when we move, the follower appears where the hero was. I know it simplistic but sometimes it works x)
I did this for normal warps but it doesn't work for animated stairs and other stuff. Additionally the warping hooks have some bugs where it continues to function even when there is no follower.
__________________
My Emerald IDB
Knizz's FireRed IDB
I will ASMentor people who exhibit enough enthusiASM. Join the IRC to become an ASMentee.
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

Forum Jump


All times are UTC -8. The time now is 02:54 AM.