Пользователей: 0
Гостей: 667
Всего: 667

» Подробно
» Сегодня

Привет, гость!









Автор Сообщение
Stalk15
    
Посты: 1023
Откуда: Как-бэ Новосибирск(Точно не знаю=))
Возраст: 30
06-11-2010 11:59 GMT3 час. #1377148   
Вызвал свое скриптовое окно из диалога - все работает.А вызвать из ме**500340b7e12bf63c3891** if dik == DIK_keys.DIK_M then
self:OnButton_uiTest()
end[/code]
в ui_main_menu.script:
[code]function main_menu:OnButton_uiTest()
level.start_stop_menu(wnd_script.ui_test(), true)
end[/code]

Что может быть не так?Ведь спавнер моды тоже из меню запускаются.


Новые фишки для сталкера(см. журнал)
puma-sniper
    
Посты: 170
Откуда: information is blocked
Возраст: 33
06-11-2010 12:04 GMT3 час. #1377152   
я хочу сделать нож "НРС" но надо чтобы он стрелял
Можно сделать чтобы у ножа был подствольник который стреляет не гранатой,а патроном


SkyLoader
    
Посты: 755
Откуда: Москва
Возраст:
06-11-2010 12:08 GMT3 час. #1377154   
Stalk15, не знаю, почему у тебя не работает, но в сп**500140b7e12bf63c3891**top_menu(self, true) --new
self:Show(false)
end[/code]


Хочешь работать нормально, работай один!
Stalk15
    
Посты: 1023
Откуда: Как-бэ Новосибирск(Точно не знаю=))
Возраст: 30
06-11-2010 12:25 GMT3 час. #1377160   
SkyLoader
Я видел эту функцию.Мне непонятно от куда берется в функции это spawn_dlg.

отредактировал(а) Stalk15: 06-11-2010 12:56 GMT3 час.

Новые фишки для сталкера(см. журнал)
erlik
    
Посты: 2338
Откуда: Набережные Челны
Возраст: 47
06-11-2010 12:45 GMT3 час. #1377178   
Stalk15

Мее непонятно от куда берется в функции это spawn_dlg

Вот отсюда и берется: ui_spawn_dialog.spawn_dialog() - имя файла. имя класса() - в итоге имеем сссылку на объект класса скриптового окна записанную в переменную self.spawn_dlg.
И уже с ней можно оперировать.
А ты кстати откуда взял метод function main_menu: OnButton_uiTest() ? Если он не прописан в каллбеках (InitCallBacks() ) и нет кнопки для него - то конечно вылет получишь.
---------------------------------
У меня в function main_menu:OnKeyboard(dik, keyboard_action) --virtual function
этого метода нет.

отредактировал(а) erlik: 06-11-2010 13:03 GMT3 час.

Разработки: "Тотализатор","Kill-zone", "Mega-bomba", Mega_gravi",
"Рандомные тайники(а также декодер, мины+диалоговый аддон"), "Выбрасываемый рюкзак", "Аналоговые часики на худ"
Fantom2323
    
Посты: 778
Откуда: 25 RUS
Возраст: 29
06-11-2010 12:50 GMT3 час. #1377181   
Народ, будьте добры код функции проверки на ранг гг, я задавал этот вопрос, но забыл, искать свой старый пост среди 100 страниц было бы очень глупо :-G


Новый проект в разработке, ищи в моём журнале.
В теории - всё легко, а вот на деле - гораздо сложнее.
batment
    
Посты: 267
Откуда: Киев
Возраст: 30
06-11-2010 12:55 GMT3 час. #1377182   
в спавне направление взгляда это куда НПС будет повернут ?


-=NSM=-
Stalk15
    
Посты: 1023
Откуда: Как-бэ Новосибирск(Точно не знаю=))
Возраст: 30
06-11-2010 12:56 GMT3 час. #1377183   
Fantom2323
**500140b7e12bf63c3891**

Тут проверка ГГ на нуба.


erlik
Спасибо, разобрался.

А ты кстати**500340b7e12bf63c3891** == DIK_keys.DIK_M then
self:OnButton_uiTest()
end[/code]

Вызывал меню нажатием на M.Щас все заработало.


erlik
Ну дык я сам его и дописал:-)

отредактировал(а) Stalk15: 06-11-2010 13:45 GMT3 час.

Новые фишки для сталкера(см. журнал)
С Н А Й П Е Р
    
Посты: 115
Откуда: Самара
Возраст: 31
06-11-2010 13:51 GMT3 час. #1377218   
Люди, прочитал много туторов по логике НПСов но ни хрена не понял. Я создалнового перса, ему присваивается, насколько язнаю, дефолтоваялогика, т.е. хожу туда, не знаю куда. Так вот, я бы хотел чтобы этот перс столял/сидел на одном месте и по возможности был бессмертным, подскажите что, куда и как писать, пожалуйста.


Очень обидно, когда у тебя Stayr Aug A2 и Нано-костюм, а какой-то драный бандит снял тебя с ПМ в голову!!!
Шалун
    
Посты: 9603
Откуда: Берлин
Возраст: 29
06-11-2010 13:54 GMT3 час. #1377222   
С Н А Й П Е Р, >читай<
Здесь написано про то, как это сделать.


Орден имени Святого Сталкера

АнархОПанк
    
Посты: 998
Откуда:
Возраст:
06-11-2010 14:11 GMT3 час. #1377235   
batment именно, куда непись будет повернут при спавне. Если непись ходячий, то значения не имеет какие цифры выставить, если же стоячий, очень важно.


Николай ФеНиКс
    
Посты: 1493
Откуда: От Туда!
Возраст: 29
06-11-2010 14:22 GMT3 час. #1377244   
Как определить bone_index при попадании в голову?
колбек на хит просто напросто не срабатывает.


С Н А Й П Е Р
    
Посты: 115
Откуда: Самара
Возраст: 31
06-11-2010 20:54 GMT3 час. #1377570   
Шалун я не могу там прочитать, пишет ошибка на странице, да и ещё, я заспавнил перса через скрипт и мне надо чтобы он стоял на месте, как это сделать, напиши в ПМ если не сложно....


Очень обидно, когда у тебя Stayr Aug A2 и Нано-костюм, а какой-то драный бандит снял тебя с ПМ в голову!!!
Николай ФеНиКс
    
Посты: 1493
Откуда: От Туда!
Возраст: 29
06-11-2010 21:01 GMT3 час. #1377579   
С Н А Й П Е Р

...надо чтобы он стоял на месте, как это сделать..**500140b7e12bf63c3891**ore]
ignore_distance = 3

[remark]
no_move = true[/code]


Mehanik Yar
    
Посты: 469
Откуда: Уфа
Возраст:
06-11-2010 21:26 GMT3 час. #1377591   
ну а где это самое, гулаги зарегать, в каком файле? Я не нашел, в сустемке которая в конфигах гулаги не пишутся.


С Н А Й П Е Р
    
Посты: 115
Откуда: Самара
Возраст: 31
06-11-2010 21:33 GMT3 час. #1377597   
Николай ФеНиКс а где взять эту логику (в каком файле это прописать?)


Очень обидно, когда у тебя Stayr Aug A2 и Нано-костюм, а какой-то драный бандит снял тебя с ПМ в голову!!!
Struck
    
Посты: 1946
Откуда:
Возраст:
06-11-2010 21:36 GMT3 час. #1377601   
Gun12 erlik обращусь к самым более натасканным в сфере программирования по сталкеру.

Как проверить находится ли какой-либо итем в какой-либо аномалии?...с определением его позиции


Снова в строю.

l
Mehanik Yar
    
Посты: 469
Откуда: Уфа
Возраст:
06-11-2010 21:47 GMT3 час. #1377616   
С Н А Й П Е Р могу подсказать.
Значит если спавнить через алл.спавн, то вот мой примерчик.

[518]
; cse_abstract properties
section_name = stalker
name = stalkeruo_Guppi
position = 122.74059295654,26.439189910889,-73.031700134277
direction = -0.54198670387268,0,0.84038704633713
; cse_alife_trader_abstract properties
money = 5000
character_profile = Guppi


; cse_alife_object properties
game_vertex_id = 3125
distance = 3.5
level_vertex_id = 478847
object_flags = 0xffffffbf
custom_data = < [logic]
active = remark

[remark]
anim = threat_heli
target = actor
no_move = true
on_info = {+g21pohli} camper

[camper]
path_walk = Guppi_21walk_gupi
path_look = Guppi_21look
radius = 30
no_retreat = true
meet = no_meet


[smart_terrains]
none = true
END
story_id = 7777

; cse_visual properties
visual_name = actors\neytral\stalker_neytral_balon_5

; cse_alife_creature_abstract properties
g_team = 0
g_squad = 0
g_group = 0
health = 3
dynamic_out_restrictions =
dynamic_in_restrictions =

upd:health = 3
upd:timestamp = 0x6d6d695f
upd:creature_flags = 0x75
upd:position = 122.74059295654,26.439189910889,-73.031700134277
upd:o_model = 0
upd:o_torso = -0.000645029998850077,0.0445535257458687,0
upd:g_team = 0
upd:g_squad = 0
upd:g_group = 0

; cse_alife_monster_abstract properties

upd:next_game_vertex_id = 65535
upd:prev_game_vertex_id = 65535
upd:distance_from_point = 0
upd:distance_to_point = 0

; cse_alife_human_abstract properties
predicate5 = 1,0,0,2,0
predicate4 = 2,2,1,2

; cse_ph_skeleton properties

upd:start_dialog =

; se_stalker properties



а вот тот же сталкерюг, но без логики и без сида (сид - номер, пишется после энда story_id = "число")



[518]
; cse_abstract properties
section_name = stalker
name = stalkeruo_Guppi
position = 122.74059295654,26.439189910889,-73.031700134277
direction = -0.54198670387268,0,0.84038704633713
; cse_alife_trader_abstract properties
money = 5000
character_profile = Guppi


; cse_alife_object properties
game_vertex_id = 3125
distance = 3.5
level_vertex_id = 478847
object_flags = 0xffffffbf


; cse_visual properties
visual_name = actors\neytral\stalker_neytral_balon_5

; cse_alife_creature_abstract properties
g_team = 0
g_squad = 0
g_group = 0
health = 3
dynamic_out_restrictions =
dynamic_in_restrictions =

upd:health = 3
upd:timestamp = 0x6d6d695f
upd:creature_flags = 0x75
upd:position = 122.74059295654,26.439189910889,-73.031700134277
upd:o_model = 0
upd:o_torso = -0.000645029998850077,0.0445535257458687,0
upd:g_team = 0
upd:g_squad = 0
upd:g_group = 0

; cse_alife_monster_abstract properties

upd:next_game_vertex_id = 65535
upd:prev_game_vertex_id = 65535
upd:distance_from_point = 0
upd:distance_to_point = 0

; cse_alife_human_abstract properties
predicate5 = 1,0,0,2,0
predicate4 = 2,2,1,2

; cse_ph_skeleton properties

upd:start_dialog =

; se_stalker properties



ну так получается что чтобы добавить логику нужно после строки object_flags написать:
custom_data = <
полсе этого пишешь логику, а когда с логикой закончишь пишешь END


Shadow X мод этот можно сделать самому.

открой файл config\misc\trade_trader
там будут надписи:
[trader]
buy_condition = trader_generic_buy
sell_condition = {+esc_kill_bandits_quest_done} trader_after_fabric_sell, trader_start_sell
buy_supplies = {+esc_kill_bandits_quest_done} supplies_after_fabric, supplies_start


[trader_generic_buy]
;Артефакты
af_medusa = 1, 0.3
af_cristall_flower = 1, 0.3
af_night_star = 1, 0.3
af_vyvert = 1, 0.3

И т.д.

значит находишь к примеру

[supplies_start]
;Аммуниция
ammo_5.45x39_fmj = 1, 0.1


;Оружие
wpn_groza_m1 = 1, 0.1
Ну и т.д Так вот, supplies_start - то что продается в начале игры.
в строке wpn_groza_m1 = 1, 0.1 еденица означает количество, а 0.1 - вероятнсть, она равна в данном случае 10%

