Автор Сообщение
Посты: 2338
Откуда:
19-06-2009 22:48 GMT3 час. #947266   
S.н.а.й.п.е.р.
Проще чем в факе - нельзя. Статьи на stalkerin.gameru.net - их там несколько по диалогам - объясняют все подробно. Ты их читал?
А здесь тебе никто в одном абзаце этого не объяснит - сначала нужно хотя бы попробывать, а потом уже спрашивать, если что-то не получилось.

читай здесь


Посты: 305
Откуда:
20-06-2009 08:29 GMT3 час. #947439   
А вот как сделать, чтобы патроны не полностью показывались? Ну например достаешь макаров - внизу пишется например: 8/40, как сделать, чтобы патроны в магазине вообще не показывались? Т.е. чтобы было просто 40


Посты: 2338
Откуда:
20-06-2009 09:28 GMT3 час. #947472   
Геныч Defake
Если ты заглядывал в файл конфига бинокля, то мог заметить, что он проходит как оружие и у него тоже есть типа магазин и патроны:
ammo_mag_size= 0
ammo_class= ammo_9x19_fmj

Но для того, чтобы патроны к нему не показывались там стоит строчка
show_ammo= false

Попробуй добавить эту строчку в конфиг любого оружия.
Как я подозреваю в этом случае не будет показываться общее число патронов. А количество в магазине будет.


Кстати в статье про новые предметы мог бы вместо икры поставить скажем кукурузу, маслины, тушенку или орехи - для всего этого есть неиспользованные огфки.

отредактировал(а) erlik: 20-06-2009 09:36 GMT3 час.

Посты: 1025
Откуда:
20-06-2009 09:30 GMT3 час. #947475   
S.н.а.й.п.е.р., да тут в принципе и делать нечего:-)
Тебе понадобятся 3 файла (можно и в два уложиться):
1. character_desc_***.xml - здесь записан профиль твоего сталкера,
2. dialogs_***.xml - структура диалога,
3. stable_dialogs_***.xml - текстовые фразы.

Объясню самый простой вариант, не вдаваясь в подробности.


Есть два типа диалогов:
start_dialog - начальный диалог (первая фраза принадлежит NPC),
actor_dialog - начинает актёр (первая фраза принадлежит актёру).

Разберём ситуацию, когда у нас есть полностью готовый NPC с профилем и со всеми нужными принадлежностями, кроме диалогов.


Добавим ему начальный диалог:
0. Привет, Меченый! Как поживаешь?
1. Привет. Да так, потихоньку.

Назовём наш диалог "privet_mecheniiy".

В профиле персонажа напишем (файл character_desc_***.xml):
privet_mecheniiy

Далее в файле dialogs_***.xml нужно будет указать структуру нашего диалога, она будет выглядеть так:

id="privet_mecheniiy">

id="0">
privet_mecheniiy_0
1

id="1">
privet_mecheniiy_1




Потом в файле stable_dialogs_***.xml напишем сами фразы:

id="privet_mecheniiy_0">
Привет, Меченый! Как поживаешь?

id="privet_mecheniiy_1">
Привет. Да так, потихоньку.



Вот и всё, сохраняем все внесённые нами изменения и если всё сделали правильно, то у персонажа появится этот диалог.

Я опустил нюансы и другие возможности, чтобы объяснить саму суть. Остальное узнавай сам или изучай статьи.

отредактировал(а) Максим Р.: 28-06-2009 10:03 GMT3 час.

Посты: 2338
Откуда:
20-06-2009 09:48 GMT3 час. #947485   
Максим Р.
Где то нашел вот такую функцию для спавна. Я так понимаю она спавнит при переходе на новый уровень - то есть когда ГГ там появляется, вызов срабатывает. Посмотри пожалуйста - это рабочий вариант? А то мне кажется здесь что то не то...



function first_run()

local ind

--escape--
for ind = 1, 2 do
alife():create("zombie_strong", vector():set(-17, -11, -114), 1, 44)

end

function level_spawn()
local level_name = level.name()

----
if level_name == "l01_escape" then
proceed_spawn("zombie_strong", -17, -11, -114, 5)

end



А ты каким вариантов пользовался для вызова спавна при переходе на другой уровень?


Посты: 500
Откуда:
20-06-2009 10:30 GMT3 час. #947502   
слыште а как сделать нпс ну легче чем в факе?


Посты: 1025
Откуда:
20-06-2009 11:08 GMT3 час. #947516   
erlik, не знаю, первый раз такую вижу.


Посты: 1493
Откуда:
20-06-2009 11:08 GMT3 час. #947517   
Заспавни!
Через xrSpawner или ACDC это легче!
И делать не чё не надо!
Но лучше как в факе!


Посты: 500
Откуда:
20-06-2009 12:15 GMT3 час. #947579   
а как сделать верталет?


Посты: 292
Откуда:
20-06-2009 12:27 GMT3 час. #947592   
а как сделать чтоб на кордоне со стороны блок-поста спавнились каждые 5 минут игрового времяни 25 военных и у них была одна цель-"убить всех наёмников на этой локации"???и чтоб со стороны АТП спавнилось каждые 5 минут игрового времяни 25 наёмников и у них была одна цель-"убить всех военных на этой локации"???и чтоб военные бежали на встречу наёмникам???


Посты: 267
Откуда:
20-06-2009 12:42 GMT3 час. #947609   
erlik
в файл bind_stalker.script
в функцию
function actor_binder:net_spawn(data)
вконце перед return true вставь ето
if level.name() == "l04_darkvalley" then -- тут любой уровень
man_spawn.spawn_stalk_darkvalley()--а тут назван файла и сомой функц спавна
end
я себе ставил функцию универсальную которую singapur22 сделал отлично работает спасибо
:-cool)

отредактировал(а) manunj: 20-06-2009 12:50 GMT3 час.

Посты: 2338
Откуда:
20-06-2009 13:12 GMT3 час. #947637   
manunj
Окей. Спасибо. :-)
То есть должно там примерно так выглядеть:

death_manager.init_drop_settings()
end
if level.name() == "l04_darkvalley" then
xr_effects.random_spawn_data_1()
return true
end

отредактировал(а) erlik: 20-06-2009 13:36 GMT3 час.

Посты: 267
Откуда:
20-06-2009 13:17 GMT3 час. #947643   
угу тока end поставь перед return true
----------------------
death_manager.init_drop_settings()
end
if level.name() == "l04_darkvalley" then
xr_effects.random_spawn_data_1()
end
return true
end


Посты: 2338
Откуда:
20-06-2009 13:37 GMT3 час. #947659   
manunj
А все понял, а то пока вставлял че то напутал.:-)


Посты: 316
Откуда:
20-06-2009 13:39 GMT3 час. #947660   
слушайте помогите пожалуйста.

я создал для нпс диалог.включил игру.подошел к нему поговорить игра вылетает.

Expression : next_phrase_node
Function : CPhraseDialog::AddPhrase
File : D:\xray-svn\xr_3da\xrGame\PhraseDialog.cpp
Line : 283
Description : 9

ошибка.че за "9"?


Посты: 2338
Откуда:
20-06-2009 13:51 GMT3 час. #947668   
S.н.а.й.п.е.р.
смотри фразу 9 - где то там ты ошибся. У тебя получается что нет перехода к фразе 9 или какой еще непорядок - может в самом тексте. Выложи под спойлер весь свой диалог - его id структуру.


Посты: 292
Откуда:
20-06-2009 14:13 GMT3 час. #947689   
а как сделать чтоб на кордоне со стороны блок-поста спавнились каждые 5 минут игрового времяни 25 военных и у них была одна цель-"убить всех наёмников на этой локации"???и чтоб со стороны АТП спавнилось каждые 5 минут игрового времяни 25 наёмников и у них была одна цель-"убить всех военных на этой локации"???и чтоб военные бежали на встречу наёмникам???


Посты: 316
Откуда:
20-06-2009 14:17 GMT3 час. #947694   
erlik
вот:


1_8
9


1_9
10


1_10
dialogs.break_dialog





это всего лишь часть.

теперь у меня игра вылетает но ошибки нет.


Посты: 2338
Откуда:
20-06-2009 14:38 GMT3 час. #947720   
S.н.а.й.п.е.р.

Здсеь вроде все норм. Теперь надо смотреть текстовый вариант.
А почему у тебя цифры в 1_9

а не название диалога+цифра например так : escape_buy_transport_6
Так легче с фразами не запутаться.

Кидай сам текст.


Посты: 316
Откуда:
20-06-2009 14:41 GMT3 час. #947722   
сам диалог имеет название 1.
хочешь я тебе все три файла диалогов скину?


Посты: 1025
Откуда:
20-06-2009 14:49 GMT3 час. #947730   
S.н.а.й.п.е.р., ты диалог писал в новых файлах или старых? То есть ты для диалога создавал новые файлы или писал в стандартных?

Выложи всю структуру самого диалога.


Посты: 316
Откуда:
20-06-2009 15:02 GMT3 час. #947742   
конечно в старых
вот:

my_script_for_dialogs.my_function_1


talk_0
1


talk_1
2


talk_2
3


talk_3
4


talk_4
5


talk_5
6


talk_6
7


talk_7
8


talk_8
9


talk_9
10


talk_10
dialogs.break_dialog





Посты: 2338
Откуда:
20-06-2009 15:14 GMT3 час. #947750   
S.н.а.й.п.е.р.
Здесь у тебя на первый взгляд все норм. Так что надо либо текст смотреть
либо прекондишен - что там за условие появление диалога? Какая функция?

У тебя как в самом начале диалога вылетает или при загрузке игры?


Посты: 316
Откуда:
20-06-2009 15:31 GMT3 час. #947758   
в начале диалога. дохожу нажимаю на F и-вылет.

а вообще без прикондишн можно?


Посты: 1025
Откуда:
20-06-2009 15:36 GMT3 час. #947762   
S.н.а.й.п.е.р., можно конечно. Я же вверху описал, как делается самый простой диалог.


Посты: 316
Откуда:
20-06-2009 15:39 GMT3 час. #947768   
Максим Р.





че за название-то?2 раза писать prevet mecheniiy?


Посты: 2338
Откуда:
20-06-2009 15:40 GMT3 час. #947771   
S.н.а.й.п.е.р.
Запросто можно. Без него он будет появляться в меню разговора непися сразу же. То есть безусловно.
Прекондишен нужен только в тех случаях, когда тебе надо, чтобы данный конкретный диалог появлялся у непися только при выполнении определенного условия. Например - после выполнения задания, или когда в инвентаре у ГГ будет нужная вещь. И т.д. Условие может быть разным.

У тебя скорей всего именно из -за него и вылетает. Ты, видимо еще не разобрался как прекондишены правильно использовать:-) И функции для проверки условий тож надо правильно писать.
Так что смело выкидывай его.
И пробуй так.


Посты: 1025
Откуда:
20-06-2009 15:42 GMT3 час. #947772   
S.н.а.й.п.е.р., в смысле, обычное название, такое же, как и у тебя:


Посты: 316
Откуда:
20-06-2009 15:54 GMT3 час. #947794   
СПАСИБО большое вам ребята!У меня все получилось.:-)


Посты: 4
Откуда:
20-06-2009 17:11 GMT3 час. #947843   
люди подскажите пожалуйста как сделать переход между припитью и ЧАЭС(территорией) и между ЧАЭС (терр) и ЧАЭС (помещение)?




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


Эта тема закрыта, публикация новых сообщений недоступна.
Продолжая пользоваться сайтом, вы соглашаетесь с использованием файлов cookie. Страницы сайта могут содержать информацию, запрещенную для
просмотра посетителям младше 18 лет. Организация GSC Game World признана нежелательной на территории Российской Федерации.
Использование материалов сайта возможно с разрешения администрации. © 2004–2025 «Stalker-Portal.ru»