Continue of post 2 (because I apparently hit the word limit )
4) (Unique guide) Custom AI tanks
Custom AI tanks
-
Whats special about this? Well if you have played my mods, you would see the excessive spam of exclusive zombie AI tanks. You cant see them anywhere else.
-
Let’s check out the codes:
type_95_ha_go_ai_tank_vehicle.txt (3.4 KB)
- Don’t get overwhelmed by the codes. I will explain them one by one
First part:
type_95_ha_go_ai_vehicle_tank{
_use:t="ai_vehicle_tank_fixed_objective"
_use:t="jp_type_95_ha_go_14th_inf_div_peleliu_pacific_battlepass_premium"
bodyCleanupTime:r=7.5
paid_loot__pointsForKill:i=100
vehicle_seats__restrictToTeam:i=3
"dontCreateNphysObstacle:tag"{
}
"zombie:tag"{
}
destroyIfNoCrewLeft:b=yes
_group{
_tags:t="server"
ai_vehicle_tank__thinkState:i=1
ai_vehicle_tank__waitTimesUpdatePath:r=60.0
ai_vehicle_tank__allowCrewExiting:b=no
zombie_ai_vehicle_tank__timeToDestroy:r=900.0
zombie_ai_vehicle_tank__destroyAtTime:r=0.0
ai_vehicle_tank__ignoreBattleArea:b=yes
}
"vehicle_seats__seats:shared:array"{
"seats:object"{
name:t="main_gunner"
locName:t="vehicle_seats/gunner"
attachNode:t="commander"
ignoreAttachNodeRotation:b=yes
attachTm:m=[[1.0, 0.0, 0.0] [0.0, 1.0, 0.0] [0.0, 0.0, 1.0] [-0.02, -0.72, -0.07]]
seatComponent:t="isGunner"
nextSeat:t="driver"
shouldHideOwner:b=yes
receiveDamageFromDMPart:t="commander"
cameraNodeName:t="bone_camera_gunner"
cockpitTemplate:t="jp_type_95_ha_go_gunner_cockpit"
hatchRotationAxis:p3=1.7, 0.0, 0.0
directTurretControl:b=yes
"turretNames:array"{
turretNames:t="turret_01"
}
"hatchNodes:array"{
node:t="hatch_01"
node:t="hatch_02"
}
"loaderTurretNames:array"{
turret:t="turret_01"
}
}
"seats:object"{
name:t="driver"
locName:t="vehicle_seats/driver"
seatOwnsEntityControl:b=yes
attachNode:t="driver"
ignoreAttachNodeRotation:b=yes
attachTm:m=[[1.0, 0.0, 0.0] [0.0, 1.0, 0.0] [0.0, 0.0, 1.0] [-0.25, -0.25, 0.0]]
seatComponent:t="isDriver"
nextSeat:t="main_gunner"
shouldHideOwner:b=yes
receiveDamageFromDMPart:t="driver"
cameraNodeName:t="bone_camera_driver"
cameraOffset:p3=0.15, -0.0, -0.0
cockpitTemplate:t="jp_type_95_ha_go_driver_cockpit"
}
"seats:object"{
name:t="main_gunner"
locName:t="vehicle_seats/additional_gunner"
attachNode:t="machine_gunner"
ignoreAttachNodeRotation:b=yes
attachTm:m=[[1.0, 0.0, 0.0] [0.0, 1.0, 0.0] [0.0, 0.0, 1.0] [-0.25, -0.5, 0.0]]
seatComponent:t="isGunner"
nextSeat:t="driver"
shouldHideOwner:b=yes
receiveDamageFromDMPart:t="machine_gunner"
cameraNodeName:t="root"
cockpitTemplate:t="jp_type_95_ha_go_machinegunner_cockpit"
directTurretControl:b=yes
"turretNames:array"{
turret:t="turret_02"
}
}
}
}
Long code isn’t it?
Actually, you only need to change the following codes for your own tanks
-
Change this to the tank you want
_use:t="jp_type_95_ha_go_14th_inf_div_peleliu_pacific_battlepass_premium"
-
Change the array vehicle_seats__seats:shared:array
to the tank you want. It can be copied by spawning a normal vehicle to check its code
5) Building hammer
Pay Is it possible to make the engineer's hammer and resources buyables like guns a visit for the magic behind this code
// Engineer's hammer section
// Forum post: https://forum.enlisted.net/en/t/142979/ (Thank you! @Bazsi37 @tommyZZM @Devenddar)
test_building_tool{
_use:t="melee_weapon"
builder__shootPressed:b=no
nextTryToSetObjectInTime:r=-1.0
autoTryBuildingObjectInterval:r=3.0
engineerBuildingSpeedMul:r=2.0
gun__reloadable:b=no
animchar__res:t="hammer_char"
item__iconYaw:r=145.0
item__name:t="items/building_tool"
meleeSoundType:t="buildingTool"
_tracked:t="previewEid"
"item__weapSlots:array"{
slot:t="melee"
}
"buildingTool:tag"{
}
"itemInWeaponSlot:tag"{
}
"previewEid:eid"{
}
}
test_building_tool_gun{
_use:t="test_building_tool"
_use:t="replicating"
_tracked:t="gun__owner"
_replicated:t="gun__owner"
_replicated:t="currentPreviewId"
buildingInterval:r=0.0
nextBuildingAtTime:r=0.0
additionalBuildingTemplate:t="network_fortification_preview"
currentPreviewId:i=0
fortification__rayMatId:i=-1
fortification__rayMatName:t="engineerRay"
minBuildingRadius:r=1.5
animchar__res:t="hammer_char"
gun__blk:t="content/enlisted/gamedata/weapons/building_tool_gun.blk"
gun__canAim:b=no
item__template:t="test_building_tools_item"
animchar_render__enabled:b=yes
item__proto:t="content/enlisted/gamedata/weapons/building_tool_gun.blk"
item__weapTemplate:t="test_building_tool_gun"
item__iconRoll:r=43.0
item__iconYaw:r=0.0
item__iconPitch:r=83.0
item__name:t="items/hammer"
item__weapType:t="building_tool"
item__weight:r=0.5
melee_weapon__blk:t="content/enlisted/gamedata/weapons/building_tool_gun.blk"
gun__locName:t="Hammer"
gun__statName:t="melee"
gun__reloadable:b=no
weap__sprintLerpFactor:r=1.0
melee_weapon__attackAt:r=0.4
melee_weapon__attackTime:r=1.0
"item__id:i"{
value:i=0
_hide:b=yes
}
"gun__owner:eid"{
}
"net__notInInitialScope:tag"{
}
"previewTemplate:list<t>"{
template:t="sandbags_wall_2_preview"
template:t="auto_mg42_preview"
template:t="builded_auto_turret_preview"
template:t="sandbags_wall_mg_preview_dev"
template:t="stationary_ampulomet_preview"
template:t="sandbags_wall_dshk_1942_preview"
template:t="pz3n_preview"
template:t="custom_antipersonnel_mine_preview"
template:t="christmas_tree_preview"
//template:t="ammunition_box_a_preview"
template:t="czech_hedgehog_a_preview"
template:t="barbedwire_engineer_a_preview"
//template:t="cannon_germ_20mm_flak38_preview"
//template:t="cannon_ussr_towed_at_53k_preview"
//template:t="cannon_germ_towed_at_pak38_preview"
}
"buildingLimits:list<i>"{
limit:i=5
limit:i=3
limit:i=1
limit:i=1
limit:i=3
limit:i=1
limit:i=2
limit:i=5
limit:i=10
limit:i=1
limit:i=3
}
}
test_building_tools_item{
_use:t="item_melee"
_use:t="test_building_tool_gun"
collres__res:t="construction_hammer_collision"
item__userstats__pickupName:t="pickup_building_tool"
}
auto_mg42{
_override:b=yes
team:i=1
auto_gun_controller__targetTeam:i=3
auto_gun_controller__targetOffset:p3=0, 0, 0
interactable:b=no
"ai_target__targetForAiGunner:tag"{
}
}
auto_mg42_preview{
_use:t="base_animchar_builder_preview"
animchar__res:t="mg42_char"
collres__res:t="mg42_collision"
instantiateTemplate:t="auto_mg42"
ri_preview__name:t="ri_auto_mg42"
buildingSoundTag:t="fortification"
building_builder__maxTimeToBuild:r=10.0
building_menu__text:t="Sentry Gun 42"
building_menu__image:t="machine_gun"
buildingCost:r=8.0
}
ri_auto_mg42{
_use:t="game_rendinst_decor"
ri_extra__name:t="auto_mg42"
}
builded_auto_turret_preview{
_override:b=yes
building_builder__maxTimeToBuild:r=20.0
building_menu__text:t="Laser Sentry Gun"
building_menu__image:t="assault_rifle"
buildingCost:r=20.0
}
builded_auto_turret{
_override:b=yes
"moveable_obstacle:tag"{
}
}
builded_sg_gun{
_override:b=yes
gun__kineticDamageMult:r=20.0
}
sandbags_wall_mg_preview_dev{
_override:b=yes
buildingCost:r=10.0
building_builder__maxTimeToBuild:r=20.0
}
stationary_ampulomet_preview{
_use:t="base_animchar_builder_preview"
animchar__res:t="ampulomet_1941_char"
collres__res:t="ampulomet_1941_collision"
instantiateTemplate:t="stationary_ampulomet"
ri_preview__name:t="ri_stationary_ampulomet"
buildingSoundTag:t="fortification"
building_builder__maxTimeToBuild:r=20.0
building_menu__text:t="Ampulomet"
building_menu__image:t="building_ampulomet"
buildingCost:r=15.0
}
ri_stationary_ampulomet{
_use:t="game_rendinst_decor"
ri_extra__name:t="stationary_ampulomet"
}
custom_antipersonnel_mine_preview{
_use:t="base_animchar_builder_preview"
animchar__res:t="type_3_mine_char"
collres__res:t="type_3_mine_collision"
instantiateTemplate:t="jp_custom_antipersonnel_mine+placeable_item_in_world"
ri_preview__name:t="jp_custom_antipersonnel_mine"
buildingSoundTag:t="fortification"
building_builder__maxTimeToBuild:r=3.0
building_menu__text:t="Anti-personnel Mine"
building_menu__image:t="killlog/kill_explosion"
buildingCost:r=1.0
}
base_custom_mine_item_gun{
_use:t="melee_weapon"
_use:t="placeable_item"
_use:t="base_mine_item_gun_sound"
_use:t="replicating"
_use:t="base_hitpoints"
_use:t="base_dm_parts"
weap__sprintLerpFactor:r=1.0
animchar__res:t="antitank_mine_char"
collres__res:t="antitank_mine_collision"
animchar_render__enabled:b=yes
item__template:t="base_mine_item_gun"
item__weapTemplate:t="base_mine_item_gun"
item__name:t="items/antitank_mine"
item__weapType:t="mine"
item__weight:r=0.5
melee_weapon__blk:t="content/enlisted/gamedata/weapons/building_tool_gun.blk"
gun__locName:t="antitank_mine"
gun__reloadable:b=no
_tracked:t="gun__owner"
_tracked:t="mine__activated"
_tracked:t="mine__blockedToTime"
_replicated:t="gun__owner"
_replicated:t="mine__activated"
_replicated:t="mine__blockedToTime"
mineActivatorTemplate:t="antipersonnel_mine_activator"
mine_activator__offset:p3=0.0, 0.15, 0.0
activationRadius:r=1.5
mine__installBlockTime:r=5.0
mine__blockedToTime:r=-1.0
mine__activated:b=no
nextCheckTriggerAtTime:r=-1.0
checkTriggerInterval:r=0.1
material:t="steel"
needsBlood:b=no
meleeSoundType:t=""
hitpoints__hp:r=10.0
hitpoints__maxHp:r=10.0
hitpoints__hpRecoverySpd:r=0.0
hitpoints__hpThreshold:r=0.0
hitpoints__stoppingPower:r=0.0
hitpoints__shellDmgMult:r=0.075
hitpoints__shellSplashDmgMult:r=0.075
"disableDestroyWithRi:tag"{
}
"build_attach__riexHandle:u64"{
value:i64=-1
_tags:t="server"
}
"item__weapSlots:array"{
slot:t="special"
}
"itemInWeaponSlot:tag"{
}
collres{
}
"gun__owner:eid"{
}
"net__notInInitialScope:tag"{
}
"specialWeapItem:tag"{
}
"disableMelee:tag"{
}
"mine_activation_zone__initEids:list<eid>"{
}
"engeneer_mine:tag"{
}
"dm_parts__parts:object"{
"mine_b_collision04:object"{
dmgMult:r=1.0
armor:r=0.0
}
"mine_b_collision05:object"{
dmgMult:r=1.0
armor:r=0.0
}
"mine_b_collision06:object"{
dmgMult:r=1.0
armor:r=0.0
}
}
"killer:eid"{
}
_group{
ui__geom_node_idx:i=-1
ui__node_pos:p3=0.0, 0.0, 0.0
ui__geom_node_name:t="weaponRoot"
_tags:t="ui"
}
"animchar__noUpdateOnDedicated:tag"{
}
}
custom_antipersonnel_mine_item_gun{
_use:t="base_custom_mine_item_gun"
animchar__res:t="sprengmine_35_char"
collres__res:t="sprengmine_35_collision"
mineActivatorTemplate:t="antipersonnel_mine_activator"
melee_weapon__blk:t="content/enlisted/gamedata/weapons/mines/antipersonnel_mine_item_gun.blk"
gun__locName:t="antipersonnel_mine"
item__name:t="items/antipersonnel_mine"
item__template:t="antipersonnel_mine_item_gun"
item__weapTemplate:t="antipersonnel_mine_item_gun"
item__mineType:t="antipersonnel_mine"
item__weight:r=4.0
activationRadius:r=1.4
shell_explosion_fx__infoTemplate:t="hit_effect_group_antipersonel_mine_explosion"
shell__waterImpactFx:t="hit_water_medium_effect"
"ui__placeableItemMarker:tag"{
_tags:t="ui"
}
"mine_activation__delay:r"{
_tags:t="server"
value:r=0.5
}
"vehicleTriggerable:tag"{
}
"humanTriggerable:tag"{
}
"dm_parts__parts:object"{
"volumeBox_1:object"{
dmgMult:r=1.0
armor:r=0.0
}
"volumeBox_2:object"{
dmgMult:r=1.0
armor:r=0.0
}
}
}
jp_custom_antipersonnel_mine{
_use:t="custom_antipersonnel_mine_item_gun"
animchar__res:t="type_3_mine_char"
collres__res:t="type_3_mine_collision"
melee_weapon__blk:t="content/enlisted/gamedata/weapons/mines/jp_antipersonnel_mine.blk"
item__template:t="jp_antipersonnel_mine"
item__weapTemplate:t="jp_antipersonnel_mine"
placeable_item__additionalHeight:r=0.015
item__weight:r=4.0
"dm_parts__parts:object"{
"volumebox_01:object"{
dmgMult:r=1.0
armor:r=0.0
}
}
team:i=1
placeable_item__ownerTeam:i=1
}
custom_ampulomet_preview{
_use:t="stationary_ampulomet_preview"
instantiateTemplate:t="custom_stationary_ampulomet"
}
custom_stationary_ampulomet{
_use:t="stationary_ampulomet"
"gun__shells:array"{
gun__shells:t="gamedata/gen/weapons/shells/type_2_grenade_discharger_shell.blk"
}
}
//Pz3N
pz3n_preview{
_use:t="base_animchar_builder_preview"
animchar__res:t="pzkpfw_III_ausf_N_char"
collres__res:t="pzkpfw_III_ausf_N_collision"
instantiateTemplate:t="germ_pzkpfw_III_ausf_N_ai_vehicle_tank_defense"
avaliableAngles:p2=-30.0, 30.0
buildingSoundTag:t="cannon"
building_menu__text:t="Panzer III N"
building_menu__image:t="map_icon_tank"
building_builder__maxTimeToBuild:r=5.0
building_builder__maxUnderwaterDistance:r=0.5
requiredSpaceAboveObjectOffset:r=0.5
requiredSpaceAboveObject:r=1.0
buildingDistance:r=2.0
buildingCost:r=5.0
savePreviewTeam:b=yes
}
germ_pzkpfw_III_ausf_N_ai_vehicle_tank_defense{
_use:t="ai_aircraft_crew_ger"
ai_aircraft_crew__soldier_template:t="zombie_ai_vehicle_tank_crew_member"
_use:t="ai_vehicle_tank_fixed_objective"
_use:t="germ_pzkpfw_III_ausf_N_tunis_premium"
cockpit__sightFov:r=360.0
bodyCleanupTime:r=10.0
vehicle_seats__restrictToTeam:i=1
"dontCreateNphysObstacle:tag"{
}
destroyIfNoCrewLeft:b=yes
_group{
_tags:t="server"
ai_vehicle_tank__allowCrewExiting:b=no
zombie_ai_vehicle_tank__timeToDestroy:r=900.0
zombie_ai_vehicle_tank__destroyAtTime:r=0.0
ai_vehicle_tank__ignoreBattleArea:b=yes
}
"vehicle_seats__seats:shared:array"{
"seats:object"{
name:t="driver"
locName:t="vehicle_seats/driver"
seatOwnsEntityControl:b=yes
attachNode:t="driver"
ignoreAttachNodeRotation:b=yes
attachTm:m=[[1.0, 0.0, 0.0] [0.0, 1.0, 0.0] [0.0, 0.0, 1.0] [-0.25, -0.25, 0.0]]
seatComponent:t="isDriver"
nextSeat:t="main_gunner"
shouldHideOwner:b=yes
receiveDamageFromDMPart:t="driver"
//cameraNodeName:t="bone_camera_driver"
//cameraOffset:p3=0.15, -0.0, -0.0
//cockpitTemplate:t="germ_pzkpfw_III_ausf_N_driver_cockpit"
}
"seats:object"{
directTurretControl:b=yes
name:t="main_gunner"
locName:t="vehicle_seats/gunner"
attachNode:t="gunner"
ignoreAttachNodeRotation:b=yes
attachTm:m=[[1.0, 0.0, 0.0] [0.0, 1.0, 0.0] [0.0, 0.0, 1.0] [-0.25, -0.5, 0.0]]
seatComponent:t="isGunner"
nextSeat:t="driver"
shouldHideOwner:b=yes
receiveDamageFromDMPart:t="gunner"
//cameraNodeName:t="bone_camera_gunner"
//cockpitTemplate:t="germ_pzkpfw_III_ausf_N_gunner_cockpit"
"turretNames:array"{
turret:t="turret_01"
turret:t="turret_02"
}
}
"seats:object"{
directTurretControl:b=yes
name:t="commander"
locName:t="vehicle_seats/commander"
attachNode:t="commander"
shouldHideOwner:b=yes
maxPosWithOpenHatch:r=1.2
hatchRotationAxis:p3=1.7, 0.0, 0.0
ignoreAttachNodeRotation:b=yes
attachTm:m=[[1.0, 0.0, 0.0] [0.0, 1.0, 0.0] [0.0, 0.0, 1.0] [-0.1, -0.4, 0.05]]
seatComponent:t="isDriver"
receiveDamageFromDMPart:t="commander"
//cameraNodeName:t="bone_turret"
//cockpitTemplate:t="germ_pzkpfw_III_ausf_N_commander_cockpit"
"hatchNodes:array"{
node:t="hatch_01"
}
"turretNames:array"{
turret:t="turret_03"
}
}
"seats:object"{
attachNode:t="loader"
locName:t="vehicle_seats/loader"
ignoreAttachNodeRotation:b=yes
attachTm:m=[[1.0, 0.0, 0.0] [0.0, 1.0, 0.0] [0.0, 0.0, 1.0] [-0.25, -0.5, 0.0]]
seatComponent:t="isPassenger"
shouldHideOwner:b=yes
receiveDamageFromDMPart:t="loader"
cameraNodeName:t="bone_camera_driver"
"loaderTurretNames:array"{
turret:t="turret_01"
}
}
"seats:object"{
directTurretControl:b=yes
name:t="main_gunner"
locName:t="vehicle_seats/radioman"
attachNode:t="machine_gunner"
ignoreAttachNodeRotation:b=yes
attachTm:m=[[1.0, 0.0, 0.0] [0.0, 1.0, 0.0] [0.0, 0.0, 1.0] [-0.25, -0.5, 0.0]]
seatComponent:t="isPassenger"
nextSeat:t="driver"
shouldHideOwner:b=yes
receiveDamageFromDMPart:t="machine_gunner"
}
}
}
pzkpfw_iii_ausf_n_turret_01_75mm_kwk37{
_override:b=yes
_group{
_tags:t="server"
tank_turret_ai__maxBurstCount:i=0
tank_turret_ai__burstCount:i=3
tank_turret_ai__burstWaitTime:r=1.0
tank_turret_ai__dmTargetUpdateInterval:r=1.0
tank_turret_ai__nextTargetCheckAtTime:r=1.0
tank_turret_ai__targetCheckInterval:r=1.0
tank_turret_ai__longPauseWaitTime:r=1.0
tank_turret_ai__attackDist:r=100.0
turret_ai__atackDist:r=100.0
"gun__shellsAmmo:array"{
gun__shellsAmmo:i=0
gun__shellsAmmo:i=1000
}
"gun__shells:array"{
gun__shells:t="gamedata/gen/weapons/shells/75mm_kwk37_75mm_ger_kwk40_37_he.blk"
}
"ammo_set__shellIds:list<i>"{
item:i=1
}
}
turret__yawSpeed:r=200.0
turret__pitchSpeed:r=200.0
}
pzkpfw_iii_ausf_n_turret_02_7_92mm_mg34{
_override:b=yes
_group{
_tags:t="server"
tank_turret_ai__maxBurstCount:i=150
tank_turret_ai__longPauseWaitTime:r=1.0
tank_turret_ai__attackDist:r=100.0
}
}
pzkpfw_iii_ausf_n_turret_03_7_92mm_mg34{
_override:b=yes
_group{
_tags:t="server"
tank_turret_ai__maxBurstCount:i=150
tank_turret_ai__longPauseWaitTime:r=1.0
tank_turret_ai__attackDist:r=100.0
}
turret__yawSpeed:r=500.0
turret__pitchSpeed:r=500.0
"gun__shellsAmmo:array"{
gun__shellsAmmo:i=100000
}
"gun__shells:array"{
gun__shells:t="gamedata/gen/weapons/shells/7_92mm_mg34_defaultset_bullet_1.blk"
}
}
6) Zombie location on minimap
Firstly, copy the following codes to your entities.blk:
(This creates custom decorations that can be attached to anything)
Spoiler - Code
// With thanks to Bazsi37 for providing to me
team1_marker{
_use:t="custom_marker" // the magic trick here is make use of custom_marker
_use:t="base_vehicle_decor" // load codes for decor
animchar__res:t="sandbag_single_decor_a_char" // place holder for decor
collres__res:t="sandbag_single_decor_a_collision"
custom_marker__icon:t="!ui/skin#v_arrow.svg" //icon inside uiskin.vromfs.bin
custom_marker__iconColor:c=167,55,75,255
custom_marker__iconSize:p2=10.0,10.0
custom_marker__showForTeam:i=1
animchar_render__enabled:b=no //make the "sandbag" invisible
}
// for team 2
team2_marker{
_use:t="custom_marker"
_use:t="base_vehicle_decor"
animchar__res:t="sandbag_single_decor_a_char"
collres__res:t="sandbag_single_decor_a_collision"
custom_marker__icon:t="!ui/skin#v_arrow.svg" //icon inside uiskin.vromfs.bin
custom_marker__iconColor:c=167,55,75,255
custom_marker__iconSize:p2=10.0,10.0
custom_marker__showForTeam:i=2
animchar_render__enabled:b=no
}
Then copy and paste the following to the entities.blk:
Spoiler - Code
nzombie_base{
_override:b=yes
bodyCleanupTime:r=10.0
"attach_decorators__entities:list<eid>"{
}
"attach_decorators__templates:array"{
"attach_decorators__templates:object"{
relativeTm:m=[[1, 0, 0] [0, 1, 0] [0, 0, 1] [0,0,0]]
template:t="team1_marker"
nodeName:t="Bip01 Head"
}
"attach_decorators__templates:object"{
relativeTm:m=[[1, 0, 0] [0, 1, 0] [0, 0, 1] [0,0,0]]
template:t="team2_marker"
nodeName:t="Bip01 Head"
}
}
base_zombie_armored_soldier{
_override:b=yes
bodyCleanupTime:r=10.0
"attach_decorators__entities:list<eid>"{
}
"attach_decorators__templates:array"{
"attach_decorators__templates:object"{
relativeTm:m=[[1, 0, 0] [0, 1, 0] [0, 0, 1] [0,0,0]]
template:t="team1_marker"
nodeName:t="Bip01 Head"
}
"attach_decorators__templates:object"{
relativeTm:m=[[1, 0, 0] [0, 1, 0] [0, 0, 1] [0,0,0]]
template:t="team2_marker"
nodeName:t="Bip01 Head"
}
}
}
7) Charge Attack with Knife
Spoiler - Code
// With thanks to Bazsi37
knife_weapon{
_override:b=yes
_extends:t="melee_weapon"
_extends:t="knife"
meleeSoundType:t="knife"
meleeActionSoundPath:t="impact/knife"
"meleeChargeWeapon:tag"{
}
}
8) Make players killable (reduce server lag)
enlisted_visible_base_soldier{
_override:b=yes
_use:t="zombie_mode_soldier" //get the code from "zombie_mode_soldier", which makes revive without medkit possible
paid_loot__points:i=200 //spawn with points (default was 0)
hitpoints__downedKillChanceMult:r=0.0 //make sure you cannot die when fatal damage is taken
hitpoints__downedTimer:r=120.0 //how much time you can spend in downed state before dying
hitpoints__alwaysDowned:b=no //when set to yes, you cannot die while downed.
hitpoints__deathHpThreshold:r=-100000.0 //HP amount when downed (negative number)
hitpoints__downedKillChanceBase:r=0.0 //chance of getting killed instead of getting downed when receiving damage greater than current HP
hitpoints__killDownedByMeleeHit:b=no //can be killed by melee hit when downed
hitpoints__downedKillWhenBurning:b=no // can be killed by fire damage when downed
bodyCleanupTime:r=30.0 //time it takes to remove corpses
human_inventory__canSelfRevive:b=no //set to yes to allow self revive
}
// Codes below is to revert the changes done above
base_zombie_armored_soldier{
_override:b=yes
bodyCleanupTime:r=10.0
paid_loot__pointsForKill:i=35
hitpoints__deathHpThreshold:r=-10.0
hitpoints__downedKillChanceBase:r=0.2
hitpoints__alwaysAllowRevive:b=no
hitpoints__downedKillWhenBurning:b=yes
hitpoints__killDownedByMeleeHit:b=yes
paid_loot__pointsPerDamage:r=0.3
}
(Work in progress - ~80%! TANK GUIDE ADDED!)
The recent Earth Shield update brought many interest features to the game, but also cooked wave-based zombies.
!!! A fix for the current wave-based zombies will be shared here soon!!!
I will also introduce new stuff here after I have digest them