С Новым Годом! Вот фейерверк высокого калибра! В наличии Радио Катюша

Планирую заменить запросы самолетов на эту способность в одной из советских фракций

Для какой Советской Красной Армии мне оборудовать эту радиоподдержку?

В моде, похожем на Enduring Confrontation, каждая фракция кампании может использоваться любым присоединившимся игроком, подобно командиру или дивизии в Company of Heros и Steel Division, и каждая используемая фракция имеет свои собственные характеристики. Таким образом, мы можем собрать всех игроков на одном поле боя.


Добавлены entities.blk и data, которые разработчики и заинтересованные игроки могут использовать для справки.

data_entities_blk.zip (133.2 KB)

16 лайков

красота!
думаю, больше всего подойдёт Берлинским Советам

1 лайк

Каким образом? Там здания высотой с пятиэтажки, никак там не подойдет такое. Онли Москва, Тунис и подобные открытые компании.

2 лайка

В Батлфилд вьетнам на любом тс можно было врубать целый набор хитов от Вагнера до Луи Луи

2 лайка

да не, он имеет ввиду Советам из какой кампании выдать эту способность (т.е как доктрине из CoH или CtA), он же указал это в теме

1 лайк

Крутотень

1 лайк

а не мог бы ты пожалуйста приложить entities blk?
как ты сделал выбор пользовательской артиллерии?

и можно ли дать разным командам разную артиллерию?

1 лайк

image

Возможно, я сделал обстрел поездной пушки К5 (модель поездной пушки КЕ) за фракцию Оси, стреляет 3 тяжелыми снарядами по обозначенному участку

Основной производственный метод состоит в том, чтобы прикрепить прозрачные мишени к auto_turrets через attach_decorators__templates, а затем динамически генерировать эти автоматические стрелковые пушки через механизм aircraft_request

При изготовлении этих пушек мы можем калибровать пушки, регулируя положение мишени для стрельбы. Вы можете позволить пушке стрелять первой, затем использовать capzone, чтобы записать дистанцию ​​его стрельбы, а затем установить значение расстояния в aircraft_request__aircraftSpawnDistance.

В конце концов, потребовалась тонкая настройка, чтобы его снаряды приземлялись как можно ближе к красному кругу.

Еще одна вещь, которую следует отметить, это то, что нам нужно использовать gravity_zone, чтобы сделать эти автоматические стреляющие пушки максимально подвешенными в воздухе, чтобы предотвратить их влияние на местность, когда они падают на землю, вызывая снаряды. упасть в неправильное положение.

Вы также можете прикрепить другие вещи для внешнего вида, такие как поездные пушки и грузовики, но внешний вид не обязателен, потому что они находятся далеко от карты, поэтому внешний вид и подвеска не будут иметь большого влияния на игровой процесс.

Мы также можем сделать эти пушки доступными для уничтожения авиационными подразделениями. Сделайте динамичную авиационную миссию. Это похоже на Call Bomber, только теперь это наземный юнит.

data_entities_blk.zip (133.2 KB)

5 лайков

ого…
довольно сложно…
но звучит интересно!
однако я просто я хотел дать разные артиллерийские вызовы командам, чтобы СССР вызывали обстрел 152мм гаубиц, а Ось - орбитальный лазер, в итоге получалось дать только что-то одно

и как ты смог дать орудию имя?..

1 лайк

item/name в turret

big_action_artillery_gun_k5_adjust{
  _extends:t="tankgun_76mm_l11"
  gun__blk:t="%ugm/data/weapons/_radio_artillery/_gun_283mm_k5_railway_adjust_smoke_gun.blk" 
  // В качестве дескриптора необходимо задать отдельный файл, этот файл пустой, но путь должен быть уникальным
  item__name:t="283mm Krupp K5 heavy railway gun"
  killLogName:t="283mm Krupp K5 heavy railway gun"
}

Далее я собираюсь сделать 25-фунтовку для британцев, сбрасывать красный дым, затем быстрое огневое прикрытие, меньшая дальность, но более короткое время восстановления.

3 лайка

Уже давно есть. Бомберы для каждой сторон по своему прописаны. Ты можешь глянуть в enlisted_player.
А так, похоже, меняем в artillery_owner.

Код TommyZZM из файла entities.blk:

artillery_owner{
  _override:b=yes

  "artillery__allTemplates:array"{
    
    "unlock:object"{
      template:t="artillery_he"
    }

    "unlock:object"{
      // template:t="moscow_ger_team_aircraft_request"
      template:t="big_acrtion_ger_team_aircraft_request_ju87_strike"
      unlockId:i=2
    }

    "unlock:object"{
      // template:t="moscow_ussr_team_aircraft_request"
      // template:t="big_acrtion_ussr_team_aircraft_request_il_2_rocket_strike"
      template:t="big_acrtion_ussr_team_bm_13_katyusha_request"
      unlockId:i=3
    }

    "unlock:object"{
      // template:t="normandy_usa_team_aircraft_request"
      template:t="big_acrtion_usa_aircraft_request_paratrooper_raid"
      unlockId:i=4
    }

    "unlock:object"{
      // template:t="normandy_ger_team_aircraft_request"
      template:t="big_acrtion_ger_team_aircraft_request_ju87_strike"
      // unlockId:i=5
    }

    "unlock:object"{
      // template:t="berlin_ussr_team_aircraft_request"
      template:t="big_acrtion_ussr_team_aircraft_request_il_2_rocket_strike"
      unlockId:i=6
    }

    "unlock:object"{
      // template:t="berlin_ger_team_aircraft_request"
      template:t="artillery_he_k5_request"
      // unlockId:i=7
    }

    "unlock:object"{
      template:t="tunisia_usa_team_aircraft_request"
      unlockId:i=8
    }

    "unlock:object"{
      template:t="tunisia_ger_team_aircraft_request"
      unlockId:i=9
    }

    "unlock:object"{
      // template:t="stalingrad_ussr_team_aircraft_request"
      template:t="big_acrtion_ussr_team_aircraft_request_il_2_rocket_strike"
      unlockId:i=10
    }

    "unlock:object"{
      template:t="stalingrad_ger_team_aircraft_request"
      unlockId:i=11
    }

    "unlock:object"{
      // template:t="pacific_usa_team_aircraft_request"
      template:t="big_acrtion_ussr_team_aircraft_request_il_2_rocket_strike"
      unlockId:i=12
    }

    "unlock:object"{
      // template:t="pacific_japan_team_aircraft_request"
      template:t="big_acrtion_ger_team_aircraft_request_ju87_strike"
      unlockId:i=13
    }

    "unlock:object"{
      template:t="artillery_smoke"
      unlockId:i=1
    }
  }
}
2 лайка

Я использовал файлы из data_entities_blk.zip в своем тест моде (чистый мод лишь с границей карты и двумя респами авиации и двумя респами пехоты). За советов вместо вызова катюши был вызов к5, ну подумал и решил вызвать к5, ждал, ждал, ничего не произошло, никакого бум-бум! И пошла перезарядка в плюс-минус 40 минут. Пожалуйста, помогите, я дурачок в модах! (нубище)

1 лайк

Что касается команды, команда 1 предназначена только для Катюши, а команда 2 — для К5.

Но эта настройка объектов может быть устаревшей.

У меня тут новая сущность Катюша


big_action_radio_bm_8_24_dummy_final{
  _extends:t="f1_grenade_phys"
  _extends:t="f1_grenade_item"
  _extends:t="bonfire_effect_no_occluders"
  _extends:t="fire_timings"
  effect__name:t="hit_footstep_snow_cmps_fx"
  fire_source__startTime:r=0.0
  fire_source__fullForceTime:r=45.0
  fire_source__maxFullForceTime:r=50.0
  fire_source__fadeTime:r=6.0
  fire_source__scale:r=1.29
  vehicle_seats__restrictToTeam:i=-1
  vehicle_seats__autoDetectRestrictToTeam:b=no
  vehicle_net_phys__blk:t="gamedata/suspension/empty.blk"
  animchar_render__enabled:b=no
  team:i=2

  "ai_target__targetForAiGunner:tag"{
  }
}

