Пользователей: 1
Гостей: 1664
Всего: 1665

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

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









Автор Сообщение
singapur22
    
Посты: 2089
Откуда: Рубцовск
Возраст: 45
10-08-2009 16:12 GMT3 час. #1003676   
Я не уверен, что мне кто то ответит, но всё таки. При создании нового интерфейса, столкнулся с проблемой вывода многострочных текстов. Метод CUIStatic():SetText( текст ) выводит только в одну строку, хоть ты как ухищряйся, результат всё равно один, одна строка.

Может кто знает, то не поленитесь ответить. Какой метод, или методы позволяют выводить многострочные тексты в интерфейс?


Проект "Mobile Manager" закрыт, в связи со стечениями неблагоприятных обстоятельств, и последующей потерей всех файлов и справок текущего проекта.
Strelok91
    
Посты: 2
Откуда:
Возраст:
10-08-2009 18:10 GMT3 час. #1003839   
обясните мне с чего начать чтоб мод свой зделать


singapur22
    
Посты: 2089
Откуда: Рубцовск
Возраст: 45
10-08-2009 18:33 GMT3 час. #1003856   
Strelok91 Начни с FAQ.


Проект "Mobile Manager" закрыт, в связи со стечениями неблагоприятных обстоятельств, и последующей потерей всех файлов и справок текущего проекта.
Sasha Zone
    
Посты: 153
Откуда: Дзержинск
Возраст: 30
10-08-2009 22:13 GMT3 час. #1004186   
erlik спасиб


Смотрим Журнал. МОНОЛИТ
Йа Вконтакте
Пиши ЛС!

Кто есть Steam? вот мой профиль
moskvin
    
Посты: 190
Откуда:
Возраст: 29
11-08-2009 07:05 GMT3 час. #1004364   
ребят. ещё такой вопросик:
создал нпс. заспавнил всё хорошо.
в all.spawn к нему прописан файл логики (voron.ltx)
так вот. как потоньше его настроить?

если точнее, мне надо чтобы заспавненный нпс стоял на месте своего спавна и ТОЛЬКО если его будут атаковать, мог с него уходить и отстреливаться. по окончании боя нужно чтобы он возвращался на место своего спавна и вновь стоял.

при этом желательно чтобы оружие (у него есть автомат) он никогда не убирал, а держал в руках (как Волк)


Отшель[НИК]
    
Посты: 263
Откуда: Россия, Свердловская обл., г. Качканар
Возраст: 31
11-08-2009 10:13 GMT3 час. #1004500   
moskvin
Вот это ему п**50016ea8aab1bb10eeba**


"Нет Предназначения… Оно не существует. Единственное, что предназначено всем, - это смерть."

Геральт из Ривии, ведьмак.
moskvin
    
Посты: 190
Откуда:
Возраст: 29
11-08-2009 13:19 GMT3 час. #1004663   
Допустим пропишу. А как написать такой скрипт для другого нпс? как научиться? есть статьи по этому?
спасибо


XMJ{
    
Посты: 545
Откуда: Урал
Возраст:
11-08-2009 14:30 GMT3 час. #1004718   
moskvin ты же собрал мега мод, которому аналогов нет, темболее сделал все САМ, как я понял. Зачем тогда задаешь такие нубские вопросы?



A.R.S. Mod
ARS CoP Mod
Нужнен скриптер отладчик, писать в
moskvin
    
Посты: 190
Откуда:
Возраст: 29
11-08-2009 15:11 GMT3 час. #1004754   
но я же разбираюсь тоже не во всём. вот здесь мне немного непонятно.
ну так поможешь разобраться?


Отшель[НИК]
    
Посты: 263
Откуда: Россия, Свердловская обл., г. Качканар
Возраст: 31
11-08-2009 15:23 GMT3 час. #1004767   
Как называется прибор/детектер, с которым бродит круглов на замерах? В его профиле не нашел...

moskvin
Та логика не моя, а взята из статьи с форума АМК.

Я к примеру делаю это walker-ами...
Вот подробнейшая статья по логике: _http://stalkerin.gameru.net/wiki/index.php/%D0%9D%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B0_%D0%BB%D0%BE%D0%B3%D0%B8%D0%BA%D0%B8._%D0%A7%D0%B0%D1%81%D1%82%D1%8C_1
Изучай.

Вопрос снимается.

отредактировал(а) Отшель[НИК]: 11-08-2009 16:26 GMT3 час.

"Нет Предназначения… Оно не существует. Единственное, что предназначено всем, - это смерть."

Геральт из Ривии, ведьмак.
moskvin
    
Посты: 190
Откуда:
Возраст: 29
11-08-2009 15:40 GMT3 час. #1004787   
Отшель[НИК]
прописал то, что ты сказал. итог: после окончания боя они стоят там, где его окончили (надо чтобы шли на место спавна). оружие убирают за спину (надо чтобы держали в руках (как Волк)).
в чём дело?


erlik
    
Посты: 2338
Откуда: Набережные Челны
Возраст: 47
11-08-2009 15:56 GMT3 час. #1004806   
moskvin
с ремарковой логикой неписи так и будут тупить. У меня так же было. Надо их либо кемперами делать - с точкой кемпа - либо волкерами с патрульными путями. Тода будут возвращаться обратно опосля боя.
Либо им прописывать в логику секцию combat, а в ней задавать им кемперский тип боя - тогда они с места должны палить и никуда не срываться. А если и сорвутся, то недалече. Ну и с секцией денжер маленько помудрить, чтобы они не таки пугливые были и в себя побыстрей приходили после того как враг с глаз долой исчезнет.

Статьи читай на stalkerin.gameru.net - раздел база знаний, название статей - "настройка логики" в 4-х частях.

Анимку им в ремарк пропиши: anim = guard
будет с ружом стоять. А у волка несколько анимок, еще есть hello_wpn и guard_rac - первая с ружом на плече и рукой махает, вторая - по рации базарит и ружо держит.


Разработки: "Тотализатор","Kill-zone", "Mega-bomba", Mega_gravi",
"Рандомные тайники(а также декодер, мины+диалоговый аддон"), "Выбрасываемый рюкзак", "Аналоговые часики на худ"
moskvin
    
Посты: 190
Откуда:
Возраст: 29
11-08-2009 16:03 GMT3 час. #1004811   
а как прописать кемпера? и куда?

прописал анимацию - смотрю. 1, что нетак - он машет рукой). 2. он использует эту анимацию только, пока я с ним не поговорю. как поговорю - всё по старому.

может ещё подскажешь?

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

а нет. ошибся. рукой не машет. всё хорошо с анимацией. но остаётся вопрос про кемпера.

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

а как уменьшить его дальность видения? а то он на меня смотрит, когда между нами километр ещё целый.

отредактировал(а) moskvin: 11-08-2009 16:08 GMT3 час.

