Forgot to add tank inside level__loadExtraNavMeshes.
And it seems that they will not move. Probably because tank navMesh didn’t generated.
Forgot to add tank inside level__loadExtraNavMeshes.
so, to reiterate,
add the " tank " inside level__load[…] parameter ( inside level node )
add the zombie tank + zombie_tank_objective + zombie_ai_vehicle_tank_crew_member
correct?
Probably will be crash or it will be not created (because of zombie_ai_vehicle_tank_crew_member).
I created just zombie_ai_vehicle_tank+ai_aircraft_crew_ger.
In properties changed ai_aircraft_crew__soldier_template. Set there zombie_ai_vehicle_tank_crew_member.
can someone post the blk of
germ_pzkpfw_IV_ausf_J_zombie ?
i have to figure out how it’s coded because my own tanks do not fire their main gun, and i would like understand how they managed to damage part of the panzer IV J.
which can allow us to place damaged vehicles in our maps.
How do I set paratrooper zombie spawn?
Hmmm… It seems that they spawn nearby team 1 spawn points. Using entities.blk you can try create new entity that will spawn them in another team spawners. Here is code:
zombie_rush_paratrooper_spawner_team2{
_use:t="zombie_rush_paratrooper_spawner"
simple_spawner__useTeamSpawns:i=2
}
Need only add them inside wave code. And they will spawn nearby respTeam2 points. You also can edit team (and in respawn point too) if want set another unqiue spawn point.
So they just spawn near the spawn of team 1?
Hmmm… When you spawn it then it doesn’t looks damaged. Anyways… It seems that all info about it inside dm_parts__initializeKilled.
"dm_parts__initializeKilled:list<t>"{
part:t="gun_barrel"
part:t="ex_decor_04"
part:t="ex_armor_turret_l_01"
part:t="ex_armor_turret_l_02"
part:t="ex_armor_turret_r_01"
part:t="ex_armor_turret_r_02"
part:t="ex_decor_r_01"
part:t="ex_decor_l_01"
part:t="ex_decor_r_09"
}
There also damage decals, but… It contains sooooo many lines. Around 1000.
These properties are changed:
_group{
_tags:t="render"
"damage_decals_decor__shrapnelDecalLocalNormal:list<p3>"{
item:p3=0.292375, 4.03216e-06, 0.956304
}
"damage_decals_decor__projectileHitLocalNormal:list<p3>"{
item:p3=0.250654, -0.968044, 0.00803057
}
"damage_decals_decor__projectileHitCaliber:list<r>"{
item:r=0.0762
}
"damage_decals_decor__shrapnelDecalCollNodeName:list<t>"{
item:t="ex_armor_body_02"
}
"damage_decals_decor__projectileHitLocalPos:list<p3>"{
item:p3=1.29257, -1.097, 1.50737
}
"damage_decals_decor__shrapnelDecalLocalPos:list<p3>"{
item:p3=-0.131775, -0.141825, 0.0752282
}
"damage_decals_decor__projectileHitLocalDir:list<p3>"{
item:p3=-0.998302, -0.0510127, 0.0281334
}
"damage_decals_decor__shrapnelDecalLocalDir:list<p3>"{
item:p3=0.343383, 0.150422, -0.927072
}
"damage_decals_decor__projectileHitDamageType:list<t>"{
item:t="kinetic_ricochet"
}
"damage_decals_decor__projectileHitCollNodeName:list<t>"{
item:t="body_side"
}
}
If you need full code then edit these properties in tank and save changes. They’re should be added in scene.blk.
If you nothing edit then yeah. Near spawn of team 1, but in sky. 300-400m.
do you have the full blk?
i would like to see it’s code.
maybe i’m missing some other properties.
because i tried to make a jagdpanther with ai stuff,
but it’s not working.
it moves ( achtually, i still have to figure out why it moves in reverse, stops a few seconds, and then moves in traverse again. i guess i’ll just remove the driver ), but it doesn’t shoot unlike the panzer IV J.
zombie_jagdpanther_ai_vehicle_tank{
_use:t="ai_vehicle_tank_no_objective"
_use:t="germ_jagdpanther"
paid_loot__pointsForKill:i=100
vehicle_seats__restrictToTeam:i=3
"dontCreateNphysObstacle:tag"{
}
"zombie:tag"{
}
_group{
_tags:t="server"
ai_vehicle_tank__pathFindingState:i=1
zombie_ai_vehicle_tank__timeToDestroy:r=900.0
zombie_ai_vehicle_tank__destroyAtTime:r=0.0
ai_vehicle_tank__ignoreBattleArea:b=yes
}
}
germ_jagdpanther{
_override:b=yes
"turret_control__turretInfo:shared:array"{
"turretInfo:object"{
turretName:t="turret_01"
gun:t="panzerjager_panther_turret_01_88mm_pak43_ai+turret_with_several_types_of_shells+main_turret"
barrelDm:t="gun_barrel"
breechDm:t="cannon_breech"
verDriveDm:t="drive_turret_v"
horDriveDm:t="drive_turret_h"
salt:i=1
}
"turretInfo:object"{
turretName:t="turret_02"
gun:t="panzerjager_panther_turret_02_7_92mm_mg34"
barrelDm:t="gun_barrel_01"
verDriveDm:t="drive_turret_v"
horDriveDm:t="drive_turret_h"
salt:i=1
}
}
}
panzerjager_panther_turret_01_88mm_pak43_ai{
_use:t="panzerjager_panther_turret_01_88mm_pak43"
turret__allowShootingFromBroken:b=yes
_group{
_tags:t="server"
tank_turret_ai__maxBurstCount:i=0
tank_turret_ai__longPauseWaitTime:r=0.0
tank_turret_ai__attackDist:r=40.0
}
}
… or maybe not all tanks are suited to have AIs.
but, thanks for the damaged parts and neat features of damage decors
Turret doesn’t look unique.
pzkpfw_iv_ausf_j_turret_01_75mm_kwk40_l48_zombie_ai{
_use:t="pzkpfw_iv_ausf_j_turret_01_75mm_kwk40_l48"
turret__allowShootingFromBroken:b=yes
_group{
_tags:t="server"
tank_turret_ai__maxBurstCount:i=0
tank_turret_ai__longPauseWaitTime:r=0.0
tank_turret_ai__attackDist:r=40.0
}
}
But yeah. Here is full file…
germ_pzkpfw_iv_ausf_j_zombie.blkx.txt (41.4 KB)
And this:
zombie_ai_vehicle_tank{
_use:t="ai_vehicle_tank_no_objective"
_use:t="germ_pzkpfw_IV_ausf_J_zombie"
paid_loot__pointsForKill:i=100
vehicle_seats__restrictToTeam:i=3
"dontCreateNphysObstacle:tag"{
}
"zombie:tag"{
}
_group{
_tags:t="server"
ai_vehicle_tank__pathFindingState:i=1
zombie_ai_vehicle_tank__timeToDestroy:r=900.0
zombie_ai_vehicle_tank__destroyAtTime:r=0.0
ai_vehicle_tank__ignoreBattleArea:b=yes
}
}
interesting.
it appears the code does not work for all tank weapons as of yet.
pzkpfw_iv_ausf_j_turret_01_75mm_kwk40_l48_zombie_ai{
_use:t="pzkpfw_iv_ausf_j_turret_01_75mm_kwk40_l48"
turret__allowShootingFromBroken:b=yes
_group{
_tags:t="server"
tank_turret_ai__maxBurstCount:i=0
tank_turret_ai__longPauseWaitTime:r=0.0
tank_turret_ai__attackDist:r=40.0
}
}
panzerjager_panther_turret_01_88mm_pak43_ai{
_use:t="panzerjager_panther_turret_01_88mm_pak43"
turret__allowShootingFromBroken:b=yes
_group{
_tags:t="server"
tank_turret_ai__maxBurstCount:i=0
tank_turret_ai__longPauseWaitTime:r=0.0
tank_turret_ai__attackDist:r=40.0
}
}
maybe it needs to be on a new template.
EDIT:
yes.
despite many attempts into making a panther G with AI gunner, it didn’t worked.
additional " strange " things that i noticed, is that even if i remove the driver, the panzer IV will still move.
and with those codes, if the tank gets destroyed, the chassy will disappear.
ai_aircraft_crew_ger{
_override:b=yes
"zombie:tag"{
}
"zombie_no_award:tag"{
}
}
germ_pzkpfw_IV_ausf_J_AI{
_use:t="base_pzkpfw_iv_ausf_j"
_use:t="germ_pzkpfw_IV_ausf_J_common_vehicle_sound"
item__iconOffset:p2=0.1, 0.15
item__iconScale:r=1.4
commanderCockpitFpsCamMaxAngle:p2=40.0, 5.0
gunner_cam_limit__useCockpitDir:b=yes
armorThicknessHull:p3=80.0, 30.0, 20.0
armorThicknessTurret:p3=50.0, 30.0, 30.0
"dm_parts__initializeKilled:list<t>"{
part:t="gun_barrel"
part:t="ex_decor_04"
part:t="ex_armor_turret_l_01"
part:t="ex_armor_turret_l_02"
part:t="ex_armor_turret_r_01"
part:t="ex_armor_turret_r_02"
part:t="ex_decor_r_01"
part:t="ex_decor_l_01"
part:t="ex_decor_r_09"
}
"disableDMParts:list<t>"{
part:t="ex_armor_04"
part:t="ex_armor_body_r_01"
part:t="ex_armor_body_r_02"
part:t="ex_armor_body_r_03"
part:t="ex_armor_body_r_05"
part:t="ex_armor_body_l_01"
part:t="ex_armor_body_l_02"
part:t="ex_armor_body_l_03"
part:t="track_r_01"
part:t="track_l_01"
}
"animchar__objTexReplace:object"{
"ger_camo_dunkelgelb*":t="ger_camo_dark_grey*"
}
"turrets__initAmmoDistribution:array"{
"ammo:object"{
slot:i=0
fill:b=yes
}
"ammo:object"{
slot:i=5
count:i=7
}
}
"turret_control__turretInfo:shared:array"{
"turretInfo:object"{
turretName:t="turret_01"
gun:t="pzkpfw_iv_ausf_j_turret_01_75mm_kwk40_l48_zombie_ai+turret_with_several_types_of_shells+main_turret"
barrelDm:t="gun_barrel"
breechDm:t="cannon_breech"
verDriveDm:t="drive_turret_v"
horDriveDm:t="drive_turret_h"
salt:i=1
}
"turretInfo:object"{
turretName:t="turret_02"
gun:t="pzkpfw_iv_ausf_j_turret_02_7_92mm_mg34"
barrelDm:t="gun_barrel_01"
salt:i=1
}
"turretInfo:object"{
turretName:t="turret_03"
gun:t="pzkpfw_iv_ausf_j_turret_03_7_92mm_mg34"
barrelDm:t="gun_barrel_02"
salt:i=1
}
"turretInfo:object"{
turretName:t="turret_04"
needsAssignedGunner:b=no
turretGroup:t="smoke"
gun:t="pzkpfw_iv_ausf_j_turret_04_91mm_germ_smoke_mortar_launcher"
salt:i=1
}
}
"vehicle_seats__effectors:array"{
}
"vehicle_seats__seats:shared:array"{
"seats:object"{
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_IV_ausf_J_gunner_cockpit"
directTurretControl:b=yes
"turretNames:array"{
turret:t="turret_01"
turret:t="turret_02"
}
}
"seats:object"{
name:t="commander"
locName:t="vehicle_seats/commander"
attachNode:t="bone_turret_01"
shouldHideOwner:b=yes
hatchRotationAxis:p3=1.8, 0.0, 0.0
maxPosWithOpenHatch:r=0.6
ignoreAttachNodeRotation:b=yes
attachTm:m=[[0.945513, -0.325564, -0.0] [0.325564, 0.945513, 0.0] [0.0, -0.0, 1.0] [-0.15, -0.6, 0.07]]
seatComponent:t="isDriver"
receiveDamageFromDMPart:t="commander"
cockpitTemplate:t="germ_pzkpfw_IV_ausf_J_commander_cockpit"
cameraNodeName:t="bone_turret"
isHatchControlInversed:b=yes
"hatchNodes:array"{
node:t="hatch_10"
}
"hatchTurretNames:array"{
turret:t="turret_03"
}
"effectors:object"{
"l.hand:object"{
rel_tm:m=[[0.97117, 0.237519, 0.020345] [0.0889659, -0.440294, 0.893435] [0.221165, -0.865868, -0.448731] [0.0157318, 0.0978909, -0.0356903]]
node:t="bone_mg_aa"
}
"r.hand:object"{
rel_tm:m=[[0.457892, 0.365741, -0.810288] [-0.0172946, -0.907617, -0.419446] [-0.888839, 0.206074, -0.409265] [-0.229507, 0.231809, 0.0531616]]
node:t="bone_mg_aa"
}
"l.foot:object"{
rel_tm:m=[[0.0580978, -0.998205, -0.0145364] [0.985102, 0.0596839, -0.161282] [0.16186, -0.00494957, 0.986801] [-0.108994, -0.703663, -0.106209]]
node:t="bone_turret_01"
}
"r.foot:object"{
rel_tm:m=[[0.0380384, -0.999241, 0.00848966] [0.998773, 0.0382875, 0.0314126] [-0.0317138, 0.00728441, 0.99947] [-0.107773, -0.709267, 0.0740204]]
node:t="bone_turret_01"
}
}
}
"seats:object"{
locName:t="vehicle_seats/loader"
attachNode:t="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"{
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"
shouldHideOwner:b=yes
receiveDamageFromDMPart:t="machine_gunner"
}
}
"attach_decorators__entities:list<eid>"{
}
"attach_decorators__templates:array"{
"templates:object"{
relativeTm:m=[[-0.0397046, 0.0454239, 0.998744] [0.967918, -0.251643, 0.0499252] [0.253322, 0.967741, -0.0339445] [2.76668, 0.972928, 0.175631]]
template:t="sandbag_single_a_decor"
nodeName:t="root"
}
"templates:object"{
relativeTm:m=[[0.081971, -0.153297, 0.985157] [-0.996855, 0.00849219, 0.084274] [-0.0212712, -0.988288, -0.152036] [-1.83018, 1.7214, 0.417252]]
template:t="sandbag_single_b_decor"
nodeName:t="root"
}
"templates:object"{
relativeTm:m=[[0.895648, -0.444415, -0.0393434] [-0.0748249, -0.0626309, -0.995828] [0.43985, 0.894302, -0.0893016] [2.54849, 1.02297, -0.694606]]
template:t="sandbag_single_c_decor"
nodeName:t="root"
}
"templates:object"{
relativeTm:m=[[-0.111425, 0.0469708, -0.992893] [-0.986354, -0.13076, 0.104539] [-0.12486, 0.990557, 0.060867] [-1.90656, 1.57031, -0.116939]]
template:t="sandbag_single_c_decor"
nodeName:t="root"
}
"templates:object"{
relativeTm:m=[[-0.0242969, 0.0301522, -0.99997] [-0.822296, 0.569102, 0.0371379] [0.569719, 0.822443, 0.0109577] [2.30269, 1.13923, 0.595828]]
template:t="sandbag_single_d_decor"
nodeName:t="root"
}
"templates:object"{
relativeTm:m=[[0.999203, 0.0216646, 0.0396109] [0.0398049, -0.00840105, -0.999206] [-0.0213138, 0.999898, -0.00925717] [-1.74838, 1.69718, -0.987704]]
template:t="tank_decor_box_01_decor"
nodeName:t="root"
}
"templates:object"{
relativeTm:m=[[0.999898, -1.32487e-05, -0.00263915] [-0.00263822, 0.0298302, -0.999728] [9.19911e-05, 0.999905, 0.0298331] [-1.71437, 1.68709, 0.994935]]
template:t="tank_decor_box_01_decor"
nodeName:t="root"
}
"templates:object"{
relativeTm:m=[[-0.00899908, -0.984255, 0.176703] [-0.999205, 0.0176307, 0.0473065] [-0.049663, -0.176088, -0.983386] [-1.92053, 1.48771, 1.38156]]
template:t="jerrycan"
nodeName:t="root"
}
"templates:object"{
relativeTm:m=[[-0.0272856, -0.935949, -0.351771] [0.998021, -0.0467129, 0.0468484] [-0.0602505, -0.349653, 0.935096] [-1.76068, 1.48194, -1.40904]]
template:t="jerrycan"
nodeName:t="root"
}
"templates:object"{
relativeTm:m=[[0.0133902, -0.501274, -0.000135187] [0.501274, 0.0133862, -0.000170138] [0.000173672, -0.000130378, 0.501073] [-0.832581, 0.969506, -1.44889]]
template:t="wooden_plank_b_decor"
nodeName:t="root"
}
"templates:object"{
relativeTm:m=[[0.00802108, -0.501514, -0.00013519] [0.501514, 0.0080189, -0.0001731] [0.000175217, -0.000132064, 0.501123] [1.54306, 0.989046, 1.42528]]
template:t="wooden_plank_b_decor"
nodeName:t="root"
}
"templates:object"{
relativeTm:m=[[0.00845192, -0.501394, 0.000187221] [0.501275, 0.00845121, 0.00782867] [-0.00782971, 5.51534e-05, 0.500845] [1.43285, 1.02978, -1.46294]]
template:t="wooden_plank_c_decor"
nodeName:t="root"
}
"templates:object"{
relativeTm:m=[[0.00606502, -0.501254, -0.000181364] [0.501448, 0.00605729, 0.00982283] [-0.00980991, -0.000299887, 0.500932] [-0.705231, 1.04167, 1.40337]]
template:t="wooden_plank_c_decor"
nodeName:t="root"
}
}
}
zombie_panther_g_ai_vehicle_tank{
_use:t="ai_vehicle_tank_no_objective"
_use:t="germ_pzkpfw_V_ausf_g_panther"
paid_loot__pointsForKill:i=100
vehicle_seats__restrictToTeam:i=3
"dontCreateNphysObstacle:tag"{
}
"zombie:tag"{
}
_group{
_tags:t="server"
ai_vehicle_tank__pathFindingState:i=0
zombie_ai_vehicle_tank__timeToDestroy:r=0.0
zombie_ai_vehicle_tank__destroyAtTime:r=0.0
ai_vehicle_tank__ignoreBattleArea:b=yes
}
}
germ_pzkpfw_V_ausf_g_panther{
_override:b=yes
"animchar__objTexReplace:object"{
"ger_camo_dunkelgelb*":t="ger_camo_dark_grey*"
}
"turret_control__turretInfo:shared:array"{
"turretInfo:object"{
turretName:t="turret_01"
gun:t="pzkpfw_v_ausf_g_panther_turret_01_75mm_kwk42_ai+turret_with_several_types_of_shells+main_turret"
barrelDm:t="gun_barrel"
breechDm:t="cannon_breech"
verDriveDm:t="drive_turret_v"
horDriveDm:t="drive_turret_h"
salt:i=1
}
"turretInfo:object"{
turretName:t="turret_02"
gun:t="pzkpfw_v_ausf_g_panther_turret_02_7_92mm_mg34"
barrelDm:t="gun_barrel_01"
verDriveDm:t="drive_turret_v"
horDriveDm:t="drive_turret_h"
salt:i=1
}
"turretInfo:object"{
turretName:t="turret_03"
gun:t="pzkpfw_v_ausf_g_panther_turret_03_7_92mm_mg34"
barrelDm:t="gun_barrel_02"
verDriveDm:t="drive_turret_v"
horDriveDm:t="drive_turret_h"
salt:i=1
}
}
}
pzkpfw_v_ausf_g_panther_turret_01_75mm_kwk42_ai{
_use:t="pzkpfw_v_ausf_g_panther_turret_01_75mm_kwk42"
turret__allowShootingFromBroken:b=no
_group{
_tags:t="server"
tank_turret_ai__maxBurstCount:i=0
tank_turret_ai__longPauseWaitTime:r=0.0
tank_turret_ai__attackDist:r=80.0
}
}
zombie_pzv_ai_vehicle_tank{
_use:t="ai_vehicle_tank_no_objective"
_use:t="germ_pzkpfw_IV_ausf_J_AI"
paid_loot__pointsForKill:i=100
vehicle_seats__restrictToTeam:i=3
"dontCreateNphysObstacle:tag"{
}
"zombie:tag"{
}
_group{
_tags:t="server"
ai_vehicle_tank__pathFindingState:i=0
zombie_ai_vehicle_tank__timeToDestroy:r=0.0
zombie_ai_vehicle_tank__destroyAtTime:r=0.0
ai_vehicle_tank__ignoreBattleArea:b=yes
}
}
guess we’ll have to manually tweak and replicate more panzer IVs intol different animchars and phys of other vehicles.
Hey just want to know is the gamemod “survive” can work with AI soldier with guns?
Probably yes. Zombies with guns looks similar to default enlisted soldiers.
It doesn’t seem to make a difference.
I can only guess which property does what, i bumped
To 3000, assuming it means the ai gets attracted to danger (in this case human entites?) within a 3000m radius.
Same with this:
Assuming it means that the AI will follow the player within a 3000m radius even if not in line of sight.
EDIT:
Note to everyone: editing the BEH tree value seems to have solved the problem about distance.
nzombie_ai_without_bullet_reaction{
_override:b=yes
_use:t="beh_tree_regular_check"
_use:t="agent_dangers_hit_reaction"
_use:t="get_reaction_offender_ai"
_use:t="corridor_walker"
_use:t="walker_agent_danger_calc"
_use:t="affected_by_attract_position"
_use:t="obstacle_avoider"
_use:t="door_obstacle_handler"
_use:t="destructable_obstacle_handler"
_use:t="stuck_detector"
stuck_detector_debug__enabled:b=no
walker_agent__velViscosity:r=0.3
walker_agent__velFactor:r=1.0
walker_agent__aimViscosity:r=0.5
walker_agent__aimSpeed:r=1050.0
_tracked:t="walker_agent__targetEid"
walker_agent__targetPos:p3=0.0, 0.0, 0.0
walker_agent__standShootLocalPos:p3=0.0, 1.2, 0.0
agent_dangers__blindDistance:r=3000.0
agent_dangers_calc__dangerMeterMult:r=1.0
beh_tree__node:t="nzombie_attacker"
beh_tree__refs__wander:t="sub.nAttackPriorityTarget"
beh_tree__refs__attack:t="sub.attackPlayerOpportunistic"
beh_tree__debug:b=no
beh_tree__enabled:b=yes
beh_tree__blackboard__enemyRadius:r=5000.0 //key value not 100% sure.
obstacle_avoider__avoidsDamageZones:b=no
agent_dangers__maxDangerDist:r=3000.0
agent_dangers__frustumAngle:r=40.0
agent_dangers__projectileDist:r=4.0
agent_dangers__decrease:r=5.0
agent_dangers__timeFromDetection:r=3.0
agent_dangers__hmapTraceOffset:p3=0.0, -0.1, 0.0
agent_dangers__nextDangersCheckTime:r=0.0
agent_dangers__nextDangersTraceTime:r=0.0
agent_dangers__dangerIncrease:r=5.0
agent_dangers__dangerOutIncrease:r=0.0
agent_dangers__maxDangerDistMult:r=0.3
agent_dangers__standShootPos:p3=0.0, 0.0, 0.0
agent_dangers__standShootDir:p3=0.0, 0.0, 0.0
agent_dangers__rayMatId:i=-1
agent_dangers__rayMat:t="aimRay"
"walker_agent__targetEid:eid"{
}
"beh_tree__debugState:t"{
_tags:t="dev"
value:t=""
}
"beh_tree:BehaviourTree"{
_tags:t="server"
}
agent_dangers{
_tags:t="server"
}
}
EDIT 2: No it did not.
Where do i put this quote in entities?
dp_42_beltfed {
_override:b=yes
gun_spread__maxDeltaAngle:r=0.44
gun_deviation__movementDevInc:p2=12.24,33.6
}
dp_42_beltfed_gun {
_override:b=yes
gun__reloadTime:r=5.2
gun__altReloadTime:r=4.0
gun__magnification:r=1.0
gun__recoilAmount:r=0.0115
gun__kineticDamageMult:r=2
gun_deviation__maxDeviation:r=0.01
gun__visualRecoilMult:r=4.0
}
Example for new gun:
tokyo_arsenal_model_1927_zombie_gun{
_use:t="tokyo_arsenal_model_1927_gun"
_use:t="gun_with_initial_ammo"
_use:t="paid_loot_ressuply"
item__template:t="tokyo_arsenal_model_1927_zombie_gun_item"
item__weapTemplate:t="tokyo_arsenal_model_1927_zombie_gun"
paid_loot__ressuplyCost:i=180
}
tokyo_arsenal_model_1927_zombie_gun_item{
_use:t="item_gun"
_use:t="tokyo_arsenal_model_1927_zombie_gun"
collres__res:t="tokyo_arsenal_model_1927_collision"
_group{
_tags:t="server"
"gun__initialAmmoHoldersCount:list<i>"{
item:i=4
}
}
}
dp_42_beltfed_zombie_gun{
_use:t=“dp_42_beltfed_gun”
_use:t=“gun_with_initial_ammo”
_use:t=“paid_loot_ressuply”
item__template:t=“dp_42_beltfed_zombie_gun_item”
item__weapTemplate:t=“tokyo_arsenal_model_1927_zombie_gun”
paid_loot__ressuplyCost:i=400
}
dp_42_beltfed_gun_zombie_gun_item{
_use:t=“item_gun”
_use:t=“dp_42_beltfed_gun_zombie_gun”
collres__res:t=“dp_42_beltfed_gun_collision”
_group{
_tags:t=“server”
"gun__initialAmmoHoldersCount:list<i>"{
item:i=4
}
}
}
I did it quite like this… basically replaced all the names of your code correctly with the dp_42_beltfed but somehow it still doesnt work properly…
because collres was different:
Here is the full code:
dp_42_beltfed_zombie_gun{
_use:t="dp_42_beltfed_gun"
_use:t="gun_with_initial_ammo"
_use:t="paid_loot_ressuply"
item__template:t="dp_42_beltfed_zombie_gun_item"
item__weapTemplate:t="dp_42_beltfed_zombie_gun"
paid_loot__ressuplyCost:i=180
}
dp_42_beltfed_zombie_gun_item{
_use:t="item_gun"
_use:t="dp_42_beltfed_zombie_gun"
collres__res:t="dp_1942_collision"
_group{
_tags:t="server"
"gun__initialAmmoHoldersCount:list<i>"{
item:i=4
}
}
}
Don’t forget to add
to make it buyable. Define resupply cost in entities.blk
It worked! Thank you!
Another question if you dont mind:
With anim__char you can replace the appearance of a gun.
Example: If i take ppsh(stick) and put pps 42 into the ppshs anim__char, it will still be the ppsh with all animations and stats, but with the appearance of an pps 42.
It works if you do it in the editor and copy it, but as soon as you pick it up, it turns into the ppsh again, so i guess i have to write something in entities.blk again… but how does the anim__char code work there? What do i have to do?
I did this before on my Ural map:
entity{
_template:t="mkb_42_h_gun_item+item_in_world"
transform:m=[[0.765899, 0.00752191, 0.642919] [-0.622519, 0.258819, 0.738569] [-0.160844, -0.965897, 0.202912] [325.305, 139.37, 824.279]]
item__name:t="Sturmgewehr 43(F)"
"customProps:object"{
"initialComponents:object"{
gun__shotFreq:r=10.833
item__name:t="Sturmgewehr 43(F)"
gun__altReloadTime:r=1.6
gun__reloadTime:r=2.4
animchar__res:t="vstg_1_5_char"
item__userstats__pickupName:t="Sturmgewehr 43(F)"
}
}
}
Basically an mkb42 with vstg skin
This worked before fine