Привет Гость!
Ты можешь:
Войти или зарегистрироваться
Меню сайта
Главная страница
Моды ПК игр Форум Flash игры/журналы Помощь сайту WAP/PDA версия сайта Мы вКонтакте
Категории
Уроки по модификации java [176]
Уроки по переводу java игр [15]
Программы для компьютера [105]
Программы для телефона [85]
Модификация смартфонных игр [15]
Symbian, Android, iPhone и т.д.
Прочее [35]
Уроки по модификации ПК игр [10]
Мини-чат
Главная » Статьи » Уроки по модификации ПК игр

14.08.2013, 19:57

Добавляем тайник в S.T.A.L.K.E.R. Тень Чернобыля

Статья из M.O.D.S. Август 2013

Добавляем тайник в S.T.A.L.K.E.R. Тень Чернобыля

Всем привет! Наверняка, многие играли в сталкер и хотели что либо изменить, или просто с самого начала игры не мучаться, а найти тайник, где будет лежать пулемет и куча всего-всего. Так вот, сейчас мы попробуем это осуществить, а заодно я объясню вам как это все работает на примере Теней Чернобыля.
Начнем с самого малого- нахождения координат. Для этого нам понадобится чистая версия S.T.A.L.K.E.R. ТЧ и программа S.T.A.L.K.E.R. Position Informer (см. ссылки). Хотя нет, Это будет слишком сложно, давайте все сделаем при автоматизации скриптов (спасибо за способ человеку под ником panzyuza). Откроем файл ui_main_menu.script из папки gamedata/scripts. Ищем строку (через SHIFT+F) self:OnMessageQuitWin(). Как только нашли пропускаем строчку пишем следующее:

elseif dik == DIK_keys.DIK_F4 then
self:OnButtonLogCoordinate()


Примерно должно получиться вот так:
if dik == DIK_keys.DIK_Q then
self:OnMessageQuitWin()
elseif dik == DIK_keys.DIK_F4 then
self:OnButtonLogCoordinate()
end


После, идем в самый самый конец файла и вписываем эти строчки:

function dbglog(fmt,...)
local msg = string.format(fmt, ...)
local msg_no_ws = string.gsub(msg, "%s", "_")
get_console():execute("dbg:" .. msg_no_ws)
get_console():execute("flush")
end

function main_menu:OnButtonLogCoordinate()
local lvid, gvid = db.actor:level_vertex_id(), db.actor:game_vertex_id()
local pos = db.actor:position()
dbglog("("..pos.x..","..pos.y..","..pos.z.."),"..lvid..","..gvid)
end


Все. Готово, сохраняем и запускаем игру. Как только подошли к нужному месту для тайника выходим в меню и жмем F4. Данные сохранятся в C:\Users\Юзер\Documents\STALKER-SHOC\файл.log.

Смотрим последнюю строчку. Там будет что то типа:

dbg:(-137.06607055664,9.9998416900635,-199.71380615234),101714,629

Так вот, координаты записались в виде x,y,z,level_vertex,game_vertex.

Приступаем с спавну. Мы будем уже работать со скриптами, так что возьмите себя в руки и готовьтесь. Как я уже писал начинаем кодить. Для повышения вашего образования скажу, что скрипты под сталкер пишутся на языке Lua, и как я вычитал в "интернетах" синтаксис похож на Java, хотя как по мне, то он больше похож на дельфи- наверное во мне сидит скептик-паскалист). В любом случае язык довольно простой, но и расслабляться не стоит- функций очень много.

Создадим в папке gamedata/scripts/ текстовый документ. Я назвал его mytajnik. Изменим расширение .txt на .script. Да, очень напоминает времена когда кодили под Counter-Strike 1.6). Кстати, кодировку лучше выбирать ANSI, и вообще в дальнейших действиях тоже выбирайте ее. Проблем меньше будет.

Введем в созданный файл текст:

function super_puper_tajnik()
-- Ниже координаты
local a = vector()
a.x = -137.066
a.y = -9.999
a.z = -199.713
alife():create("tajnikazi",a,101714,629)
end


Думаю, здесь все понятно что к чему ставится из координат

Кстати, точку после end ставить не нужно)
[IMG]
ninadaplis.png

Начало положено, заполним наш тайник вещами. Для этого создадим в папке gamedata/config любой файл. Я назвал его tajnikazi.ltx. Вводим туда то, что нужно спавнить:

[spawn]
wpn_val= 1
medkit = 5
medkit_army=10
vodka=40

Закрываем. В итоге у нас получились один вал, 5 аптечек, 10 армейских аптечек и 40 бутылок водки. Вместо антирада- водяру пить рады) Названия всех предметов можно найти в папке gamedata/config/misc, в файлах с началом trader- просто названия всего в этой статье вряд ли поместится, да и долго это мне писать=/.

Теперь пропишем тайник в файл общего спавна. Это spawn_sections.ltx в папке gamedata/config/creatures. Введем в самом конце (если есть, в конце, перед строчкой ;#include) текст:

[tajnikazi]:inv_box
visual = equipments\item_rukzak
radius = 1
custom_data = scripts\tajnikazi.ltx


Думаю, кроме visual ничего объяснять не нужно. А вот визуал- это модель, как будет выглядеть тайник. У нас он в виде рюкзака.

Теперь пропишем в файл общих вещей (devices.ltx в папке gamedata\config\misc) наш рюкзак. Тут уже особо пока в подробности лучше не вдаваться, просто пишите, а в следующих номерах я объясню это).

Вводим:

[inv_box]
GroupControlSection = spawn_group
discovery_dependency =
$spawn = "devices\inventory box"
class = O_INVBOX
cform = skeleton
visual = physics\box\expl_dinamit.ogf
script_binding = bind_physic_object.init


Теперь нужно заспавнить тайник. Сделаем это, после какого нибудь диалога, например после диалога с Кротом на агропроме в файле gamedata/config/gameplay/dialogs_agroprom.xml после строчек
<text>agr_krot_about_agroprom_120</text>
добавим своё:

<action> mytajnik.super_puper_tajnik</action>

Все, готово. Возможно я и не очень понятно объяснил, но статью уже нужно сдавать. Если что непонятно пишите мне в личку на mods.tf9.ru или ищите информацию в интернете^).

Статью писал Az@
Категория: Уроки по модификации ПК игр | Добавил: Aza
Просмотров: 5009 | Комментарии: 4 | Рейтинг: 5.0/2

Всего комментариев: 4
Спам
MadiyarM   (17.08.2013 12:10) [Материал]
Real_hp, +1

Спам
Aza   (17.08.2013 11:26) [Материал]
Ок, сделаю

Спам
Real_hp   (16.08.2013 23:38) [Материал]
Скрины бы поправить. А то они так и остались в тэге [IMG]

Спам
Werewolf   (15.08.2013 19:31) [Материал]
kul2

Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]

о, привет
Новинки
  • Файлы
  • Статьи
  • Новости

STALCER 3-D
Комментов: 4 | Загрузок: 87
Rise Of Antares
Комментов: 1 | Загрузок: 104
РЕЗНЯ 3D: Not city of sins
Комментов: 0 | Загрузок: 208
Vice Multi-Player 0.1 beta RC 8-4-9-5
Комментов: 0 | Загрузок: 77
GTA San Andreas Beta 1
Комментов: 1 | Загрузок: 261
Galaxy Force 2 FINAL
Комментов: 47 | Загрузок: 1
Haunting abandoned mansion (color mod)
Комментов: 0 | Загрузок: 199
Deadly game Resident Evil 7 DLC
Комментов: 0 | Загрузок: 290
GTA SA FLY
Комментов: 0 | Загрузок: 364
GTA SA Mobile: Definitive Edition
Комментов: 1 | Загрузок: 601

Открыт код Stalker Mobile 3D
Комментов: 0 | Просмотров: 12
ГДЕ JAVA- ТУСОВКА? - ТУТ!
Комментов: 0 | Просмотров: 210
Чат в Телеге
Комментов: 0 | Просмотров: 460
ODN Remake - скриншоты
Комментов: 1 | Просмотров: 416
O. D. N Remake
Комментов: 0 | Просмотров: 494
Новый сайт с мобильными загрузками - Oldfag
Комментов: 7 | Просмотров: 1812
Здорово и вечно 2 свободное человечество анонс номер два
Комментов: 9 | Просмотров: 1738
Случайный мод
Новая игра от EA для вашего телефона Ultimate Mortal Kombat 3.В игре вы играете за разных героев,приминяете много разных приемов, включая фаталити и другие.

Сделал перевод на русский язык Ultimate Mortal Kombat 3 на экран 640х360 используя другую версию.

5012 696 20 3.7
Статистика
Онлайн всего: 12
Гостей: 12
Пользователей: 0
Пользователи
Гости сайта

[ Нас сегодня посетили ]
При копировании материалов, желательно оставлять ссылку на этот сайт!
© Tommy_M 2009-2024 | Хостинг от uCoz