Page 1 of 2

Custom Content requests that aren't HAKs.

Posted: Sat May 14, 2011 9:47 am
by hollyfant
Could the Detect Poison cantrip be added to the game as a RP spell please?

Re: Custom Content requests that aren't HAKs.

Posted: Sat May 14, 2011 1:53 pm
by Zelknolf
Weeeeeell, this is actually a hak request. But if admin voice approval, I wrote this one for Mundasia-- set to detect poison (if another PC is poisoned, for instance) and things that are poisonous (that is, if a bad guy's natural weapons have a poison property). It includes a flag that responded to potion-spiking functionality (yeah, I know; I'm a mean little cuss. But you could poison a CLW and give it to someone there. Chug some con damage and lolwin.) which is relatively versatile, if someone feels up to adding something that DMs can use to manipulate the flags.

It lacks the PnP wisdom and/or craft (alchemy) check to ID the poison. I flip the bird if someone says that's a dealbreaker.

Code looks like this:

Code: Select all

void main()
{
    if(!X2PreSpellCastCode()) return;

    object oTarget = GetSpellTargetObject();

    if(GetObjectType(oTarget) == OBJECT_TYPE_CREATURE)
    {
        int nPoisonous = 0;
        nPoisonous += GetIsItemPoisonous(GetItemInSlot(INVENTORY_SLOT_RIGHTHAND, oTarget));
        nPoisonous += GetIsItemPoisonous(GetItemInSlot(INVENTORY_SLOT_LEFTHAND, oTarget));
        nPoisonous += GetIsItemPoisonous(GetItemInSlot(INVENTORY_SLOT_ARROWS, oTarget));
        nPoisonous += GetIsItemPoisonous(GetItemInSlot(INVENTORY_SLOT_BOLTS, oTarget));
        nPoisonous += GetIsItemPoisonous(GetItemInSlot(INVENTORY_SLOT_BULLETS, oTarget));
        nPoisonous += GetIsItemPoisonous(GetItemInSlot(INVENTORY_SLOT_CWEAPON_B, oTarget));
        nPoisonous += GetIsItemPoisonous(GetItemInSlot(INVENTORY_SLOT_CWEAPON_L, oTarget));
        nPoisonous += GetIsItemPoisonous(GetItemInSlot(INVENTORY_SLOT_CWEAPON_R, oTarget));
        if(nPoisonous) SendMessageToPC(OBJECT_SELF, GetName(oTarget) + " is poisonous.");
        if(GetHasEffect(EFFECT_TYPE_POISON, oTarget)) SendMessageToPC(OBJECT_SELF, GetName(oTarget) + " is poisoned.");
        else if(nPoisonous == 0) SendMessageToPC(OBJECT_SELF, GetName(oTarget) + " is neither poisoned nor poisonous.");
        return;
    }

    else if(GetLocalInt(oTarget, "POISONED") == 1)
        SendMessageToPC(OBJECT_SELF, "This object is poisoned.");

    else
        SendMessageToPC(OBJECT_SELF, "This object is not poisoned.");
}

int GetIsItemPoisonous(object oItem)
{
    if(!GetIsObjectValid(oItem)) return FALSE;
    itemproperty ipProperty = GetFirstItemProperty(oItem);
    while(GetIsItemPropertyValid(ipProperty))
    {
        if((GetItemPropertyType(ipProperty) == ITEM_PROPERTY_POISON) ||
           (GetItemPropertyType(ipProperty) == ITEM_PROPERTY_ON_MONSTER_HIT && GetItemPropertySubType(ipProperty) == IP_CONST_ONMONSTERHIT_POISON) ||
           (GetItemPropertyType(ipProperty) == ITEM_PROPERTY_ONHITCASTSPELL && GetItemPropertySubType(ipProperty) == IP_CONST_ONHIT_CASTSPELL_POISON))
            return TRUE;
        ipProperty = GetNextItemProperty(oItem);
    }
    return FALSE;
}

I'm in spells.2da anyway to write my GUI. If admin thumbs up, I'll just add the line.

Re: Custom Content requests that aren't HAKs.

Posted: Sat May 14, 2011 2:39 pm
by Ronan
I thought I added a Detect Poison RP spell way back? Whatever the case I'd put it in, even if some admin hates the implementation you can always use the 2da line for the RP spell.

Re: Custom Content requests that aren't HAKs.

Posted: Sat May 14, 2011 3:22 pm
by hollyfant
Ronan wrote:I thought I added a Detect Poison RP spell way back?
It wasn't in the list of my Spirit Shaman. And I'd settle for the RP spell, though Zelfnolf's system looks pretty nifty.


Another request. Actually, it's more of a bug, but we don't have an ALFA-wide bug thread.
Compete Divine wrote:Each spirit shaman must choose a time at which she must spend 1 hour in quiet meditation to regain her daily allotment of spells and bargain with the spirits for the specific spells she knows on that day.
In ALFA, Spirit Shamans rest to regain their spells. Could they be made to "pray" instead, like Clerics? It seems more in line with the PnP description.

