Login
User Name:

Password:



Register

Forgot your password?
Changes list / Addchange
Author: Khonsu
Submitted by: Khonsu
6Dragons mp3 sound pack
Author: Vladaar
Submitted by: Vladaar
AFKMud 2.2.3
Author: AFKMud Team
Submitted by: Samson
SWFOTEFUSS 1.5
Author: Various
Submitted by: Samson
SWRFUSS 1.4
Author: Various
Submitted by: Samson
Users Online
Google, AhrefsBot

Members: 0
Guests: 25
Stats
Files
Topics
Posts
Members
Newest Member
488
3,788
19,631
595
Khonsu

Today's Birthdays
There are no member birthdays today.
» SmaugMuds » Codebases » SmaugFUSS » Bug in disarm( )
Forum Rules | Mark all | Recent Posts

Bug in disarm( )
< Newer Topic :: Older Topic > Missing check for remove progs...

Pages:<< prev 1 next >>
Post is unread #1 Nov 6, 2017 11:21 pm   
Go to the top of the page
Go to the bottom of the page

GatewaySysop
Conjurer
GroupMembers
Posts413
JoinedMar 7, 2005

 
Another one that popped up in play testing (I should do more of that!). When being disarmed, the remove progs are not being checked. Easy fix though! :wink:

In skills.c, function disarm( ), around here:

   if( obj == get_eq_char( victim, WEAR_WIELD ) && ( tmpobj = get_eq_char( victim, WEAR_DUAL_WIELD ) ) != NULL )
      tmpobj->wear_loc = WEAR_WIELD;

   obj_from_char( obj );


Consider adding this:

   if( obj == get_eq_char( victim, WEAR_WIELD ) && ( tmpobj = get_eq_char( victim, WEAR_DUAL_WIELD ) ) != NULL )
      tmpobj->wear_loc = WEAR_WIELD;

   oprog_remove_trigger( victim, obj );

   obj_from_char( obj );


Post is unread #2 Nov 7, 2017 6:19 pm   
Go to the top of the page
Go to the bottom of the page

Remcon
Geomancer
GroupAdministrators
Posts1,914
JoinedJul 26, 2005

 
This one I remember from being a player...now that you mention it. It was the only way to remove some items that would use triggers to keep you from removing it.

Post is unread #3 Nov 12, 2017 8:54 pm   Last edited Nov 12, 2017 8:57 pm by GatewaySysop
Go to the top of the page
Go to the bottom of the page

GatewaySysop
Conjurer
GroupMembers
Posts413
JoinedMar 7, 2005

 
Remcon said:

This one I remember from being a player...now that you mention it. It was the only way to remove some items that would use triggers to keep you from removing it.


Yup. And if I recall other bugs, it was also possible to use disarm to remove what should be non-removable items. Lots of holes in that disarm code, which is surprising given that it must have been a widely exploited set of bugs and, presumably, well known. How nobody caught it and/or fixed it sooner is seriously beyond me. :shrug:

I need to do more play testing and catch more of these bugs. :imp:

Pages:<< prev 1 next >>