1.10:
This version fixes a few bugs with the persistant system. I added a DM wand to configure the system while in game, however changes made with the wand will disappear when the module is loaded again. I also added 2 new options. The first one allows to disable the ability to loot PC corpses. The second one will prevent players from leaving with other PC corpses in theire inventory.
Warning: some scripts have been removed, see the read me for more details.
These scripts allow NPC and PC to leave corpses when they die. This corpses can be moved, resurected, raised and destroyed. An option allow to cut off the skin of a dead creature. Many functions allow you to configure the system. I also added some so that local variable stored on creature can be preserved after its corpse as been moved.
Available options are: _ decay (the corpse disappear after a delay) _ hidden objects (object on the creatures are hidden, you must search them) _ saving throws (when a corpse is destroyed objects on it may be destroyed as well) _ various options for PC. _ corpse can be picked up. _ persistant PC corpses. _ see the read me if I forgot any :D
Posted by Entropicus at 2006-10-25 13:44:33 Voted 10.00 on 10/25/06
This is probably the best corpse system available for NwN. It's allows you to do almost everything with corpses. Also it's quite heavily documented, but there is luck of comments in script. I took a one or maybe to times look on it and didn't find this documents much useful. I prefer reading codes then documentation. It's better for this reason that allows me to better understand how something works.
I didn't like latest innovations like three steps decoy. In my opinion it doesn't look to good. And after all corpses are only corpses and disappearing of it from game world doesn't need this kind of explanation. Wild animals, battlefield robbers, necromancers, merciful journeyman's such stuff. But this system not only provide many interesting effects like for example corpses taking damage from fire and electricity, but also it makes possible to turn on only those we wish to use in mod. So, it's quite easy to operate without “tweaking” library's. Also as far as I know it seemed to work bugles and its “update resist”. It's keep working as should! And I don't know for what reason you are keeping including two unused scripts which are doesn't work anymore. Compatibility with older game patches?
Finally the most annoying thing in this is that it's rated so low. I really don't know why because this system has it's own original solutions and it's really good. But is sticking around like some unburied corpse so here is a “rescue” note for this masterpiece. I hope that this state will change for better (Score, system is good) and that you will wrote something of this quality for NwN from time to time.
Could you give me more details about what's appening when moving a corpse?
Posted by Kazdum ( 200.176.xxx.xxx ) at 2005-09-02 12:17:08
I am with trouble here Letroll, when a PC dies, no one can take his body and move it to another place, if you move it you cannot cast rise or ress on the body anymore.
Posted by Kazdum ( 200.176.xxx.xxx ) at 2005-09-02 12:16:35
I am with trouble here Letroll, when a PC dies, no one can take his body and move it to another place, if you move it you cannot cast rise or ress on the body anymore.
Posted by SW ( 67.49.xxx.xxx ) at 2005-07-27 01:04:35
Hmm, well, as long as the PC in question doesn't have their stuff gone, I guess that's cool.
SW:
Yes they are taken off, but no one can get them from your body. It's working like this to increase crash safety when using database. I know it can be anoying but I don't think I'm going to change this behaviour.
Posted by SW ( 67.49.xxx.xxx ) at 2005-07-25 20:08:10
Scratch that running smoothly. I've added this into the corpse_mod_load script:
SetCorpseModuleFlag(CorpseFlag_NoPCLooting);
which should turn off PC's dropping loot when they die, the scripts compile and save .. but, whenever I host a game, load a single player module with your demo module after turning off the PC drops of inventory, they still occur.
Even with this flag set to NoPCLooting, everytime I die, things from my inventory are still taken.
Any Ideas?
Posted by SW ( 67.49.xxx.xxx ) at 2005-07-25 19:29:13
Well, I know about flags and function calls, that's why I was confused when you had stated that (as I had the older version that was placed up by mistake), and thus didn't have the function calls for the No PC Looting.
Now I have the right ones, and it's smoothly running now. I just want to let you know that this is the best of the PC lootable corpses that I have seen yet, easy to use (once you have the correct version, hehe) and very, very versatile.
SW:
As I said before, I made a mistake when I uploaded the last version on the vault. Now the vault holds the right files, so just get the last version.
SW:
CorpseFlag_NoPCLooting is a variable used to define a flag. Flags are used to store multiple boolean variable in the same integer.
You can call the SetCorpseModuleFlag function to set one specific flag value:
SetCorpseModuleFlag(CorpseFlag_NoPCLooting);
You can also change the set of several flags at the smae time by combining them with a binary or operator (|):
Posted by SW ( 67.49.xxx.xxx ) at 2005-07-24 22:46:52
Posted by SW ( 67.49.xxx.xxx ) at 2005-07-24 22:46:36
Posted by SW ( 67.49.xxx.xxx ) at 2005-07-24 22:45:30
Ok, now call me new to scripting (which I am btw), but shouldn't any function calls be backed up by a function?
I was looking through your corpse_lib and I do not see any defined flag for CorpseFlag_NoPCLooting at all. The following is taken right from your corpse_lib where you state that you define function calls that you can do from the module_load:
"//Flags: this is the new way of handeling some options.
///This flag tells if items on corpses should be damaged when the corpse holding them is damaged.
const int SetLocalFloat_Corpse = 0x00000001;
///This flag tells if player characters should leave a corpse.
const int CorpseFlag_UsePickablePCCorpses = 0x00000002;
///This flag tells if dead creatures can be resurected by default.
const int CorpseFlag_DefaultResurectable = 0x00000004;
///This flag tells if corpses are pickable by default.
const int CorpseFlag_DefaultPickable = 0x00000008;
///This flag tells if henchmen should be fired at their master's death.
const int CorpseFlag_FireHenchMenOnDeath = 0x00000010;
///This flag tells if the corpses can burn.
const int CorpseFlag_UseBurningCorpses = 0x00000020;
///This flag activates the bioware database support.
const int CorpseFlag_UseDatabase = 0x00000040;"
That listing is the only place where you have the actual CorpseFlag_* tags at all even mentioned.
Am I wrong in assuming that you can't make a function call to a function that is not even defined in the main "body" of the include script?
Posted by SW ( 67.49.xxx.xxx ) at 2005-07-24 22:41:20
Ok, if that's what you are saying to do ... it's not working. If you add this * CorpseFlag_NoPCLooting * into these function calls within your module_load script on line 26 which states the following:
if what you're saying is true, then you can add a function call like this:
CorpseFlag_NoPCLooting
and have it work?
Weeeelllll.
I did that, and when I went to save/compile that script I got the following error:
7/24/2005 10:19:49 PM: Error. 'module_load' did not compile.
module_load.nss(26): ERROR: VARIABLE DEFINED WITHOUT TYPE
Any Ideas?
Posted by SW ( 67.49.xxx.xxx ) at 2005-07-24 22:22:15
Ok, if that's what you are saying to do ... it's not working. If you add this * CorpseFlag_NoPCLooting * into these function calls within your module_load script on line 26 which states the following:
Just set the CorpseFlag_NoPCLooting flag on the module using the SetCorpseModuleFlag function in you module on load script.
Posted by SW ( 67.49.xxx.xxx ) at 2005-07-22 13:48:03
Well now,
That I can do (about the deity plane thing), but what I am still a might bit confused on, along with Athis there, is how to go about actually turning off the lootable portion for PC's. Your documentation is not to specific on how this is done exactly. Could you elaborate?
Posted by Athis / Ghetteran / Jherred ( 207.118.xxx.xxx ) at 2005-07-22 09:15:19
Letoll, I really like your system, btu I "REALLY" need help with it, it is so complex it is driving me crazy :P I need some simple instructions ( which files to deit and what lines to edit ) on how to turn off the Inventory drop. I want my players to be able to get the corpse, and take it to a healer, or ressurect the corspes, but I do not want it lootable by others. can you please tell me how this is done? I PMd and Emailed you earlier this week and would be very greatful for any help!
SW :
The good news is you don't need to use the CorpseNoLoot local variable trick any more. I added a new option in the last version to disable the PC looting.
What you could do for your crypt idea is using the area where dead PC are sent as a step to the final death plane. Then use a door or a npc to send the dead to her/his plane. You could also create an on enter script to redirect the dying PC entering the area. The last solution is to modify the corpse_dying script which is where the PC is moved.
Posted by SW ( 67.49.xxx.xxx ) at 2005-07-21 02:12:05
Oh, and would it be possible to have different "crypts" based on something like what's typed in the "deity" function?
Example:
Could you use your system along with a deity system that, if you are a Cleric of say ... Torm ... that you would/could travel to Torm's plane of existance instead of the "crypt" that you have in your module?
Just wondering how one would implement that type along with this script.
Posted by SW ( 67.49.xxx.xxx ) at 2005-07-21 02:05:51
Oh, and would it be possible to have different "crypts" based on something like what's typed in the "deity" function?
Example:
Could you use your system along with a deity system that, if you are a Cleric of say ... Torm ... that you would/could travel to Torm's plane of existance instead of the "crypt" that you have in your module?
Just wondering how one would implement that type along with this script.
Posted by SW ( 67.49.xxx.xxx ) at 2005-07-21 02:02:42
One thing that is not totally clear on this item ...
"Yes in order to forbid items dropping jsut set the CorpseNoLoot local variable to TRUe on the PC."
Where does one set this? Your documentation in good, but no help on where/how exactly to set this, especially if you are a Noob :oP
All is working with NWN 1.65. If you patched to 1.66 and it's not working any more... Well wait until an official release of the 1.66.
More likely I think you forgot something such as placing the waypoint where dead NPC are transported when theire corpse are moved.
Posted by Anonymous ( 172.214.xxx.xxx ) at 2005-04-05 22:19:00
wow this is truly revolutionary but i think it is bugged. maybe since the last patch? I dunno. But whenever you pick up a corpse, there is still one left behind, which is a shame because i think players would have some good fun with this! Evereything else works just fine! By the way is it possible to drag pc corpses?