i have fixed it. earlier, i am trying to trigger pin behavior by comparing variables. although it makes the "is pinned" true, it fails to actually pinning the object to another object.
now, i tried to trigger pin behavior on collision and works how i want it to be.
again, is it a bug on pin or just an error on my logic. i realized that i was doing the same on pathfinding behavior that's why it doesn't work properly.