XMJ{
    
Посты: 545
Откуда: Урал
Возраст:
11-08-2009 16:14 GMT3 час. #1004830   
moskvin ах да, прости, ты разбираешься только в том как своровать из других модов что то и выдать это за свое. Самое смешное из этого чего-то - дверь сидоровича из амк



A.R.S. Mod
ARS CoP Mod
Нужнен скриптер отладчик, писать в
Soul Reaver
    
Посты: 2213
Откуда:
Возраст:
11-08-2009 16:17 GMT3 час. #1004833   
Вот у меня вопрос про глушители...вот например я в файле оружия поставил чтобы глушитель мог ставиться на Грозу в оригинальной игре,что мне надо и где прописывать его положение и звуки?Про моды мне не надо толдычить,я хочу сам поставить.


moskvin
    
Посты: 190
Откуда:
Возраст: 29
11-08-2009 16:23 GMT3 час. #1004842   
Soul Reaver
в настройках грозы смотри. по умолчанию, прописав возможность цеплять глушитель, попробуй сразу запустить игру. есть вероятность 70% что всё будет нормально работать. если будет что-то не так, открывай свойства грозы и смотри по глушителю расположение (x,y,z)


XMJ{
    
Посты: 545
Откуда: Урал
Возраст:
11-08-2009 17:48 GMT3 час. #1004939   
manunj ты не знаешь, не лезь, ок?



A.R.S. Mod
ARS CoP Mod
Нужнен скриптер отладчик, писать в
mikiglobus
    
Посты: 3
Откуда:
Возраст:
11-08-2009 18:07 GMT3 час. #1004975   
Как сделать в игре бесконечные патроны?


STASKER
    
Посты: 24
Откуда: Тюмень
Возраст: 29
11-08-2009 18:45 GMT3 час. #1005018   
Подскажите, как у Меченого иконку поменять? Ну то есть авик:-) А то я в Фотошопе менял, а у меня только чёрный экран вместо авы:-(


Core i5 4460 (3.2Ghz)
ASRock Z97 ANNIVERSARY
DDR-III 1600Mhz (10Gb)
Sapphire HD7770 (1Gb)
singapur22
    
Посты: 2089
Откуда: Рубцовск
Возраст: 45
11-08-2009 18:48 GMT3 час. #1005026   
mikiglobus В одиночке, только через специальный скрипт. Зайди в мой журнал, я уже такое создавал.

_http://stalker-portal.ru/plug.php?e=weblogs


Проект "Mobile Manager" закрыт, в связи со стечениями неблагоприятных обстоятельств, и последующей потерей всех файлов и справок текущего проекта.
erlik
    
Посты: 2338
Откуда: Набережные Челны
Возраст: 47
11-08-2009 19:08 GMT3 час. #1005049   
singapur22

Все сделал с твоими поправками, но получается вот как:
срабатывают эффекты из первого шага - там у меня начало выброса и смена погоды
level.add_pp_effector("vibros_p.ppe", 1976, false)
level.set_weather("stancia")
ну и звуки еще. Все это идет - если у эффекта ставлю true, то бесконечно идет, если false, то как и положено заканчивается секунд через 10. Погода так и остается.
А дальше перехода на второй шаг - где остановка первого эффекта и запуск функции - не происходит. Ниче не понимаю что не так...


local tim = game.time()
local flag = 0
local flag1 = 0
local flag2 = 0
local flag3 = 0
local flag4 = 0
local flag5 = 0
local flag6 = 0
local flag7 = 0
local flag8 = 0
local flag9 = 0
local flag10 = 0
local flag11 = 0
--local xray = 0.001

function run_supereffect()
if (game.time() - tim)>= 100000 and flag == 0 then
level.add_pp_effector("vibros_p.ppe", 1976, false)
level.set_weather("stancia")
local snd_obj = xr_sound.get_safe_sound_object([[anomaly\blowout]])
snd_obj:play_at_pos(db.actor, vector():set(0,0,0), 0, sound_object.s2d)
flag = 1
elseif (game.time() - tim)>= 300000 and flag1 == 0 then
level.remove_pp_effector(1976)
flag1 = 1
elseif (game.time() - tim)>= 350000 and flag2 == 0 then
this.Run_Vibros()
flag2 = 1
elseif (game.time() - tim)>= 450000 and flag3 == 0 then
level.add_pp_effector("radiation.ppe", 1974, false)
--level.set_pp_effector_factor(1001, db.xray) --\ не совсем понял как с этим параметром работать
flag3 = 1
elseif (game.time() - tim)>= 550000 and flag4 == 0 then
level.add_pp_effector("deadcity_wake.ppe", 1977, false)
--level.set_pp_effector_factor(1001, db.xray)
flag4 = 1
elseif (game.time() - tim)>= 650000 and flag5 == 0 then
level.remove_cam_effector(1970)
level.remove_pp_effector(1975)
level.remove_pp_effector(1974)
level.add_pp_effector("yantar_underground_psi.ppe", 1977, false)
--level.set_pp_effector_factor(1001, db.xray)
flag5 = 1
elseif (game.time() - tim)>= 750000 and flag6 == 0 then
level.remove_pp_effector(1977)
level.add_pp_effector("blink.ppe", 1978, false)
flag6 = 1
elseif (game.time() - tim)>= 800000 and flag7 == 0 then
level.add_cam_effector("camera_effects\\fatigue.anm", 1979, false, "")
--level.set_pp_effector_factor(1001, db.xray)
flag7 = 1
elseif (game.time() - tim)>= 850000 and flag8 == 0 then
level.remove_cam_effector(1979)
level.add_cam_effector("camera_effects\\fusker.anm", 1970, false, "")
flag8 = 1
elseif (game.time() - tim)>= 900000 and flag9 == 0 then
level.add_pp_effector("dead_zone.ppe", 1980, false)
--level.set_pp_effector_factor(1001, db.xray)
xr_sound.set_actor_sound("level_border_detector")
xr_sound.set_actor_sound_factor(0.1)
flag9 = 1
elseif (game.time() - tim)>= 1100000 and flag10 == 0 then
level.remove_pp_effector(1980)
xr_sound.set_actor_sound("")
--level.remove_pp_effector(1001)
flag10 = 1
elseif (game.time() - tim)>= 1150000 and flag11 == 0 then
level.add_cam_effector("camera_effects\\prison_1.anm", 1981, false, "")
--xray = 0
flag11 = 1
tim = game.time()
end
end


Разработки: "Тотализатор","Kill-zone", "Mega-bomba", Mega_gravi",
"Рандомные тайники(а также декодер, мины+диалоговый аддон"), "Выбрасываемый рюкзак", "Аналоговые часики на худ"
singapur22
    
Посты: 2089
Откуда: Рубцовск
Возраст: 45
11-08-2009 19:16 GMT3 час. #1005055   
erlik А ты функцию апдейдишь (постоянно вызываешь)? Или делаешь только разовый вызов? Если второе, то у тебя так и будет. Подобным схемам нужен постоянный апдейт. А запуск уже производить посредством включения и отключения флагов.

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

Например создай такую функцию:

function start_effect()
if has_alife_info("start_effect") then

вызов твоей функции
end
end


Вызов данной функции пропиши в апдейте файла bind_stalker.

Ну и соответственно запуск твоих эффектов будет производиться путём включения поршна "start_effect".
В вызываемой функции, где все твои эффекты, по окончании всех процессов пропиши отключение поршна. И скрипт будет работать как положено.

отредактировал(а) singapur22: 11-08-2009 19:22 GMT3 час.

Проект "Mobile Manager" закрыт, в связи со стечениями неблагоприятных обстоятельств, и последующей потерей всех файлов и справок текущего проекта.
erlik
    
Посты: 2338
Откуда: Набережные Челны
Возраст: 47
11-08-2009 19:38 GMT3 час. #1005075   
singapur22
Теперь понятно. Апдейта у меня не было, так как делал запуск банально через дроп вещи.:-)
Спасибо за разъяснение.
Но тогда такой еще вопрос:
А насколько сложно сделать такую вещь как таймер который будет постоянно отсчитывать игровое время и через нужные промежутки делать запуск главной функции (ну или тот же поршень выдавать) - причем делать это периодично?
Ну чтобы не надо было каждый раз инфопоршень выдавать...

отредактировал(а) erlik: 11-08-2009 19:53 GMT3 час.

Разработки: "Тотализатор","Kill-zone", "Mega-bomba", Mega_gravi",
"Рандомные тайники(а также декодер, мины+диалоговый аддон"), "Выбрасываемый рюкзак", "Аналоговые часики на худ"
mikiglobus
    
Посты: 3
Откуда:
Возраст:
11-08-2009 19:39 GMT3 час. #1005077   
singapur22 К сожалению не могу войти в твой журнал, у меня ведь нет твоего пароля. :) Если можешь напиши здесь.


Олегкороп
    
Посты: 9
Откуда:
Возраст:
11-08-2009 20:31 GMT3 час. #1005157   
как сделать нпс помогите плиз и обясните всё докладно


Stal4eK
    
Посты: 16
Откуда:
Возраст:
11-08-2009 20:56 GMT3 час. #1005197   
Олегкороп
--------------------------------------------
Что нам надо?
ACDC,алл.спавн,character_desc_garbage.xml(в config\gameplay ),npc_profile.xml(в config\gameplay ) и прямые руки.
итак распаковываем алл.спавн(как распаковывать писать не буду).
Допустим мы хотим заспавнить НПЦ на свалке.Открываем alife_l02_garbage.ltx и дописуем в него:
--------------------------------------------
[2143]
; cse_abstract properties
section_name = stalker
name = gar_chelll
position = 11.857313156128,0.32913729548454,-20.160694122314
direction = 0,0.00316426996141672,0.062321275472641

; cse_alife_trader_abstract properties
money = 5000
character_profile = gar_chelll

; cse_alife_object properties
game_vertex_id = 293
distance = 9.80000019073486
level_vertex_id = 189027
object_flags = 0xffffffbf
custom_data = < [smart_terrains]
none = true
END

; cse_visual properties
visual_name = actors\novice\green_stalker_10

; cse_alife_creature_abstract properties
g_team = 0
g_squad = 1
g_group = 5
health = 1
dynamic_out_restrictions =
dynamic_in_restrictions =

upd:health = 1
upd:timestamp = 0
upd:creature_flags = 0
upd:position = 11.857313156128,0.32913729548454,-20.160694122314
upd:o_model = 0
upd:o_torso = 0.00316426996141672,0.062321275472641,0
upd:g_team = 0
upd:g_squad = 1
upd:g_group = 5

; 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 = 2,2,0,1,1
predicate4 = 0,2,0,2

; cse_ph_skeleton properties

upd:start_dialog =

; se_stalker properties
--------------------------------------------
где:
[2143] - номер в спавне
section_name = - секция чего мы спавним(нам надо stalker)
name = - имя кого мы спавним(мы поставим gar_chelll)
position = - позиция где спавним
direction = - поворот НПЦ
game_vertex_id = гейм вертекс
level_vertex_id = - левел вертекс
--------------------------------------------
Примечание:
координаты спавна, game_vertex_id и level_vertex_id можно получить с помощью функции:

function main_menu:OnButton_credits_clicked()
local text
local vid
local gvid
local a = vector()
local text
a = db.actor:position()
vid = db.actor:level_vertex_id()
gvid = db.actor:game_vertex_id()
text = "Позиция:\nX= "..a.x.."\nY= "..a.y.."\nZ= "..a.z.."\nlevel_vertex= "..vid.."\ngame_vertex_id= "..gvid
news_manager.send_tip(db.actor, text, nil, nil, 30000)
end

просто допишите её в ui_main_menu.script,в самом конце.
Для снятия координат начинаем игру,идём в нужное место,нажимаем esc,титры,обратно в игру и делаем скриншнот.
--------------------------------------------
money = - сколько денег будет у НПЦ
character_profile = профиль нашего НПЦ
visual_name = - визуал("шкура") нашего НПЦ
--------------------------------------------
теперь логика ПНЦ:
[smart_terrains]
none = true
END
-НПЦ не будет затрагиватся смарттеррайнами,и будет просто ходить где ему вздумается.
Далее про логику писать не буду,т.к. можно много написать,а посоветую глянуть сюда:
http://stalkerin.gameru.net/wiki/index.php/Настройка_логики._Часть_1
http://stalkerin.gameru.net/wiki/index.php/Настройка_логики._Часть_2
http://stalkerin.gameru.net/wiki/index.php/Настройка_логики._Часть_3
http://stalkerin.gameru.net/wiki/index.php/Настройка_логики._Часть_4
--------------------------------------------
health = - если 1,то НПЦ живой,если 0 - мёртвый.
upd:health = - если 1,то НПЦ живой,если 0 - мёртвый.
--------------------------------------------
Примечание:
если хотите заспавнить труп надо прописать:
health = 0
upd:health = 0
--------------------------------------------
upd:position = - апдейт позиции(задавать такой же как и в position = )
--------------------------------------------
После добавления секции нового НПЦ сохраняем и компилируем алл.спавн.
Далее находим character_desc_garbage.xml в config\gameplay и добавляем:



