Death, corpses, and unconscious PCs

Scripted ALFA systems & related tech discussions (ACR)

Moderators: ALFA Administrators, Staff - Technical

Locked
Ronan
Dungeon Master
Posts: 4611
Joined: Sun Feb 20, 2005 9:48 am

Death, corpses, and unconscious PCs

Post by Ronan »

I've been thinking this architecture may suit us better. The three systems are closely intertwined, but the shared functionality of PC corpses means I think this may be a good way to organize them,
(Edit, this forum doesn't like ASCII art)

curing/healing abilities ----> Nonlethal system <----> corpse system

raise dead abilities -----> Dead system <------> corpse system

So the death system would only handle moving PCs to the fugue plane, applying experience loss on a raise, and of course persistantly keeping track of whether or not a PC is dead (I'm thinking a bitwise local int for this, if anyone can think of other flags which might need to be set on a PC we could make a small system out of it).

The nonlethal system would handle the same things for unconsious PCs. Do something with the PC itself, while spawning a corpse. With all the PC's items.

The corpse system is more complex, persistantly keeping track of every PC corpse on the server and who they belong to. It also handles transportation, looting, mutilation, and coupe-de-grace saves and damage tracking (for KOed PCs). It also is in charge of moving a KO/dead PC back into his corpse, giving his inventory back and re-equiping his items.

Thoughts?
User avatar
ç i p h é r
Retired
Posts: 2904
Joined: Fri Oct 21, 2005 4:12 pm
Location: US Central (GMT - 6)

Post by ç i p h é r »

The only comment I have is that if the corpse system is shared, these three have to be contained in one *system* (for modularity), though they can certainly be conceived of as individual subsystems within it. They cannot each exist independently and be packaged as such.

I would also stick bleeding and resurrection in here somewhere.
Ronan
Dungeon Master
Posts: 4611
Joined: Sun Feb 20, 2005 9:48 am

Post by Ronan »

ç i p h é r wrote:The only comment I have is that if the corpse system is shared, these three have to be contained in one *system* (for modularity), though they can certainly be conceived of as individual subsystems within it. They cannot each exist independently and be packaged as such.
Well, there might be cases where we'd want to use the corpse system outside of PCs, and the nonlethal damage system is certainly designed to be used on NPCs as well as PCs. I don't think there is any reason why they'd be unusable independently of each other?
ç i p h é r wrote:I would also stick bleeding and resurrection in here somewhere.
Resurrection spells would do nothing but include "acr_death_i" and call RaisePCWithPenalties() or RaisePCWithoutPenalties(), where appropriate. Bleeding would just kill the PC, and the death scripts would pick things up at the OnDeath module event.
User avatar
ç i p h é r
Retired
Posts: 2904
Joined: Fri Oct 21, 2005 4:12 pm
Location: US Central (GMT - 6)

Post by ç i p h é r »

Ronan wrote:Well, there might be cases where we'd want to use the corpse system outside of PCs, and the nonlethal damage system is certainly designed to be used on NPCs as well as PCs. I don't think there is any reason why they'd be unusable independently of each other?
I don't think the object it applies to (PC or NPC) matters at all on the [in]dependence of the systems. At least, that's not apparent from the diagram and not what I was trying to remark on in any case. Given the dependence you illustrated though, I'm not sure how they would function independently of one another.

But to clarify the original point, I'll draw your diagram another way:

Code: Select all

curing/healing abilities    raise dead abilities
            |                         |
  nonlethal system (KO)     lethal system (Death)
            |                         |
            -->   corpse  system    <--
The coupling above erodes system modularity. I don't know that we're disagreeing at all aside from our definition of "system" (which is plenty vague) as such dependencies IMO extend the "system" boundaries for packaging purposes (ie you'd never package lethal or nonlethal without corpse as neither can work without it).

What I'm saying in plain english is that I wouldn't call these individual parts (nonlethal, lethal, etc) "systems" as that implies independence (autonomy) and modularity under our conventions. I think they all belong under one "system" if coupled as they are.

Semantics perhaps?
Ronan
Dungeon Master
Posts: 4611
Joined: Sun Feb 20, 2005 9:48 am

Post by Ronan »

ç i p h é r wrote:Semantics perhaps?
Yeah, I think so. In my mind they are modular because the workings of one system does not depend on the other, ie the raise dead script doesn't care how ResurectCorpseWithXPPenalty() works.
Locked