|
vladKiler
Среда, 07.09.2011, 20:04 | Сообщение # 1
Статус: |
|
Зевака: |
|
Сообщений: |
19 |
Награды: |
0 |
Регистрация: |
07.09.2011 |
|
Для начала нужно распаковать игру анпакером.
После распаковки идём в следующие директории и ищем следующие файлы: info_x.xml ---> configs\gameplay\ (где "x" название локации на которой хотим получить достижение например jupiter) этот файл нужен для просмотра списка квестов на локации, зачем нам это узнаете позже. achievements.ltx ---> configs\misc\ st_achievement.xml ---> configs\text\rus\ ui_actor_achivments.xml ---> configs\ui\textures_descr\ xr_statistic.script ---> scripts\ ui_actor_achivments.dds ---> textures\ui\ xr_conditions.script ---> scripts\ И так, приступаем к работе.
Откроем файл achievements.ltx и ищем такую вот запись:
[achievements] pioneer mutant_hunter detective one_of_the_lads kingpin herald_of_justice seeker battle_systems_master high_tech_master skilled_s talker leader diplomat research_man friend_of_duty friend_of_freedom balance_advocate wealthy keeper_of_secrets marked_by_zone inf ormation_dealer friend_of_stalkers
Добавим в конце название_достижения_на_английском. Пример:
[achievements] pioneer mutant_hunter detective one_of_the_lads kingpin herald_of_justice seeker battle_systems_master high_tech_master skilled_s talker leader diplomat research_man friend_of_duty friend_of_freedom balance_advocate wealthy keeper_of_secrets marked_by_zone inf ormation_dealer friend_of_stalkers all_stalkers_your_friend
Идём в конец файла и добавляем следующее:
["Название_достижения_на_английском_без_кавычек"] icon = ui_inGame2_имя_иконки_на_английском hint = st_sp_achievement_22_hint <--- То, что будет выводиться в КПК при наведении на иконку достижения (надо оставлять так же меняя только числа, чтоб они шли по порядку) name = st_sp_achievement_22_name <--- Имя достижения desc = st_sp_achievement_22_descr <--- Описание достижения functor = xr_statistic.название_достижения_на_английском_functor <--- функция для получения нашего достижения
закрываем сохраняя изменения в файле
Далее откроем файл st_achievement.xml и добавим между:
<string id="st_sp_achievement_21_name"> <text>Друг сталкеров</text> </string>
и
<string id="st_sp_achievement_1_hint"> <text>Совокупность новых данных позволила профессорам Герману и Озёрскому синтезировать в условиях Зоны экспериментальный анабиотик.</text> </string>
Следующее: <string id="st_sp_achievement_22_hint"> <text>Ваш текст который будет высвечиваться в КПК при наведении мышки на иконку достижения.</text> </string> <string id="st_sp_achievement_22_descr"> <text>Полное описание достижения.</text> </string> <string id="st_sp_achievement_22_name"> <text>Имя достижения</text> </string>
Закрываем с подтверждением на сохранение изменений
Открываем xr_statistic.script идём в самый конец и добавляем следующее: function название_вашей_функции() if not has_alife_info("пишем_что_хотим_на_английсокм") then <--- проверка на раннее получение этого достижения if has_alife_info("название_квеста_или_действия") <--- квест или действие после которого будет получено достижение and has_alife_info("название_квеста_или_действия") <--- эта функция если квестов несколько db.actor:give_info_portion("пишем_что_писали_в_проверке_на_получение_ранее_достижения") news_manager.send_tip(db.actor, "st_ach_название_вашего_достижения_на_английском", nil, "название_вашего_достижения_на_английском", nil, nil) xr_effects.inc_faction_goodwill_to_actor(db.actor, nil, {"stalker", 100}) <--- прибавление репутации сталкеров при получении данного достижения (если - то убавление), можно вписать любую другую группировку (использовать несколько команд если хотите прибавить или убавить репутацию у нескольких группировок) end end return has_alife_info("пишем_что_писали_в_проверке_на_получение_ранее_достижения") end
Закрываем с подтверждением на сохранение изменений.
Откроем xr_conditions.script найдём:
friend_of_stalkers_functor = xr_statistic.friend_of_stalkers_functor
и после пишем:
название_вашей_функции = xr_statistic.название_вашей_функции
Закрываем с подтверждением на сохранение изменений.
Рисуем в ui_actor_achivments.dds иконку для нашего достижения (можно взять и старую).
Открываем файл ui_actor_achivments.xml и добавляем там:
<texture id="ui_inGame2_название_вашей_иконки" x="0" y="0" width="121" height="121" />
Если рисовали собственную иконку то вписываем её координаты (по x и y осям), если решили взять уже имеющуюся то вписывайте её координаты (координаты определяются по левому верхнему углу иконки достижения) координаты можно посмотреть через WTV (Windows Texture Viewer) Удачной игры
Сообщение отредактировал vladKiler - Среда, 07.09.2011, 20:09
|
|
Среда, 07.09.2011, 20:04
|
Статус: |
|
Сообщений: |
666 |
Регистрация: |
07.09.2011 |
|
|
|
|
|
supei-sa
Понедельник, 19.09.2011, 15:17 | Сообщение # 2
|
Понедельник, 19.09.2011, 15:17
|
Статус: |
|
Сообщений: |
666 |
Регистрация: |
25.10.2010 |
|
|
|
|