GENERATE_NAME_stalker
ui_npc_u_green_stalker_2
esc_stalker_novice_bio

gar_chelll
stalker stalker_terrain

127
-8


characters_voice\human_01\newbie\
-1

actors\dolg\stalker_do_antigas
;actors\novice\green_stalker_2

[spawn] \n
wpn_pm \n
ammo_9x18_fmj = 1 \n
device_torch \n
#include "gameplay\character_items.xml" \n
#include "gameplay\character_food.xml"


#include "gameplay\character_criticals_3.xml"


#include "gameplay\character_dialogs.xml"

Сохраняем.
--------------------------------------------
Открываем npc_profile.xml в config\gameplay и дописуем:

gar_chelll

Сохраняем и смело идём тестировать.

Взято из журнала джЭдая


singapur22
    
Посты: 2089
Откуда: Рубцовск
Возраст: 45
11-08-2009 21:36 GMT3 час. #1005265   
erlik Ничего сложного нету. Тот же простейший таймер:

local tim = game.time()

function name()
if game.time() - tim >= 1000^2 then
действие
tim = game.time()
end
end


При постоянном апдейте выполняет ту же задачу. Запускает действие через каждое указанное время.

Таймер можно усложнить, используя метод game.get_game_time():get(Y,M,D,h,m,s,ms).

Данный метод выдаёт полную текущую дату и время, вплоть от миллисекунд до года.

mikiglobus Какой ещё пароль? Чтобы зайти в чейто журнал, просто нажми на рисунок с двумя страничками и датой, под аватаром.


Проект "Mobile Manager" закрыт, в связи со стечениями неблагоприятных обстоятельств, и последующей потерей всех файлов и справок текущего проекта.
erlik
    
Посты: 2338
Откуда: Набережные Челны
Возраст: 47
11-08-2009 22:05 GMT3 час. #1005300   
singapur22
А параметр game.time() можно заменить на другой - который не игровое время обрабатывает, а реальное? А то я уже мягко сказать заколебался переводить игровые миллисекунды в реальные минуты и часы, чтобы задать нужный промежуток. В итоге в функциии приходится писать цифры с семью и более нолями... :-)

И еще: добавить в этот таймер math.random возможно?

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

а куда правильней поставить запуск функции, которая апдейтится должна? Я уж имя функции и в конец функции function actor_binder:update(delta) между двумя послeдними end ставил и туда где рестрикторы обновляются - все не то. Или лучше всю функцию (function start_effect() ) целиком туда вставить?

отредактировал(а) erlik: 11-08-2009 22:37 GMT3 час.

Разработки: "Тотализатор","Kill-zone", "Mega-bomba", Mega_gravi",
"Рандомные тайники(а также декодер, мины+диалоговый аддон"), "Выбрасываемый рюкзак", "Аналоговые часики на худ"
shabash
    
Посты: 12
Откуда: kharkov
Возраст: 47
11-08-2009 23:21 GMT3 час. #1005424   
Помогите кто может как это сделать:при выполнении задания(например освободить Шустрого) спавниться в нужном месте предмет на определенное время или до какогото часа по игре? Спасибо!


erlik
    
Посты: 2338
Откуда: Набережные Челны
Возраст: 47
12-08-2009 00:32 GMT3 час. #1005494   
singapur22
Разобрался как правильно делать - теперь усе работает.:-)
но вопрос насчет math.random еще в силе...


Разработки: "Тотализатор","Kill-zone", "Mega-bomba", Mega_gravi",
"Рандомные тайники(а также декодер, мины+диалоговый аддон"), "Выбрасываемый рюкзак", "Аналоговые часики на худ"


Форумы Архив » Свалка Как сделать свой мод? (по 08.10.09)


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

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