Added Elite Troll creature

Added Elite Troll creature.
This commit is contained in:
Jaysyn904 2023-01-25 21:49:47 -05:00
parent edb3ec4afe
commit b2c9230e9b
10 changed files with 968 additions and 93 deletions

View File

@ -6353,7 +6353,7 @@
},
"Version": {
"type": "dword",
"value": 16
"value": 17
},
"Width": {
"type": "int",

View File

@ -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": {

View File

@ -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
}
}
]
}

View File

@ -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.

View File

@ -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)))

View File

@ -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.

View 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
}
}