Создание новой группировки
|
|
front | Дата: Суббота, 20.11.2010, 17:58 | Сообщение # 1 |
Admin
Группа: Администраторы
Сообщений: 152
Статус: Оффлайн
| Автор: Byurrer Создание новых группировок Для создания новой группировки нам понадобятся файлы: game_relations.ltx – регистрация группировки в строке с другими, таблице отношений и симпатии death_manager.script точно не знаю для чего. Наверное чтоб объекты спавнились в трупах этой группировки death_items_by_communities.ltx – для спавна предметов в трупах НПС новой группировки se_respawn.script – респавн бойцов новой группировки xr_statistic.script - статистика character_desk_x.xml (вместо х название локации, к примеру escape-кордон) dialogs.script – для вступление в нашу группировку string_table_general.xml – регистрация группировки не как anarhist а как Анархист dialogs_escape.xml – для вставки функции активации вступления в новую группировку 1. Определитесь, как вы хотите назвать свою группировку ну, к примеру, Анархисты. 2. В файле game_relations.ltx необходимо добавить свою группировку: А) В таблицу отношений: Code communities_relations
;|actor |act_dol|act_fre|stalker|monolit|militar|killer |ecolog |dolg |freedom|bandit |zombied|strange|trader|arena_enemy| anarhist | ;===== actor = 0, 0, 0, 0, -5000, -5000, -5000, 0, 0, 0, -5000, -5000, 0, 0, -5000, 0 actor_dolg = 0, 0, 0, 0, -5000, -500, -5000, 5000, 600, -5000, -5000, -5000, 0, 0, -5000 actor_freedom = 0, 0, 0, 0, -5000, -5000, -5000, -1500, -5000, 5000, 0, -5000, 0, 0, -5000, 0
stalker = 0, 0, 0, 0, -5000, -5000, -5000, 0, 0, 0, -5000, -5000, 0, 0, -5000, 0 monolith = -5000, -5000, -5000, -5000, 5000, -5000, -5000, -5000, -5000, -5000, 5000, 5000, -5000, 0, -5000, 0 military = -5000, -5000, -5000, -5000, -5000, 5000, -5000, 0, -5000, -5000, -5000, -5000, 0, 0, -5000, 0 killer = -5000, -5000, 0, -5000, -5000, -5000, 5000, -5000, -5000, -5000, 0, -5000, -5000, 0, -5000, 0 ecolog = 0, 600, -5000, 0, -5000, 1000, -5000, 5000, 500, -5000, -500, -5000, 0, 0, 0, 0 dolg = 0, 600, -5000, 0, -5000, -500, -5000, 5000, 5000, -5000, -5000, -5000, 0, 0, 0, 0 freedom = 0, -5000, 600, 0, -5000, -5000, -5000, -1500, -5000, 5000, 0, -5000, 0, 0, 0, 0 bandit = -5000, -5000, 0, -5000, -5000, -500, 0, -5000, -5000, 0, 0, -5000, -5000, 0, -5000, 0 zombied = -5000, -5000, -5000, -5000, 5000, -5000, -5000, -5000, -5000, -5000, -5000, 5000, -5000, 0, -5000, 0 stranger = 0, 0, 0, 0, -5000, -5000, -5000, 0, 0, 0, -500, -5000, 0, 0, 0, 0 trader = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 arena_enemy = -5000, -5000, -5000, -5000, -5000, -5000, 0, 0, 0, -5000, -5000, 0, 0, 0, 0, 0
anarhist = 0, 0, 0, 0, -5000, -5000, -5000, 0, 0, 0, -5000, -5000, 0, 0, -5000, 0, 600 (если в таблице не будет указано отношение т. е. в ячейке на пересечении группировок то она определяется как 0 – нейтралы!)
|
|
| |
front | Дата: Суббота, 20.11.2010, 17:59 | Сообщение # 2 |
Admin
Группа: Администраторы
Сообщений: 152
Статус: Оффлайн
| б) также в строчку перед таблицей communities: Code ;названия группировок communities = actor, 0, actor_dolg, 1, actor_freedom, 2, stalker, 5, monolith, 6, military, 7, killer, 8, ecolog, 9, dolg, 10, freedom, 11, bandit, 12, zombied, 13, stranger, 14, trader, 15, arena_enemy, 16, anarhist, 18, в) В разделе communities_sympathy добавить: Code communities_sympathy actor = 0.0 actor_dolg = 0.0 actor_freedom = 0.0 stalker = 0.0 monolith = 0.0 military = 0.0 killer = 0.0 ecolog = 0.0 dolg = 0.1 freedom = 0.1 bandit = 0.0 zombied = 0.0 trader = 0.0 stranger = 0.0 arena_enemy = 0.0 anarhist = 0.0 3) В death_manager.script ищем строку local community_list и добавляем свою группировкув скобки: Code function init_drop_settings() local community_list = { "stalker", "dolg", "freedom", "bandit", "military", "zombied", "ecolog", "killer", "monolith", "arena_enemy", "actor_dolg", " anarhist " }
|
|
| |
front | Дата: Суббота, 20.11.2010, 18:00 | Сообщение # 3 |
Admin
Группа: Администраторы
Сообщений: 152
Статус: Оффлайн
| 4) В файле death_items_by_communities.ltx пишем: Code af_dummy_spring = 0 af_fuzz_kolobok = 0
;Еда vodka = 0
arena_enemy actor_dolg
[anarhist] : stalker bread = 0 kolbasa = 0 vodka = 0 energy_drink = 0.3 5) Для респавна бойцов группировки в se_respawn.script пишем local Code simMaxCount = {после зомби: anarhist_novice = 20, anarhist_regular = 20, anarhist_veteran = 20, anarhist_master = 6, 6) Чтобы при убийстве НПС новой группировки игра не вылетала в xr_statistic.script после строчек с зомби: Code zombied_novice = 1, zombied_experienced = 2, zombied_veteran = 3, zombied_master = 4, пишем: anarhist _stalker_novice = 1, anarhist _stalker_experienced = 2, anarhist _stalker_veteran = 3, anarhist _stalker_master = 4, Далее ищем строчку function getNpcType(npc) и после: Code elseif npc:character_community() == "zombied" then
community = "zombied"
добавляем:
elseif npc:character_community() == "anarhist" then
community = "anarhist" 7) Теперь в character_desk_x.xml (вместо х название локации, к примеру escape-кордон) выбираем любого НПС и в разделе: <community>stalker</community> --группировка к которой относиться НПС (в данном случае сталкер) поменять на: Code <community>anarhist</community> 7) Чтобы группировка отображалась как Анархист зарегистрируем ее в в файле string_table_general.xml: Code <string_table> <string id="anarhist"> <text>Анархисты</text> </string> 8) Ну и конечно же вступление в нашу новую группировку! А) Открываем game_relations.ltx и добавляем следующее:
|
|
| |
front | Дата: Суббота, 20.11.2010, 18:01 | Сообщение # 4 |
Admin
Группа: Администраторы
Сообщений: 152
Статус: Оффлайн
| В названия группировок: Code communities = actor, 0, actor_dolg, 1, actor_freedom, 2, stalker, 5, monolith, 6, military, 7, killer, 8, ecolog, 9, dolg, 10, freedom, 11, bandit, 12, zombied, 13, stranger, 14, trader, 15, arena_enemy, 16, anarhist, 18, actor_anarhist, 19, и в таблицу отношений: Code communities_relations
;|actor |act_dol|act_fre|stalker|monolit|militar|killer |ecolog |dolg |freedom|bandit |zombied|strange|trader|arena_enemy| anarhist | actor_anarhist| ;===== actor = 0, 0, 0, 0, -5000, -5000, -5000, 0, 0, 0, -5000, -5000, 0, 0, -5000, 0 actor_dolg = 0, 0, 0, 0, -5000, -500, -5000, 5000, 600, -5000, -5000, -5000, 0, 0, -5000 actor_freedom = 0, 0, 0, 0, -5000, -5000, -5000, -1500, -5000, 5000, 0, -5000, 0, 0, -5000, 0
stalker = 0, 0, 0, 0, -5000, -5000, -5000, 0, 0, 0, -5000, -5000, 0, 0, -5000, 0 monolith = -5000, -5000, -5000, -5000, 5000, -5000, -5000, -5000, -5000, -5000, 5000, 5000, -5000, 0, -5000, 0 military = -5000, -5000, -5000, -5000, -5000, 5000, -5000, 0, -5000, -5000, -5000, -5000, 0, 0, -5000, 0 killer = -5000, -5000, 0, -5000, -5000, -5000, 5000, -5000, -5000, -5000, 0, -5000, -5000, 0, -5000, 0 ecolog = 0, 600, -5000, 0, -5000, 1000, -5000, 5000, 500, -5000, -500, -5000, 0, 0, 0, 0 dolg = 0, 600, -5000, 0, -5000, -500, -5000, 5000, 5000, -5000, -5000, -5000, 0, 0, 0, 0 freedom = 0, -5000, 600, 0, -5000, -5000, -5000, -1500, -5000, 5000, 0, -5000, 0, 0, 0, 0 bandit = -5000, -5000, 0, -5000, -5000, -500, 0, -5000, -5000, 0, 0, -5000, -5000, 0, -5000, 0 zombied = -5000, -5000, -5000, -5000, 5000, -5000, -5000, -5000, -5000, -5000, -5000, 5000, -5000, 0, -5000, 0 stranger = 0, 0, 0, 0, -5000, -5000, -5000, 0, 0, 0, -500, -5000, 0, 0, 0, 0 trader = 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 arena_enemy = -5000, -5000, -5000, -5000, -5000, -5000, 0, 0, 0, -5000, -5000, 0, 0, 0, 0, 0
anarhist = 0, 0, 0, 0, -5000, -5000, -5000, 0, 0, 0, -5000, -5000, 0, 0, -5000, 0, 600
actor_anarhist = 0, 0, 0, 0, -5000, -5000, -5000, 0, 0, 0, -5000, -5000, 0, 0, -5000, 0, 600, 600 в строчку communities_sympathy добавить: Code communities_sympathy actor = 0.0 actor_dolg = 0.0 actor_freedom = 0.0 stalker = 0.0 monolith = 0.0 military = 0.0 killer = 0.0 ecolog = 0.0 dolg = 0.1 freedom = 0.1 bandit = 0.0 zombied = 0.0 trader = 0.0 stranger = 0.0 arena_enemy = 0.0 anarhist = 0.0
actor_anarhist = 0.0
|
|
| |
front | Дата: Суббота, 20.11.2010, 18:01 | Сообщение # 5 |
Admin
Группа: Администраторы
Сообщений: 152
Статус: Оффлайн
| в) В death_manager.script ищем строку local community_list и добавляем Code local community_list = { "stalker", "dolg", "freedom", "bandit", "military", "zombied", "ecolog", "killer", "monolith", "arena_enemy", "actor_dolg", " anarhist ", " actor_anarhist "} г) В dialogs.script в раздел: -- Community Добавляем: function actor_set_anarhist (actor, npc) –это функция вступления в нашу новую группировку Code printf ("ACTOR NOW IN [anarhist] COMMUNITY")
if db.actor then
db.actor:set_character_community ("actor_anarhist", 0, 0)
end
return true
end Ну и осталось активировать данную функцию! Активация будет происходить через диалог следующим образом: Если мы хотим активировать на кордоне то выбираем dialogs_escape.xml и ищем там любой диалог (конечно лучше создать свой диалог специально для вступления но покажу на примере любого другого чтоб было понятно) к примеру вот: Code <phrase id="3">
<text>escape_trader_start_dialog_3</text>
<action>dialogs.actor_set_anarhist</action>
<next>31</next>
<next>32</next>
</phrase> И после того как Сидорович скажет: Ну как мы с тобой поступим вы будете в группировке Анархист!
|
|
| |
Бродяга | Дата: Вторник, 07.12.2010, 17:57 | Сообщение # 6 |
Админ
Группа: Администраторы
Сообщений: 10
Статус: Оффлайн
| Группировка полностью работает я по этому уроку делал
|
|
| |