-
Публикаций
511 -
Зарегистрирован
-
Посещение
-
Победитель дней
3
Тип контента
Профили
Форумы
Календарь
Блоги
Отряды
Формы
Видео
Весь контент Sandy
-
[b][member=Banzai][/b], [b][member=StDIABLO][/b], Пример кода для переноса встроенных в карту объектов при помощи attachTo или setPos можете накидать?
-
К сожалению, именно так, невидимые, но не неуязвимые. Например, Land_Cargo_Tower_V1_F, встроенная в карту складывается с 3 ракет от Pawnee и на месте казалось бы пустого места спавнятся руины. :( Можешь представить, как это выглядит, если на это место ты до этого поставил другой объект.
-
Нет, лучше все-таки твой первоначальный вариант, т.к. простое скрытие объекта не делает его неуязвимым. В редакторе у меня получается добиться почти нужного результата таким образом: if (isServer) then { sleep 0.1; { _tmpobj = [0,0,0] nearestObject _x; _tmpobj enableSimulationGlobal false; _tmpobj allowDamage false; _tmpobj hideObjectGlobal true; _tmpobj=nil; } foreach [673154,673184]; }; Но остается еще одна проблема - от встроенного в карту объекта остается его маркер на карте. Полагаю, его также можно как-то скрыть, например, чем-то типа кода ниже, но как к нему обратиться, как получить имя маркера встроенного в карту объекта? if (isServer) then { sleep 0.1; { deleteMarker _x; _x setMarkerAlpha 0; } foreach ["boundingBoxMarker_673154", "boundingBoxMarker_673184"]; };
-
К сожалению, судя по описанию, команда deleteVehicle не может удалять встроенные в карту объекты. Поэтому я и пытался найти/придумать костыли. Костыли вроде бы нашел, но пока не умею проверять их работоспособность кроме как в редакторе.
-
[member=StDIABLO], Обнаглею и продолжу задавать нубские вопросы. Правильно ли я понимаю, что результатом твоего скрипта для строений будет эффект последствий землетрясения или бомбардировки, а не очистка карты, т.к. остаются их руины? //init.sqf if (isServer) then{ sleep 0.1; {([0,0,0] nearestObject _x) setDammage 1} foreach [192112,192155]; }; Правильно ли я читаю твой код? _world = getWorld; //создаем переменную и присваиваем ей значение командой, которая возвращает название острова, например, Altis _centerPosition = getArray (configfile >> "CfgWorlds" >> _world>> "centerPosition"); //создаем переменную и присваиваем ей значение командой, которая вытягивает координаты "центра острова" в виде массива из файла конфига по адресу (configFile/"CfgWorlds"/Altis/"centerPosition") _centerPosition nearestObject 673047;//возвращает объект с указанным ID после неограниченного поиска от указанных координат И что с этим делать?
-
[member=StDIABLO], Спасибо за обстоятельные ответы. Осмысление их у меня, новичка, займет еще какое-то время. :) Ссылку на это мнение пока не могу найти, но читал буквально вчера на каком-то англоязычном форуме. Там контекст касался конкретно команды nearestObject ID и о том, что, если я правильно понял, поиск объекта на больших картах, по этому мнению, занимает меньше времени, если задавать (getPos this) , а не [0,0,0]. Т.е. речь шла не об объеме памяти, а о скорости выполнения команды. Я имел в виду встроенные в карту объекты.
-
Хорошая идея. Нужно будет попробовать. Вот здесь не понял. А это не удалит глобально объект, который мы специально создаем ?
-
А как правильнее это сделать для встроенного объекта? В init.sqf сначала создаем локальную переменную, а потом с ней выполняем действия? _delObj1 = [0,0,0] nearestObject 673047; _delObj1 allowDamage false; //или так //встречал мнение, что (getPos this) лучше чем [0,0,0] _delObj1 = (getPos this) nearestObject 673047; _delObj1 allowDamage false;
-
Просьба к умеющим в Local/Global проверить корректность работы следующих скриптов применительно к мультиплееру A3: 1) Создание новой локации и метки-подписи на карте. В редакторе работает //код для вставки в файл init.sqf _myNewLocation1 = createLocation ["NameLocal", [12842,16680,90.9832], 200, 200]; _myNewLocation1 setText "FOB Fenix"; 2) Замена встроенных в карту объектов по их ID (например, зданий) на другие объекты (например, бункер). В редакторе работает //Empty - необходимый объект, например Бункер ==> init field: myNewObj1 = (position this nearestobject 673184); this setPos [(getPos myNewObj1 select 0), (getPos myNewObj1 select 1), 0]; this setDir (getDir myNewObj1); myNewObj1 hideObjectGlobal true; myNewObj1 allowDamage false; 3) Удаление встроенных в карту объектов по их ID (например, зданий) при помощи замены на невидимый HeliPad. В редакторе работает //Empty - Objects - H(Invisible) ==> init field: this enableSimulation false; this allowDamage false; obj = [0,0,0] nearestObject 673047; obj hideObjectGlobal true; obj = [0,0,0] nearestObject 673045; obj hideObjectGlobal true;//перечисляем удаляемые объекты //или альтернативный код this enableSimulation false; this allowDamage false; obj = (getPos this) nearestObject 673047; obj hideObjectGlobal true; obj = (getPos this) nearestObject 673045; obj hideObjectGlobal true;//перечисляем удаляемые объекты 4) Добавление на карту объектов, которых нет в редакторе, по их класс-нейму. В редакторе работает //Game Logic - Objects - Game Logic ==> init field: tower = createVehicle ["Land_Cargo_Tower_V1_F", getPos this, [], 0, ""]; tower setDir 190; tower call BIS_fnc_boundingBoxMarker; //последняя функция должна добавлять маркер объекта на карту 5) Добавить неуничтожаемость встроенному объекту на карте. В редакторе вроде бы работает //разместить юнит Game Logic над необходимым объектом //Game Logic - Objects - Game Logic ==> init field: (nearestBuilding this) allowDamage false; 6) Удаление встроенных в карту объектов по их ID (например, зданий) посредством их разрушения, а затем удаления их руин. Не получается заставить работать в редакторе //код для вставки в файл init.sqf private ["_tower1","_ruins1"]; _tower1 = [0,0,0] nearestObject 523286; _tower1 setDamage 1; sleep 10; _ruins1 = nearestObject [[14520,16705,18],"Land_Cargo_Tower_V1_ruins_F"]; deleteVehicle _ruins1;
-
@CaesarSalad, Появляется ли такая проблема регулярно? Возможно это просто баг, который иногда бывает у части игроков на играх. Обойти проблему можно выдачей бинтов/морфинов через скрипт в ините каждому юниту, либо просто поставить на респе ящики с медициной, либо добавить в снаряжение транспорта.
-
Они не правы, это что-то другое http://coub.com/view/2c34k
-
Если бы это касалось А3, я бы предложил такие варианты: 1) Изначально создавать отделения в том порядке, в котором они должны отражаться в лобби (беспроигрышный вариант) 2) В режиме редактирования групп (F2) разгруппировать и снова сгруппировать те отделения, которые выше штабного. Они появятся в конце списка в порядке их группировки. 3) Выделить-вырезать-вставить обратно целиком все отделения в нужном порядке. Но тогда всем юнитам снова придется прописывать вручную параметры Control:Playable. Полагаю в А2 принцип тот же. Проще способа не знаю. Решайте, что удобнее)
-
Для отображение маркеров только для определенной стороны добавляется соответствующий префикс к имени маркера, например: wmt_west_marker1 wmt_east_marker2 wmt_res_marker3 wmt_civ_marker4 А вообще, да, нужны обновленные справочники
-
Насколько я понимаю, да, можно. Используя команду this setObjectTexture [0, "my_cute_uniform.paa"]; которая прописывается напрямую в ините юнита, либо через файл кастомизации .sqf, в который добавляется строка _this setObjectTexture [0, "my_cute_uniform.paa"]; и который подключается опять же через инит юнита. Ну а саму шкурку можно зафигачить, например, по этому гайду
-
А что это уже разве не работает? // добавить код в description.ext // убирает возможность видеть список техники противника в брифинге class WMT_Param { CampaignBriefingMode = 1; };
-
Шпаргалка начинающего картодела - Алгоритм создания МП-миссий для WOG3
Sandy ответил Sandy в теме Картостроение
Спасибо за ссылку. Добавил. Правда, это, по-моему, совсем уж комбайн для девелоперов. Для начинающего рановато наверное. Кто-то еще пользуется Тотал Коммандером? -
Это уже оно самое или еще нет?
-
С моей нубской точки зрения, картоделам, надеюсь, будет не лень. Они ведь все равно миссии делают. А так, залез в редактор, включил запись и говори, что думашь по этому поводу, комментируй, а другим - польза. Просто они, наверное, думают, что это никому не нужно. А по поводу себя, нет, мне было не лень искать, что-то уже нашел, но многое остается не понятным даже для того, чтобы закончить создание первой тестовой миссии. Языки программирования ведь не у всех входят в профильное образование.
-
Согласен. Самому, с нуля, думаю, не у всякого желающего получится разобраться. Расставлять юниты в редакторе для себя и создавать миссию для мультиплеера не одно и тоже. Хотелось бы все-таки увидеть что-то подобное этому видео от Прайда, но с привязкой к ВОГу и текущей платформе WMT. Например, видео с подробными комментариями о создании шаблона для миссии, если кто-то решит такой сделать. Интересуют все мелочи, которые опытному картоделу кажутся само собой разумеющимися.
-
@Shockster, Дайте ссылку на тикет - проголосуем
-
Хотел бы дополнить описание ситуации некоторыми деталями. Минут 5-10 предшедствущие инциденту Варлок развлекал бойцов, скучавших на базе в ожидании штурма, тем что подбегал к каждому и просил поделиться ГПшками. Подходил ко мне - пулеметчику. Пытался общался с ботом, у которого из вооружения был только пистолет, но тот его игнорировал. Пока наконец он не наткнулся на командира отделения Джейсона, прятавшегося в песочном бункере у северо-восточного входа. На ироничное высказывание Джейсона Варлок начал эмоционально реагировать, обещал подемонстрировать на месте умение стрелять. Его последними словами была фраза "мне пох.. на бан". На счет выстрела в спину, как мне виделось с моей позиции, это, наверное, просто фигура речи, но спишем это на БИСов и "десинхронизацию". Рядом находились еще несколько игроков-одиночек из того же отделения (я-сэнди, никкон и крайнуб), которые, я думаю, также могут сделать объективные акценты в описании ситуации.