big_action_radio_bm_8_24_dummy_spawn{
  _extends:t="antipersonnel_mine_phys"
  _extends:t="f1_grenade_item"
  active:b=yes

  "dependsOnBuildingEid:eid"{
  }

  "on_explosion__create:list<t>"{
    tmplt:t="big_action_radio_bm_8_24_dummy_final+item_in_world"
  }
}

big_action_radio_bm_8_24_gun{
  _extends:t="builded_sg_gun"
  _extends:t="bm_8_24_rocket"
  _extends:t="controlled_by_ai_gunner"
  item__name:t="132mm Bm-13 rocket(katyusha)"
  gun__blk:t="%ugm/data/weapons/radio/radio_bm_13/radio_bm_13_gun.blk"
  gun__shotFreq:r=2.39
  gun__projectileDebugTemplate:t="rbs_132_rocket_projectile+big_action_bullet_projectile_life_time_50s+trail_plane_smoke_minor_effect+bomb_projectile_debug"
  gun__projectileTemplate:t="rbs_132_rocket_projectile+big_action_bullet_projectile_life_time_50s+trail_plane_smoke_minor_effect"
  gun__shootNodeName:t="bone_gun"
  gun__shootNodeEmitterGenFmt:t="bone_gun"
  turret__aimNodeName:t="bone_turret"
  turret_ai__atackDist:r=36
  turret__limit:p4=-0.5, 0.5, 12.0, 45.0
  turret_ai__targetCheckInterval:r=23.0
  turret_ai__sleepTimer:r=0.6
  turret_ai__minWindow:p2=-0.01, -0.01
  turret_ai__maxWindow:p2=0.01, 0.01
  turret_ai__attackTimerr:r=39.0

  "gun__ammoSetsInfo:shared:array"{
    "default:array"{
      "shell:object"{
        // blk:t="gamedata/gen/weapons/shells/150mm_sig_33_defaultset.blk"
        blk:t="%ugm/data/weapons/radio/radio_bm_13/radio_bm_13_shell.blk"
        name:t="152mm_of_540"
        type:t="he_frag_tank"
      }
    }
  }

  "gun__offender:eid"{
  }

  "gun_sound__shotPath:shared:object"{
    _tags:t="sound"
    enemy:t="enemy/weapon/cannon/artillery"
  }

  "artillery__callerEid:eid"{
  }
}

