Модостроение (Скриптописание, конфигурации и т.п.)
Комментарии:
702
сначала
по количеству реакций
Тема закрыта. Публикация новых комментариев отключена.
Выбросов в чистой игре нет. Только в ЗП. Насчёт спавна... Я тоже использовал эту статью. Идиотизм полный! Еле еле понял как спавнить. Какой-то урод её писал... Короче в скрипте(файле) пишешь:
function spawn()
alife():create("vodka",db.actor:position(),db.actor:level_vertex_id(),db.actor:game_vertex_id())
end
--[[
Это тоже можешь копировать до моего условного знака: -!-
Когда его увидишь - больше не выделяй.
Короче - если в скрипте ставить два тире - это комментарий. После этого знака игра не смотрит
Если два тире и две открывающихся квадратных, которые в конце заканчиваются двумя закрывающимися квадратными (как сеёчас у меня) - это тоже не смотрит начиная с открывающихся до закрывающих.
Теперь поясняю саму функцию:
alife():create - так пишется, если ты что-то спавнишь
В скобках:
("vodka" - секция предмета, НПС и т.п. (пишется в файлах типа items.ltx, spawn_sections, artefacts.ltx и т.д.
db.actor:position(), - позиция игрока в данном случае. В другом указывается позиция типа vector():set(1,2,3)
Вместо 1, 2, и 3 - координаты X Y Z. (Y - высота!!!, а не Z!!!)
db.actor:level_vertex_id(),
db.actor:game_vertex_id()) - два параметра ,указывающихся при том же спавне. первый отвечает за более точное позиционирование объекта.
Второй - главный. Отвечает за объект на карте (на какой локации будем производить спавн)
Вроде написал про спавн скрипт - самое гланое. Теперь:
Открываешь файл escape_dialog.script.
Чтобы не париться с диалогами зададим на скрипт:
Ищешь строку:
dialogs.relocate_item_section(trader, "wpn_knife", "in")
Ниже нее пишешь:
имя_твоего_скрипта.spawn()
Например:
my_script.spawn()
Поясняю:
имя скрипта понятно. Это то же самое, что и escape_dialog.script
а "spawn()" - то, что пишется после слова function - название функции.
Всё. После слова function идёт через пробел название функции. После самого содержания функции - обязательно писать "end". Ещё существуют другие случаи, но сейчас не о них
]]
-- -!- УСЛОВНЫЙ ЗНАК
содержание файла (привыкай к слову скрипт) примерно получится (без комментариев):
function spawn()
alife():create("vodka",db.actor:position(),db.actor:level_vertex_id(),db.actor:game_vertex_id())
end
Всё. Больше ничего не могу сказать. Разве что снимать координаты лучше через утилиту Бардака. Я ссылку выкладывал в прошлом ответе на вопрос -Maniak- 'а.
Вместо db.actor:position() вставляешь:
vector():set(123,456,789)
123 - позиция по X
456 - позиция по Y
789 - позиция по Z
Дальше:
Вместо db.actor:level_vertex_id() вставишь:
То что после lvid (прям число)
Вместо db.actor:game_vertex_id() вставишь:
То что после gvid (и здесь число)
Теперь вроде всё. Если ты оставишь как есть, то после разговора с Волком будет происодить спавн ПМ патронов и ножа (по умолчанию) и будет дополнительно задействоваться наша функция со спаном Водки под ногоами. Попробуй вставить вместо "vodka" - "pri_monolith_respawn_3"
:)) Монолитовец-мастер с Припяти. Возмлжно тебя сразу убъёт. Особого вреда не причинит. А вот если их зделать несколько ))). Я потом тебе расскажу о спавне несколко раз с помощью цикла. Макроурок закончен )))
Извини братишка, короче сделал по новой всё тоже самое и всё пошло. Я ОГРОМНОЕ СПАСИБО!
осталось только 2 вопроса по этой теме:
появляется один зомби, а нужно больше, на каждого писать строку
alife():create("zombi_week",vector():set(-251.087, -18.024, -105.209) ,9580,8)
или можно как-то указать количество?
у меня территорий много болото, лиманск и т.д. их нужно заселить. На кордоне привязали к разговору. Но это для других территорий как-то не подходит, или есть смысл сразу всех, на всю зону заселить? Кординаты я сниму, мне сам принцип нужен.
как привязать к переходу на другую локацию, т.е. перехожу на свалку из кордона там спавнятся 1 раз. и чтобы после второго перехода повторно спавн не шёл.
Задавайте мне свои вопросы. Я буду регулярно отвечать на каждый. Для меня это будет легко (но в некоторых (ооооооооооооооооочень редких) случаях не очень)
Подскажи если не трудно 3 вопроса . 1. Можно ли сместить на экране оружие в режиме прицеливания в право на 1\4 экрана чтобы приблизить к реалиям. Если можно, не переделывая *.ogf то как?
2. Можно ли сместить точки перехода между локациями через исправление скриптов чтобы не трогать game.graph и другие упакованые файлы.
3. Можно ли одновременно в игре использовать 2 файла не объеденяя их particles.xr чтобы совместить моды?
спасибо.
1. Посмотри конфиг оружия. Там по идее должна быть строка
в секции [*]
fire_point
fire_point2
и [*_hud]
fire_point
fire_point2
zoom_rotate_x
zoom_rotate_y
Поизменяй их.
2. Я не слышал не каких случаев об их изменении. Но возможно существует случай.
Короче придётся удалять старый LC. Попробуй создать LC через скрипт. А старый удали. Твой новый LC будет с новыми координатами. Я не уверен насчёт удаления. Короче посмотри скрипт создания LC через скрипт: http://www.stalkerin.gameru.net/wiki/index.php/Спавн_точек_перехода_между_уровнями
Удаление секции в той же статье.
Насчёт particles.xr - нет. Долгая и пустая работа - перекидывать нужные скции партиклов в свой (если там мало нужных секций - будет не очень долго)
Спасибо братишка! Хоть один человек нормальный есть которого можно спросить. Спасибо.
Как изменить время между выбросами и где? если не трудно. Спасибо.
Ты про какой-то мод или про Зов Припяти?
Если ты про АМК, то я кое-где вычитал (тут ты найдёшь для себя полезное):
=Кстати, а есть возможность поставить рандомный интервал между Выбросами? А то по часам элементарно засекается, за недельку привыкаешь.
Код
[blowout_period]
enabled = 1.0
time = 1440.0;время между выбросами
shift = 180.0;максимальное отклонение выброса от времени
Просто шифт ставишь больше - и у тебя фактически рандомный выброс будет.
ЗАГРУЗИТЬ ВСЕ КОММЕНТАРИИ
Подробнее:
Скриптописание, конфигурации, тектурирование, видео, ppe, anm, 3d, локации, all.spawn
Установлен счётчик: