Скрипты форум.
Zarathustra
Младший Лейтенант
Ячейки памяти
Бомбить занятый игроком город
Подкреп
Выгрузка юнитов из грузовиков
Подкреп с пушками
При приходе юнитов игрока в зону прилетает самолет
Число скриптов
Загнать Солдатов в здания
Компания
Циклическое действие с интервалом в час (например подкрепление)
Глюк с гражданскими лицами
Будильник
Запрет пехоте лезть в пустые грузовики
Посадка экипажей в танки, грузовики
Снять туман войны
подвижная группа резерва внутри обороны
После штурма обороны – назначить новый рубеж атаки
Разведка
Порядок чтения скриптов
Перевозка орудий грузовиками в нужную зону
Работа инженерных машин
При попытки форсирования реки самолеты взлетают с аэродрома и бомбят
Проблемы с отрядами
Занять город, подтащить ПТО, организовать оборону
Переназначение группы в группы без знания зоны
Длинный понтонный мост
Преследование противника
Читеры
Автоматическая и однократная стрельба гаубиц по игроку
Запретить юнитам врага вести огонь до определенного момента
Звуки
имитация высадки танков с кораблей компа
Число юнитов считаемых компом
Как сделать чтоб подкрепления противнику приходили в город через определенные промежутки времени, а если игрок заходит в определенную зону, перестали приходить?
После того как противник захватит статичный пулемет, он не "хочет" из него стрелять. Что делать?
К какой группе техники относится САУ HUMMEL
Снабжалки чинят аэродром
как сделать чтоб противнику заданные подкрепления перестали приходить если занять определенную зону
катера могли свободно проплывать под мостом туда и обратно
А как изобразить в скриптах, чтоб самолет взлетал с аэродрома и улетал за пределы карты?
что бы Игрок видел действие войск союзника
выбор юнита для строительства на заводе
Резерв контратака
Падение морали в пустыне
Пехота патрулирует зону
Ячейки памяти
Их нигде нельзя видеть - это математическая операция. Пример: при появлении юнита А в зоне 1 срабатывает сктипт дать залп гаубицей. При повторном появлении юнита А в той же зоне скрипт уже не работает. Для того, чтоб сработал дважды в действии скрипта записываешь занести в ячейку 1 число 1. В условиях следующего скрипта пишешь - юнит А в зоне 1 и число в ячейке 1 равно1, дать залп гаубицей. Это самый простой пример.
---------------------------
Цитата:
Самолет прилетает 2 раза. Так дейчтвие может выполняться только 2 раза?
Ничего удивительного! Ты же сам поставил условие: Выключить...
Ячейки - одна сплошная математика. И НИКАКОГО отношения к Вашим скриптам они не имеют. Их можно складывать, вычитать, увиличивать на произвольное число, сравнивать и пр.
В данном случае будет правильно так:
Скрипт1
юнитов в зоне больше или звенит будильник 1 …
занести в ячейку число 1.
Скрипт2
юнитов в зоне меньше
… занести в ячейку число 0.
Скрипт3
Число в ячейке равно 1.
... Отправить самолеты в зону.
... Ячейку увеличить на 1 (или занести..)
... Завести будильник 1 на...
Скрипт работает столько времени, сколько выполняется заданное в нём условие (если не выключен, тогда один раз). в данном случае если при вылете самоля не увеличивать число в ячейке, то полетят они нескончаемой вереницей Можно, кстати, изменить так:
Скрипт2
Число в ячейке меньше 5.
... Отправить самолеты в зону.
... Ячейку увеличить на 1 (или занести..)
Тогда в зону вылетит 4 самоля.
Что тут сказать в ответ можно?
А зачем математика нужна?
Число в ячейке - это то же самое условие. Например, можно при выполнении целого ряда условий (юнитов в зоне, юнитов в группе, разницы например и пр.) занести в ячейку число и потом не перечислять всю эту массу, а сопоставить выполнение нужных действий с одним лишь значением. Более того, сама структура скриптов станет легче и возможности перекрёстных ссылок многократно возрастут.
Словом. всё зависит от гибкости ума и фантазии.
Бомбить занятый игроком город
Рассмотрим некий условный городок, обозначенный зоной 1. Прежде всего, определимся с его принадлежностью. Для этого пишем такой блок:
1. <юнитов игока 1 в зоне 1 точно 0 и юнитов игока 2 в зоне 1 точно 0 и неверно, что число в ячейке 1 точно 0> => <занести в ячейку 1 число 0>
(ячейка 1 будет у нас индикатором принадлежности города в зоне 1)
2. <юнитов игока 1 в зоне 1 больше 0 и юнитов игока 2 в зоне 1 точно 0 и неверно, что число в ячейке 1 точно 1> => <занести в ячейку 1 число 1>
3. <юнитов игока 1 в зоне 1 больше 0 и юнитов игока 2 в зоне 1 больше 0 и неверно, что число в ячейке 1 точно 2> => <занести в ячейку 1 число 2>
4. <юнитов игока 1 в зоне 1 точно 0 и юнитов игока 2 в зоне 1 больше 0 и неверно, что число в ячейке 1 точно 3> => <занести в ячейку 1 число 3>
Теперь мы всегда знаем:
с1=0 - в городе никого нет
с1=1 - город в руках игрока
с1=2 - в городе бой
с1=3 - город занят врагом
Пример реакции компа на занятие города игроком:
1.<число в ячейке 1 точно 1 и число в ячейке 2 точно 0> =>
<отправить подкреп Х игроку 2 через флаг А в зону 2>
<установить группе поведение...> (отправляем подкреп штурмовать город)
<занести в ячейку 2 число 1> (изменяем исходное условие, чтобы действие выполнилось только один раз в ДАННЫЙ момент)
(ячейка 2 будет у нас индикатором ответных действий)
2.<число в ячейке 1 точно 1 и число в ячейке 2 больше 0 число в ячейке 2 меньше 5> =>
<добавить игроку 2 бомберов 1>
<добавить игроку 2 вылетов для бомберов 1>(дабы не париться с количеством самолей и вылетов в дальнейшем)
<отправить 1 бомбардировщик игрока 2 в зону 1>
<число в ячейке 2 увеличить на 1>(накручиваем счётчик с каждым вылетевшим самолётом)
3.<число в ячейке 1 точно 1 и число в ячейке 2 точно 5> =>
<добавить игроку 2 разведчиков 1>
<добавить игроку 2 вылетов для разведчиков 1>
<отправить 1 разведчик игрока 2 в зону 1>
<завести будильник 1 на 2 мин>(даём время подкрепу и разведчику добраться ло места)
<занести в ячейку 2 число 6>
4.<звенит будильник 1 и число в ячейке 2 точно 6> =>
<добавить игроку 2 истребителей 3>
<добавить игроку 2 вылетов для истребителей 3>
<отправить 3 истребителя игрока 2 в зону 1>
<завести будильник 1 на 20 мин>(даём время компу на разборки)
<занести в ячейку 2 число 7>
5.<звенит будильник 1 и число в ячейке 2 точно 7> =>
<занести в ячейку 2 число 0>(цикл завершён и мы готовы к новой реакции)
Теперь пишем нечто подобное, но для с1=2 (скажем, бомберы у нас в этом случае не летят - не бомбить же своих!) и для с1=3. Тут всё зависит только от Ваших фантазий.
Особо оговорюсь: это пример, и цепочка может быть сколь угодно длинной. Более того, можно запустить дочерние цепи, дробить реакции по незначительным отличиям (% соотношение сил, состояние на других участках и пр.) Можно в условия всех скриптов ввести ещё одно значение - число в ячейке 3 (например, положение в городе Плюевске - тогда кол. скриптов кратно увеличится, но соответственно увеличится и разнообразие прохождения).
В заключение повторюсь - нет предела совершенству!
и в самом начале задать обнуление этих ячеек так
Не обнуление, а занесение в ячейку числа 0!
Подкреп
CheyZ, сделай ещё один шаг и пропиши, чтобы КАЖДОМУ игроку новый подкреп выходил через его ворота! Т. е. не один скрипт, а два, три... Естественно, для этого надо знать, кто через какие ворота вышел. Как это определить, я писал выше.
Цитата:
но что то не приходит...
Возможно, намудрил с флагами или с зонами на этих флагах - проверь (можно для теста отправить начальный резерв, например).
Далее: в твоём варианте подкреп за этот флаг игроку, занявшему его придёт только один раз (условие ты выключаешь) и притом, сразу. Если, например, за каждым диром зафиксировать свою ячейку и будильник, можно сделать всё лучше и красивее. Например, занял игрок флаг - сработал скрипт (изменили значение в ячейке и завели будильник). Сработал будильник - опять изменили значение в ячейке и отправили подкреп (снова завели будильник). Опять сработал будильник - занулили ячейку и можем повторить процедуру. Если же в любой момент происходит потеря флага (или занятие его другим игроком) - выключаем будильник и заносим в ячейку число 0.
, это длеко не всегда имеет значение, но почему ты сначала выключаешь условие, а потом прописываешь действие!?? (ведь никто ж не выбрсывает спичку. а затем пытается прикурить )
Ещё добавлю: желательно во всём следовать некой единой системе и стараться не смешивать скрипты, отвечающие за одну процедуру с остальными. Всегда будет полезен и файл с описанием Ваших ресурсов (использованных). Причём - чем больше скриптов, тем это актуальнее!
Выгрузка юнитов из грузовиков
Цитата:
Сообщение от Den_B
1) Как заставить компа чтоб он сам выгружал юнитов из грузовиков??
А также отцепялял пушки..!?!?!?
Создаёшь поткреп - транспорту даёшь одну группу (пример A1), пехоте и пушке другую (пример A2).
Затем заходишь в раздел группы (параметры миссии) - группе A1 задаёшь Грузовики - ехать в зону (Хаотично распределиться в зоне), группе A2 Пехота - Гаубицы занять (Хаотично распределиться в зоне и не перетаскивать волоком). Зону задаёшь естественно одинаковую.
Quote:
Из подкрепа доехать на грузовиках.
бы они выходили не "пеша-драла", а ехали в кузовах, боевых отделениях и т. п.???
грузовики-поддержка
они довезут пехов куда надо. Верно только приминительно к грузовикам. с бтрами вроде такое нельзя.
Этого добиться невозможно. Например, при повреждении грузовика независимо от всех прочих настроек поведения они галопом покинут кузов
Вообще, не понятны проблемы с поведением пехов и грузовиков/броневиков - на портале есть мануал "управление на основе групп". Там всё очень ясно и понятно расписано.
|
Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5 6 7 8 |


