09 Jul, 2010, om wrote in the 1st comment:
Votes: 0
***SOLVED*** If you're having this problem, Davion's reply is the solution. ***SOLVED***

Okay, so Thud! is based on ShadowStorm… and I'm having a problem. I created the quest items. Since the quest code sets all the stats, I just made blank items with name, long and short desc, with the extra flag 'quest' since 'quest buy' checks for that, but for some reason when you 'quest buy <item>', nothing happens. At all. It's like you entered a blank line. I've double and triple checked the hard-coded vnums, and figured "okay.. maybe the questmaster mobile just needs to be in the same area file as the quest items.", so I created a new quest hall room, linked it to the east of hassan, but I created the room in my questitem area, and created a questmaster mobile in that area, and added it to the room's resets.

Still.. nada. Same problem. There's nothing in the logs, and the buy command looks just fine.

Below is the part of 'quest buy' that deals with items. I've even tried disabling the extra flag 'quest' because it looks like the part of 'quest buy' that deals with items in the table tries to set the flag itself, and still nothing.

else
{
ch->pcdata->questpoints -= quest_table[i].cost;
if (!IS_IMMORTAL(ch))
{
sprintf(buf, "Bought a %s (%d) for %d questpoints.", quest_table[i].name, quest_table[i].vnum, quest_table[i].cost);
append_file(ch, QUEST_FILE, buf);
}
}

if (!IS_SET(obj->pIndexData->extra_flags, ITEM_QUEST))
{
SET_BIT(obj->pIndexData->extra_flags, ITEM_QUEST);
SET_BIT(obj->extra_flags, ITEM_QUEST);
SET_BIT(obj->pIndexData->area->area_flags, AREA_CHANGED);
}
act("$N gives $p to $n.", ch, obj, questman, TO_ROOM);
act("$N gives you $p.", ch, obj, questman, TO_CHAR);
obj_to_char(obj, ch);
save_char_obj(ch);
return;
}


Any ideas?
09 Jul, 2010, Davion wrote in the 2nd comment:
Votes: 0
There appears to be a stray return.

if ( ch->levelflux < 6 )
{
if (quest_table[i].vnum == 2 )
{
ch->pcdata->questpoints -= quest_table[i].cost;
ch->levelflux++;
printf_to_char( ch, "Your level flux has been raised to %d!\n\r", ch->levelflux );
return;
}
return; // <- THIS IS WRONG! Delete.

}
09 Jul, 2010, om wrote in the 3rd comment:
Votes: 0
As if you weren't already my hero for ShadowStorm, you go and rescue me from a bug.

In other words: Thanks Davion. That fixed it.
09 Jul, 2010, Runter wrote in the 4th comment:
Votes: 0
Do not be lulled into a sense of security by Davion. He true plans will become known for you in time.
09 Jul, 2010, Davion wrote in the 5th comment:
Votes: 0
om said:
As if you weren't already my hero for ShadowStorm, you go and rescue me from a bug.

In other words: Thanks Davion. That fixed it.


*blush*. I updated the source a bit (this bug included!)
10 Jul, 2010, Igabod wrote in the 6th comment:
Votes: 0
how about the buggy worshipping code?
18 Jul, 2010, Davion wrote in the 7th comment:
Votes: 0
Igabod said:
how about the buggy worshipping code?


Sorry Iggy, I kinda missed this..

Do you have anything specific?
18 Jul, 2010, Chris Bailey wrote in the 8th comment:
Votes: 0
While your at it Davion, fix that other bug in that one system. :P
0.0/8