Custom Game Type

Тема в разделе "Общего назначения", создана пользователем Dr_Killjoy, 3 янв 2012.

  1. Dr_Killjoy

    Dr_Killjoy Заблокированные

    Представляю вашему вниманию мутатор, включающий в себя функции сразу нескольких других мелких мутаторов, вносящий тем самым больше удобства. К примеру, он убирает ограничение на максимальное количество игроков и максимальное количество монстров.
    Строка для батника: CustomGameTypeDK.MutCustomGameType.

    Текущая версия мутатора: 1.10.

    Настройка мутатора идет через конфиг, сейчас объясню его возможности:

    CG_MaxPlayers - макс количество игроков
    CG_bDestroyWeapons - уничтожать или нет оружия в начале волны (эта опция позволяет отключить "фичу" новых версий кф, изза которой все скинутое оружие в начале волны пропадает)
    CG_MinMonsters - минимальное количество монстров за волну
    CG_MaxMonsters - максимальное количество монстров за волну
    CG_KillScoreScale - размер награды за убийство мобов (по умолчанию стоит 1.0, если поставить 2.0 будет двойной, 0.5 - в два раза меньше)
    CG_SurviveScoreScale - размер награды выжившим в волне, изменяется таким же образом
    CG_ZTimeInterval - минимальное время между зед-таймами
    CG_ZedTimeSlomoScale - скорость игры во время зед тайма
    CG_ZEDTimeDuration - продолжительность зед тайма
    CG_ZedTimeChanceScale - шанс зед тайма (при увеличении числа, общий шанс зед тайм увеличивается)
    CG_EndGameBossClass - класс босса для последней волны (в обычном геймп тайп, начиная с какойто версии, он стал неконфигурабелен)
    CG_InitialCountdown - время до начала первой волны
    CG_bInitialShopOpen - если поставить на true, магазин будет открыт в перерыве перед 1 волной
    CG_bUseCustomPickupSettings - если поставлено на true, вы можете сами настроить количество респов оружия и патронов
    CG_NumWeaponPickups - максимальное количество оружия, респающегося на карте
    CG_NumAmmoPickups - максимальное количество патронов, респающееся на карте
    CG_bUseCustomNumPlayersMod - поставив на true, можно настроить количество зомби на душу человека
    CG_NumPlayersMod - коэффициэнт количества зомби на душу человека, именно на это число умножается число игроков, а потом и количество зомби в волне
    CG_NumPlayersModMinimal - множитель количества мобов при 1 игроке. действует если включен режим кастомных настроек зависимости количества мобов от количества игроков
    CG_FriendlyFireScale - процент дружественного огня, действует поверх других настроек, 1.0 означает 100%, 0.2 - 20%
    CG_SelfDamageScale - процент урона самому себе, изменяется так же как и дружественный огонь
    CG_ZedFriendyFireScale - настройка урона, наносимого мобами друг другу. Если хотите чтобы мобы убивали друг друга быстрее, увеличьте с 1.00 до более больших чисел, к примеру: 5.00 - урон в 5 раз выше стандартного.

    Была введена новая система настройки отрядов монстров, полностью заменяющая песочницу, и открывающая новые возможности.

    Самая главная черта - отсутствуют любые ограничения на количество классов мобов и отрядов, на количество волн. Понятно что их количество не бесконечно, но искусственное ограничение в 16 волн, 32 отряда и так далее, убрано.

    Первое, количество мобов настраивается таким способом:

    CG_Waves=(MonstersNum=20)
    CG_Waves=(MonstersNum=30)
    CG_Waves=(MonstersNum=35)
    CG_Waves=(MonstersNum=40)
    CG_Waves=(MonstersNum=50)
    CG_Waves=(MonstersNum=60)

    MonstersNum - количество мобов за волну, без модификаторов сложности и количества игроков. В следующих версиях будут добавлены новые параметры, в настройки волн, помимо MonstersNum.

    Сокращения мобов:

    Вы можете использовать сразу полное имя моба (например "KFChar.ZombieHusk"), а можете использовать сокращения. Добавляются сокращения следующим образом:


    CG_MonsterClassReplacement=(CurrentName="Husk",ReplacingName="KFChar.ZombieHusk")

    где CurrentName - сокращение, а ReplacingName - настоящее полное имя моба.

    Таких сокращений можно добавить сколько угодно.

    Способ заполнения отрядов:

    CG_MonsterClassReplacement=(CurrentName="Clot",ReplacingName="KFChar.ZombieClot")
    CG_MonsterClassReplacement=(CurrentName="Gorefast",ReplacingName="KFChar.ZombieGorefast")
    CG_MonsterClassReplacement=(CurrentName="Stalker",ReplacingName="KFChar.ZombieStalker")
    CG_Squads=(Wave=0,Monsters=((MonstersName="Clot",MonstersNum=4)))
    CG_Squads=(Wave=0,Monsters=((MonstersName="Clot",MonstersNum=5),(MonstersName="Gorefast",MonstersNum=3)))
    CG_Squads=(Wave=1,Monsters=((MonstersName="Stalker",MonstersNum=4)))

    CG_Squads - новый отряд мобов
    Wave - номер волны, в которую добавляется отряд мобов
    Monsters - массив из монстров, которые будут входить в этот отряд. Заполнять его следует такими конструкциями:
    (MonstersName="Clot",MonstersNum=4) через запятые.
    MonstersName - сокращенное название моба, который входит в отряд (можно использовать и полное имя, главное чтобы было правильно прописано)
    MonstersNum - количество мобов данного типа, в отряде. Теперь оно более не ограничено числом 9, можно поставить хоть 10, хоть 15 клотов если вы пожелаете.

    При написании сокращённых имён, или полных имён, РЕГИСТР НЕ УЧИТЫВАЕТСЯ.

    Функционал песочницы полностью заменён, с использованием более громоздкой записи, но все ограничения сняты. Далее перейдём к нововведениям...

    Спец. сквады: изначально были "фишкой" классических наборов отрядов мобов, теперь же перенесены в этот мутатор. Вы можете указать один "особый" отряд на каждую волну, который будет появляться в самом её начале, а так же выходить повторно, через заданное количество мобов. Обычно в эти "спец сквады" добавляются флэшки, чтобы сделать их выход менее хаотичным, а так же обеспечить их респ в начале волны. Из обычных отрядов их рекомендуется убрать и оставить только в спец. сквадах.

    Способ заполнения ini:

    CG_SpecialSquads=(Monsters=((MonstersName="Bloat",MonstersNum=1)),Frequency=40)
    CG_SpecialSquads=(Monsters=((MonstersName="Husk",MonstersNum=1)),Frequency=60)
    CG_SpecialSquads=(Monsters=((MonstersName="Husk",MonstersNum=1),(MonstersName="Siren",MonstersNum=1)),Frequency=70)
    CG_SpecialSquads=(Monsters=((MonstersName="Husk",MonstersNum=1),(MonstersName="Scrake",MonstersNum=1)),Frequency=80)
    CG_SpecialSquads=(Monsters=((MonstersName="FP",MonstersNum=1),(MonstersName="Husk",MonstersNum=1),(MonstersName="Siren",MonstersNum=1)),Frequency=100)
    CG_SpecialSquads=(Monsters=((MonstersName="FP",MonstersNum=2),(MonstersName="Husk",MonstersNum=1),(MonstersName="Siren",MonstersNum=2)),Frequency=120)

    Frequency - количество мобов, через которое выйдёт следующий спец. сквад

    Настройка "помощников" босса:

    CG_BossNumZedsStart=12
    CG_BossNumZedsPerPlayer=6
    CG_BossSquads=(Monsters=((MonstersName="Gorefast",MonstersNum=8),(MonstersName="Bloat",MonstersNum=4)))
    CG_BossSquads=(Monsters=((MonstersName="Scrake",MonstersNum=2),(MonstersName="Husk",MonstersNum=4)))
    CG_BossSquads=(Monsters=((MonstersName="FP",MonstersNum=2),(MonstersName="Siren",MonstersNum=8)))

    CG_BossNumZedsStart - количество помощников при 1 игроке
    CG_BossNumZedsPerPlayer - количество помощников, добавляемых за каждого нового игрока

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

    Ссылка 1
    Ссылка 2
    Временная ссылка
    https://yadi.sk/d/I5kFSVnViNZwc
    Архив распаковывать в папку с игрой.
     
    Stein, 3xzet, zxDENIxz и 11 другим нравится это.
  2. Deyrax

    Deyrax Бандит

    С SP не конфликтует ?
    CG_EndGameBossClass - это типа ивентовских патриархов можно ставить ?
     
  3. Dr_Killjoy

    Dr_Killjoy Заблокированные

    Конфликтовать не будет, однако если используется новая версия сп, в которой есть свой game type, то мутатор будет работать только если его прописать после сервер перкс.
    Ивентовских патриархов, да, можно. Если они вообще работают :biggrin:
     
  4. Deyrax

    Deyrax Бандит

    А как прописать ? Ну в смысле где ?
     
  5. Dr_Killjoy

    Dr_Killjoy Заблокированные

    В ини мутатора есть же.
     
  6. Deyrax

    Deyrax Бандит

    Mutator=CustomGameType ? Так ?
     
  7. Dr_Killjoy

    Dr_Killjoy Заблокированные

    CustomGameType.MutCustomGameType
     
  8. Atlan

    Atlan Капо

    А так чего то не робит:

    CG_EndGameBossClass - KFChar.ZombieBloat_xmas

    Только патрика можно?

    А не ,все норм....теперь только, кого бы в конец игры загнать :blush:
     
  9. McFlavvy

    McFlavvy Соучастник

    Я захожу, а у меня только

    Как сделать, чтоб все появилось?
     
  10. Dr_Killjoy

    Dr_Killjoy Заблокированные

  11. McFlavvy

    McFlavvy Соучастник

    Чета у меня вообще не че не рабит(
     
  12. Dr_Killjoy

    Dr_Killjoy Заблокированные

    Подробнее опиши проблему. Тут человек отписывался, у него всё работает.
     
  13. McFlavvy

    McFlavvy Соучастник

    Файлы кинул в System. Подключил в модификациях. (P.S. играю через гарену)
    Поменял только это.
    Ну оно не рабит. Оружие все равно пропадает в начале волны. И за мобов идет стандартное начисление денег. Вроде все правильно сделал.

    P.S.S. может быть он конфликтует с каким нибудь мутатором?
     
  14. Dr_Killjoy

    Dr_Killjoy Заблокированные

    У тебя перки не пропали, после того как подключил? Если перки не исчезли и при этом у тебя не сервер перкс, значит мутатор не заработал почемуто.
     
  15. Фрэгл

    Фрэгл Administrator

    Изменена ссылка в шапке темы.
     
  16. Dr_Killjoy

    Dr_Killjoy Заблокированные

    Посмотрел код, мутатор возможно не работает на ждущем сервере. На выделенке должен работать.
     
  17. McFlavvy

    McFlavvy Соучастник

    Нет, перки не пропали. И у меня ServerPerks V5 стоит.
    А можно еще как нибудь сделать чтоб оружие не пропадало?
     
  18. Dr_Killjoy

    Dr_Killjoy Заблокированные

    Для этого есть мутатор, но название не помню. Мой мутатор как бы для этого частично и сделан, но он на ждущем не работает, на дедике всё нормально. Если очень надо, попробую переписать чтобы работало вне зависимости от типа сервера.

    П.С. Даже если сервер ждущий, мутатор надо прописывать в строке мутаторов после сервер перкс 5, потому что там свой гейм тайп тоже есть.
     
  19. McFlavvy

    McFlavvy Соучастник

    Если время есть, то перепиши пожалуйста. :smile:
     
  20. Dr_Killjoy

    Dr_Killjoy Заблокированные

    Проверяй.

    Убрал условие на то что сервер должен быть выделенным. Должно заработать.