SkyLoader
Есть дефолтные параметры, те, которые установлены изначально и применяются при НЕизменении 'ручками. И есть 'сделанные на заказ', т.е. установленные 'ручками', т.е. в зависимости от ситуации/условий/...
Например, если непись дефлотно шугается с установленной дефолтной вероятностью, то через set_custom_panic_threshold(number) можно сделать непися трусом иль 'матросовым'. DOC_VENOM
'СКРИПТёрщиков' ищи где-нить в ином месте их и проси. Есть программисты, кодеры, скриптеры.
Твоя просьба - довольно глупа, нормальный кодер таким не занимается.
Друзья, подскажите как пользоваться СДК? Во всем туторе и статьях обьясняется так как понятно автору а не читателям. Я уже окончательно запутался. Разве нельзя просто открыть игровую локацию и переделать ее?
Курт Нет эдак сделать увы невозможно, все статьи которые пишутся, я с тобой согласен немного не понятны.Но ты просто попробуй сделать все по инструкции которую описывает автор и все:-)У меня тоже многое не получалось, но я читал находил и вуаля.
добавлено спустя 2 минут
Вот тут задавали некоторые вопросы по СДК посмотри может что-нибудь пригодится. ЖМИ
отредактировал(а) G-H-O-S-T: 02-10-2010 09:03 GMT3 час.
G-H-O-S-T Если правильно понимаю, то весь процес выглядит так - переводим карту в формат СДК, затем видоизменяем и компилим обратно? А если карта новая то создаем обьекты, налаживаем сетку АИ и т.д А затем так же компилим в понятный игре формат и подключаем?
G-H-O-S-T
Не пости повторно - модераторы этого не любят. Так что убери свой дабл пост.
Ответы:
1) используй тег dont_has_info для диалога. Ставится в шапку диалога - там где ты пишешь его граф.
пример
Выброс (почти чистый :-)) есть в аддоне для ОГСМ - Blowout_Mod_1.0 - умеючи легко подгоняется под чистую игру. Также есть мод PsyZones_and_Emission 1.0 by LLSNeitrino - добавляет Пси-зоны и Выброс.
Где скачать? Гугл знает все.
Разработки: "Тотализатор","Kill-zone", "Mega-bomba", Mega_gravi",
"Рандомные тайники(а также декодер, мины+диалоговый аддон"), "Выбрасываемый рюкзак", "Аналоговые часики на худ"
G-H-O-S-T Спасибо, более-менее разобрался, отсалось лишь запомнить все тонкости. Хм, перевел в нужный формат карту Кордона, но открыть ее едитором не могу... нажимаю на опен и ничего не происходит, ни вылета, ни зависания...
Устранил неполадку:) Ладно, больше спасибо всем кто помогал и отвечал на вопросы:)
отредактировал(а) Курт: 02-10-2010 10:41 GMT3 час.
Скажите пожалуйста!
У меня вот вопрос можно-ли сделать аномалию "Телепорт"!?
Что-бы она переносила ГГ из одного места в другое?
Если можно то обьснить как, пожалуйста!
отредактировал(а) FLIKER: 02-10-2010 12:16 GMT3 час.
Череп Долговец При чём тут "Народная солянка"? Это фича оригинала, и приписывать её к какомуто моду, не этично. Даже я бы сказал, попахивает плагиатом.
FLIKER Как реализовать свой телепорт, можно прочитать на Вики.
Dark Prince Здесь находится файл с музыкой главного меню D:\S.T.A.L.K.E.R\gamedata\sounds\music, называется 05_wasteland2_str_l.ogg и 05_wasteland2_str_r.ogg. Так дальше чтобы изменить музыку в главном меню надо просто закодировать музыкальный файл с таки же именем в ogg формат.
Например музыка из группы Слот:
Bumerang конвентируем в ogg формат и переименовываем вот в это 05_wasteland2_str_l.ogg и 05_wasteland2_str_r.ogg
Я хочу сделать квест где вы со сталкером охотитесь на артефакт.
Вопрос: как сделать чтобы сталкер шел к месту за артефактом,а после сделать чтобы он вернулся
обратно?
Эммм. Вопрос по lua. Например**500140b7e12bf63c3891**timer = 100
...
end[/code]
Тоесть. Имею две переменные timer в теле файла, и созданную с тем же именем в теле функции.
И собственно сам вопрос. Как из тела функции, в данном случае, обратиться к переменной timer, находящейся в теле файла, не прибегая к использованию других функций (свойств)???
И вообще. Возможно ли такое?
Проект "Mobile Manager" закрыт, в связи со стечениями неблагоприятных обстоятельств, и последующей потерей всех файлов и справок текущего проекта.
puma-sniper
Сделай своему НПС вей-поинты чтобы дошел, постоял и ушел.
Как?
Сбегай на сталкер-вики и зачитай статьи про логику(особенно 1 часть в твоем случае)
puma-sniper Если хочешь могу тебе обьяснить и дать пример как это сделать.
добавлено спустя 8 минут
puma-sniper Вот пример как это сделать сотри и читай и еще учись:
Открываем в расспакованном All.Spawn файл (alife_l01_escape.ltx)
там пишем
[877]
; cse_abstract properties
section_name = stalker
name = esc_ohrana7_npc - это ты заменишь на свое
position = -257.231140136719,-19.0055408477783,-146.179138183594 - координаты возьми свои
direction = 0,0,0
Дальше открываем файл way_l01_escape.ltx там же где ты открывал и первый файл.
Там вписываем:
[hodim_doroga]
points = p0,p1
p0:name = orge00
p0:position = 257.231140136719,-19.0055408477783,-146.179138183594 - это координаты где заспавнини непись.
p0:game_vertex_id = 8 незабывай ставить тот который у тебя
p0:level_vertex_id = 7363 тоже самое
p0:links = p1(1)
p1:name = orge01
p1:position = -119.670471191406,-8.82601928710938,-146.295883178711 - а это координаты куда пойдет наш непись.
p1:game_vertex_id = 44
p1:level_vertex_id = 134113
p1:links = p0(1) - это пропиши обязательно, а иначе непись не вернется обратно на точку изначального пути
Ну вот вроде все:-)
добавлено спустя 46 минут
Вопрос:
Как адаптировать мод Blowout_Mod_1.0 для чистой игры, это мод с выбросом, там файлы от мода OGSE я так понял, когда лазал по папкам. Так вот скажите пожалуйста как адаптировать, что нужно сделать чтобы выбросы все-таки были?
отредактировал(а) G-H-O-S-T: 02-10-2010 17:38 GMT3 час.
Gun12
У singapura - две локальных переменные с одним и тем же именем - если я правильно его понял. Так что это не то.
debug.getupvalue() не вернет значение внешних локалок, так как они не будут в его случае включены в таблицу данных о функции. Я тож пытался и так и сяк, но ни debug.getupvalue(), ни debug.getlocal() тут не в тему. Только если создавать класс и в нем уже переменные дубли.
Разработки: "Тотализатор","Kill-zone", "Mega-bomba", Mega_gravi",
"Рандомные тайники(а также декодер, мины+диалоговый аддон"), "Выбрасываемый рюкзак", "Аналоговые часики на худ"
Gun12 Про спосИб через debug я в курсе, хоть и не тестил. Но... Как ты уже выразился, в Сталкере debug не подключен. Поэтому и вопрошаю.
Поход**500140b7e12bf63c3891**mer()
return timer
end
function blabla()
local timer= 100
...
...
local g_timer = get_timer()
...
...
end[/code]
Собственно, оно без надобности. Просто при написании кода, столкнулся с неожиданным дублированием имени переменной. Уже исправил.
------------------------------------------------
Кстати есть ещё такой вопрос:
В lua имеется оператор равенства rawequal(v1, v2)
Пробывал его применить в своём проекте:
[code]local item = db.actor:active_item()
if not rawequal(self.object, item) then
self.active_item = item
end[/code]
Но, в любых ситуациях оператор возвращает false. Перепроверял через равенство id, объект один и тот же, а всё равно false.
Почему так? Или он применим только к луашным типам данных?
отредактировал(а) singapur22: 02-10-2010 21:44 GMT3 час. Проект "Mobile Manager" закрыт, в связи со стечениями неблагоприятных обстоятельств, и последующей потерей всех файлов и справок текущего проекта.
Gun12
Согласен :-) Если включить - передать значение внешней переменной другой переменной - которая в теле функции - (чего я не сделал), то получаем именно то, что надо - и имя и значение внешней.
Но кстати если в функции поменять местами local into = up1 и local up1 = 6 - получаем иной результат.
У меня же без такого включения все время nil nil выходило. Не додумался.
Прикольно получается - а через debug.getlocal(1,2) можно получить имя и значение одноименной, но уже внутренней переменной - главное правильно индекс нужной переменной указать.
Разработки: "Тотализатор","Kill-zone", "Mega-bomba", Mega_gravi",
"Рандомные тайники(а также декодер, мины+диалоговый аддон"), "Выбрасываемый рюкзак", "Аналоговые часики на худ"
#erlik :
...Но кстати если в функции поменять местами local into = up1 и local up1 =**500540b7e12bf63c3891**ocal up1 = 6
local into = up1[/code]
то просто создаёшь ссылку на уже объявленную выше локальную (для функции) переменную up1.
А внешняя переменная даже не упоминается.
Поэтому когда ты вызываешь :
[code]debug.getupvalue (f, 1)[/code]
то возвращается переменная первого уровня.
А так как внешних переменных не используется, то первой внешней переменной будет "f" - т.е. название самой функции.
Вот и все дела.
Кстати я и сам ступил.
debug.getlocal удобнее в этом плане.
[code][/code]
local a = 11
local b = 22
local function fun()
local a = 33
local b = 44
print('-- ID print ',print)
print('--- level 1 ---')
str = debug.getinfo(1).what
print('-- What ',str,' --')
print(debug.getlocal (1, 1))
print(debug.getlocal (1, 2))
print(debug.getlocal (1, 3))
x,y = (debug.getlocal (1, 4))
print(x,y)
print('--- level 2 ----')
str = debug.getinfo(2).what
print('-- What ',str,' --')
print(debug.getlocal (2, 1))
print(debug.getlocal (2, 2))
print(debug.getlocal (2, 3))
x,y = (debug.getlocal (2, 4))
print(x,y)
print('--- level 3 ---')
str = debug.getinfo(3).what
print('-- What ',str,' --')
print(debug.getlocal (3, 1))
print(debug.getlocal (3, 2))
x,y = (debug.getlocal (3, 3))
print(x,y)
end
fun()
отредактировал(а) Gun12: 03-10-2010 01:37 GMT3 час. Не стань номинантом премии Дарвина.
singapur22
Бог его знает как там с определением объектов, но раз rawequal говорит false, то значения аргументов всё-таки разные.
Проверь, действительно ли оба аргумента беруться из одной и той же userdata
Всем привет!! У меня пара вопросов:
1.Как включить радар у ГГ,на моём радаре видны только трупы и друзья,я хочу видеть всех.
2.Как правильно сделать рабочие точки перехода между локациями,непредусмотренними в самой игре,допустим между Янтарём и Складами?
Заранее спасибо.
добавлено спустя 3 минут
.......и ещё вопрос,как сделать так чтобы выброс был строго в одно и тоже время ,допустим в 9-00 утра выброс по всей зоне каждый день.
отредактировал(а) Vich2010: 03-10-2010 10:58 GMT3 час. Большая Земля - это часть Зоны Отчуждения и наоборот.
#G-H-O-S-T :
Приветствую всех! У меня вопрос насчет логики или подобного пока не понял. Что нужно прописать новому неписю из группировки (военные), чтобы он также как и вояки под мостом, не стреляли в меня?Подскажите пожалуйста.
Уже ответили но вот другой способ
Использование функции check_fighting
сама функция находится в файле \gamedata\scripts\xr_conditions.script
вот она
-- проверка (по story_id) того, что нашим врагом есть хотя бы кото-то один из списка
function check_fighting(actor, npc, p)
local enemy = db.storage[npc:id()].enemy
local sid
if enemy and enemy:alive() then
sid = enemy:story_id()
for i, v in pairs(p) do
--printf("_bp: %s.check_fighting(%d)", npc:name(), v)
if type(v) == 'number' and sid == v then
--printf("TRUE")
return true
end
end
end
--printf("_bp: check_fighting() = false")
return false
end
Вызывается из логики НПС
секция [combat_ignore]
пример логика бандитов АТП (игнорируюе Шустрого)
файл gamedata\config\misc\gulag_escape.ltx
Раскрывающийся текст
;-------------------------------------------------------------------------------------------------
;-- ESCAPE FACTORY BANDITS
;-------------------------------------------------------------------------------------------------
[logic@esc_fabrika_bandit_walker1]
active = [email="walker1@esc_fabrika_bandit"]walker1@esc_fabrika_bandit[/email]
combat_ignore = combat_ignore
004 это story_id Шустрого вот его секция в алл спавне
Раскрывающийся текст
cse_abstract properties
section_name = stalker
name = esc_shustryi
position = 118.689079284668,-7.4942798614502,7.65357303619385
direction = 0,0,0
Раскрывающийся текст
[5281]
; cse_abstract properties
section_name = stalker
name = mil_freedom_member0001
position = -178.503997802734,-16.9659557342529,352.31005859375
direction = 0,0,0
Эта тема закрыта, публикация новых сообщений недоступна.
Продолжая пользоваться сайтом, вы соглашаетесь с использованием файлов cookie. Страницы сайта могут содержать информацию, запрещенную для просмотра посетителям младше 18 лет. Авторское право на серию игр «S.T.A.L.K.E.R» и используемые в ней материалы принадлежит GSC Game World.