entites.blk
mbs_desktop_stuff_a_binoculars{
_override:b=yes
_extends:t="resupply_for_ground_vehicle_zone"
resupply_zone__team:i=1
resupply_zone__resupplyFuel:b=yes
sphere_zone__radius:r=36.0
active:b=yes
zone__icon:t="!ui/skin#bullets.svg"
minimap__visibleRadius:r=5000.0
minimap__visibleForAll:b=yes
building_menu__image:t="medic"
hud_icon__image:t="medic"
_replicated:t="building_menu__image"
_replicated:t="hud_icon__image"
builder_info__team:i=-1
"buildByPlayer:eid"{
}
"dependsOnBuildingEid:eid"{
}
}
mbs_stool_a{
_override:b=yes
_extends:t="resupply_for_ground_vehicle_zone"
resupply_zone__team:i=2
resupply_zone__resupplyFuel:b=yes
sphere_zone__radius:r=36.0
active:b=yes
zone__icon:t="!ui/skin#bullets.svg"
minimap__visibleRadius:r=5000.0
minimap__visibleForAll:b=yes
building_menu__image:t="medic"
hud_icon__image:t="medic"
_replicated:t="building_menu__image"
_replicated:t="hud_icon__image"
builder_info__team:i=-1
"buildByPlayer:eid"{
}
"dependsOnBuildingEid:eid"{
}
}
mbs_ger_radio_kw_e_a{
_override:b=yes
minimap__visibleRadius:r=3000.0
minimap__visibleForAll:b=no
building_menu__image:t="medic"
hud_icon__image:t="map_icon_bike"
_replicated:t="building_menu__image"
_replicated:t="hud_icon__image"
builder_info__team:i=-1
team:i=-1
"buildByPlayer:eid"{
}
"dependsOnBuildingEid:eid"{
}
"additiveBuildings:array"{
"item:object"{
template:t="rally_point_respawn_base+respawnChooser+respMotorcycle+vehicle_resp_soft_ground_collision+shred_outside_battle_area"
tm:m=[[1.0, 0.0, 0.0] [0.0, 1.0, 0.0] [0.0, 0.0, 1.0] [3.0, 1.2, -0.6]]
}
}
}
mbs_ger_radio_feld_fu{
_override:b=yes
minimap__visibleRadius:r=3000.0
minimap__visibleForAll:b=no
building_menu__image:t="medic"
hud_icon__image:t="map_icon_tank"
_replicated:t="building_menu__image"
_replicated:t="hud_icon__image"
builder_info__team:i=-1
team:i=-1
"buildByPlayer:eid"{
}
"dependsOnBuildingEid:eid"{
}
"additiveBuildings:array"{
"item:object"{
template:t="rally_point_respawn_base+respawnChooser+respVehicle+vehicle_resp_soft_ground_collision+shred_outside_battle_area"
tm:m=[[1.0, 0.0, 0.0] [0.0, 1.0, 0.0] [0.0, 0.0, 1.0] [8.0, 1.6, 0.2]]
}
}
}
respVehicle{
_override:b=yes
disableCapturePointsRadius:r=330.0
respawnsBeforeDestroy:i=5
disableEnemyRadius:r=50.0
"maxVehicleOnSpawn:i"{
value:i=5
_info:t="max_vehicle_on_spawn"
}
}
respMotorcycle{
_override:b=yes
disableCapturePointsRadius:r=230.0
disableEnemyRadius:r=39.0
"maxVehicleOnSpawn:i"{
value:i=-1
_info:t="max_vehicle_on_spawn"
}
}
ussr_rallypoint{
_override:b=yes
"additiveBuildings:array"{
"item:object"{
template:t="rally_point_respawn_base+forceRespawnPriority"
tm:m=[[1.0, 0.0, 0.0] [0.0, 1.0, 0.0] [0.0, 0.0, 1.0] [0.0, 1.0, 0.0]]
}
"item:object"{
template:t="placed_medic_box_item+item_in_world+mbs_desktop_stuff_a_binoculars+replicating"
tm:m=[[1.0, 0.0, 0.0] [0.0, 1.0, 0.0] [0.0, 0.0, 1.0] [0.0, -0.2, 0.0]]
}
"item:object"{
template:t="mbs_ger_radio_feld_fu+replicating"
tm:m=[[1.0, 0.0, 0.0] [0.0, 1.0, 0.0] [0.0, 0.0, 1.0] [0.0, 0.0, 0.37]]
}
"item:object"{
template:t="mbs_ger_radio_kw_e_a+replicating"
tm:m=[[1.0, 0.0, 0.0] [0.0, 1.0, 0.0] [0.0, 0.0, 1.0] [0.0, 0.0, -0.3]]
}
}
}
ger_rallypoint{
_override:b=yes
"additiveBuildings:array"{
"item:object"{
template:t="rally_point_respawn_base+forceRespawnPriority"
tm:m=[[1.0, 0.0, 0.0] [0.0, 1.0, 0.0] [0.0, 0.0, 1.0] [0.0, 1.0, 0.0]]
}
"item:object"{
template:t="placed_medic_box_item+item_in_world+mbs_stool_a+replicating"
tm:m=[[1.0, 0.0, 0.0] [0.0, 1.0, 0.0] [0.0, 0.0, 1.0] [0.0, -0.2, 0.0]]
}
"item:object"{
template:t="mbs_ger_radio_feld_fu+replicating"
tm:m=[[1.0, 0.0, 0.0] [0.0, 1.0, 0.0] [0.0, 0.0, 1.0] [0.0, 0.0, 0.377]]
}
"item:object"{
template:t="mbs_ger_radio_kw_e_a+replicating"
tm:m=[[1.0, 0.0, 0.0] [0.0, 1.0, 0.0] [0.0, 0.0, 1.0] [0.0, 0.0, -0.3]]
}
}
}
// etc...
// Important!!!
// use to auto remove dead wrecks of vehicles!
// Important to save performance !!! Recycling garbage occupies memory.
willys_mb{
_override:b=yes
_extends:t="bonfire_effect_no_occluders"
_extends:t="fire_timings"
_extends:t="base_fortification_build"
animchar__res:t="pv_gaz_67_char"
collres__res:t="pv_gaz_67_collision"
effect__name:t="fire_tank_small_cmps_fx"
fire_source__startTime:r=0.0
fire_source__fullForceTime:r=20.0
fire_source__maxFullForceTime:r=23.0
fire_source__fadeTime:r=6.0
fire_source__scale:r=1.29
"fire_source:tag"{
}
"zombieTriggerable:tag"{
}
"dmgzone__burningOffender:eid"{
}
// disable the spawn selector on dead vehchile
"respawnOwnerEid:eid"{
}
"respawnIcon:eid"{
}
}
gmc_353_a{
_override:b=yes
_extends:t="shred_outside_battle_area" // you dont want players spawn in the gray zone..
_tracked:t="builder_info__team"
builder_info__team:i=1 // requred for shred_outside_battle_area
entity__recreateToOnDeath:t="willys_mb"
inactiveDeleteTimer:r=230.0
destroyTimerCheckDistance:r=100.0
item__name:t="capzone/convoy"
destroyIfNoCrewLeft:b=yes
vehicle_seats__restrictToTeam:i=1
vehicle_seats__autoDetectRestrictToTeam:b=no
// collision_damage__canBeOffender:b=false
// _replicated:t="attach_decorators__entities"
// _replicated:t="attach_decorators__templates"
// properties to fix some error warnning
"ammo_stowage__stowageTemplates:shared:list<t>"{
}
"dm_phys_parts__ammo:array"{
}
"dm_phys_parts__tracks:array"{
}
"turret_gun_flash_fx__flashNodes:shared:array"{
}
"turret_gun_flash_fx__flashFx:shared:array"{
}
"turret_gun_flash_fx__flashFxScale:shared:array"{
}
"turret_control__emitterNodes:shared:array"{
}
"turret_control__turretInfo:shared:array"{
}
// attach_decorators__entities not working in multiplayer games yet.
// or it would be a better way to implement this
// _group{
// _tags:t="server"
// "attach_decorators__entities:list<eid>"{
// }
// "attach_decorators__templates:array"{
// "templates:object"{
// relativeTm:m=[[0.0, -1.0, 0.0] [1.0, -0.0, 0.0] [0.0, 0.0, 1.0] [0.5, -5.0, -0.0]]
// template:t="gun_game_respawn_base+respTeam1+replicating"
// nodeName:t="emtr_fire_engine"
// }
// }
// }
}
opel_blitz_kfz_305{
_override:b=yes
_extends:t="shred_outside_battle_area"
_tracked:t="builder_info__team"
builder_info__team:i=2 // requred for shred_outside_battle_area
entity__recreateToOnDeath:t="willys_mb"
inactiveDeleteTimer:r=230.0
destroyTimerCheckDistance:r=100.0
item__name:t="capzone/convoy"
destroyIfNoCrewLeft:b=yes
vehicle_seats__restrictToTeam:i=2
vehicle_seats__autoDetectRestrictToTeam:b=no
// collision_damage__canBeOffender:b=false
// properties to fix some error warnning
"ammo_stowage__stowageTemplates:shared:list<t>"{
}
"dm_phys_parts__ammo:array"{
}
"dm_phys_parts__tracks:array"{
}
"turret_gun_flash_fx__flashNodes:shared:array"{
}
"turret_gun_flash_fx__flashFx:shared:array"{
}
"turret_gun_flash_fx__flashFxScale:shared:array"{
}
"turret_control__emitterNodes:shared:array"{
}
"turret_control__turretInfo:shared:array"{
}
}
// i defined a new template here
// but I cant directly use the new template in multiplayer games
big_action_attachableRespawnBase{
_extends:t="respawnBase"
_extends:t="respawnChooser"
decor__id:i=-1
decor__swapYZ:b=no
active:b=no
respawnsBeforeDestroy:i=999999
respawnCooldown:r=10.0
nextSpawnActivateAtTime:r=0.0
disableEnemyRadius:r=20.0
disableCapturePointsRadius:r=-1.0
disableMissionRespawnPointsRadius:r=-1.0
respawnBaseGroup:i=-1
enemyCheckInterval:r=0.5
nextEnemyCheckAtTime:r=1.0
isEnemyAtRespawn:b=no
respbase__validated:b=yes
_tracked:t="respawnsBeforeDestroy"
_tracked:t="nextSpawnActivateAtTime"
_tracked:t="isEnemyAtRespawn"
"node_attached__updateWtm:tag"{
}
"decor__canAttach:b"{
value:b=no
_tags:t="gameClient"
}
// "dependsOnBuildingEid:eid"{
// }
"autoSetRespawnGroup:tag"{
}
"customRespawnBase:tag"{
}
"respbase__noSpawnImmunity:b"{
value:b=yes
_tags:t="server"
}
"playerRespawnBase:tag"{
}
}
// use a gun_game_respawn_base to path our new properties
// as a carrier, because this tag exists on both the client and the server.
// you can use unused templates in your mod to add custom functions.
gun_game_respawn_base{
_override:b=yes
_extends:t="big_action_attachableRespawnBase"
}
// local tests
big_action_attachableRespawnBase_team1{
_extends:t="big_action_attachableRespawnBase"
team:i=1
}
big_action_attachableRespawnBase_team2{
_extends:t="big_action_attachableRespawnBase"
team:i=2
}
base_m13_40_serie_3{
_override:b=yes
canUseRespawnbaseType:t="motorcycle"
}
base_m14_41{
_override:b=yes
canUseRespawnbaseType:t="motorcycle"
}
// ...
Поскольку я не могу использовать attach_decorators__templates
Поэтому я могу наложитьxxx_respawn_base
только непосредственно на автомобиль.
К моему приятному удивлению, это тоже дает хорошие результаты.
scene.blk
// Since I modified the `canUseRespawnbaseType` of some tanks, in order to ensure that these tanks can be deployed correctly.
// Each respVehicle and its selectGroup must correspond to a respMotorcycle with the same selectGroup
entity{
_template:t="respawnChooser+respVehicle+vehicle_resp_soft_ground_collision"
transform:m=[[0.200152, 0, -0.979765] [0, 1, 0] [0.979765, -0, 0.200152] [-512.929, 8.28614, -459.086]]
groupName:t="s1"
team:i=1
maxVehicleOnSpawn:i=2
respawnBaseGroup:i=997005
}
entity{
_template:t="respawnChooser+respMotorcycle"
transform:m=[[-0.652412, 0, -0.757864] [0, 1, 0] [0.757864, 0, -0.652412] [-583.632, 9.82787, -603.276]]
team:i=1
respawnBaseGroup:i=997005
groupName:t="s1"
"respbase__addTemplatesOnSpawn:list<t>"{
item:t="vehicle_spawn_validation"
item:t="vehicle_spawn_restriction"
item:t="base_tgdgb_m40_lv" // match 6 wheels and help to fix camera issue
item:t="gmc_353_a" // truck is here
item:t="paratrooper_plane_camera"
item:t="vehicle_display_marker_over_head"
item:t="destroyOnDamageWithoutCrew"
item:t="destroy_inactive_vehicle"
item:t="gun_game_respawn_base" // patch our changed respawn poinit
item:t="respawnChooser"
}
}
entity{
_template:t="respawnChooser+respVehicle+vehicle_resp_soft_ground_collision"
transform:m=[[0.956992, 0, 0.290112] [0, 1, -0] [-0.290112, 0, 0.956992] [-1875.09, 1.40111, -788.972]]
groupName:t="s1n1"
team:i=2
maxVehicleOnSpawn:i=7
respawnBaseGroup:i=7011
}
entity{
_template:t="respawnChooser+respMotorcycle"
transform:m=[[0.758022, 0, -0.65223] [0, 1, 0] [0.65223, -0, 0.758022] [-1907.57, 1.40607, -753.874]]
team:i=2
respawnBaseGroup:i=7011
groupName:t="s1"
"respbase__addTemplatesOnSpawn:list<t>"{
item:t="vehicle_spawn_validation"
item:t="vehicle_spawn_restriction"
item:t="base_ab_41" // 4 wheels and help to fix camera issue
item:t="opel_blitz_kfz_305"
item:t="paratrooper_plane_camera"
item:t="vehicle_display_marker_over_head"
item:t="destroyOnDamageWithoutCrew"
item:t="destroy_inactive_vehicle"
item:t="gun_game_respawn_base"
item:t="respawnChooser"
}
}