Custom Content requests that aren't HAKs.

New models, textures, & integration of 3rd party content.

Moderators: ALFA Administrators, Staff - Technical

User avatar
hollyfant
Staff Head on a Pike - Standards
Posts: 3481
Joined: Mon Oct 24, 2005 3:33 pm
Location: the Netherworl... lands! I meant the Netherlands.

Custom Content requests that aren't HAKs.

Post by hollyfant »

Could the Detect Poison cantrip be added to the game as a RP spell please?
Zelknolf
Chosen of Forumamus, God of Forums
Posts: 6139
Joined: Tue Jul 05, 2005 7:04 pm

Re: Custom Content requests that aren't HAKs.

Post 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.
Ronan
Dungeon Master
Posts: 4611
Joined: Sun Feb 20, 2005 9:48 am

Re: Custom Content requests that aren't HAKs.

Post 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.
User avatar
hollyfant
Staff Head on a Pike - Standards
Posts: 3481
Joined: Mon Oct 24, 2005 3:33 pm
Location: the Netherworl... lands! I meant the Netherlands.

Re: Custom Content requests that aren't HAKs.

Post 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.
User avatar
AcadiusLost
Chosen of Forumamus, God of Forums
Posts: 5061
Joined: Tue Oct 19, 2004 8:38 am
Location: Montara, CA [GMT -8]
Contact:

Re: Custom Content requests that aren't HAKs.

Post 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.
User avatar
hollyfant
Staff Head on a Pike - Standards
Posts: 3481
Joined: Mon Oct 24, 2005 3:33 pm
Location: the Netherworl... lands! I meant the Netherlands.

Re: Custom Content requests that aren't HAKs.

Post 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.
User avatar
Riotnrrd
DMA's Technical Liaison
Posts: 1682
Joined: Sat Jan 03, 2004 2:04 pm

Re: Custom Content requests that aren't HAKs.

Post by Riotnrrd »

I'll be reexamining spells in the near future. I'll add detect poison to the list.
Zelknolf
Chosen of Forumamus, God of Forums
Posts: 6139
Joined: Tue Jul 05, 2005 7:04 pm

Re: Custom Content requests that aren't HAKs.

Post 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.
User avatar
hollyfant
Staff Head on a Pike - Standards
Posts: 3481
Joined: Mon Oct 24, 2005 3:33 pm
Location: the Netherworl... lands! I meant the Netherlands.

Re: Custom Content requests that aren't HAKs.

Post by hollyfant »

Would it be possible to implement "taking ten" on the dice roller?
SwordSaintMusashi
Mook
Posts: 963
Joined: Mon Oct 10, 2005 4:49 pm
Location: Virginia
Contact:

Re: Custom Content requests that aren't HAKs.

Post by SwordSaintMusashi »

hollyfant wrote:Would it be possible to implement "taking ten" on the dice roller?
And Take 20 while we're at it.
Current PCs:
Zova Earth Breaker, Monk of Rasheman
Alyra Ashedown, Knight Commander of Silverymoon
Sandermann
Rust Monster
Posts: 1228
Joined: Sun Jul 18, 2004 3:01 pm
Location: Richmond, North Yorkshire

Re: Custom Content requests that aren't HAKs.

Post 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
PC: Liasola Dark Arrow
Ex PC: Arzit'el Tlabbar

Blindhamsterman : "I think Sand may have just won the internet"
User avatar
Lucifer
Gelatinous Cube
Posts: 338
Joined: Thu Aug 06, 2009 10:29 pm

Re: Custom Content requests that aren't HAKs.

Post 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
SwordSaintMusashi
Mook
Posts: 963
Joined: Mon Oct 10, 2005 4:49 pm
Location: Virginia
Contact:

Re: Custom Content requests that aren't HAKs.

Post 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.
Current PCs:
Zova Earth Breaker, Monk of Rasheman
Alyra Ashedown, Knight Commander of Silverymoon
User avatar
hollyfant
Staff Head on a Pike - Standards
Posts: 3481
Joined: Mon Oct 24, 2005 3:33 pm
Location: the Netherworl... lands! I meant the Netherlands.

Re: Custom Content requests that aren't HAKs.

Post 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?
paazin
Fionn In Disguise
Posts: 3544
Joined: Thu Apr 15, 2004 1:07 am
Location: UTC +2
Contact:

Re: Custom Content requests that aren't HAKs.

Post by paazin »

We had that in ALFA1. For some reason we never did in ALFA2.
People talk of bestial cruelty, but that's a great injustice and insult to the beasts; a beast can never be so cruel as man, so artistically cruel.
Locked