Added Elite Troll creature
Added Elite Troll creature.
This commit is contained in:
parent
edb3ec4afe
commit
b2c9230e9b
@ -6353,7 +6353,7 @@
|
||||
},
|
||||
"Version": {
|
||||
"type": "dword",
|
||||
"value": 16
|
||||
"value": 17
|
||||
},
|
||||
"Width": {
|
||||
"type": "int",
|
||||
|
@ -646,6 +646,13 @@
|
||||
"value": "This is the default waypoint you may place to set a patrol path for a creature or NPC.\r\n1. Create the creature and either use its current Tag or fill in a new one.\r\n2. Place or make sure the WalkWayPoints() is within the body of the On Spawn script for the creature.\r\n3. Place a series of waypoints along the route you wish the creature to walk.\r\n4. Select all of the newly created waypoints and right click. Choose the Create Set option.\r\n5. The waypoint set will have a set name of \"WP_\" + NPC Tag. Thus if an NPC with the Tag \"Guard\" will have a waypoint set called \"WP_Guard\". Note that Tags are case sensitive."
|
||||
}
|
||||
},
|
||||
{
|
||||
"__struct_id": 5,
|
||||
"Comment": {
|
||||
"type": "cexostring",
|
||||
"value": "This is the default waypoint you may place to set a patrol path for a creature or NPC.\r\n1. Create the creature and either use its current Tag or fill in a new one.\r\n2. Place or make sure the WalkWayPoints() is within the body of the On Spawn script for the creature.\r\n3. Place a series of waypoints along the route you wish the creature to walk.\r\n4. Select all of the newly created waypoints and right click. Choose the Create Set option.\r\n5. The waypoint set will have a set name of \"WP_\" + NPC Tag. Thus if an NPC with the Tag \"Guard\" will have a waypoint set called \"WP_Guard\". Note that Tags are case sensitive."
|
||||
}
|
||||
},
|
||||
{
|
||||
"__struct_id": 5,
|
||||
"Comment": {
|
||||
|
@ -19316,6 +19316,68 @@
|
||||
"type": "float",
|
||||
"value": 5.497299194335938
|
||||
}
|
||||
},
|
||||
{
|
||||
"__struct_id": 5,
|
||||
"Appearance": {
|
||||
"type": "byte",
|
||||
"value": 1
|
||||
},
|
||||
"Description": {
|
||||
"type": "cexolocstring",
|
||||
"value": {}
|
||||
},
|
||||
"HasMapNote": {
|
||||
"type": "byte",
|
||||
"value": 0
|
||||
},
|
||||
"LinkedTo": {
|
||||
"type": "cexostring",
|
||||
"value": ""
|
||||
},
|
||||
"LocalizedName": {
|
||||
"id": 14817,
|
||||
"type": "cexolocstring",
|
||||
"value": {
|
||||
"0": "SP_SN04_SA_SR20M05_SD20M16_RW_PC05_RG010M005_DS2"
|
||||
}
|
||||
},
|
||||
"MapNote": {
|
||||
"type": "cexolocstring",
|
||||
"value": {}
|
||||
},
|
||||
"MapNoteEnabled": {
|
||||
"type": "byte",
|
||||
"value": 1
|
||||
},
|
||||
"Tag": {
|
||||
"type": "cexostring",
|
||||
"value": "RA_TROLL002"
|
||||
},
|
||||
"TemplateResRef": {
|
||||
"type": "resref",
|
||||
"value": "sp_waypoint"
|
||||
},
|
||||
"XOrientation": {
|
||||
"type": "float",
|
||||
"value": 0.0
|
||||
},
|
||||
"XPosition": {
|
||||
"type": "float",
|
||||
"value": 59.86631393432617
|
||||
},
|
||||
"YOrientation": {
|
||||
"type": "float",
|
||||
"value": 1.0
|
||||
},
|
||||
"YPosition": {
|
||||
"type": "float",
|
||||
"value": 58.00840759277344
|
||||
},
|
||||
"ZPosition": {
|
||||
"type": "float",
|
||||
"value": 4.999994277954102
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
|
@ -7048,6 +7048,25 @@
|
||||
"value": "troll004"
|
||||
}
|
||||
},
|
||||
{
|
||||
"__struct_id": 0,
|
||||
"CR": {
|
||||
"type": "float",
|
||||
"value": 6.0
|
||||
},
|
||||
"FACTION": {
|
||||
"type": "cexostring",
|
||||
"value": "Hostile"
|
||||
},
|
||||
"NAME": {
|
||||
"type": "cexostring",
|
||||
"value": "Troll, Elite [RA]: 06 HD"
|
||||
},
|
||||
"RESREF": {
|
||||
"type": "resref",
|
||||
"value": "ra_troll002"
|
||||
}
|
||||
},
|
||||
{
|
||||
"__struct_id": 0,
|
||||
"CR": {
|
||||
|
Binary file not shown.
Binary file not shown.
@ -18,31 +18,33 @@ void main()
|
||||
|
||||
string sResRef = GetResRef(oNPC);
|
||||
|
||||
effect eSleep = EffectSleep();
|
||||
effect eSleep = EffectSleep();
|
||||
|
||||
//:: Handles troll regen
|
||||
if(sResRef == "ra_troll001" || sResRef == "TROLL_FEDORLA")
|
||||
{
|
||||
if(GetLocalInt(oNPC, "nSubDual") > 0)
|
||||
{
|
||||
SetLocalInt(oNPC, "nSubDual", GetLocalInt(oNPC, "nSubDual") - 5);
|
||||
if(sResRef == "ra_troll001"
|
||||
|| sResRef == "ra_troll002"
|
||||
|| sResRef == "TROLL_FEDORLA")
|
||||
{
|
||||
if(GetLocalInt(oNPC, "nSubDual") > 0)
|
||||
{
|
||||
SetLocalInt(oNPC, "nSubDual", GetLocalInt(oNPC, "nSubDual") - 5);
|
||||
|
||||
if(GetLocalInt(oNPC, "nSubDual") < GetCurrentHitPoints(oNPC))
|
||||
{
|
||||
RemoveEffect(oNPC, eSleep);
|
||||
}
|
||||
if(GetLocalInt(oNPC, "nSubDual") < GetCurrentHitPoints(oNPC))
|
||||
{
|
||||
RemoveEffect(oNPC, eSleep);
|
||||
}
|
||||
|
||||
if(GetLocalInt(oNPC, "nSubDual") > GetCurrentHitPoints(oNPC))
|
||||
{
|
||||
SpeakString("I am still unconscious!");
|
||||
SetIsDestroyable(FALSE, TRUE, TRUE);
|
||||
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eSleep, OBJECT_SELF, 6.5f);
|
||||
}
|
||||
if(GetLocalInt(oNPC, "nSubDual") > GetCurrentHitPoints(oNPC))
|
||||
{
|
||||
SpeakString("I am still unconscious!");
|
||||
SetIsDestroyable(FALSE, TRUE, TRUE);
|
||||
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eSleep, OBJECT_SELF, 6.5f);
|
||||
}
|
||||
|
||||
SpeakString("My Subdual is now " + IntToString(GetLocalInt(oNPC, "nSubDual")));
|
||||
//SpeakString("My Subdual is now " + IntToString(GetLocalInt(oNPC, "nSubDual")));
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//:: Equips best armor
|
||||
if ((!GetIsInCombat(oNPC) && (GetItemInSlot(INVENTORY_SLOT_CHEST) == OBJECT_INVALID)))
|
||||
|
@ -13,12 +13,12 @@
|
||||
|
||||
void main()
|
||||
{
|
||||
int nTotalDamage = GetTotalDamageDealt();
|
||||
int nFireDamage = 0;
|
||||
int nAcidDamage = 0;
|
||||
int nTotalHP = GetMaxHitPoints(OBJECT_SELF);
|
||||
int nTotalDamage = GetTotalDamageDealt();
|
||||
int nFireDamage = 0;
|
||||
int nAcidDamage = 0;
|
||||
int nTotalHP = GetMaxHitPoints(OBJECT_SELF);
|
||||
|
||||
string sResRef = GetResRef(OBJECT_SELF);
|
||||
string sResRef = GetResRef(OBJECT_SELF);
|
||||
|
||||
effect eSleep = EffectSleep();
|
||||
effect eSlow = EffectSlow();
|
||||
@ -33,71 +33,73 @@ void main()
|
||||
}
|
||||
|
||||
//:: Handles troll regen
|
||||
if(sResRef == "ra_troll001" || sResRef == "TROLL_FEDORLA")
|
||||
{
|
||||
DelayCommand(0.0f, SpeakString("Max/Total HP: " + IntToString(nTotalHP)));
|
||||
if(sResRef == "ra_troll001"
|
||||
|| sResRef == "ra_troll002"
|
||||
|| sResRef == "TROLL_FEDORLA")
|
||||
{
|
||||
DelayCommand(0.0f, SpeakString("Max/Total HP: " + IntToString(nTotalHP)));
|
||||
|
||||
if(GetDamageDealtByType(DAMAGE_TYPE_FIRE) != -1)
|
||||
{
|
||||
nFireDamage = GetDamageDealtByType(DAMAGE_TYPE_FIRE);
|
||||
//DelayCommand(0.0f, SpeakString("Fire Damage: " + IntToString(nFireDamage)));
|
||||
}
|
||||
if(GetDamageDealtByType(DAMAGE_TYPE_FIRE) != -1)
|
||||
{
|
||||
nFireDamage = GetDamageDealtByType(DAMAGE_TYPE_FIRE);
|
||||
//DelayCommand(0.0f, SpeakString("Fire Damage: " + IntToString(nFireDamage)));
|
||||
}
|
||||
|
||||
if(GetDamageDealtByType(DAMAGE_TYPE_ACID) != -1)
|
||||
{
|
||||
nAcidDamage = GetDamageDealtByType(DAMAGE_TYPE_ACID);
|
||||
//DelayCommand(0.0f, SpeakString("Acid Damage: " + IntToString(nAcidDamage)));
|
||||
}
|
||||
if(GetDamageDealtByType(DAMAGE_TYPE_ACID) != -1)
|
||||
{
|
||||
nAcidDamage = GetDamageDealtByType(DAMAGE_TYPE_ACID);
|
||||
//DelayCommand(0.0f, SpeakString("Acid Damage: " + IntToString(nAcidDamage)));
|
||||
}
|
||||
|
||||
int nNoRegen = nFireDamage + nAcidDamage;
|
||||
int nSubDmg = nTotalDamage - nNoRegen;
|
||||
int nNoRegen = nFireDamage + nAcidDamage;
|
||||
int nSubDmg = nTotalDamage - nNoRegen;
|
||||
|
||||
//DelayCommand(0.0f, SpeakString("Real damage this attack: " + IntToString(nNoRegen)));
|
||||
//DelayCommand(0.0f, SpeakString("Real damage this attack: " + IntToString(nNoRegen)));
|
||||
|
||||
SetLocalInt(OBJECT_SELF, "NoRegen", nNoRegen + GetLocalInt(OBJECT_SELF, "NoRegen"));
|
||||
SetLocalInt(OBJECT_SELF, "NoRegen", nNoRegen + GetLocalInt(OBJECT_SELF, "NoRegen"));
|
||||
|
||||
nNoRegen = GetLocalInt(OBJECT_SELF, "NoRegen");
|
||||
nNoRegen = GetLocalInt(OBJECT_SELF, "NoRegen");
|
||||
|
||||
//DelayCommand(0.0f, SpeakString("Actual Damage Stored: " + IntToString(nNoRegen)));
|
||||
//DelayCommand(0.0f, SpeakString("Actual Damage Stored: " + IntToString(nNoRegen)));
|
||||
|
||||
effect eHeal = EffectHeal(nSubDmg);
|
||||
//DelayCommand(0.0f, SpeakString("Subdual damage healed: " + IntToString(nSubDmg)));
|
||||
ApplyEffectToObject(DURATION_TYPE_INSTANT, eHeal, OBJECT_SELF, 0.0f);
|
||||
effect eHeal = EffectHeal(nSubDmg);
|
||||
//DelayCommand(0.0f, SpeakString("Subdual damage healed: " + IntToString(nSubDmg)));
|
||||
ApplyEffectToObject(DURATION_TYPE_INSTANT, eHeal, OBJECT_SELF, 0.0f);
|
||||
|
||||
int nCurrentHP = GetCurrentHitPoints(OBJECT_SELF);
|
||||
DelayCommand(0.0f, SpeakString("Current HP: " + IntToString(nCurrentHP)));
|
||||
int nCurrentHP = GetCurrentHitPoints(OBJECT_SELF);
|
||||
//DelayCommand(0.0f, SpeakString("Current HP: " + IntToString(nCurrentHP)));
|
||||
|
||||
if ((nTotalHP - nNoRegen) < nCurrentHP)
|
||||
{
|
||||
nCurrentHP = nTotalHP - nNoRegen;
|
||||
//DelayCommand(0.0f, SpeakString("Setting HP to: " + IntToString(nCurrentHP)));
|
||||
SetCurrentHitPoints(OBJECT_SELF, nCurrentHP);
|
||||
}
|
||||
if ((nTotalHP - nNoRegen) < nCurrentHP)
|
||||
{
|
||||
nCurrentHP = nTotalHP - nNoRegen;
|
||||
//DelayCommand(0.0f, SpeakString("Setting HP to: " + IntToString(nCurrentHP)));
|
||||
SetCurrentHitPoints(OBJECT_SELF, nCurrentHP);
|
||||
}
|
||||
|
||||
if(GetLocalInt(OBJECT_SELF, "nSubDual") <= GetCurrentHitPoints(OBJECT_SELF))
|
||||
{
|
||||
SetLocalInt(OBJECT_SELF, "nSubDual", nSubDmg + GetLocalInt(OBJECT_SELF, "nSubDual"));
|
||||
}
|
||||
if(GetLocalInt(OBJECT_SELF, "nSubDual") <= GetCurrentHitPoints(OBJECT_SELF))
|
||||
{
|
||||
SetLocalInt(OBJECT_SELF, "nSubDual", nSubDmg + GetLocalInt(OBJECT_SELF, "nSubDual"));
|
||||
}
|
||||
|
||||
int nSD = GetLocalInt(OBJECT_SELF, "nSubDual");
|
||||
int nSD = GetLocalInt(OBJECT_SELF, "nSubDual");
|
||||
|
||||
//DelayCommand(0.0f, SpeakString("SD: " + IntToString(nSD)));
|
||||
//DelayCommand(0.0f, SpeakString("CH: " + IntToString(nCurrentHP)));
|
||||
//DelayCommand(0.0f, SpeakString("NoRegen: " + IntToString(nNoRegen)));
|
||||
//DelayCommand(0.0f, SpeakString("SD: " + IntToString(nSD)));
|
||||
//DelayCommand(0.0f, SpeakString("CH: " + IntToString(nCurrentHP)));
|
||||
//DelayCommand(0.0f, SpeakString("NoRegen: " + IntToString(nNoRegen)));
|
||||
|
||||
if(nSD > GetCurrentHitPoints(OBJECT_SELF))
|
||||
{
|
||||
//SpeakString("I am unconscious!");
|
||||
SetIsDestroyable(FALSE, TRUE, TRUE);
|
||||
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eSleep, OBJECT_SELF, 6.0f);
|
||||
}
|
||||
else if(nSD == GetCurrentHitPoints(OBJECT_SELF))
|
||||
{
|
||||
//SpeakString("I am staggered!");
|
||||
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eSlow, OBJECT_SELF, 6.0f);
|
||||
}
|
||||
if(nSD > GetCurrentHitPoints(OBJECT_SELF))
|
||||
{
|
||||
//SpeakString("I am unconscious!");
|
||||
SetIsDestroyable(FALSE, TRUE, TRUE);
|
||||
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eSleep, OBJECT_SELF, 6.0f);
|
||||
}
|
||||
else if(nSD == GetCurrentHitPoints(OBJECT_SELF))
|
||||
{
|
||||
//SpeakString("I am staggered!");
|
||||
ApplyEffectToObject(DURATION_TYPE_TEMPORARY, eSlow, OBJECT_SELF, 6.0f);
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
//:: Execute the CODI AI NPC OnDamaged script
|
||||
ExecuteScript("no_ai_dam", OBJECT_SELF);
|
||||
|
Binary file not shown.
783
_module/utc/ra_troll002.utc.json
Normal file
783
_module/utc/ra_troll002.utc.json
Normal file
@ -0,0 +1,783 @@
|
||||
{
|
||||
"__data_type": "UTC ",
|
||||
"Appearance_Type": {
|
||||
"type": "word",
|
||||
"value": 165
|
||||
},
|
||||
"BodyBag": {
|
||||
"type": "byte",
|
||||
"value": 5
|
||||
},
|
||||
"Cha": {
|
||||
"type": "byte",
|
||||
"value": 13
|
||||
},
|
||||
"ChallengeRating": {
|
||||
"type": "float",
|
||||
"value": 6.0
|
||||
},
|
||||
"ClassList": {
|
||||
"type": "list",
|
||||
"value": [
|
||||
{
|
||||
"__struct_id": 2,
|
||||
"Class": {
|
||||
"type": "int",
|
||||
"value": 22
|
||||
},
|
||||
"ClassLevel": {
|
||||
"type": "short",
|
||||
"value": 6
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"Comment": {
|
||||
"type": "cexostring",
|
||||
"value": "Troll [RA]: 06 HD\r\n\r\nMonster Manual I, pg. 247"
|
||||
},
|
||||
"Con": {
|
||||
"type": "byte",
|
||||
"value": 10
|
||||
},
|
||||
"Conversation": {
|
||||
"type": "resref",
|
||||
"value": "cv_charmed"
|
||||
},
|
||||
"CRAdjust": {
|
||||
"type": "int",
|
||||
"value": 0
|
||||
},
|
||||
"CurrentHitPoints": {
|
||||
"type": "short",
|
||||
"value": 48
|
||||
},
|
||||
"DecayTime": {
|
||||
"type": "dword",
|
||||
"value": 10000
|
||||
},
|
||||
"Deity": {
|
||||
"type": "cexostring",
|
||||
"value": ""
|
||||
},
|
||||
"Description": {
|
||||
"type": "cexolocstring",
|
||||
"value": {
|
||||
"0": "This big, bipedal creature is about one and a half times as tall as a human but very thin. It has long and ungainly arms and legs The legs end in great three-toed feet, the arms in wide, powerful hands with sharpened claws. The hide is rubbery, and its hair is thick and ropy, and seems to writhe with its own energy."
|
||||
}
|
||||
},
|
||||
"Dex": {
|
||||
"type": "byte",
|
||||
"value": 8
|
||||
},
|
||||
"Disarmable": {
|
||||
"type": "byte",
|
||||
"value": 1
|
||||
},
|
||||
"Equip_ItemList": {
|
||||
"type": "list",
|
||||
"value": [
|
||||
{
|
||||
"__struct_id": 16384,
|
||||
"EquippedRes": {
|
||||
"type": "resref",
|
||||
"value": "nw_it_crewpsp005"
|
||||
}
|
||||
},
|
||||
{
|
||||
"__struct_id": 32768,
|
||||
"EquippedRes": {
|
||||
"type": "resref",
|
||||
"value": "nw_it_crewpsp005"
|
||||
}
|
||||
},
|
||||
{
|
||||
"__struct_id": 65536,
|
||||
"EquippedRes": {
|
||||
"type": "resref",
|
||||
"value": "nw_it_crewps005"
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"FactionID": {
|
||||
"type": "word",
|
||||
"value": 1
|
||||
},
|
||||
"FeatList": {
|
||||
"type": "list",
|
||||
"value": [
|
||||
{
|
||||
"__struct_id": 1,
|
||||
"Feat": {
|
||||
"type": "word",
|
||||
"value": 0
|
||||
}
|
||||
},
|
||||
{
|
||||
"__struct_id": 1,
|
||||
"Feat": {
|
||||
"type": "word",
|
||||
"value": 3112
|
||||
}
|
||||
},
|
||||
{
|
||||
"__struct_id": 1,
|
||||
"Feat": {
|
||||
"type": "word",
|
||||
"value": 2898
|
||||
}
|
||||
},
|
||||
{
|
||||
"__struct_id": 1,
|
||||
"Feat": {
|
||||
"type": "word",
|
||||
"value": 5195
|
||||
}
|
||||
},
|
||||
{
|
||||
"__struct_id": 1,
|
||||
"Feat": {
|
||||
"type": "word",
|
||||
"value": 22774
|
||||
}
|
||||
},
|
||||
{
|
||||
"__struct_id": 1,
|
||||
"Feat": {
|
||||
"type": "word",
|
||||
"value": 2468
|
||||
}
|
||||
},
|
||||
{
|
||||
"__struct_id": 1,
|
||||
"Feat": {
|
||||
"type": "word",
|
||||
"value": 2919
|
||||
}
|
||||
},
|
||||
{
|
||||
"__struct_id": 1,
|
||||
"Feat": {
|
||||
"type": "word",
|
||||
"value": 4717
|
||||
}
|
||||
},
|
||||
{
|
||||
"__struct_id": 1,
|
||||
"Feat": {
|
||||
"type": "word",
|
||||
"value": 4095
|
||||
}
|
||||
},
|
||||
{
|
||||
"__struct_id": 1,
|
||||
"Feat": {
|
||||
"type": "word",
|
||||
"value": 4092
|
||||
}
|
||||
},
|
||||
{
|
||||
"__struct_id": 1,
|
||||
"Feat": {
|
||||
"type": "word",
|
||||
"value": 22
|
||||
}
|
||||
},
|
||||
{
|
||||
"__struct_id": 1,
|
||||
"Feat": {
|
||||
"type": "word",
|
||||
"value": 2884
|
||||
}
|
||||
},
|
||||
{
|
||||
"__struct_id": 1,
|
||||
"Feat": {
|
||||
"type": "word",
|
||||
"value": 354
|
||||
}
|
||||
},
|
||||
{
|
||||
"__struct_id": 1,
|
||||
"Feat": {
|
||||
"type": "word",
|
||||
"value": 1089
|
||||
}
|
||||
},
|
||||
{
|
||||
"__struct_id": 1,
|
||||
"Feat": {
|
||||
"type": "word",
|
||||
"value": 3415
|
||||
}
|
||||
},
|
||||
{
|
||||
"__struct_id": 1,
|
||||
"Feat": {
|
||||
"type": "word",
|
||||
"value": 2285
|
||||
}
|
||||
},
|
||||
{
|
||||
"__struct_id": 1,
|
||||
"Feat": {
|
||||
"type": "word",
|
||||
"value": 4742
|
||||
}
|
||||
},
|
||||
{
|
||||
"__struct_id": 1,
|
||||
"Feat": {
|
||||
"type": "word",
|
||||
"value": 24070
|
||||
}
|
||||
},
|
||||
{
|
||||
"__struct_id": 1,
|
||||
"Feat": {
|
||||
"type": "word",
|
||||
"value": 4235
|
||||
}
|
||||
},
|
||||
{
|
||||
"__struct_id": 1,
|
||||
"Feat": {
|
||||
"type": "word",
|
||||
"value": 2569
|
||||
}
|
||||
},
|
||||
{
|
||||
"__struct_id": 1,
|
||||
"Feat": {
|
||||
"type": "word",
|
||||
"value": 289
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"FirstName": {
|
||||
"type": "cexolocstring",
|
||||
"value": {
|
||||
"0": "Troll, Elite [RA]: 06 HD"
|
||||
}
|
||||
},
|
||||
"fortbonus": {
|
||||
"type": "short",
|
||||
"value": 0
|
||||
},
|
||||
"Gender": {
|
||||
"type": "byte",
|
||||
"value": 0
|
||||
},
|
||||
"GoodEvil": {
|
||||
"type": "byte",
|
||||
"value": 0
|
||||
},
|
||||
"HitPoints": {
|
||||
"type": "short",
|
||||
"value": 48
|
||||
},
|
||||
"Int": {
|
||||
"type": "byte",
|
||||
"value": 14
|
||||
},
|
||||
"Interruptable": {
|
||||
"type": "byte",
|
||||
"value": 1
|
||||
},
|
||||
"IsImmortal": {
|
||||
"type": "byte",
|
||||
"value": 0
|
||||
},
|
||||
"IsPC": {
|
||||
"type": "byte",
|
||||
"value": 0
|
||||
},
|
||||
"LastName": {
|
||||
"type": "cexolocstring",
|
||||
"value": {
|
||||
"0": ""
|
||||
}
|
||||
},
|
||||
"LawfulChaotic": {
|
||||
"type": "byte",
|
||||
"value": 0
|
||||
},
|
||||
"Lootable": {
|
||||
"type": "byte",
|
||||
"value": 0
|
||||
},
|
||||
"MaxHitPoints": {
|
||||
"type": "short",
|
||||
"value": 84
|
||||
},
|
||||
"NaturalAC": {
|
||||
"type": "byte",
|
||||
"value": 5
|
||||
},
|
||||
"NoPermDeath": {
|
||||
"type": "byte",
|
||||
"value": 1
|
||||
},
|
||||
"PaletteID": {
|
||||
"type": "byte",
|
||||
"value": 37
|
||||
},
|
||||
"PerceptionRange": {
|
||||
"type": "byte",
|
||||
"value": 10
|
||||
},
|
||||
"Phenotype": {
|
||||
"type": "int",
|
||||
"value": 0
|
||||
},
|
||||
"Plot": {
|
||||
"type": "byte",
|
||||
"value": 0
|
||||
},
|
||||
"PortraitId": {
|
||||
"type": "word",
|
||||
"value": 1301
|
||||
},
|
||||
"Race": {
|
||||
"type": "byte",
|
||||
"value": 231
|
||||
},
|
||||
"refbonus": {
|
||||
"type": "short",
|
||||
"value": 0
|
||||
},
|
||||
"ScriptAttacked": {
|
||||
"type": "resref",
|
||||
"value": "ra_ai_attacked"
|
||||
},
|
||||
"ScriptDamaged": {
|
||||
"type": "resref",
|
||||
"value": "ra_ai_ondamaged"
|
||||
},
|
||||
"ScriptDeath": {
|
||||
"type": "resref",
|
||||
"value": "ra_ai_ondeath"
|
||||
},
|
||||
"ScriptDialogue": {
|
||||
"type": "resref",
|
||||
"value": "ra_ai_onconverse"
|
||||
},
|
||||
"ScriptDisturbed": {
|
||||
"type": "resref",
|
||||
"value": "ra_ai_ondisturb"
|
||||
},
|
||||
"ScriptEndRound": {
|
||||
"type": "resref",
|
||||
"value": "ra_ai_endcmbtrnd"
|
||||
},
|
||||
"ScriptHeartbeat": {
|
||||
"type": "resref",
|
||||
"value": "ra_ai_heartbeat"
|
||||
},
|
||||
"ScriptOnBlocked": {
|
||||
"type": "resref",
|
||||
"value": "ra_ai_onblocked"
|
||||
},
|
||||
"ScriptOnNotice": {
|
||||
"type": "resref",
|
||||
"value": "ra_ai_onpercept"
|
||||
},
|
||||
"ScriptRested": {
|
||||
"type": "resref",
|
||||
"value": "ra_ai_onrested"
|
||||
},
|
||||
"ScriptSpawn": {
|
||||
"type": "resref",
|
||||
"value": "ra_ai_onspawn"
|
||||
},
|
||||
"ScriptSpellAt": {
|
||||
"type": "resref",
|
||||
"value": "ra_ai_onspelled"
|
||||
},
|
||||
"ScriptUserDefine": {
|
||||
"type": "resref",
|
||||
"value": "ra_ai_userdef"
|
||||
},
|
||||
"SkillList": {
|
||||
"type": "list",
|
||||
"value": [
|
||||
{
|
||||
"__struct_id": 0,
|
||||
"Rank": {
|
||||
"type": "byte",
|
||||
"value": 0
|
||||
}
|
||||
},
|
||||
{
|
||||
"__struct_id": 0,
|
||||
"Rank": {
|
||||
"type": "byte",
|
||||
"value": 0
|
||||
}
|
||||
},
|
||||
{
|
||||
"__struct_id": 0,
|
||||
"Rank": {
|
||||
"type": "byte",
|
||||
"value": 0
|
||||
}
|
||||
},
|
||||
{
|
||||
"__struct_id": 0,
|
||||
"Rank": {
|
||||
"type": "byte",
|
||||
"value": 9
|
||||
}
|
||||
},
|
||||
{
|
||||
"__struct_id": 0,
|
||||
"Rank": {
|
||||
"type": "byte",
|
||||
"value": 0
|
||||
}
|
||||
},
|
||||
{
|
||||
"__struct_id": 0,
|
||||
"Rank": {
|
||||
"type": "byte",
|
||||
"value": 0
|
||||
}
|
||||
},
|
||||
{
|
||||
"__struct_id": 0,
|
||||
"Rank": {
|
||||
"type": "byte",
|
||||
"value": 4
|
||||
}
|
||||
},
|
||||
{
|
||||
"__struct_id": 0,
|
||||
"Rank": {
|
||||
"type": "byte",
|
||||
"value": 0
|
||||
}
|
||||
},
|
||||
{
|
||||
"__struct_id": 0,
|
||||
"Rank": {
|
||||
"type": "byte",
|
||||
"value": 0
|
||||
}
|
||||
},
|
||||
{
|
||||
"__struct_id": 0,
|
||||
"Rank": {
|
||||
"type": "byte",
|
||||
"value": 0
|
||||
}
|
||||
},
|
||||
{
|
||||
"__struct_id": 0,
|
||||
"Rank": {
|
||||
"type": "byte",
|
||||
"value": 0
|
||||
}
|
||||
},
|
||||
{
|
||||
"__struct_id": 0,
|
||||
"Rank": {
|
||||
"type": "byte",
|
||||
"value": 0
|
||||
}
|
||||
},
|
||||
{
|
||||
"__struct_id": 0,
|
||||
"Rank": {
|
||||
"type": "byte",
|
||||
"value": 0
|
||||
}
|
||||
},
|
||||
{
|
||||
"__struct_id": 0,
|
||||
"Rank": {
|
||||
"type": "byte",
|
||||
"value": 0
|
||||
}
|
||||
},
|
||||
{
|
||||
"__struct_id": 0,
|
||||
"Rank": {
|
||||
"type": "byte",
|
||||
"value": 0
|
||||
}
|
||||
},
|
||||
{
|
||||
"__struct_id": 0,
|
||||
"Rank": {
|
||||
"type": "byte",
|
||||
"value": 0
|
||||
}
|
||||
},
|
||||
{
|
||||
"__struct_id": 0,
|
||||
"Rank": {
|
||||
"type": "byte",
|
||||
"value": 0
|
||||
}
|
||||
},
|
||||
{
|
||||
"__struct_id": 0,
|
||||
"Rank": {
|
||||
"type": "byte",
|
||||
"value": 5
|
||||
}
|
||||
},
|
||||
{
|
||||
"__struct_id": 0,
|
||||
"Rank": {
|
||||
"type": "byte",
|
||||
"value": 0
|
||||
}
|
||||
},
|
||||
{
|
||||
"__struct_id": 0,
|
||||
"Rank": {
|
||||
"type": "byte",
|
||||
"value": 0
|
||||
}
|
||||
},
|
||||
{
|
||||
"__struct_id": 0,
|
||||
"Rank": {
|
||||
"type": "byte",
|
||||
"value": 0
|
||||
}
|
||||
},
|
||||
{
|
||||
"__struct_id": 0,
|
||||
"Rank": {
|
||||
"type": "byte",
|
||||
"value": 0
|
||||
}
|
||||
},
|
||||
{
|
||||
"__struct_id": 0,
|
||||
"Rank": {
|
||||
"type": "byte",
|
||||
"value": 0
|
||||
}
|
||||
},
|
||||
{
|
||||
"__struct_id": 0,
|
||||
"Rank": {
|
||||
"type": "byte",
|
||||
"value": 0
|
||||
}
|
||||
},
|
||||
{
|
||||
"__struct_id": 0,
|
||||
"Rank": {
|
||||
"type": "byte",
|
||||
"value": 0
|
||||
}
|
||||
},
|
||||
{
|
||||
"__struct_id": 0,
|
||||
"Rank": {
|
||||
"type": "byte",
|
||||
"value": 0
|
||||
}
|
||||
},
|
||||
{
|
||||
"__struct_id": 0,
|
||||
"Rank": {
|
||||
"type": "byte",
|
||||
"value": 0
|
||||
}
|
||||
},
|
||||
{
|
||||
"__struct_id": 0,
|
||||
"Rank": {
|
||||
"type": "byte",
|
||||
"value": 0
|
||||
}
|
||||
},
|
||||
{
|
||||
"__struct_id": 0,
|
||||
"Rank": {
|
||||
"type": "byte",
|
||||
"value": 0
|
||||
}
|
||||
},
|
||||
{
|
||||
"__struct_id": 0,
|
||||
"Rank": {
|
||||
"type": "byte",
|
||||
"value": 0
|
||||
}
|
||||
},
|
||||
{
|
||||
"__struct_id": 0,
|
||||
"Rank": {
|
||||
"type": "byte",
|
||||
"value": 0
|
||||
}
|
||||
},
|
||||
{
|
||||
"__struct_id": 0,
|
||||
"Rank": {
|
||||
"type": "byte",
|
||||
"value": 0
|
||||
}
|
||||
},
|
||||
{
|
||||
"__struct_id": 0,
|
||||
"Rank": {
|
||||
"type": "byte",
|
||||
"value": 0
|
||||
}
|
||||
},
|
||||
{
|
||||
"__struct_id": 0,
|
||||
"Rank": {
|
||||
"type": "byte",
|
||||
"value": 0
|
||||
}
|
||||
},
|
||||
{
|
||||
"__struct_id": 0,
|
||||
"Rank": {
|
||||
"type": "byte",
|
||||
"value": 0
|
||||
}
|
||||
},
|
||||
{
|
||||
"__struct_id": 0,
|
||||
"Rank": {
|
||||
"type": "byte",
|
||||
"value": 0
|
||||
}
|
||||
},
|
||||
{
|
||||
"__struct_id": 0,
|
||||
"Rank": {
|
||||
"type": "byte",
|
||||
"value": 0
|
||||
}
|
||||
},
|
||||
{
|
||||
"__struct_id": 0,
|
||||
"Rank": {
|
||||
"type": "byte",
|
||||
"value": 0
|
||||
}
|
||||
},
|
||||
{
|
||||
"__struct_id": 0,
|
||||
"Rank": {
|
||||
"type": "byte",
|
||||
"value": 0
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"SoundSetFile": {
|
||||
"type": "word",
|
||||
"value": 92
|
||||
},
|
||||
"SpecAbilityList": {
|
||||
"type": "list",
|
||||
"value": []
|
||||
},
|
||||
"StartingPackage": {
|
||||
"type": "byte",
|
||||
"value": 84
|
||||
},
|
||||
"Str": {
|
||||
"type": "byte",
|
||||
"value": 12
|
||||
},
|
||||
"Subrace": {
|
||||
"type": "cexostring",
|
||||
"value": "Giant"
|
||||
},
|
||||
"Tag": {
|
||||
"type": "cexostring",
|
||||
"value": "RA_TROLL002"
|
||||
},
|
||||
"Tail_New": {
|
||||
"type": "dword",
|
||||
"value": 0
|
||||
},
|
||||
"TemplateList": {
|
||||
"type": "list",
|
||||
"value": []
|
||||
},
|
||||
"TemplateResRef": {
|
||||
"type": "resref",
|
||||
"value": "ra_troll002"
|
||||
},
|
||||
"VarTable": {
|
||||
"type": "list",
|
||||
"value": [
|
||||
{
|
||||
"__struct_id": 0,
|
||||
"Name": {
|
||||
"type": "cexostring",
|
||||
"value": "SET_NAME"
|
||||
},
|
||||
"Type": {
|
||||
"type": "dword",
|
||||
"value": 3
|
||||
},
|
||||
"Value": {
|
||||
"type": "cexostring",
|
||||
"value": "Troll"
|
||||
}
|
||||
},
|
||||
{
|
||||
"__struct_id": 0,
|
||||
"Name": {
|
||||
"type": "cexostring",
|
||||
"value": "SPAWN_TYPE"
|
||||
},
|
||||
"Type": {
|
||||
"type": "dword",
|
||||
"value": 3
|
||||
},
|
||||
"Value": {
|
||||
"type": "cexostring",
|
||||
"value": "no_spn_ftr"
|
||||
}
|
||||
},
|
||||
{
|
||||
"__struct_id": 0,
|
||||
"Name": {
|
||||
"type": "cexostring",
|
||||
"value": "FAST_HEALING"
|
||||
},
|
||||
"Type": {
|
||||
"type": "dword",
|
||||
"value": 1
|
||||
},
|
||||
"Value": {
|
||||
"type": "int",
|
||||
"value": 5
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
"WalkRate": {
|
||||
"type": "int",
|
||||
"value": 7
|
||||
},
|
||||
"willbonus": {
|
||||
"type": "short",
|
||||
"value": 0
|
||||
},
|
||||
"Wings_New": {
|
||||
"type": "dword",
|
||||
"value": 0
|
||||
},
|
||||
"Wis": {
|
||||
"type": "byte",
|
||||
"value": 15
|
||||
}
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user