big_action_radio_bm_8_24{
  _extends:t="bofors_40mm_twin_go"
  // animchar__res:t="bm_8_24_char"
  hitpoints__hp:r=999999.0
  hitpoints__maxHp:r=999999.0
  _extends:t="bonfire_effect_no_occluders"
  _extends:t="fire_timings"
  effect__name:t="hit_footstep_snow_cmps_fx"
  fire_source__startTime:r=0.0
  fire_source__fullForceTime:r=39.0
  fire_source__maxFullForceTime:r=45.0
  fire_source__fadeTime:r=6.0
  fire_source__scale:r=1.29
  team:i=1
  animchar_render__enabled:b=no

  "fire_source:tag"{
  }

  "zombieTriggerable:tag"{
  }

  "dmgzone__burningOffender:eid"{
  }

  "turret_control__turretInfo:shared:array"{
    "turret_control__turretInfo:object"{
      turretName:t="turret_01"
      gun:t="builded_sg_gun+tankgun_25mm_72k"
      barrelDm:t="gun_barrel"
      breechDm:t="cannon_breech"
      verDriveDm:t="drive_turret_v"
      horDriveDm:t="drive_turret_h"
      salt:i=1
      turretGroup:t="main_turrets"
    }

    "turret_control__turretInfo:object"{
      turretName:t="turret_02"
      gun:t="big_action_radio_bm_8_24_gun"
      barrelDm:t="gun_barrel"
      breechDm:t="cannon_breech"
      verDriveDm:t="drive_turret_v"
      horDriveDm:t="drive_turret_h"
      salt:i=1
      turretGroup:t="main_turrets"
    }
  }

  "turretsInitialComponents:array"{
    "turretsInitialComponents:object"{
      gun__shotFreq:r=0.9
      gun__shootNodeName:t="bone_gun"
      gun__shootNodeEmitterGenFmt:t="bone_gun"
      turret__aimNodeName:t="bone_turret"
      turret__yawSpeed:r=6.0
      turret__pitchSpeed:r=90.0
      turret_ai__amplitude:p2=0.17, 0.03
      turret_ai__period:p2=36.0, 1.0
      turret_ai__sleepTimer:r=0.1
      turret_ai__atackDist:r=36
      turret_ai__minWindow:p2=-0.01, -0.01
      turret_ai__maxWindow:p2=0.01, 0.01
      turret__limit:p4=-0.5, 0.5, 12.0, 45.0
      turret_ai__targetCheckInterval:r=5.0

      "gun__shellsAmmo:array"{
        gun__shellsAmmo:i=3
      }
    }

    "turretsInitialComponents:object"{
      "gun__shellsAmmo:array"{
        gun__shellsAmmo:i=12
      }
    }
  }

  // "attach_decorators__entities:list<eid>"{
  // }

  // "attach_decorators__templates:array"{
  //   "attach_decorators__templates:object"{
  //     relativeTm:m=[[1, 0, 0] [0, 1, 0] [0, 0, 1] [23.1, 0.0, 6.19]]
  //     // relativeTm:m=[[1, 0, 0] [0, 1, 0] [0, 0, 1] [26.3, 12.9, -0.5]]
  //     template:t="f1_grenade_phys+f1_grenade_item+item_in_world+base_moon_soldier" 
  //     nodeName:t="root"
  //   } 
  // }

  "additiveBuildings:array"{

    "item:object"{
      template:t="big_action_radio_bm_8_24_dummy_spawn+item_in_world"
      tm:m=[[0.0, 0.0, 1.0] [0.0, 1.0, 0.0] [-1.0, 0.0, 0.0] [23.0, 6.19, 0.12]]
      additiveUp:p3=0.0, 0.0, 0.0
    }
  }
}

big_action_ussr_team_bm_8_24_rocket_barrage_request{
  _extends:t="aircraft_request"
  artillery_zone__radius:r=66.0
  artillery__name:t="Rocket_Barrage_Bm_13_18"
  artillery__lifeTime:r=36.0
  artilleryLifeTimeAfterBombing:r=10.0
  artillery_zone__showOnMinimap:b=no
  artillery_siren__startDelay:r=120.0
  artillery_siren__targetRadius:r=0.1

  _group{
    _tags:t="server"
    aircraft_request__interval:r=1290.0
    aircraft_request__aircraftTargetMarkTemplate:t="big_action_radio_map_icon_radio_artillery_rockets_team1"
    aircraft_request__aircraftStartRelativeSpeed:r=0.0
    aircraft_request__aircraftAfterBombingHeight:r=90.6
    aircraft_request__aircraftBombingHeight:r=90.6
    aircraft_request__aircraftSpawnHeight:r=90.6
    aircraft_request__aircraftSpawnDistance:r=7579.0
    aircraft_request__aircraftTemplate:t="big_action_radio_bm_8_24+aircraft_with_gun_redirect+requested_aircraft"
  }

  "aircraft_request__aircraftBiases:list<p3>"{
    aircraftPos:p3=-12.7, -8.7, 2.33
    aircraftPos:p3=-2.3, -2.3, -2.33
    aircraftPos:p3=9.1, 6.1, 1.23
  }
}

Rocket_Barrage_Bm_13_18{
  _extends:t="big_action_ussr_team_bm_8_24_rocket_barrage_request"
}