добавляем новою пушку (можно ту да же еду - без разницы.)
значит после wpn_groza_m1 пишешь еще wpn_fn2000, вот пример.

[supplies_start]
;Аммуниция
ammo_5.45x39_fmj = 1, 0.1
wpn_fn2000 = 1, 0.1

НО, есть такая фигня.... потом с течением игры выдадутся инфопоршни и у торговца изменится продажа.

значит к примеру:
[supplies_after_fabric]
;Аммуниция
ammo_9x18_fmj = 10, 0.6

т.е. после каждой такой фигни тебе придется добавлять по новой.

отредактировал(а) Mehanik Yar: 06-11-2010 22:00 GMT3 час.

Shadow X
    
Посты: 6
Откуда: Брест
Возраст:
06-11-2010 21:49 GMT3 час. #1377619   
Добрый вечер. Т.к тут новичок на форуме... То скажите пожалуйста, есть ли тут мод который даёт возможность торговцам с самого начала продавать всё оружие и патроны?
И ещё будет ли данная модификация работать с модом S.T.A.L.K.E.R. Complete 2009?


batment
    
Посты: 267
Откуда: Киев
Возраст: 30
06-11-2010 22:02 GMT3 час. #1377643   
я поставил в алл спавне direction и НПС не смотрит туда куда я указал


-=NSM=-
erlik
    
Посты: 2338
Откуда: Набережные Челны
Возраст: 47
06-11-2010 22:11 GMT3 час. #1377656   
Struck
Вариант первый - забиндить итем. А в его биндере в методе update (например - это чтобы проверка была постоянной - или с нужными тебе паузами) пишешь код, который будет перебирать в цикле все(или только в онлайне) аномалии в игре(идентифицируя их по классу например) и сравнивать дистанцию(получая разумеется позиции обоих объектов - аномалии и итема) между итемом и каждой аномалией. Если дистанция меньше определенной - за эталон можно взять средний радиус аномалии(либо - что уже сложнее, получая объект каждой аномалии , тут же получать ее радиус из конфига) - то предмет находиться в аномалии, после чего ставим флажок или что там требуется.
Другой вариант (если предмет уникальный - то можно и без биндера обойтись) - просто на апдейте проверять дистанцию до каждой аномалии.
А чтобы не перебирать в игре постоянно 65 тысяч объектов можно при старте игры сразу занести все аномалии(это конечно имеет смысл если они не динамические) в отдельную таблицу(перебрав за один раз 65 тысяч объектов - так как это будет при загрузке игры, то лагов заметно не будет) и перебирать потом уже только ее.
Код первого варианта можешь найти на сайте АМК -недавний пост Gonаrha(вроде в ковырялке) - его код определяет попадание болтов в рестрикторы.

добавлено спустя 4 минут

Вполне возможно, что все будет несколько затратно по ресурсам.
Впрочем, в своей разработке для самоподрыва мин-растяжек я использовал тот же вариант с проверкой дистанции от каждой установленной мины до каждого NPC в онлайне - каких либо лагов от этого не заметил даже на своем слабом компе.

отредактировал(а) erlik: 06-11-2010 22:18 GMT3 час.

Разработки: "Тотализатор","Kill-zone", "Mega-bomba", Mega_gravi",
"Рандомные тайники(а также декодер, мины+диалоговый аддон"), "Выбрасываемый рюкзак", "Аналоговые часики на худ"
Struck
    
Посты: 1946
Откуда:
Возраст:
06-11-2010 22:26 GMT3 час. #1377673   
erlik спасибо, только как все аномалии перебрать(онлайновые допустим)?...у аномалий есть клсиды? Если есть то тогда ясно.(если есть то где можно их посмотреть:-))


Снова в строю.

l
erlik
    
Посты: 2338
Откуда: Набережные Челны
Возраст: 47
06-11-2010 22:36 GMT3 час. #1377687   
Struck
clsid'ы есть - в lua хелпе указаны - в C++ class clsid {}.
А в АМК моде есть функция IsAnomaly(obj) к**500140b7e12bf63c3891**0) then
return true
else
end
end
return false
end[/code]

