Воскресенье, 22.09.2024, 22:29
Приветствую Вас Гость | RSS
F.R.O.N.T.
Главная | Статьи | Регистрация | Вход
Меню сайта
Все новые статьи находяться на форуме!!! Видеть их могут только рарегистрированые пользователи...
Категории каталога
Мои статьи [28] Сценарии [0]
Пишите сюда свои сцинарии
Модострой [152]
Статьи по созданию модов
КАК СНЯТЬ ФИЛЬМ??? [0]
Статьи о том как снять фильмы
Мини-чат
Наш опрос
Оцените портал...
1. Отлично
2. Хорошо
3. Ужасно
4. Неплохо
5. Плохо
Всего ответов: 78
Главная » Статьи » Модострой

Живой Гордон Фримен
Что правил:

1) gamedata\config\gameplay\gordon_freeman_ressurect.xml (новый файл)

<xml>
<specific_character id="freeman_resurrect" team_default = "1">
<name>Гордон Фримен</name>
<icon>ui_npc_u_green_stalker_7</icon>
<map_icon x="0" y="0"></map_icon>
<bio>Попытка воскресить Фримена.</bio>

<class>gfreeman_resurrect</class>
<community>stalker</community> <terrain_sect>stalker_terrain</terrain_sect>

<rank>476</rank>
<reputation>9</reputation>

<snd_config>characters_voice\human_01\newbie</snd_config>
<crouch_type>0</crouch_type>

<visual>actors\novice\green_stalker_7</visual>
<supplies>
[spawn] \n
wpn_desert_eagle \n
ammo_11.43x23_fmj \n
wpn_ak74u \n
ammo_5.45x39_fmj = 1 \n
#include "gameplay\character_items.xml" \n
#include "gameplay\character_drugs.xml" \n
#include "gameplay\character_food.xml"
</supplies>

#include "gameplay\character_criticals_5.xml"
#include "gameplay\dialogs.xml"
<start_dialog>hello_dialog</start_dialog>
</specific_character>
</xml>

коммент: Здесь, очевидно, имя надо вбивать в текстовый массив, как у всех остальных - в такой редакции файла оно не отображается в игре;
<icon>ui_npc_u_green_stalker_7</icon> - портрет Фримана в диалоге, <visual>actors\novice\green_stalker_7</visual> - его моделька. Ранг и репутацию взял из примера, какие есть, такие есть, и хрен бы с ними, хотя в идеале Фримен должен бы быть мастером.

2) gamedata\config\gameplay\npc_profile.xml (начало файла)



<xml>
<!-- НОВЫЕ ПРОФИЛЯ -->
<character id="actor">
<class>Actor</class>
<specific_character>actor</specific_character>
</character>
<character id="default">
<class>Stalker_general</class>
</character>
<character id="freeman_resurrect">
<class>gfreeman_resurrect</class>
<specific_character>freeman_resurrect</specific_character>
</character>
<!-- Escape -->
... и т.д., и т.п. ...

3) gamedata\config\system.ltx, секция [profiles]:

[profiles]
;список xml файлов, содержащих профили сталкеров и торговцев
files = npc_profile
;список xml файлов, содержащих описания конкретных сталкеров и торговцев
specific_characters_files = gordon_freeman_ressurect, character_desc_general, character_desc_simulation,character_desc_escape, character_desc_garbage, character_desc_agroprom, character_desc_darkvalley, character_desc_deadcity, character_desc_bar, character_desc_yantar, character_desc_military, character_desc_radar, character_desc_pripyat, character_desc_aes, character_desc_kishka, character_desc_sarcofag

4) gamedata\config\creatures\spawn_sections.ltx тупо дописал в самом начале:

[freeman_resurrect_spawn]:stalker
$spawn = "respawn\freeman_resurrect_spawn"
character_profile = freeman_resurrect
spec_rank = veteran
community = stalker

5) Собственно спаун. Вариант 3.2 из инструкции. В gamedata\scripts\bind_stalker.script дописал в функцию function actor_binder:net_spawn(data):

----------------------------------------------------------------------------------------------------------------------
function actor_binder:net_spawn(data)
printf("actor net spawn")

level.show_indicators()

self.bCheckStart = true
self.weapon_hide = false -- спрятано или нет оружие при разговоре.
weapon_hide = false -- устанавливаем глобальный дефолтовый флаг.

if object_binder.net_spawn(self,data) == false then
return false
end

db.add_actor(self.object)

if self.st.disable_input_time == nil then
level.enable_input()
end

self.weather_manager:reset()
-- game_stats.initialize ()

if(actor_stats.add_to_ranking~=nil)then
actor_stats.add_to_ranking(self.object:id())
end

if xr_logic.pstor_retrieve(db.actor, "first_run", 0)==0 then
alife():create("freeman_resurrect_spawn",vector():set(-240.858,-20.029,-150.148),14955,47)
xr_logic.pstor_store(db.actor, "first_run", 1)
end

--' Загружаем настройки дропа
death_manager.init_drop_settings()

return true
end
----------------------------------------------------------------------------------------------------------------------

Коммент: не совсем понимаю все эти параметры, но вроде прокатило. Фриман появился на веранде домика возле бункера Сидоровича, который за оргадой поселка. На наличие побочных эффектов не проверял. В первый раз пытался Фримана заспавниь на дикой территории был вылет при переходе на свалку, правда я тогда сильно накосячил в файлах - resurrect у меня в половине мест писалось ressurect

Изменение трупа: gamedata\config\gameplay\character_desc_bar.xml изменил в секциях <icon> и <visual> green_stalker_7 на green_stalker_2:

<icon>ui_npc_u_green_stalker_2</icon>
<visual>actors\novice\green_stalker_2</visual>

циферку брал от балды, можно забить любую другую иконку и модельку. green_stalker_2 оказался кренделем в маске из чулка. Почему бы и нет. Ну, про имя тушки я уже писал.
Если побить умело, то можно найти и модельку и иконку Фримена


Категория: Модострой | Добавил: front (30.06.2008)
Просмотров: 1336 | Рейтинг: 0.0/0 |
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
Форма входа
Поиск
счетчик посещенийсчетчик посещений
Друзья сайта
 
Фан сайт игры S.T.A.L.K.E.R.

Бар_У_границы_Зоны_бар_настоящего_сталкера!

Статистика

На портале: 1
Новичков: 1
Участников: 0

Copyright MyCorp © 2024