Post by Wizard on Aug 4, 2011 0:09:39 GMT -5
Tonight I took the time to learn how to make any item in the game giftable to katie.
Thankfully after trial and error, it was a complete success!
Another thing worth mentioning is it isn't that difficult.
What we are going to need to edit is 2 files, Missions.txt and Items.txt
Open them both up in any TXT editing software.
For this tutorial I am going to show you how to make the FireAxe, Giftable to Katie, and how to control how much PP it gives.
So the first thing we are going to need to do is to make the FireAxe Giftable to Katie at all, to do this, Search for this in In Items.txt
cPlayerWeaponItem FireAxe
Anywhere in the entry for FireAxe, at the end of a line, hit Enter (To make a new line) and type in
Giftable = "true"
It should look like this:
cPlayerWeaponItem FireAxe
{
AchievementCategory = "0"
Giftable = "true"
ActionButton0 = "PLAYERBUTTON_QUICKRELEASE"
ActionButton1 = "PLAYERBUTTON_QUICK_ATTACK"
ActionButton2 = "PLAYERBUTTON_CHARGEATTACK_SHORT"
ActionDesiredAnimState0 = "ANIMSTATE_ATTACKSEQUENCE"
ActionDesiredAnimState1 = "ANIMSTATE_ATTACKSEQUENCE"
ActionDesiredAnimState2 = "ANIMSTATE_ATTACKSEQUENCE"
ActionRequiredAnimState1 = "ANIMSTATE_ATTACKSEQUENCE"
ActionTargetCrawlerOnly6 = "false"
AnimationAttackChooserValue0 = "198"
AnimationAttackChooserValue1 = "161"
AnimationAttackChooserValue2 = "373"
AnimationAttackName0 = "male_2hand_heavy_7_to_4_a"
AnimationAttackName1 = "male_2hand_2_to_7_b"
AnimationAttackName11 = "male_throw_1hand_object"
AnimationAttackName2 = "male_2hand_1_to_5_ground"
AnimationChooserValueForHand = "8"
AnimationChooserValueForIdle = "0"
AnimationChooserValueForPickup = "0"
AnimationChooserValueForPutdown = "0"
AnimationChooserValueForThrow = "10"
AnimationChooserValueForWalkRun = "0"
AnimBankName = "2hand_bank1"
AssetFilename = "data/models/weapons/fire_axe"
AssociatedMagazineType0 = "8"
AttackAudioAssetName0 = "FireAxeHitBody"
AttackAudioAssetName1 = "FireAxeHitBody"
AttackAudioAssetName2 = "FireAxeHitBodyBig"
AttackDamage0 = "75"
AttackDamage1 = "75"
AttackDamage2 = "100"
AudioActionBits = "256"
AudioFilename = "fx_fireaxe"
AudioItemName = "FireAxe"
CollidableQuality = "0"
CollisionAudioDissipationFactor = "0.01"
CollisionBits = "WORLDCOLLISIONFILTER_DYNAMIC_PROP"
CollisionType = "3"
ComboBlendDuration0 = "0.1"
ComboBlendDuration1 = "0.15"
ComboBlendDuration2 = "0.1"
ComboBlendXZToUse0 = "2"
ComboBlendXZToUse1 = "2"
ComboBlendXZToUse2 = "2"
ComboBlendYToUse0 = "2"
ComboBlendYToUse1 = "2"
ComboBlendYToUse2 = "2"
DisplayName = "50078"
DR2 = "true"
Durability = "35"
EffectAudio0 = "5"
EffectAudio1 = "5"
EffectAudio2 = "5"
EffectOnImpact0 = "280"
EffectOnImpact1 = "280"
EffectOnImpact2 = "280"
EffectOnVictim0 = "21"
EffectOnVictim1 = "21"
EffectOnVictim2 = "20"
FatalHitReaction0 = "HITREACTION_WEAPON_SLICE_HORIZONTAL"
FatalHitReaction1 = "HITREACTION_WEAPON_SLICE_HORIZONTAL"
FatalHitReaction2 = "HITREACTION_FATAL_GROUP2"
Friction = "25"
HandlingStyle = "0"
HandsForPickup = "1"
HitReaction0 = "HITREACTION_WEAPON_SLICE_HORIZONTAL"
HitReaction1 = "HITREACTION_WEAPON_SLICE_HORIZONTAL"
HitReaction2 = "HITREACTION_WEAPON_HEAVY_MEDIUM"
IconFilename = "w_fireaxe"
ImpactIsSynchronized2 = "false"
Impulse0 = "1"
Impulse1 = "1"
Impulse2 = "1"
InteractDistance = "1.3"
InventoryInteractionType = "0"
Is_Cliche = "true"
Is_Sharp = "true"
IsWeapon = "true"
Is_Humour = "true"
LoadDistance = "25"
LocatorOrientationOffset = "0.000,0.000,0.000,1.000"
LocatorPositionOffset = "0.0,0.0,0.0"
MaxProjectileDamage = "75"
ProjectileFatalHitReaction = "51"
ProjectileHitImpulse = "1"
ProjectileHitReaction = "13"
PropEffectLocator0 = "30"
PropEffectsOnCondition0 = "1"
PyroEffect0 = "38"
RequiredComboSeqCounter0 = "0"
RequiredComboSeqCounter1 = "1"
RequiredComboSeqCounter2 = "0"
ResetComboSeqCounter1 = "true"
ResetComboSeqCounter2 = "true"
ResetComboSeqCounter3 = "false"
Restitution = "0.01"
RestrictedByRegion = "false"
Reticle_ActiveInRangeMode = "true"
Reticle_Type = "1"
SurvivorWeapon = "true"
ThrowAngleDegrees = "5"
ThrowEffectAudio = "2"
ThrowEffectOnImpact = "280"
ThrowEffectOnVictim = "9"
ThrowForce = "10"
ThrowSpin = "17.5,0,0"
VibrationPattern0 = "5"
VibrationPattern1 = "5"
VibrationPattern2 = "10"
WeaponCanSliceLimbs = "false"
WeaponType = "3"
Weight = "15"
cAttachedToZombieInfoItem faxe_attached_info
{
DamagePerSecondWhenAttachedToZombie = "60"
PositionToStickTo = "2"
StickableArea = "0"
StickableAsProjectile = "true"
StickArbitrarily = "true"
}
cLimbDestroyInfoItem FireAxe_gore
{
Limb0 = "0"
Limb1 = "1"
Limb2 = "2"
Limb3 = "3"
Limb4 = "4"
mFlags0 = "4"
mFlags1 = "2052"
mFlags2 = "2052"
mFlags3 = "2055"
mFlags4 = "2055"
ProbabilityOfExploding0 = "1"
ProbabilityOfExploding1 = "1"
ProbabilityOfExploding2 = "1"
ProbabilityOfExploding3 = "1"
ProbabilityOfExploding4 = "1"
}
}
Save Items.txt, and you can close it out now if you want.
Now, we go to Missions.txt
Search & find this:
It should bring you to something that looks exactly like this:
cMissionObjectiveGiveItemToNPC GiveGiantStuffedBear
{
ITEM_NAME = "GiantStuffedBear"
NPCName = "cast_katey"
cMissionCinematic x152
{
CinematicName = "katie_recieve_gift_large"
NoTeleportAfterIsOK = "true"
cMissionSetNPCScriptedAction x153
{
IsLooping = "true"
NPCName = "cast_katey"
Orientation = "103.175"
ScriptedActionName = "KatieExcited"
SetOrientation = "false"
UseOrientation = "true"
}
cMissionDialogue x154
{
Dialogue0 = "65073"
Speaker0 = "cast_katey"
SpeakerID0 = "50051"
}
cMissionSetChuckState GivePP_Bear1
{
ChuckState = "10"
Value = "15000"
}
cMissionSetChuckState drop_item2
{
ChuckState = "18"
}
cMissionSetChuckState FatherOfTheMonth2
{
ChuckState = "12"
Value = "1339"
}
}
}
Now take this entire entry in Missions.txt, copy it, and Paste it under the entry we just copied (MAKE IT SURE IT'S SPACED CORRECTLY)
Now, there is only a few things we have to edit
First, change
TO
2ndly, change
TO
3rd, To give this giftable item it's own ID for the amount of PP given,and to make it so the item can only be gifted once we need to change
TO
(For each new item, just keep going up from 700 1 by 1, like 701, 702...etc)
Lastly, we need to change (THIS STEP IS OPTIONAL, though I still recommend you do it to leave no room for error)
TO
Under that, you'll see
This value amount determines how much PP you're given once you give Katie the item.
Once you've edited everything, it should look like this:
cMissionObjectiveGiveItemToNPC GiveFireAxe
{
ITEM_NAME = "FireAxe"
NPCName = "cast_katey"
cMissionCinematic x700
{
CinematicName = "katie_recieve_gift_large"
NoTeleportAfterIsOK = "true"
cMissionSetNPCScriptedAction x153
{
IsLooping = "true"
NPCName = "cast_katey"
Orientation = "103.175"
ScriptedActionName = "KatieExcited"
SetOrientation = "false"
UseOrientation = "true"
}
cMissionDialogue x154
{
Dialogue0 = "65073"
Speaker0 = "cast_katey"
SpeakerID0 = "50051"
}
cMissionSetChuckState GivePP_FireAxe1
{
ChuckState = "10"
Value = "20000"
}
cMissionSetChuckState drop_item2
{
ChuckState = "18"
}
cMissionSetChuckState FatherOfTheMonth2
{
ChuckState = "12"
Value = "1339"
}
}
}
Sorry if the tutorial is a bit jumpy on details.
Screenshot Example:
Thankfully after trial and error, it was a complete success!
Another thing worth mentioning is it isn't that difficult.
What we are going to need to edit is 2 files, Missions.txt and Items.txt
Open them both up in any TXT editing software.
For this tutorial I am going to show you how to make the FireAxe, Giftable to Katie, and how to control how much PP it gives.
So the first thing we are going to need to do is to make the FireAxe Giftable to Katie at all, to do this, Search for this in In Items.txt
cPlayerWeaponItem FireAxe
Anywhere in the entry for FireAxe, at the end of a line, hit Enter (To make a new line) and type in
Giftable = "true"
It should look like this:
cPlayerWeaponItem FireAxe
{
AchievementCategory = "0"
Giftable = "true"
ActionButton0 = "PLAYERBUTTON_QUICKRELEASE"
ActionButton1 = "PLAYERBUTTON_QUICK_ATTACK"
ActionButton2 = "PLAYERBUTTON_CHARGEATTACK_SHORT"
ActionDesiredAnimState0 = "ANIMSTATE_ATTACKSEQUENCE"
ActionDesiredAnimState1 = "ANIMSTATE_ATTACKSEQUENCE"
ActionDesiredAnimState2 = "ANIMSTATE_ATTACKSEQUENCE"
ActionRequiredAnimState1 = "ANIMSTATE_ATTACKSEQUENCE"
ActionTargetCrawlerOnly6 = "false"
AnimationAttackChooserValue0 = "198"
AnimationAttackChooserValue1 = "161"
AnimationAttackChooserValue2 = "373"
AnimationAttackName0 = "male_2hand_heavy_7_to_4_a"
AnimationAttackName1 = "male_2hand_2_to_7_b"
AnimationAttackName11 = "male_throw_1hand_object"
AnimationAttackName2 = "male_2hand_1_to_5_ground"
AnimationChooserValueForHand = "8"
AnimationChooserValueForIdle = "0"
AnimationChooserValueForPickup = "0"
AnimationChooserValueForPutdown = "0"
AnimationChooserValueForThrow = "10"
AnimationChooserValueForWalkRun = "0"
AnimBankName = "2hand_bank1"
AssetFilename = "data/models/weapons/fire_axe"
AssociatedMagazineType0 = "8"
AttackAudioAssetName0 = "FireAxeHitBody"
AttackAudioAssetName1 = "FireAxeHitBody"
AttackAudioAssetName2 = "FireAxeHitBodyBig"
AttackDamage0 = "75"
AttackDamage1 = "75"
AttackDamage2 = "100"
AudioActionBits = "256"
AudioFilename = "fx_fireaxe"
AudioItemName = "FireAxe"
CollidableQuality = "0"
CollisionAudioDissipationFactor = "0.01"
CollisionBits = "WORLDCOLLISIONFILTER_DYNAMIC_PROP"
CollisionType = "3"
ComboBlendDuration0 = "0.1"
ComboBlendDuration1 = "0.15"
ComboBlendDuration2 = "0.1"
ComboBlendXZToUse0 = "2"
ComboBlendXZToUse1 = "2"
ComboBlendXZToUse2 = "2"
ComboBlendYToUse0 = "2"
ComboBlendYToUse1 = "2"
ComboBlendYToUse2 = "2"
DisplayName = "50078"
DR2 = "true"
Durability = "35"
EffectAudio0 = "5"
EffectAudio1 = "5"
EffectAudio2 = "5"
EffectOnImpact0 = "280"
EffectOnImpact1 = "280"
EffectOnImpact2 = "280"
EffectOnVictim0 = "21"
EffectOnVictim1 = "21"
EffectOnVictim2 = "20"
FatalHitReaction0 = "HITREACTION_WEAPON_SLICE_HORIZONTAL"
FatalHitReaction1 = "HITREACTION_WEAPON_SLICE_HORIZONTAL"
FatalHitReaction2 = "HITREACTION_FATAL_GROUP2"
Friction = "25"
HandlingStyle = "0"
HandsForPickup = "1"
HitReaction0 = "HITREACTION_WEAPON_SLICE_HORIZONTAL"
HitReaction1 = "HITREACTION_WEAPON_SLICE_HORIZONTAL"
HitReaction2 = "HITREACTION_WEAPON_HEAVY_MEDIUM"
IconFilename = "w_fireaxe"
ImpactIsSynchronized2 = "false"
Impulse0 = "1"
Impulse1 = "1"
Impulse2 = "1"
InteractDistance = "1.3"
InventoryInteractionType = "0"
Is_Cliche = "true"
Is_Sharp = "true"
IsWeapon = "true"
Is_Humour = "true"
LoadDistance = "25"
LocatorOrientationOffset = "0.000,0.000,0.000,1.000"
LocatorPositionOffset = "0.0,0.0,0.0"
MaxProjectileDamage = "75"
ProjectileFatalHitReaction = "51"
ProjectileHitImpulse = "1"
ProjectileHitReaction = "13"
PropEffectLocator0 = "30"
PropEffectsOnCondition0 = "1"
PyroEffect0 = "38"
RequiredComboSeqCounter0 = "0"
RequiredComboSeqCounter1 = "1"
RequiredComboSeqCounter2 = "0"
ResetComboSeqCounter1 = "true"
ResetComboSeqCounter2 = "true"
ResetComboSeqCounter3 = "false"
Restitution = "0.01"
RestrictedByRegion = "false"
Reticle_ActiveInRangeMode = "true"
Reticle_Type = "1"
SurvivorWeapon = "true"
ThrowAngleDegrees = "5"
ThrowEffectAudio = "2"
ThrowEffectOnImpact = "280"
ThrowEffectOnVictim = "9"
ThrowForce = "10"
ThrowSpin = "17.5,0,0"
VibrationPattern0 = "5"
VibrationPattern1 = "5"
VibrationPattern2 = "10"
WeaponCanSliceLimbs = "false"
WeaponType = "3"
Weight = "15"
cAttachedToZombieInfoItem faxe_attached_info
{
DamagePerSecondWhenAttachedToZombie = "60"
PositionToStickTo = "2"
StickableArea = "0"
StickableAsProjectile = "true"
StickArbitrarily = "true"
}
cLimbDestroyInfoItem FireAxe_gore
{
Limb0 = "0"
Limb1 = "1"
Limb2 = "2"
Limb3 = "3"
Limb4 = "4"
mFlags0 = "4"
mFlags1 = "2052"
mFlags2 = "2052"
mFlags3 = "2055"
mFlags4 = "2055"
ProbabilityOfExploding0 = "1"
ProbabilityOfExploding1 = "1"
ProbabilityOfExploding2 = "1"
ProbabilityOfExploding3 = "1"
ProbabilityOfExploding4 = "1"
}
}
Save Items.txt, and you can close it out now if you want.
Now, we go to Missions.txt
Search & find this:
cMissionObjectiveGiveItemToNPC GiveGiantStuffedBear
It should bring you to something that looks exactly like this:
cMissionObjectiveGiveItemToNPC GiveGiantStuffedBear
{
ITEM_NAME = "GiantStuffedBear"
NPCName = "cast_katey"
cMissionCinematic x152
{
CinematicName = "katie_recieve_gift_large"
NoTeleportAfterIsOK = "true"
cMissionSetNPCScriptedAction x153
{
IsLooping = "true"
NPCName = "cast_katey"
Orientation = "103.175"
ScriptedActionName = "KatieExcited"
SetOrientation = "false"
UseOrientation = "true"
}
cMissionDialogue x154
{
Dialogue0 = "65073"
Speaker0 = "cast_katey"
SpeakerID0 = "50051"
}
cMissionSetChuckState GivePP_Bear1
{
ChuckState = "10"
Value = "15000"
}
cMissionSetChuckState drop_item2
{
ChuckState = "18"
}
cMissionSetChuckState FatherOfTheMonth2
{
ChuckState = "12"
Value = "1339"
}
}
}
Now take this entire entry in Missions.txt, copy it, and Paste it under the entry we just copied (MAKE IT SURE IT'S SPACED CORRECTLY)
Now, there is only a few things we have to edit
First, change
cMissionObjectiveGiveItemToNPC GiveGiantStuffedBear
TO
cMissionObjectiveGiveItemToNPC GiveFireAxe
2ndly, change
ITEM_NAME = "GiantStuffedBear"
TO
ITEM_NAME = "FireAxe"
3rd, To give this giftable item it's own ID for the amount of PP given,and to make it so the item can only be gifted once we need to change
cMissionCinematic x152
TO
cMissionCinematic x700
(For each new item, just keep going up from 700 1 by 1, like 701, 702...etc)
Lastly, we need to change (THIS STEP IS OPTIONAL, though I still recommend you do it to leave no room for error)
cMissionSetChuckState GivePP_Bear1
TO
cMissionSetChuckState GivePP_FireAxe1
Under that, you'll see
Value = "15000"
This value amount determines how much PP you're given once you give Katie the item.
Once you've edited everything, it should look like this:
cMissionObjectiveGiveItemToNPC GiveFireAxe
{
ITEM_NAME = "FireAxe"
NPCName = "cast_katey"
cMissionCinematic x700
{
CinematicName = "katie_recieve_gift_large"
NoTeleportAfterIsOK = "true"
cMissionSetNPCScriptedAction x153
{
IsLooping = "true"
NPCName = "cast_katey"
Orientation = "103.175"
ScriptedActionName = "KatieExcited"
SetOrientation = "false"
UseOrientation = "true"
}
cMissionDialogue x154
{
Dialogue0 = "65073"
Speaker0 = "cast_katey"
SpeakerID0 = "50051"
}
cMissionSetChuckState GivePP_FireAxe1
{
ChuckState = "10"
Value = "20000"
}
cMissionSetChuckState drop_item2
{
ChuckState = "18"
}
cMissionSetChuckState FatherOfTheMonth2
{
ChuckState = "12"
Value = "1339"
}
}
}
Sorry if the tutorial is a bit jumpy on details.
Screenshot Example: