Karl Buchner wrote: > > I wrote the following do_score function several weeks ago. About half the > time that it is used, it crashed. > I have spent several hours trying to debug it, but I think there is > something simple i am missing...any ideas? > > Blaize > > ACMD(do_score) > { > if (IS_NPC(ch)) > return; > > sprintf(buf, > "&BRace: &W%s &BClass: &W%s &BLevel: &W%d\r\n" > "---------- ---------- ---------- ---------- ---------- ----------\r\n" > "&BLevel: &W%d\r\n" > "&BAge : &W%d\r\n" > "&BSTR : &W%d&B \tHitRoll: \t&W%d\r\n" > "&BINT : &W%d&B \tDamRoll: \t&W%d\r\n" > "&BWIS : &W%d&B\r\n" > "&BDEX : &W%d&B \tAlign : \t&W%d\r\n" > "&BCON : &W%d&B \tAttks : \t&W%d\r\n" > "&BCHA : &W%d\r\n" > "&BEXP : &W%d \t&BHits: &W%d &Bof &W%d\r\n" > "&BPracs: &W%d \t&BMana: &W%d &Bof &W%d\r\n" > "&BQuest: &W%d \t&BMove: &W%d &Bof &W%d\r\n" > "&BGold : &W%d\r\n", > pc_race_types[(int) GET_RACE(ch)], pc_class_types[(int) GET_CLASS(ch)], GET_LEVEL(ch), > GET_LEVEL(ch), > GET_AGE(ch), > GET_STR(ch), GET_HITROLL(ch), > GET_INT(ch), GET_DAMROLL(ch), > GET_WIS(ch), > GET_DEX(ch), GET_ALIGNMENT(ch), > GET_CON(ch), NUM_ATTACKS(ch), > GET_CHA(ch), > GET_EXP(ch), GET_HIT(ch), GET_MAX_HIT(ch), > GET_PRACTICES(ch), GET_MANA(ch), GET_MAX_MANA(ch), > GET_QUESTPOINTS(ch), GET_MOVE(ch), GET_MAX_MOVE(ch), > GET_GOLD(ch)); > send_to_char(buf, ch); > } Try deviding it in half: meaning buffer up to Dex, send_char and send second half. See if that helps. (might have a problem with the buf size (8192) and all those color changes) +------------------------------------------------------------+ | Ensure that you have read the CircleMUD Mailing List FAQ: | | http://qsilver.queensu.ca/~fletchra/Circle/list-faq.html | +------------------------------------------------------------+
This archive was generated by hypermail 2b30 : 04/11/01 PDT