Как убрать эхо на карте?

Тема в разделе "Программирование / Скриптинг", создана пользователем Webman, 14 май 2016.

  1. Webman

    Webman Developer

    Сообщения:
    702
    Симпатии:
    182
    Приветствую.

    Столкнулся с такой проблемой по жалобам игроков: на некоторых картах есть эхо, причем это эхо наследуется на другие карты потом (если была карта с эхо, то последующие карты тоже будут с эхо). Помогает только перезагрузка клиента.

    Кто-нибудь сталкивался с этим? Как решить?
    В кс 1.6 эта проблема тоже известна, там вроде как проблема решается удалением энтити env_sound на карте. В Source такой энтити нет. Только env_soundscape/_proxy. Может и в нем дело.
     
  2. AlmazON

    AlmazON деревянный © yand3xmail

    Сообщения:
    4.514
    Симпатии:
    1.967
    Возьми, выведи названия всех энтити карты после её загрузки на предмет "странных" и ненужных. А через Manual Cleaning Map можешь их контролировать: искать и удалять во время игры - возможно и найдёшь ту самую "вредную" энтити.
    Ещё можно попробовать с AddAmbientSoundHook поиграться, заблокировав звуки. Может и эхо там "обитает".
     
    Webman нравится это.
  3. tonline_kms65

    tonline_kms65 Read Only

    Сообщения:
    77
    Симпатии:
    10
    В Source такой энтити нет


    Это кто тебе такое сказал что нет? Где то питч завис. Я тоже думаю нужно вывести список ентить. Именно после появления эхо. И я думаю это нужно делать на клиентах.
     
  4. Webman

    Webman Developer

    Сообщения:
    702
    Симпатии:
    182
    Как вывести список энтити?
     
  5. AlmazON

    AlmazON деревянный © yand3xmail

    Сообщения:
    4.514
    Симпатии:
    1.967
    PHP:
    public OnPluginStart() RegConsoleCmd("sm_allentity"WriteEntityServer"Отобразить все текущие объекты карты в файле.");

    public 
    Action:WriteEntityServer(clientargs)
    {
        
    decl String:classname[32], Handle:file;
        if ((
    file OpenFile("addons/sourcemod/all_enitity_map.txt""at")))
        {
            for (new 
    max GetEntityCount(), entity MaxClients 1countentity max; ++entity)
            {
                if (
    IsValidEntity(entity))
                {
                    
    GetEdictClassname(entityclassnamesizeof(classname));
                    
    WriteFileLine(file"%i:    %s    - %i", ++countclassnameentity);
                }
            }
            
    WriteFileLine(file"======================================================\n======================================================");
            
    CloseHandle(file);
        }
        else 
    LogError("Не удалось создать файл!");
        return 
    Plugin_Handled;
    }
    Команда в консоли (хоть сервера, хоть клиента):
    sm_allentity
    Либо в чате:
    !allenity

    Вывод будет в файле: addons/sourcemod/all_enitity_map.txt
     
    666FoX666 и Webman нравится это.
  6. DarklSide

    DarklSide

    Сообщения:
    680
    Симпатии:
    173
    @Webman,
    Возможный список:
    Category:Sound System - Valve Developer Community

    Для уведомления:
    Саундскейп: шумовое оформление - Valve Developer Community
    Разногласие с ТС: << работают до тех пор, пока не сменится карта или их не отключит другой саундскейп.
    << Совет: Используйте консольную переменную soundscape_debug, чтобы понять, какая сущность активна и почему.
     
    Webman нравится это.
  7. tonline_kms65

    tonline_kms65 Read Only

    Сообщения:
    77
    Симпатии:
    10
    Что за головняк поцику? Не грузите его.
    В консоль команду report_entities.
    Там же в консоли увидишь список всех запущенных энтитек. Там смотри какие энтитьки есть. Особенно те которые где нибудь в подвале работают.
    Я более чем уверен что это саундскейпы. Отработал тот который с питчем, а назад другим саундскейпом не вернулся. Так и переходит на другую карту. Я сам когда с картой возился, замучался с этим (
    de_crossfire_css_v2, de_frenzy_css_v1).
    Для поцика решение проблемы простое - залезь в скрипты (cstrike\scripts\) найди там файл soundscapes_.... .txt с названием карты на которой начинается этот головняк.
    Дальше сам разберешься уже.
    Пример такого файла

    {
    "dsp" "0" // вот этим регулируются сами эффекты, ищи где != 0. Обычный звук = 0.
    "playlooping" // здесь звук зацикливается
    {
    "volume" "0.8"
    "pitch" "100"
    "wave" "ambient/levels/canals/tunnel_wind_loop1.wav"
    }
    "playrandom" // здесь установки для рендомного звука
    {
    "time" "8.9,21"
    "volume" "0.27,0.38"
    "pitch" "88,100"
    "rndwave"
    {
    "wave" "ambient/atmosphere/city_skypass1.wav"
    }
    }
    }



    Или еще проще - грохни эту папку - залей с норм сервака.

    И кстати совет - поставь защиту от перезаписи на файлы.
    --- Добавлено позже ---
    Навряд ли это поможет. Питч не меняется до тех пор пока не сработает другой скрипт. Даже если энтитька уже давно не активна.

    ЕПТ !!!!
    У меня же такой головняк был в 1,6. Плагин по моему эффект от взрыва гранаты. Там плагином питч сбивало а назад не возвращал. Попробуй для начала плагины отключать.
     
    Последнее редактирование: 21 май 2016
    Webman нравится это.