Skip to content

Conversation

@kphoenix137
Copy link
Collaborator

@kphoenix137 kphoenix137 commented Dec 8, 2025

Fixes: #8334

Triggers auto pickup on beginning the stand animation regardless of what action led to the player reaching the stand animation.

yuripourre
yuripourre previously approved these changes Dec 8, 2025
@julealgon
Copy link
Contributor

While this is a nice improvement, wouldn't it be possible to generalize it by making the logic "proximity-based" regardless of how the player got close to the gold tiles?

Otherwise, each and every case is always going to be a special case.

@kphoenix137
Copy link
Collaborator Author

While this is a nice improvement, wouldn't it be possible to generalize it by making the logic "proximity-based" regardless of how the player got close to the gold tiles?

Otherwise, each and every case is always going to be a special case.

Then it becomes impossible to drop the respective items without immediately picking them back up

@julealgon
Copy link
Contributor

Then it becomes impossible to drop the respective items without immediately picking them back up

You could add a field to track who/what dropped the item (the source), then use that to avoid automatically picking up piles explicitly dropped by the player. Just an idea.

@kphoenix137
Copy link
Collaborator Author

Then it becomes impossible to drop the respective items without immediately picking them back up

You could add a field to track who/what dropped the item (the source), then use that to avoid automatically picking up piles explicitly dropped by the player. Just an idea.

Seems like unnecessary complexity. The original behavior is auto pickup on completion of walk movement, this PR expands that to auto pickup on completion of any type of movement.

@StephenCWills
Copy link
Member

The original behavior is auto pickup on completion of walk movement, this PR expands that to auto pickup on completion of any type of movement.

That does evoke one thought in my mind. AutoPickup() is called in DoWalk() on the last frame of the animation. This PR calls AutoPickup() on the hit frame of the casting animation. If you were to click on an item after casting Teleport, you would need to wait for the casting animation to finish before picking up that item. So technically auto-pickup is getting special treatment.

On the other hand, it's possible to shortcut the casting animation by casting another spell so you may never even reach the last frame of the casting animation for Teleport. If we attempt to move auto-pickup to the end of the casting animation, then this becomes a somewhat unreliable feature.

Something to think about.

@kphoenix137
Copy link
Collaborator Author

The original behavior is auto pickup on completion of walk movement, this PR expands that to auto pickup on completion of any type of movement.

That does evoke one thought in my mind. AutoPickup() is called in DoWalk() on the last frame of the animation. This PR calls AutoPickup() on the hit frame of the casting animation. If you were to click on an item after casting Teleport, you would need to wait for the casting animation to finish before picking up that item. So technically auto-pickup is getting special treatment.

On the other hand, it's possible to shortcut the casting animation by casting another spell so you may never even reach the last frame of the casting animation for Teleport. If we attempt to move auto-pickup to the end of the casting animation, then this becomes a somewhat unreliable feature.

Something to think about.

I suppose the correct way to do this then would be to go back to my first approach, which is to call it every time the player starts the standing animation. This already occurs indirectly, because StartStand() is called, then AutoPickup() is called shortly after.

@kphoenix137 kphoenix137 changed the title Auto Pickup on Teleport Auto Pickup more frequently Dec 9, 2025
@StephenCWills
Copy link
Member

I suppose the correct way to do this then would be to go back to my first approach, which is to call it every time the player starts the standing animation.

I'm not so sure about that, because it would trigger auto-pickup when transitioning from other completely unrelated actions, like a melee attack or a Fireball spell.

That said, you should take what I say with a grain of salt. I can only imagine the type of person who would really care about having this feature because I am not one of them. Perhaps the player who turns on this feature doesn't actually care about these little details, and they just want the gold and potions to be picked up automatically along their path. And perhaps even the purists wouldn't particularly care if someone could theoretically have a slight advantage by turning on auto-pickup because it's just gold and potions. Really low-stakes stuff.

@kphoenix137
Copy link
Collaborator Author

, you should take what I say with a grain of salt. I can only imagine the type of person who would really care ab

You're right though about potential issues. Through testing, I noticed that there was no autopickup while chain casting Teleport. or immediately queuing another action after a teleport. Doing autopickup when the player goes to idle animation doesn't fix that, but it's at least consistent. If the player has this option enabled, I would assume they want to pick up items as soon as possible. This is the closest we can get to that without running the function every frame.

@StephenCWills
Copy link
Member

Through testing, I noticed that there was no autopickup while chain casting Teleport. or immediately queuing another action after a teleport.

Huh, I'm not seeing that at all. With only the first commit of this PR, I can't walk or teleport next to a gold pile without picking it up, no matter how I try to queue other actions.

@kphoenix137
Copy link
Collaborator Author

Through testing, I noticed that there was no autopickup while chain casting Teleport. or immediately queuing another action after a teleport.

Huh, I'm not seeing that at all. With only the first commit of this PR, I can't walk or teleport next to a gold pile without picking it up, no matter how I try to queue other actions.

I tested the first commit and was able to not pick up a gold pile by clicking and holding right click onto the pile and continuing to hold right click to teleport off of it. The pile was still there.

@StephenCWills
Copy link
Member

That's because auto-pickup doesn't work on items you're standing on.

@kphoenix137
Copy link
Collaborator Author

That's because auto-pickup doesn't work on items you're standing on.

Yikes I didn't realize that

@neube3
Copy link
Contributor

neube3 commented Jan 3, 2026

That's because auto-pickup doesn't work on items you're standing on.

If this is intended - may I ask why?

@StephenCWills
Copy link
Member

I don't think it's intended. Honestly, it should probably be fixed.

@kphoenix137 kphoenix137 changed the title Auto Pickup more frequently [Rebalance] Auto Pickup more frequently Jan 8, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Feature Request]: Pick up gold QoL extensions - pick up irrespective of manner of transport onto the square

5 participants