Потому что их цель для стрельбы зависит от команды

Когда вы находитесь в команде 2 и вызываете пушку команды 1, она не стреляет по цели команды 1.

Про к5, пробовал и за немцев, точно такой же результат . А новый код катюши из вашего сообщения куда пихнуть надо?

в вашем entites.blk, и вам нужно переопределить артиллерийский_владелец, чтобы он ссылался на него.

artillery_owner{
  _override:b=yes
  artillery__baseSpawnDelay:r=260.0
  artillery__missionStartDelay:r=360.0
  artillery__baseInterval:r=126.0
  "artillery__allTemplates:array"{
    "unlock:object"{
      template:t="Rocket_Barrage_Bm_13_18" // team1
      // unlockId:i=10  without unlock for test
    }
  }
}

Ваша группа связи сможет вызвать для поддержки только одну радиостанцию ​​— «Катюша Бомбардировка». Обратите внимание, что для запуска ракет вы должны быть в команде 1.

Я предлагаю вам воссоздать юридические entites.blk на основе опубликованных мной фрагментов.

Тот, что во вложении, устарел.

Пытался вставлять и удалять код. Было три варианта. Либо crash fatal error ModsEditor’a, либо не было выбора в экране наведения артиллерии (ну тот выбор который рейд бомберов, фугасный залп и т.д), либо был тот самый к5 у советов! (я ведь пишу, что я дурачок в модах и что-то делаю не так, как надо)

1 лайк

Извините, я обнаружил, что в отправленном мной файле отсутствуют другие файлы.

Поскольку в моей сцене сущностей много контента, у меня много сущностей, работающих вместе.

Здесь я сделал простой пример сцены, которая добавляет недостающие файлы и работает.

volokolamsk_village_inv_ussr_for_kpytou_2022.zip (20.2 KB)

Я предлагаю вам прочитать документацию и попробовать создать свой новый

Железнодорожная пушка К5 не была переделана в последней версии, но вы можете изучить сущностей.blk и затем создавать свой собственный контент.

Потому что я мог изменить и добавить некоторые атрибуты, из-за чего их позиции для стрельбы стали неточными.

Я все еще занимаюсь отладкой и калибровкой огневой позиции.

Влияет на траекторию полета ядра, такие как параметры массы и скорости.

Не рекомендую использовать параметр timeFire для ракет, это может привести к неточным позициям стрельбы в серверных играх.

Вы можете установить параметры и калибр снаряда, а также дальность взрыва.

Обратите внимание, что калибр снаряда также влияет на траекторию полета и баллистические характеристики снаряда.

И установите дистанцию ​​стрельбы турелей через plane_request__aircraftSpawnDistance.

Последняя версия кода также включает маркеры на карте, которые могут видеть только дружественные силы.


Поскольку существует много связанного контента, его может быть непросто переварить и понять.

Поэтому я настоятельно рекомендую вам создать свою собственную новую сущность с нуля и протестировать ее.

Чтобы узнать, как редактировать атрибуты объекта, я предлагаю вам выполнить поиск в Goggle, enlisted-datamine и обратиться к содержимому атрибута в официальных документах.

Я настоятельно рекомендую вам использовать VisualStudioCode для чтения и редактирования blk-файлов.

Потому что он обеспечивает правильную подсветку и базовое распознавание синтаксиса.

Вам необходимо установить плагин синтаксиса blk от сообщества и выполнить соответствующие настройки.


Вы можете упростить управление, разложив файлы, не нужно писать все в одном entities.blk

Вы можете объединить их с помощью функции импорта.

example

import:t="%ugm/entities_config.blk"

Мой исходный файл состоит из большого количества подфайлов. Я объединяю их при выводе


Я рекомендую использовать game_effect_with_duration, который отлично подходит для исчезновения вспомогательных объектов по времени.

  _extends:t="game_effect_with_duration"
  game_effect__timeToDestroy:r=50.0
2 лайка

Гигантское спасибо!!!

1 лайк