для проверки статуса онлайн\оффлайн можно использовать свойство online серверных объектов.
пример:
local status = alife():object(айди).online -- вернет true если объект в онлайне или false если в оффлайне.


Разработки: "Тотализатор","Kill-zone", "Mega-bomba", Mega_gravi",
"Рандомные тайники(а также декодер, мины+диалоговый аддон"), "Выбрасываемый рюкзак", "Аналоговые часики на худ"
СидырыЧЪ
    
Посты: 208
Откуда:
Возраст: 30
06-11-2010 22:51 GMT3 час. #1377722   
скажите почему у меня нпс не реагируют на ружье обрез все прописано но как оно попадает в руки то выстрел одной обоймы и все, что не так


Horrible area mod Видео в журнале
--------------------------------------------------------------------
Важнейшая задача цивилизации - научить человека мыслить
Struck
    
Посты: 1946
Откуда:
Возраст:
06-11-2010 23:59 GMT3 час. #1377802   
erlik а если просто db.storage перебрать?...туда ведь все онлайн объекты попадают


Снова в строю.

l
Gun12
    
Посты: 773
Откуда: СССР
Возраст: 52
07-11-2010 00:00 GMT3 час. #1377803   

# batment :
я поставил в алл спавне direction и НПС не смотрит туда куда я указал


То, куда будет смотреть НПС, прописывается в логике.
path_walk - точка, где стоит
path_look - точка, в которую смотрит.


Не стань номинантом премии Дарвина.
erlik
    
Посты: 2338
Откуда: Набережные Челны
Возраст: 47
07-11-2010 00:04 GMT3 час. #1377810   
Struck
Было бы конечно проще, если бы аномалии заносились в storage :-). Но их там насколько я помню нет. Как и артефактов. Там NPC, монстры - в общем объекты с логикой.


Разработки: "Тотализатор","Kill-zone", "Mega-bomba", Mega_gravi",
"Рандомные тайники(а также декодер, мины+диалоговый аддон"), "Выбрасываемый рюкзак", "Аналоговые часики на худ"
Artos
    
Посты: 4176
Откуда:
Возраст: 65
07-11-2010 00:45 GMT3 час. #1377841   
erlik
Поправлю: в db.storage попадают не только объекты с логикой (можно вспомнить коммент разрабов "Прожектор нужно биндить даже без logic"). Но по сути вопроса ты прав. Это только в ЗП разрабы стали да и то в отдельный массив 'db' заносить аномалии.

А использовать прямые числовые значения class_id вместо взятия из таблицы - чревато мадам 'не от АМК'. Числовые значения изменяются в зависимости от ввода/изъятия в игру новых классов объектов ... и применение условия 'if (otype>172 and otype<180) then' может сыграть плохую службу модмейкеру.

Состояние же se_obj.online у аномалий постоянное для текущей локации, независимо включена она иль отключена.


"Но иногда найдется вдруг чудак, этот чудак все сделает не так ..." ©Машина времени
batment
    
Посты: 267
Откуда: Киев
Возраст: 30
07-11-2010 00:57 GMT3 час. #1377846   
Gun12 но там нету координатов куда бы НПС смотрел просто :
path_walk = bar_barman_hole_walk
path_look = bar_barman_hole_look


-=NSM=-
Gun12
    
Посты: 773
Откуда: СССР
Возраст: 52
07-11-2010 01:20 GMT3 час. #1377858   
Да что ты мне рассказываешь?
Открой way_l05_bar.ltx и поищи там bar_barman_hole_walk и look.
А может подъехать и показать? Я километрах в 20 от Киева =).


Не стань номинантом премии Дарвина.


Форумы Архив » Свалка Вопросы и ответы (ТЧ по 18.11.2010)


Эта тема закрыта, публикация новых сообщений недоступна.
Продолжая пользоваться сайтом, вы соглашаетесь с использованием файлов cookie. Страницы сайта могут содержать информацию, запрещенную для
просмотра посетителям младше 18 лет. Авторское право на серию игр «S.T.A.L.K.E.R» и используемые в ней материалы принадлежит GSC Game World.

Использование материалов сайта возможно с разрешения администрации. Все права защищены. © 2004–2025 «Stalker-Portal.ru»