Re: Custom Content requests that aren't HAKs.

Posted: Tue May 17, 2011 5:11 pm
by AcadiusLost
I believe the RP placeholder Detect Poison was a NWN1 add. The only extra spells that have gone into NWN2-ALFA are the handful that Riotnrrd put together and I integrated a while back.

Detect Poison seems like a good add to me.

re: Spirit Shamans and praying vs. resting, I'd just treated all innate casters the same when accounting for them for spell restoration in the ACR.

Should Favored Souls restore spells by praying as well? It would seem odd that they would get their spells by resting alone, wheras the less-overtly-divine Spirit Shamans have to pray for them.

It should be mentioned that there is some statistical advantage to the "praying" option, as it allows 1 spell restoration "in the field" away from nice safe restable areas.

Is this a Standards debate issue, or a simple rulebook oversight? Interested to hear thoughts on the matter.

Re: Custom Content requests that aren't HAKs.

Posted: Tue May 17, 2011 5:35 pm
by hollyfant
AcadiusLost wrote:Should Favored Souls restore spells by praying as well?
Oddly enough, Complete Divine does not say anything about how FSes gain their daily allotment of spells. No mention is made of resting, prayer or meditation. :huh:
It should be mentioned that there is some statistical advantage to the "praying" option, as it allows 1 spell restoration "in the field" away from nice safe restable areas.
While the SS is a somewhat gimped class, no full caster needs a power boost.
Is this a Standards debate issue, or a simple rulebook oversight? Interested to hear thoughts on the matter.
Standards has not discussed the matter. I can start a thread if you want some feedback, but since I play a SS myself would have to abstain from contributing.

Re: Custom Content requests that aren't HAKs.

Posted: Tue May 17, 2011 6:25 pm
by Riotnrrd
I'll be reexamining spells in the near future. I'll add detect poison to the list.

Re: Custom Content requests that aren't HAKs.

Posted: Tue May 17, 2011 10:32 pm
by Zelknolf
Riotnrrd wrote:I'll be reexamining spells in the near future. I'll add detect poison to the list.
I might point you to the copy of Mundasia on the tech FTP. There's a script for every level 0 and 1 SRD spell there. They need a conversion from NWN1 -> 2 in some cases, but I would be giggles and mirth if they got used.

Giggles. And. Mirth.


Also, my NPC GUI uses spells.2da and iprp_spells.2da to get at saved NPCs. Just, y'know, be aware. There'll be line conflicts if ya just charge it.

Re: Custom Content requests that aren't HAKs.

Posted: Wed Jun 01, 2011 6:35 pm
by hollyfant
Would it be possible to implement "taking ten" on the dice roller?

Re: Custom Content requests that aren't HAKs.

Posted: Wed Jun 01, 2011 7:36 pm
by SwordSaintMusashi
hollyfant wrote:Would it be possible to implement "taking ten" on the dice roller?
And Take 20 while we're at it.

Re: Custom Content requests that aren't HAKs.

Posted: Fri Jun 03, 2011 8:19 am
by Sandermann
You can't add ten or twenty to your skill rank without the aid of a computer? What is happening to kids these days! :P

Re: Custom Content requests that aren't HAKs.

Posted: Fri Jun 03, 2011 11:32 am
by Lucifer
"Should Favored Souls restore spells by praying as well?"

Just for giggles and since I play one now..looked around for info on this and only found it under NwN2 description of the class and it says Favored Souls "Do Not" pray for spells

Re: Custom Content requests that aren't HAKs.

Posted: Fri Jun 03, 2011 12:28 pm
by SwordSaintMusashi
Lucifer wrote:"Should Favored Souls restore spells by praying as well?"

Just for giggles and since I play one now..looked around for info on this and only found it under NwN2 description of the class and it says Favored Souls "Do Not" pray for spells
Favored Souls do not have to pray. Lucifer pretty much answered it.

Re: Custom Content requests that aren't HAKs.

Posted: Sat Jun 04, 2011 10:19 am
by hollyfant
The SRD wrote:Long-Term Care
Providing long-term care means treating a wounded person for a day or more. If your Heal check is successful, the patient recovers hit points or ability score points (lost to ability damage) at twice the normal rate: 2 hit points per level for a full 8 hours of rest in a day, or 4 hit points per level for each full day of complete rest; 2 ability score points for a full 8 hours of rest in a day, or 4 ability score points for each full day of complete rest.

You can tend as many as six patients at a time. You need a few items and supplies (bandages, salves, and so on) that are easy to come by in settled lands. Giving long-term care counts as light activity for the healer. You cannot give long-term care to yourself.
Would it be possible to implement (something like) this; perhaps by using the First Aid widget on a resting PC?

Re: Custom Content requests that aren't HAKs.

Posted: Mon Jun 06, 2011 4:29 am
by paazin
We had that in ALFA1. For some reason we never did in ALFA2.