CleverRaven / Cataclysm-DDA

Cataclysm - Dark Days Ahead. A turn-based survival game set in a post-apocalyptic world.
http://cataclysmdda.org
Other
10.38k stars 4.15k forks source link

It's impossible to get on a horse after you've climbed down from it. #73677

Open IdleSol opened 5 months ago

IdleSol commented 5 months ago

Describe the bug

As the title says, I can't ride after getting off the horse. This option appears after a few turns.

Attach save file

n/a

Steps to reproduce

  1. Standard world and character
  2. Spawning
    • horse tack
    • cattle fodder
    • horse
  3. Tame the horse
  4. Examine the horse test 1
  5. Tack up horse and Examine the horse test 2
  6. Mount horse and take one step in any direction (it doesn't matter).
  7. Dismount horse and press tab or 5. In general, skip one move (to make sure the cache is updated accurately)
  8. Examine the horse test 3
  9. Wait some more time. For example a minute (it can be less, but I didn't check the exact value).
  10. Make sure you can mount the horse again.

Expected behavior

n/a

Screenshots

No response

Versions and configuration

Additional context

No response

EternalLaughter commented 5 months ago

I can confirm the issue, the mount option is not there, just after unmounting the horse. The option to mount re-appears in the UI after a couple turns or movement it seems like, not quite sure what actions makes it re-appear.

Amnestasia commented 5 months ago

A quick test yields the same results. After unmounting the horse, the option to remount will not appear until the horse moves from the tile they were dismounted from.

RenechCDDA commented 5 months ago

It's failing the can_mount check here:

https://github.com/CleverRaven/Cataclysm-DDA/blob/81ede3cc7667289d9c6e7c98dd80c98c6b5d6d03/src/monexamine.cpp#L714-L715

Why? Because it has the controlled effect, which we can see through our brand new monster debug menu. image

Hm, seems that it's on purpose? https://github.com/CleverRaven/Cataclysm-DDA/blob/81ede3cc7667289d9c6e7c98dd80c98c6b5d6d03/src/character.cpp#L1863

It predates the split from player<--->character. Not sure what it's accomplishing.