Настройка песочницы

Тема в разделе "Dedicated Server", создана пользователем key, 3 май 2011.

  1. Flame

    Flame -Заслуженый кодер форума-

    Это новые строчки? Тогда внимательно читать начиная отсюда
    Если же добавлять хасков в уже существующие, то должны появится...
     
  2. kok-s

    kok-s Консильери

    Ребят можно ли как нибудь увеличить MonsterClasses???? Может какие символы прокатывают.
     
  3. Speller

    Speller Новенький

    Уважаемые комрады, подскажите как в песочнице выставить вместо одного Петра двоих/троих?
     
  4. Dr_Killjoy

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

    По поводу расширения кол-ва классов мобов появилась идея. Но для ее реализации надобно модифицировать гейм тайп.

    В песочнице никак.

    Небольшой пример как с помощью гейм тайп расширить количество респавненных монстров:

    Если у вас стоит нестандартный гейм тайп, делаем следующее:

    добавляем новую функцию:
    final function class<KFMonster> GetReplacement( class<KFMonster> M )
    {
    if ( FRand() < 0.5 ) // задаём условие замены моба, это уже зависит от ваших нужд
    {
    if( Class<ZombieClot>(M)!=None )
    return class'ZombieShiver';
    }

    return M;
    }

    заменяем функцию -

    function LoadUpMonsterList()
    {
    local int i,j,q,c,n;
    local Class<KFMonster> MC;
    local string S,ID;
    local bool bInitSq;
    local array<IMClassList> InitMList;

    //Log("Loading up monster classes...",'Init');
    for( i=0; i<MonsterClasses.Length; i++ )
    {
    if( MonsterClasses.MClassName=="" || MonsterClasses.MID=="" )
    Continue;
    MC = Class<KFMonster>(DynamicLoadObject(MonsterClasses.MClassName,Class'Class'));
    if( MC==None )
    Continue;
    InitMList.Length = j+1;
    InitMList[j].MClass = GetReplacement(MC); // заменяем класс моба с помощью новой функции
    InitMList[j].ID = MonsterClasses.MID;
    j++;
    }
    //Log("Got"@j@"monsters. Loading up monster squads...",'Init');
    for( i=0; i<MonsterSquad.Length; i++ )
    {
    S = MonsterSquad;
    if( S=="" )
    Continue;
    bInitSq = False;
    n = 0;
    While( S!="" )
    {
    q = int(Left(S,1));
    ID = Mid(S,1,1);
    S = Mid(S,2);
    MC = None;
    for( j=0; j<InitMList.Length; j++ )
    {
    if( InitMList[j].ID~=ID )
    {
    MC = InitMList[j].MClass;
    Break;
    }
    }
    if( MC==None )
    Continue;
    if( !bInitSq )
    {
    InitSquads.Length = c+1;
    bInitSq = True;
    }
    while( (q--)>0 )
    {
    InitSquads[c].MSquad.Length = n+1;
    InitSquads[c].MSquad[n] = MC;
    n++;
    }
    }
    if( bInitSq )
    c++;
    }
    //Log("Got"@c@"monster squads.",'Init');
    if( FallbackMonster==class'EliteKrall' && InitMList.Length>0 )
    FallbackMonster = GetReplacement(InitMList[0].MClass);
    }

    если кто пользует спец сквады, заменяем и эту функцию:

    function AddSpecialSquad()
    {
    local Class<KFMonster> MC;
    local array< class<KFMonster> > TempSquads;
    local int i,j;

    //Log("Loading up Special monster classes...");
    for( i=0; i<SpecialSquads[WaveNum].ZedClass.Length; i++ )
    {
    if( SpecialSquads[WaveNum].ZedClass=="" )
    {
    //log("Missing a special squad!!!");
    Continue;
    }
    MC = Class<KFMonster>(DynamicLoadObject(SpecialSquads[WaveNum].ZedClass,Class'Class'));
    if( MC==None )
    {
    //log("Couldn't DLO a special squad!!!");
    Continue;
    }
    MC = GetReplacement(MC);
    for( j=0; j<SpecialSquads[WaveNum].NumZeds; j++ )
    {
    TempSquads[TempSquads.Length] = MC;
    }
    }

    bUsedSpecialSquad = true;

    NextSpawnSquad = TempSquads;
    }

    Если надо изменять сквад патрика, заменяем еще и эту функцию:

    function AddSpecialPatriarchSquad()
    {
    local Class<KFMonster> MC;
    local array< class<KFMonster> > TempSquads;
    local int i,j;

    //Log("Loading up FinalSquads monster classes...");
    for( i=0; i<FinalSquads[FinalSquadNum].ZedClass.Length; i++ )
    {
    if( FinalSquads[FinalSquadNum].ZedClass=="" )
    {
    //log("Missing a FinalSquads squad!!!");
    Continue;
    }
    MC = Class<KFMonster>(DynamicLoadObject(FinalSquads[FinalSquadNum].ZedClass,Class'Class'));
    if( MC==None )
    {
    //log("Couldn't DLO a FinalSquads squad!!!");
    Continue;
    }
    MC = GetReplacement(MC);
    for( j=0; j<FinalSquads[FinalSquadNum].NumZeds; j++ )
    {
    TempSquads[TempSquads.Length] = MC;
    }
    }

    NextSpawnSquad = TempSquads;
    }

    На самом деле спец сквады задаются в самом гейм тайпе и не зависят от MonsterClasses, так что надобности заменять нет. Но вдруг кому-то надо будет их рандомизировать или ещё что.
     
  5. kok-s

    kok-s Консильери

    Честно не чего не понял(( Dr_Killjoy объясни по понятней. На сколько я знаю, то SP меняет гейм тап не?

    Очень остро стоит этот вопрос (прям жуть как нужно больше классов) я правда использую песочницу (если что)
     
  6. Flame

    Flame -Заслуженый кодер форума-

    Только недавно ж ответили :)
    А Dr_Killjoy про другое, про нескольких боссов... или "нужно больше классов" = "нужно больше боссов"? )
    Вообще надо бы в эту тему скопировать тот пост...
     
  7. kok-s

    kok-s Консильери

    Тот способ не прокатывает почему то, ставлю "[" а игра считает что это "a" и хрен поймёшь почему так выходит.
    Я се игру сломал)))) пока экспериментировал)) поставил на закачку заново))
     
  8. Dr_Killjoy

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

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

    Народ, такой вопрос, у кого ещё есть проблемы с песочницей? В принципе если наберутся желающие решить проблемы, я напишу новую версию Кастом Гейм Тайп, где можно будет детально настраивать волны без ограничений на количество отрядов и количество классов монстров.
     
  9. KpblcKa_^^

    KpblcKa_^^ Соучастник

    Ребят, возник вопрос: Сервер под Linux, В песочнице строка с уровнем сложности игры выглядит, как я понял так(строки GameDifficult в помине нет):
    Код:
    GoreLevel=
    Но после смены значения на:
    Код:
    1.0
    2.0
    4.0
    7.0
    Уровень сложности не изменяется. Может кто-нибудь подсказать, вдруг там не одну переменную надо поменять?
     
  10. Dr_Killjoy

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

    GoreLevel это уровень крови. Когда он поставлен на низкие значения, мобы иногда не падают а исчезают. СКажем так оптимизация для слабых компов. К сложности не имеет никакого отношения.
     
  11. KpblcKa_^^

    KpblcKa_^^ Соучастник

    Ааа, тогда где переменная сложности?


    Всё догадался, эту строку "GameDifficult" надо ручками вписать :)
     
  12. SpeC00L

    SpeC00L Солдат

    Такой вариант был бы ОЧЕНЬ удобен!
     
  13. Korendima

    Korendima Бандит

    У меня такая проблема настроил пеочницу все работает но новые мутанты идут токлько если создавать через клиент когда переношу настройки песочницы на выделенку новые мутанты не идут в отрядах, прописал их в пакеты
    ServerPackages=Banshee
    ServerPackages=Jason_Vorhees
    ServerPackages=KFBruteFinal_014
    ServerPackages=Fatale

    теперь они спаунятся по команде admin Summon Mauler.mauler но в отрядах все равно не идут Помогите
     
  14. Bloodlust

    Bloodlust Бандит

    вы глупые или как? сколько раз повторять одним и тем же почти, что прописывать новых мобов надо и в отряды! или вы че реально думаете они вот так сами добавятся, и будут шагать? нет не в сказку попали, самый простой способ, это настроить всех мобов через песочницу самой игры(не через серверв), далее из конфига killingfloor.ini перенести отряды и классы мобов..
    юзай поиск по форуму, не ленись :thumbsup:
     
  15. Korendima

    Korendima Бандит

    Я не глупый в отряды я их прописал!!! они идут только когда создаеш через клиент а когда переношу на выделенку их нету и все файлы я к ним перенес хоть убей но они не идут
     
  16. Bloodlust

    Bloodlust Бандит

    хах, ты в батнике мутатор то прописал? я извеняюсь но пакадж используется чутка для другого, нежели такие слабые муты
     
  17. Proton

    Proton Игровой администратор

    В разделе песочницы, в ини файле, поставил параметр на "3" ?
     
  18. offutt

    offutt Капо

    Их не нужно как раз добавлять в батник, он же песочницу включает, достаточно, что бы мобы были в серверпакетах.
     
  19. Bloodlust

    Bloodlust Бандит

    нет, если по отдельности, то лучше мут прописать в батнике, и создать песочницу :tongue:
    вот хоть убейте я логику не пойму создать 2-а аккаунта чтоб минусовать? парень ты "крут", от меня помощи больше не жди
    им помагаешь они не слушают, пытаешься вдуплить начинают выеживаться... :happy: интересно детки пляшут :sleep:
     
  20. Korendima

    Korendima Бандит

    Да поставил если через клиент создаю идут на выделенке нет хотя текстуры все скачивают их