Модостроение (Скриптописание, конфигурации и т.п.)

Счетчик посещений
Счетчик посещений

Подробнее:
Скриптописание, конфигурации, тектурирование, видео, ppe, anm, 3d, локации, all.spawn


Установлен счётчик:

Комментарии:  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;максимальное отклонение выброса от времени

Просто шифт ставишь больше - и у тебя фактически рандомный выброс будет.

ЗАГРУЗИТЬ ВСЕ КОММЕНТАРИИ
Новое на форуме S.T.A.L.K.E.R.: Shadow of Chernobyl