Damirazo,спасибо за помощь!
Кто-нибудь знает, как спавнить уникальных неписей(типа Гордона)-со своей моделью(green_stalker_7)? Ато в скриптах модель не указывается :-(
Zorndaik Создаешь свою секцию в character_desc_x.xml (где х это название локации). Смотришь по аналогии и меняешь визуал и класс. Класс после этого необходимо прописать в npc_profile.xml. Также посмотри по аналогии находящихся там записей. Затем в файле spawn_sections.ltx создаешь свою секцию под удобным именем и с тем классом что ты создал, и уже оттуда в тот скрипт что я тебе дал.
ну и последний queston. я заспавнил гордона в лагере фрименов;-) - на армейских складах, а он вышел из лагеря и ухитрился влезть в ближайшую Электру:-( Как можно припаять его шоб никуда не шарился(как неписей возле стойки бара).
amk.spawn_item("m_tushkano_e",vector():set(-206,-20.5,-145),61,46567)
amk.spawn_item("m_tushkano_normal",vector():set(-206,-20.5,-145),61,46567)
amk.spawn_item("tushkano_normal",vector():set(-206,-20.5,-145),61,46567)
-- или
alife():create("m_tushkano_e",vector():set(-206,-20.5,-145),46567,61)
alife():create("m_tushkano_normal",vector():set(-206,-20.5,-145),46567,61)
alife():create("tushkano_normal",vector():set(-206,-20.5,-145),46567,61)
Это возвращаясь к вопросу как спавнить монстров в амк моде. Помогли мне там люди. Монстры не спавняЦЦо из-за а-лайф - надо чтоб для ГГ место спавно было в офлайне. (вроде так). а вот работающий пример спавна тушканчиков. http://skunk.ifolder.ru/6613127
Это товарища Skunk`a.
положить в папку scripts с заменой. Запускаете игру, выходите в главное меню и нажимаете клавишу:
F1 - спавн шести тушканов около костра в лагере новичков,
F2 - спавн трёх тушканов в 50 метрах от ГГ по направлению его взгляда,
F3 - спавн Сига и патронов в инвентаре Волка,
F4 - координаты места, где находится ГГ
после нажатия на клавишу - вернуться в игру.
If you want it, go and get it, because you only have one life to live
Люди, извините, если несколько захламляю тему, но я полный нуб в скриптах, а мне оч. нужно поучится этому. Просто хочу сделать скриптовой спавн артефактов для каждой локации, чтоб при каждом заходе на локацию спавнились артефакты (какие - смотря от локации...) в разных местах(ну можно и в одинаковых, но так не интересно). Может и было где сказано, у меня нет сил все это читать, помогите плииз!!!
Чуваки. Историю я не читал. Хочу узнать, в каком файле вы спавните все объекты. Алл.спавн или в другом? Научить можете?Обращаться ПО НИКУ.
добавлено спустя 2 минут
Обращаться ПО НИКУ. И еще. В начале темы была ссылка на СДК,Сталкер-гейм... и там писалось, что можно сделать всякие вещи под ногами актора или в его инаентаре. В каком файле это делать?
отредактировал(а) Психо-садист: 05-07-2008 18:44 GMT3 час.
if level.name() == "l07_military" or level.name() == "l10_radar" then lv = 200000 + math.random(-100000,100000)
else lv = math.random(level_vertexes[level.name()]["lvid"]) end
local gv = level_vertexes[level.name()]["gvid"]
for ind = 1, count do
alife():create(section, level.vertex_position(lv), lv, gv)
end
end
Спавн для кордона:(для примера)
-- Вызов спавна артефактов для каждого уровня
function spawn_arts()
local level_name = level.name()
if level_name == "l01_escape" then
proceed_art_spawn("af_medusa", 3)
proceed_art_spawn("af_vyvert", 2)
proceed_art_spawn("af_blood", 3)
proceed_art_spawn("af_electra_sparkler", 3)
proceed_art_spawn("af_electra_flash", 3)
end
Может, в процедуре что-то неправильно?
добавлено спустя 4 часа 32 минут
Блиин!!! Люди, ну плиз, помогите! Оч. Нужно!
отредактировал(а) S.T.A.L.K.E.R._007: 07-08-2008 20:18 GMT3 час.
Народ, куда можно прописать вызов функции спавна для чистой игры? при этом, чтобы спавнилось (что-либо) один раз за время игры, тобишь: скриптовый аналог all.spawn :gamer1:
Когда у общества нет цветовой дифференциации штанов, то нет ЦЕЛИ...
Strchi Ну да, по типу взять и вернуть всех монстров, только через скрипт, но за один раз по типу аллспавна, потому как если спавнить монстров по мере прохождения, то алайф не работает, и вся прелесть и фишка игры пропадает... и stalker становится тем-же doomом только на украинских просторах.....
Мож я и загоняюсь, но несравненно удобнее написать один скрипт в блокноте, чем аллспавн расколдыривать
Когда у общества нет цветовой дифференциации штанов, то нет ЦЕЛИ...
Strchi Ну да, по типу взять и вернуть всех монстров, только через скрипт, но за один раз по типу аллспавна, потому как если спавнить монстров по мере прохождения, то алайф не работает, и вся прелесть и фишка игры пропадает... и stalker становится тем-же doomом только на украинских просторах.....
Мож я и загоняюсь, но несравненно удобнее написать один скрипт в блокноте, чем аллспавн расколдыривать
ну как-то так:
1. вычисляешь все координаты на которых заспавн**500140b7e12bf63c3891**ector():set(-35.937191009521,2.3377449512482,246.77166748047),256054,738)
alife():create("rat_hunter",vector():set(-35.937191009521,2.3377449512482,246.77166748047),256054,738)
alife():create("fracture_strong",vector():set(-35.937191009521,2.3377449512482,246.77166748047),256054,738)
alife():create("fracture_strong",vector():set(-35.937191009521,2.3377449512482,246.77166748047),256054,738)
alife():create("fracture_strong",vector():set(-35.937191009521,2.3377449512482,246.77166748047),256054,738)
alife():create("controller_tubeman",vector():set(-35.937191009521,2.3377449512482,246.77166748047),256054,738)
--За камнем в Рыжем Лесу.Снорки.Стая.5шт.
alife():create("snork_jumper",vector():set(-54.120994567871,1.9993280172348,-388.02822875977),25326,1016)
alife():create("snork_jumper",vector():set(-54.120994567871,1.9993280172348,-388.02822875977),25326,1016)
alife():create("snork_jumper",vector():set(-54.120994567871,1.9993280172348,-388.02822875977),25326,1016)
alife():create("snork_jumper",vector():set(-54.120994567871,1.9993280172348,-388.02822875977),25326,1016)
alife():create("snork_jumper",vector():set(-54.120994567871,1.9993280172348,-388.02822875977),25326,1016)
--Зомби .Янтарь.Возле Установок.За стеной.5 шт.
alife():create("zombie_strong",vector():set(-9.3873825073242,-0.2107030749321,-68.370262145996),57213,1275)
alife():create("zombie_strong",vector():set(-9.3873825073242,-0.2107030749321,-68.370262145996),57213,1275)
alife():create("zombie_strong",vector():set(-9.3873825073242,-0.2107030749321,-68.370262145996),57213,1275)
alife():create("zombie_strong",vector():set(-9.3873825073242,-0.2107030749321,-68.370262145996),57213,1275)
alife():create("zombie_strong",vector():set(-9.3873825073242,-0.2107030749321,-68.370262145996),57213,1275)
end[/code]
теперь надо чтоб заспавнились они с начала новой игры...вставляем в начало функции
function spawn_monster() if db.actor:dont_has_info("spawn_new") then
... -- и в конец перед последним end вставляешь вот что db.actor:give_info_portion("spawn_new")
end
end
меченый(стрелок),я поступил по другому: создал файл test_spawn.script , прописал там что-то вроде function spawn_stalker()
alife():create("rat_strong",vector():set(-117.903,-8.361,-143.269),db.actor:level_vertex_id(136877),db.actor:game_vertex_id(44))
end
функцию вызова скрипта написал в файле info_l01escape.xml в абзаце выдачи основного квеста, т.е. после строки: дописал строку test_spawn.spawn_stalker
Когда у общества нет цветовой дифференциации штанов, то нет ЦЕЛИ...
столько писанины,а никто так толком и не обьяснил,как спавнить монстров и неписей,без привязки к диалогам.
Один одно говорит,другой,другое.Однако внятного совета так и не увидел.
Например мне нужно заспавнить монстрюков на любой локации(Свалка например),и так чтобы не нужно была подходить к комулибо,чтобы результат появился.
Может этот вопрос уже обсуждался, но всё равно спрошу.
Можно ли заспаунить через скрипт аномолию?
Можно ли заспаунить через скрипт аномолию, которая работает( напр. электра при заходе в неё будет бить...)?
Можно ли установить для неё логику?
и если можно то КАК?
Через срипт можно заспавнить рабочую аномалию, а вот насчет логики для неё х.з. :blink
local obj = alife():create("zone_ххххх", vector():set(хх, хх, хх), хх, хх) где хх координаты точки спавна
До каких пор людей, по крохам собиравших державу и беспощадно каравших её врагов, мы будем обзывать палачами, а индивидов, разваливших страну и пустивших на ветер труды целых поколений, именовать реформаторами? (Ф.М. Достоевский)
Dart Sergius , получить логику можно по разному. Написать скрипт и привязать его к нужной аномалии(ям), т.е. мониторить и по событиям делать то, что необходимо.
Другой вариант: прописать в требуемую логику, по аналогии с другими объектами (реализацию скриптовой модификации для аномалий через 'нет-пакеты" смотри в модах АМК, Симбион, ...), однако будет ли эта логика работать, а если будет - то корректно ли(?) - иной вопрос.
Чуваки, у меня уже чайник кипит, после третьей страницы уже не могу читать дальше т.к. в голове уже все перепуталось.
Мне нужно заспавнить двух челов в Темной Долине (на ферме, где еще лохотронщики сидят), и чтоб они сразу спавнились как только стартует игра (ГГ появляется тож в Темной Долине).
Вот данные для первого:
x= -140.292
y= 0.977
z= -522.722
level vertex= 18805
game vertex = 832
для второго
x= -136.146
y= 1.4
z= -524.202
level vertex= 22096
game vertex = 832
Файлы character_desc_darkvalley, npc_profile, spawn_sections уже отредактировал, теперь скрипт...а вот че с ним делать?
Допустим хочу я назвать его spawn_npc_darkvalley (вопрос: его нигде не надо прописывать чтоб он активировался?), и самое главное ЧТО ПИСАТЬ В СКРИПТЕ? Помогите ПОЖАЛУЙСТА
"Все сложное - не нужно, все нужное - просто" (М. Калашников)
BeeRsek, создаёшь в gamedata\scripts файл НАЗВАНИЕ_ТВОЕГО_ФАЙЛА.script (название файла любое)
в нём пишешь:
function spawn_dva_chela()
alife():create("ПРОФИЛЬ ПЕРВОГО",vector():set(-140.292,0.977,-522.722),18805,832)
alife():create("ПРОФИЛЬ ВТОРОГО",vector():set(-136.146,1.4,-524.202),22096,832)
end
вызов скрипта такой:
НАЗВАНИЕ_ТВОЕГО_ФАЙЛА.spawn_dva_chela
можно вызывать через диалог, инфопоршень или спейс рестриктор
New Life Team
The Chronicles of S.T.A.L.K.E.R.: Gunslinger | Разработка
function activate()
--если уровень темная долина
if level.name() == "l04_darkvalley" and
-- и проверка на отсутствие поршня info (имя любое придумываешь
--и регишь в файле info_portions)
not has_alife_info("info") then
--активация твоего скрипта
имя_файла.имя_функции()
--чтобы функция не срабатывала каждый раз при загрузке уровня -этот поршень мы --включим - теперь условие больше выполняться не будет и вторично спавн не произойдет
db.actor:give_info_portion("info")
end
end
скрипт сработает сразу при загрузке нужной локи - скрипт нужно ставить на апдейт в файл bind_stalker
в функцию actor_binder:update(delta)
то есть вписать в тело функции
имя_файла.activate() --имя файла - это имя файла куда ты положишь эту функции - файл должен иметь расширение script - и лежать в папке scripts
Если умеешь работать с логикой то твою функцию спавна можно активировать и через логику NPC или логику рестриктора %=spawn_dva_chela% - только сама функция обязательно должна находиться в файле xr_effects.script
отредактировал(а) erlik: 05-12-2009 13:47 GMT3 час. Разработки: "Тотализатор","Kill-zone", "Mega-bomba", Mega_gravi",
"Рандомные тайники(а также декодер, мины+диалоговый аддон"), "Выбрасываемый рюкзак", "Аналоговые часики на худ"
erlik где то я накуралесил - ничего не спавнится. Скрипт я назвал spawn_new_npc и вот че в нем написал:
function spawn_darkvalley_stalkers()
alife():create("darkvalley_stalker_varyag",vector():set(-140.292785,0.9775604,-522.722534),18805,832)
alife():create("darkvalley_stalker_koreets",vector():set(-136.1461029,1.4001617,-524.20281982),22096,832)
function activate()
if level.name() == "l04_darkvalley" and not has_alife_info("darkvalley_stalkers") then spawn_new_npc.spawn_darkvalley_stalkers
db.actor:give_info_portion("darkvalley_stalkers")
end
end
вот что в bind_stalker:
[...]
function actor_binder:update(delta,spawn_new_npc.activate())
object_binder.update(self, delta)
[...]
и в info_portions:
spawn_new_npc.spawn_darkvalley_stalkers
Что не так?
"Все сложное - не нужно, все нужное - просто" (М. Калашников)
Продолжая пользоваться сайтом, вы соглашаетесь с использованием файлов cookie. Страницы сайта могут содержать информацию, запрещенную для просмотра посетителям младше 18 лет. Авторское право на серию игр «S.T.A.L.K.E.R» и используемые в ней материалы принадлежит GSC Game World.