Создание группировки - Форум
Главная | Регистрация | Вход | Приветствую Вас | Турист| RSS
[Главная] [Мой Кабинет]
Участники · Правила форума · Поиск · RSS 17-Июля-2025 23:18:05
    Группировка месяца
    Активист» Долг» Свобода» Наемники» Сталкеры» Монолит» Лидеры по активности
Нету

Лидер:Нету
...

...
Военизированная группировка, отличающаяся строгой дисциплиной: её члены живут фактически по уставу. Только представители "Долга" не торгуют уникальными порождениями Зоны с внешним миром: по слухам, все найденные этими людьми артефакты сдаются учёным. Каждый "долговец" считает своей главной целью защиту мира от воздействия Зоны. Большинство операций группировки связаны с истреблением монстров, поэтому рейды "Долга" нередко избавляют рядовых сталкеров от многих насущных проблем.

Лидер:None
Количество людей:None
Локаций под контролем:None
Анархисты и сорвиголовы, объявившие себя борцами за свободу на территории Зоны, и поэтому постоянно конфликтующие с армейскими подразделениями, военными сталкерами и группировкой "Долг". "Свободовцы" считают, что информацию о происходящем в Зоне нельзя скрывать от человечества, таким образом оспаривая монополию правительственных организаций на владение местными тайнами и чудесами.

Лидер:None
Количество людей:None
Локаций под контролем:None
Самая загадочная и скрытная группировка в Зоне, в существование которой многие даже не верят. Кое-кто постоянно пользуется услугами наёмников: профессионалы в своей области, они быстро расправятся с любым сталкером и даже могут полностью ликвидировать небольшую группировку. За свои услуги, судя по всему, берут немалые суммы в деньгах или артефактах. Расположение базы данной группировки до сих пор остаётся загадкой; очевидно, она находится где-то в глубине Зоны.

Лидер:None
Количество людей:None
Локаций под контролем:None
Сталкеры, исследующие Зону в одиночку. Таких большинство, поскольку членство в группировке отбирает драгоценное время, тем самым уменьшая заработок; кроме того, некоторые просто по натуре своей склонны к одиночеству и независимости.

Лидер:None
Количество людей:None
Локаций под контролем:None
Содиозная группировка, засевшая в центре Зоны и не подпускающая никого. "Монолит" проявляет ярую вражду по отношению ко всем остальным сталкерам, как к одиночкам, так и представителям различных группировок. Немногословны, не идут на контакты и компромиссы, отличаются фанатичной приверженностью к тому, что находится в центре Зоны. Неизвестно, чем они полагают это "нечто", но их поклонение уже стало практически культово-религиозным обрядом, обязательным для всех членов группировки. Но, что удивительно, это обязательство не в виде приказа, а добровольно принято всеми монолитовцами.

Лидер:None
Количество людей:None
Локаций под контролем:None
  • Страница 1 из 1
  • 1
Создание группировки
KROKДата: Сб, 18-Декабря-2010, 23:13:33 | Сообщение # 1
Безымянный
Сообщений: 18
Сегодня мы создадим новую группировку. Назовем её, скажем, "Ветер". Не суть важно.
Практика
Базовый уровень

1. Для начала в game_relations.ltx и в таблицу отношений группировок в конце и в заголовке добавляем название своей группировки и коэффициенты отношений к ней у других группировок. Также, не забываем прописать её собственное отношение к другим группировкам:
[communities_relations]
;|actor |act_dol|act_fre|stalker|monolit|militar|killer |ecolog |dolg |freedom|bandit |zombied|strange|trader|arena_enemy|wind|
;=================================================================================================================================
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

wind = 0, 0, 0, 0, -5000, -5000, -5000, 0, 0, 0, -5000, -5000, 0, 0, -5000, 0

Также, изменим эту строку, добавив туда имя и номер группировки:
;названия группировок
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, wind, 18,

Отсчет идет построчно начиная сверху. Хотя есть небольшой нюанс. У первых трех строк - нумерация начинается с нуля, с остальных группировок она идет как надо. Для wind выставили 18, так как мы эту группировку отделили от других.

Далее, в разделе [communities_sympathy] в конце добавляем свою группировку и коэффициент "впечатлительности" - чем он меньше, тем меньше отношение группировки будет меняться к вам в целом:
[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
d olg = 0.1
freedom = 0.1
bandit = 0.0
zombied = 0.0
trader = 0.0
stranger = 0.0
arena_enemy = 0.0
wind = 0.0

2. После этого в файле death_manager.script ищем строку local community_list и в скобках добавляем название своей группировки:
function init_drop_settings()
local community_list = { "stalker", "dolg", "freedom", "bandit", "military", "zombied", "ecolog", "killer", "monolith",
"arena_enemy", "actor_dolg", "wind" }

3. В файле death_items_by_communities.ltx пишем [x]:stalker (вместо x - название вашей группировки):
[...]
af_dummy_spring = 0
af_fuzz_kolobok = 0

;Еда
vodka = 0

[arena_enemy]
[actor_dolg]

[wind]: stalker
bread = 0
kolbasa = 0
vodka = 0
energy_drink = 0.3

4. Если предусматривается респавн бойцов новой группировки, в se_respawn.script прописываем в local simMaxCount = { после строчек с зомбированными сталкерами строку:
wind_novice = 20, wind_regular = 20, wind_veteran = 20, wind_master = 6,

5. Чтобы при убийстве непися новой группировки игра не вылетала в xr_statistic.script,

после строки:
zombied_novice = 1, zombied_experienced = 2, zombied_veteran = 3, zombied_master = 4,

пишем
dark_stalker_novice = 1, dark_stalker_experienced = 2, dark_stalker_veteran = 3, dark_stalker_master = 4,

6. Ну а в character_desc_x.xml выбираем любого NPC (или группу) и меняем группировку на свою:
<!---esc_wolf--->
<specific_character id="esc_wolf" team_default = "1">
<name>esc_wolf_name</name>
<icon>ui_npc_u_stalker_neytral_balon_1</icon>
<bio>esc_wolf_bio</bio>

<class>esc_wolf</class>
<community>wind</community>
[...]

7. Чтобы у персонажа в графе "Группировка" отображалось не "wind", а "Ветер", зарегистрируем соответствующую строку в файле string_table_general.xml:
<?xml version="1.0" encoding="windows-1251" ?>
<string_table>
<string id="wind">
<text>Ветер</text>
</string>
<string id="actor">
<text>Одиночка</text>
</string>
[...]

8. Существует возможность создать для нашей новой группировки места, где они будут ходить (*_terrain брать из m_stalker.ltx):

То есть, к примеру, существует секция:
[stalker_terrain]
255,000,255,255
008,001,255,255 ;Разрешено ходить по опасным местам на баре
012,001,255,255 ;Разрешено ходить по опасным местам на Милитари

Тогда можно создать новую, по аналогии:
[wind_terrain]
255,000,255,255
008,001,255,255 ;Разрешено ходить по опасным местам на баре
012,001,255,255 ;Разрешено ходить по опасным местам на Милитари
010,001,255,255 ;Разрешено ходить по опасным местам на янтаре

Здесь, очевидно, указаны координаты самого уровня. Для каждого уровня существует своя начальная координата.
Продвинутый уровень

Такой метод достаточно примитивен. Это не полноценная группировка. Нам нужны соответствующие диалоги, возможность получения квестов и вступления в группировку, уникальные NPC.
Квесты

Добавим квесты, которые нужно выполнить для группировки. Пока - простые поручения распространенных типов.

Во-первых, пропишите в список диалогов персонажа следующие строки:
<actor_dialog>[что-нибудь]_dialog</actor_dialog>
<actor_dialog>[что-нибудь]_reward</actor_dialog>

Примеры названий: tm_trader_dialog, tm_wolf_dialog...

Внимание! Метод не проверен.

Этим мы добавили ему ветку диалога "Есть работа?", а также ветку для награды за квест/отказа от него. Теперь зарегистрируем в task_manager.ltx набор новых заданий.

    [...]

    ;--------Wind------------------------
    ;----------Kill Stalker----
    wind_kill_stalker
    ;----------Find Item----
    wind_find_item

    [...]

    ;tasks for Wind

    [wind_find_item]
    type = find_item
    community = actor
    text = [ссылка на текст с рассказом заказчика о задании]
    description = [ссылка на текст с описанием задания]
    parent = [имя NPC-заказчика]
    target = scientific_outfit
    reward_money = 5000
    reward_reputation = +5
    reward_rank = 4
    reward_item = wpn_sig_m1
    time = 86400

    [wind_kill_stalker]
    type = kill_stalker
    community = actor
    text = [ссылка на текст с рассказом заказчика о задании]
    description = [ссылка на текст с описанием задания]
    parent = [имя NPC-заказчика]
    target = sim_stalker_master_master
    reward_money = 4000
    reward_reputation = +5
    reward_rank = 9
    reward_item = ammo_5.56x45_ap, ammo_5.56x45_ap, ammo_5.56x45_ap
    time = 86400

    Не забудьте прописать описания заданий в текстовые массивы. Подробнее о редактировании task_manager.ltx читайте в уроке, посвященном однотипным квестам.

    Да, и зарегистрируйте сами ветки диалогов в файле dialogs.xml. Вот пример того, как это сделано для заданий "Долга":
    <dialog id="tm_dolg_dialog" priority="-1">
    <init_func>task_manager.init_dolg_task_dialog</init_func>
    </dialog>
    <dialog id="tm_dolg_reward" priority="0">
    <init_func>task_manager.init_dolg_reward_dialog</init_func>
    <precondition>task_manager.has_active_vendor_task</precondition>
    </dialog>

    Соответственно, пройдем туда, куда указывает строка task_manager.init_dolg_task_dialog - в task_manager.script:
    function init_dolg_task_dialog(dlg)
    get_random_task():init_task_dialog(dlg, "dolg")

    По аналогии делаем и с нашим "Ветром".
    Вступление в группировку

    Реализуем возможность вступления в группировку.

    Прописываем в dialogs.script такие action'ы:
    -----------------------------------------------------------------------------------
    -- Community
    -----------------------------------------------------------------------------------

    [...]

    function actor_set_wind (actor, npc)
    printf ("ACTOR NOW IN WIND COMMUNITY"
    if db.actor then
    db.actor:set_character_community ("actor_wind", 0, 0)
    end
    return true
    end

    После чего создадим диалог, и сделаем в нем фразу с action'ом вида <action>actor_set_wind</action>. Советую изучить урок, посвященный диалогам.
    Новые NPC

    Лучше всего всё вышеприведенное повесить на нового, уникального персонажа. Способ его спавна описан здесь.

 
    • Страница 1 из 1
    • 1
    Поиск:

    Design by:
    Guenplenтм, with the participation of Orlenok Design Studio ® 2025
    Сайт управляется системой uCoz