Как улучшить стандартный ИИ у юнита Мега в игре Mindustry
Чтобы посмотреть видео, нажмите по изображению выше.
Описание видео гайда
В этом видео гайде для новичков и опытных игроков по игре Миндастри рассказывается о том, каким способом можно легко и просто улучшить стандартный ИИ (искусственный интеллект) у юнита Мега в Mindustry.
Смотрите это видео руководство, если хотите прокачать своего Мега до супер ИИ:
- Мега автоматически ремонтирует союзные постройки, и если она критически ранена, то будет уходить с поле боя для починки. Здоровье в этой системе можно настроить очень легко.
- Если ремонтировать нечего, то мега ждет у процессора, не оставаясь при этом где попало.
Скачать схему улучшенного юнита Мега
bXNjaAF4nIVUe0hTURg/m6vsGlpQZBRyCAuDFB9hZA8KiogKw17IWKXbTVfTK9uspJdumVbmlF5a2ewFIkLX6a2rbreg/oigOscM/EPFioLSqCgKyh7fOW2ZPTcGO+d85/t+j+87SI/0emTIz8oTUQK5SDqom5bRcqKQAAnQI6QNkxpSg4kfdlqIirOLcIbocEoZy/ahCIvoMNutBU6rlI9SVmdZxJ+PBSFTKnQWZotpeLU131LocNqLcDwm9UShJdRFNFqsR2PyRIcjK0dEUXlWs12KL7BLZtiR7AghA2Ifgw49G05tzLYViiYoYLSLFhNUMe7MtTpFkyC88l4xFok2m7TThMl56ibXoU4xJirQcAH4DvgqpJ26sDHHLor5phCl0C1BAHC/CEA0omDIpBEfbLTyTRW2OAEZFq1EpsXwn0W2EG2kWILAUf6QIYj1r2rogK4uEn76XWfFqkDezcTxpU83rO0J99Xpugy3UWb/7HPLRg29rR53KSHs0v2YJZ3t6culiSuOm5fOjNB/6O3Y7TlzoXtol1C1qHNj2ua+znl7N/U9mDv4fv2UqLoJa7Zva35n8YtVkS9y25ESu27JpoGPo+e8T68NLH255RM67N9/Mjcm/di+QGPFndTocMM224rF5lpcENswdWBaUnnMLfQ4vKx7Fq3dMcWkq5veeGjVZ9HWNNY2KfdTWqN7cI/Xq2t83pd5etzRvpXJ2ZfvzW954al32JqrI3pffn1S3FPprX20Y+vb/hn9DxcmzhuMrmwYio/9cCPsten2jCfhz76cuNt0J/XImyF91+QGRxjIwMzXLQ/ZVQNGHmA6gbwyPUhU6sHJaT/8By1P0BIwWcUQokCQxp1XYcXsk6mLVmAwSqFl3B4NM9kxuUpaaTW0BXWD0ywYcjNPSngtGceRZoi/xt1v4175oLsU6prFi3ohSMW/x0CfAJJK1jCQHNYayxlsGxnWgJTBYpkw7xN+X/sOl1YQJUgNs13WUzJ0bwlc8kN5WGFW1sc7z8eY/YcH6y2kA0GlfwmaNELQ+mEdMc9TCRjhVaClfCgYHQ4X5grOQyJocCZDOEPWxtCrId6sCBuLn7z6J/MFC3FySiIeHj1IIBM/hlgX58h1pB6mIdTwYDbjYK8aXMZBSTcIA3fxq/PlIwiFXrfrEBFg7wLYSU6NxMEGtIM3SzuzIMBoBSmr39vJ9yet2fvAHgx4GUqpG30Dw48BEw==
Текст видео гайда (субтитры)
Рад вас видеть снова на борту у штурвала restore поехали сегодня мы будем улучшать стандартное поведение искусственного интеллекта меги вот здесь уже стоит схема сейчас попозже расскажу о том, как почему и для чего это нужно эта система умеет ремонтировать союзные постройки с безопасной дистанции если здоровья падает ниже чем 230 единиц автоматически отправляет лечиться нашу мегу, но для этого нам нужен ремонтный пункт также я добавил в нашу съемку если вы особо не разбираетесь настройку этого здоровья вот здесь она в самом вверху также если ремонтировать ничего, то наш омега ждет возле вот этого процессора при бездействии наш омега на шею нет восстанавливает здоровье до максимума если оно было не полным.
И вновь ждет возле процессора, и так как это работает сейчас наши миди заняться абсолютно ничем и когда я появлюсь в ядре она полетит к процессору да отлично все работает предположим, что у нас есть вот такая вот конструкция здесь у нас располагается наша импровизированная база, то есть всегда враги вот эти вот враги нападают именно.
С одной стороны только в большинстве случаев здесь у нас располагается для наглядности я ремонтный пункт здесь наша стена здесь наш омега с процессором предположим они напали на нашу базу вот они начинают стрелять наш омега с безопасного расстояния подлетает и с максимальной своей дистанции начинает лечить наши постройки максимальную дистанцию мы можем узнать вот здесь радиус действия двадцать три блока именно с максимального радиуса действия нашим мега лечат наши постройки предположим, допустим, у нас враг как-то билл нашу оборону или пытается ее обойтись и оборону наша там, допустим, некачественное сейчас мы попробуем ранить нашу мега вот здесь мы постреляем и начинаем е наперед стрелять даже видите меня отсюда и сложно достать, то есть я по ней даже не попал.
Давайте еще раз моему я ее задел.
Да, я ищу задел она улетела подчинилась и вернулась к процессору, и при этом я и здоровье не отнял до 230 она туда отправилась именно, потому что она бездействовала предположим, что наш омега очень сильно пострадала давайте и здоровье отнимем 2 меньше чем половины вот сейчас мы это прекрасно видим, и если я сейчас появлюсь в ядре ту наш омега полетит вот сюда ремонтироваться она полностью вылечиться и вернется к процессору туда отлично работает для наглядности я здесь один поставил, но мы можем здесь гораздо больше их поставить предположим следующую ситуацию, допустим, у нас есть мега у нее также отнято здоровье, но, при этом наше здоровье не отнято меньше, причем 230 единиц, то есть не меньше половины, и при этом у нас еще будет с вами стена, которую она должна ремонтировать стена будет с отснятым здоровьем проверяем дамы мы видим то что вот этот квадрат имеет отнятое количество HP теперь, что сделает наш омега она у нас сейчас не пойдет лечиться она сначала полетит ремонтировать стену я вот это вот эту стену полетит ремонтировать, затем она полетит лечиться и только, затем полетит к процессору проверяем она ремонтирует стену с большой дистанции отличилась и полетела к процессору отлично работает и ситуация следующая у нас также будет подбит немного turigo истина также у нас будет подбит омега, но уже больше, чем наполовину.
В таком случае она сама полетит сначала ремонтироваться, затем чинить стену и только, затем к процессору проверяем она летит сначала ремонтируется, затем она лечит стену с максимальной дистанции и уже потом отправлять отправляется к процессору был такой момент, что она не до конца до лечивший полетела ремонтировать стену это сделано для того, чтобы у нее был максимальный КПД, то есть если у нее здоровья поднимается выше чем половина, то приоритеты и задач становится таким образом она ремонтирует стены, затем если ей ремонтировать ничего она отремонтировала все наши постройки у нее переключаются статус на бездействие в бездействии с отнято мхп она за лечилась и уже потом полетела к процессору и теперь, где такое применяется сейчас я вам постараюсь вставить кадры другого стримера ютубера так посмотрите меги пошли в бой, правда, их подбили вот, конечно, не очень хорошо, что они будут помирать над, наверно, много ресурсов будет на их восстановление, ну, какая-то мелочь по читами идет ничего страшного мне придет чуть не забыл поставить срезают и немного этих, ребята, они прямо долбит зараза уголь уголь если бы они более.
Ах, ты, в принципе в общей сложности это сделано для того, чтобы наш омега мне оставалось там где попало именно при стандартном поведение искусственного интеллекта мега подлетела бы вот сюда залечила нашу стену и осталась бы здесь, но бывают такие карты и моменты такие когда мега может выйти за нашу оборонительную позицию за наши стены, допустим, если был бы вот такой вот квадрат, то бывает, что вы здесь, к примеру, круг появление врагов и могло быть такое что она именно вот отсюда могла полететь ремонтировать что-то здесь и осталась бы вот так, на кадрах, который я уже надеюсь, что вам показал или покажу это будет видно также к стандартному поведению миги относится автоматический ремонт поврежденных построек, грубо говоря, у нас мега просто тупо хил она должна лечить наши постройки и в этой системе наши маги не будут атаковать врагов.
И теперь, чтобы нам такое провернуть для этого нам понадобится всего лишь процессор и немного и мои руки заходим в процессор назначаем бинт на нашего юнита мега отлично теперь мы должны заставить нашу могу идти к процессору добавляем юнит CTRL мув пишем такую штуку за из x sis y с английским у меня все плохо, поэтому терпите и проверяем отлично работает, что это такое за секс из из y это координаты нашего процессора именно где могут здесь код пишем это координаты с самого процессора теперь мы должны отправить ее к блоку, у которого отнято здоровья для этого добавляем юнит лайкает поиск damaged и дело, но вот сюда чуть выше строка fine поиск у нас именно всех союзных блоков, у которых отнято здоровье теперь добавляем наши координаты d x здесь можно абсолютно любые писать напишут dx, поскольку.
Да, это у нас дыма jet и x координата x также проделаем и для остального d y и d found Д. Ф. Теперь добавляем команду and и делаем следующее добавляем условия вот сюда если блок, у которого отнято здоровья Д found есть на карте пишем труп истина добавляем еще одну команду и нет CTRL мув стрелку вот сюда делаем и добавляем наши координаты вот отсюда именно из поиска блоков, у которого отнято здоровье до x d y теперь добавляем юнит CTRL the ragged также координаты x и y и стрелять shoot 1 и теперь проверим наш омега здесь стоит, потому что наши все блоки не нуждается в ремонте, но если мы выстрелим в стенку она подлетит отремонтирует и улетит.
Но обратите внимание, как она это делает она подходит очень близко и безопасного расстояния здесь нет вот еще раз.
Обратите внимание на очень близко подходит, но чтобы нам добавить это расстояние в базе данных ядра мы смотрим то что у нее радиус действия двадцать три блока и добавляем параметр юнит CTRL approach по моему вот сюда чуть выше надо и радиус 23 также наши координаты dx до y и проверяем смотрим получилось у нас или нет да отлично она держится максимального расстояния лечит наш блог и отходит к процессору, то есть ее уже будет врагу и будет отсюда сложно достать, при этом при всем когда мега починила наши блоки она вернулась к процессору как это работает смотрите и в дрейф это у нас поиск блока df именно поиск блок, у которого отнято здоровья, то есть это выходная переменная, и если она является истине если у нас на карте есть блок, у которого отнято здоровья, то наш код начинает вот сюда идти, и мы двигаемся уже к нашему блоку, у которого отнято здоровья и лечим его.
Да, но как только мега полностью busy ливает его полностью восстанавливает его ему здоровье это условие if является ложным получается то что у нас на карте нет блоков с отснятым здоровьем она у нас получается ложным и, поскольку если условие у нас ложная the code начинает идти не по вот этой стрелки он начинает делать следующую команду вот как раз таки и вращает нашего юнита нашему процессору по нашим координатам процессора теперь мы должны сделать так, чтобы мега себя сама лечила, то есть она отправлялась к ремонтному пункту, который может быть абсолютно хоть, где на карте для этого мы добавляем еще команду тент и теперь пишем следующие юнит лакает поиск строений и в типе мы указываем repair восстановление ремонта что-то типа того иными вражеского указываем фолз нужно, и мы будем искать все ремонтные пункты именно союзные по координатам x y и так далее, теперь мы должны заставить нашего юнита двигаться туда командам uv координаты по иксу по игреку и добавляем еще одно сюда сразу же условия jump если у нас нет ремонтных пунктов на карте found вот этот параметр отвечает является ложью если у нас ремонтный пункт не найден на карте тому код возвращаем наверх, а если он будет найден, то это условие будет неверным и код пойдет вот сюда и на шею нет будет двигаться крем одному пункту теперь мы должны добавить сенсор и включите режим безопасности нашего юнита здесь мы должны указать здоровье и to hell здоровье, где в unity и переменную назовем HP теперь добавляем условие if и делаем его приоритетным, то есть самый верх наших условий если количество HP в нашем unity меньше либо равно здесь напишем здоровье здоровье добавим параметр сет и запихнем его в самый верх здесь мы должны назвать его здоровье и таким образом мы сможем регулировать количество HP, при котором юнит будет убегать с поля боя и ремонтироваться узнать это мы можем в базе данных ядра мега смотрим прочность 460 возьмем половину сюда пишем 230.
И теперь, когда у нас наше количество HP будет меньше либо равно 230 вы должны отправить его в ремонт делаем стрелку вот сюда отлично теперь проверяем, допустим, враги каким-то образом подобрались к нашей меги я отняли ей больше, чем половину HP все отлично теперь проверяем наш омега летит ремонтируется и возвращается к нашему процессору отлично работает, но теперь предположим если у нашу мегу постреляли и отняли ей меньше чем половина здоровья смотрим, что будет она у нас полетит к процессору, но не будет выпиливать себе полное HP при бездействии, то есть она также все слушается нашего процессора если у нас есть что ремонтирует она летит ремонтирует возвращается, но HP не лечит для этого делаем следующее нам нужно добавить еще один сенсор копируем здесь указываем максимальное количество HP max hold здесь в переменной указываем мхп имя нашей переменной абсолютно любое и теперь, поскольку мы знаем, то что вот эта команда отвечает именно за возвращение нашего юнита когда ему нечего делать к процессору, то после этой команды мы должны добавить условия если наше количество HP меньше чем максимальное количество HP, то отправляем его ремонтироваться мы отнимаем чуть-чуть HP у нашей меди, при этом ремонтировать у нас ничего и она теперь должна за лечиться полететь и вернуться к процессору отлично все работает по итогу мы имеем такое то что мега ремонтирует с максимальной дистанции, и при этом еще, и если и повреждают она восполнять здоровье.
Теперь давайте, наверное, специально подойдем и стрельне в нее я могу попасть по процессору, который там стоит, поэтому она может отремонтировать процессор сначала, а потом полететь ремонтироваться сама не ты попал по ней она просто отремонтировал вернулась назад, при этом она бездействует у нее нет никакой работы и в бездействии она просто лечится я был бы не я если бы не усовершенствовал все это и так надеюсь видео вам понравилось обязательно ставьте пальцы вверх комментируйте подписывайтесь и данную схему я добавлю в описании в комментариях.