Re: Disarm

From: Christina Erickson (pcole@ccwf.cc.utexas.edu)
Date: 08/10/95


On Thu, 10 Aug 1995, Mark Garringer wrote:

> 
> Ok, circle 2.2...
> 
> A 1st level charcter, with no skill in disarm does not disarm.
> However, a 4th level charcter, with max skill in disarm does not disarm 
> either.
> A God will always disarm, however...
> 
> code to follow:
> 
>    percent = number(1, 101); /* 101% is a complete failure */
>    prob = GET_SKILL(ch, SKILL_DISARM);
>    
>    if (percent > prob) {
>       act ("You failed to disarm $s.", FALSE, ch, 0, victim, TO_CHAR);
>    } else {
>    disarm(ch, victim);
>    }
> }
> 
> Help? Advice?
> 
> --Ziz, NetShamen

Lets try this one more time....

Well, gee.. at a glance it looks technically correct.
Try some debugging logs to see whats really going on here.

For example:

    char bigbuf[80];
    percent = number(1, 101); /* 101% is a complete failure */
    prob = GET_SKILL(ch, SKILL_DISARM);

    sprintf(bigbuf, "You rolled %d with probability %d\r\n", percent, prob);
    send_to_char(ch, bigbuf);  /* check your code for exact argument order *
                                * of send_to_char(...)                     */

    /* or use this instead if you don't wish to lookup send_to_char        *
     * act (bigbuf, FALSE, ch, 0, victim, TO_CHAR);                        */
      
    if (percent > prob) {
       act ("You failed to disarm $s.", FALSE, ch, 0, victim, TO_CHAR);
    } else {
    disarm(ch, victim);
    }
 }

This will hopefully show you whats malfunctioning.

TIP: Debug logs are wonderful tools for software developers of any 
     expertise level... But especially for those who haven't yet delved
     into source level debuggers <gdb, dbx> because they allow you to
     see what your code is doing without any esoteric knowledge of
     other software tools..
     If you can add a few lines of code, you can surely use debug logs
     to hack out the final version.

  --Paul Cole

-- Shameless Plug
Stil @ Forbidden Lands <mud.cyberspace.com 5000> 
                       <http://www.cyberspace.com/flmud>



This archive was generated by hypermail 2b30 : 12/18/00 PST