The World of Layonara

The NWN Persistent World => Bugs => Fixed Bugs => Topic started by: akata on September 09, 2008, 05:02:28 PM

Title: Horse Saddle
Post by: akata on September 09, 2008, 05:02:28 PM
Description: using the horse saddle while not being on a horse and choosing to dismount makes a clone horse.

Weeblie says that unlike before, this is even worse now. Character appearance, footstep sound and a few other settings of the character will get "zeroed" on the second dismount.
 
Location: -

Verified: -

Reproducable: yes
Title: Re: Horse Saddle
Post by: Dorganath on September 09, 2008, 05:03:45 PM
Can you or Weeblie be more specific on what "zeroed" means?
Title: Re: Horse Saddle
Post by: Weeblie on September 09, 2008, 05:39:50 PM
It depends a little bit on how much we are using the default Bioware horse scripts. The zero-ing out might in fact be unrelated to the second dismount (more on that later).

I believe a normal mount/dismount cycle should look like the following (assume that STUFF = "phenotype, appearance, footsteps and other stuff"):

1. PC's current STUFF is stored onto variables on the creature skin (lets call it OLD_STUFF).
2. PC changes STUFF to MOUNTED_STUFF (mounts).
3. PC takes a ride.
4. OLD_STUFF is read from the variables on the creature skin.
5. PC restores STUFF to OLD_STUFF (dismounts).
6. OLD_STUFF is cleared from the creature skin (I'm not 100% sure about this step).

A potential double-dismount would give the following:

7. OLD_STUFF is read from the non-existing variables on the creature skin. Non-existing variables always return a value of 0 (hence the "zero-ing").
8. PC "restores" STUFF to OLD_STUFF (dismounts). I.e. PC gets a dwarf (0) appearance, phenotype 0, footprints 0, etc.

Now, I cannot confirm that step 6 actually happens. What do can happen is:

1. PC's current STUFF is stored onto variables on the creature skin (lets call it OLD_STUFF).
2. PC changes STUFF to MOUNTED_STUFF (mounts).
3. PC takes a ride.
4. Original creature skin is destroyed (and a new one created) by our old scripts. Like... Duelist weapon toggling? Subrace relogging (potential race condition on that one)? Dying while riding a horse?
5. OLD_STUFF is read from the non-existing variables on the creature skin. Non-existing variables always return a value of 0 (hence the "zero-ing").
6. PC "restores" STUFF to OLD_STUFF (dismounts). I.e. PC gets a dwarf (0) appearance, phenotype 0, footprints 0, etc.

While the dwarf appearance thing has only been witnessed once so far (with Angela doing a double-dismount), both me and Alantha has been affected by that even though we are dismounted, we have the "horse footstep" sound.
Title: Re: Horse Saddle
Post by: Dorganath on September 09, 2008, 06:15:01 PM
I was hoping for a more thorough description of what was happening and when, not an analysis of what could happen based on assumptions of what the scripts look like.
Title: Re: Horse Saddle
Post by: Weeblie on September 09, 2008, 06:30:30 PM
Dwarf appearance due to double-dismount (Angela).
Me and Alantha having "horse" as footstep sound. We didn't really do anything more than just to mount and dismount. Angela had this issue too, but for some weird reason, it got "fixed" after the double-dismount.
Title: Re: Horse Saddle
Post by: Dorganath on September 09, 2008, 08:46:27 PM
Double dismount should not be possible with the next patch.  Footsteps should restore properly also.

Patch coming soon.
SimplePortal 2.3.7 © 2008-2026, SimplePortal