Проблема с компилированием плагинов

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

  1. Dreizehnt

    Dreizehnt Unteroffizier

    Сообщения:
    622
    Симпатии:
    203
    Приветствую. Захотелось мне перебрать все плагины на сервере и собрать на версии SourceMod, который стоит на сервере, всё чудесно, только сервер после моих махинаций прикладывается полежать. При попытке открыть "админку", попытке воспользоваться командами для чата, написать что-либо в чат...

    "ЭррорЛог" пестрит ошибками, вида:

    Оффтоп

    Оффтоп

    Оффтоп

    Оффтоп

    Оффтоп

    Ладно бы я криворукий, но ведь и плагины, которые не я собирал ругаются (мои E:\5928...). SCP так вообще весь "эррорлог" убивает спамом. Пробовал его отключать, материться VIP.

    Скачана была версия для Windows 1.8.0 5916, собрал на ней, заливал плагины на сервер с SourceMod от хостинга Linux 1.8.0 5916, затем собрал Linux 1.8.0 5928 на сервер и залил эти же плагины скомпилированные на Windows 1.8.0 5928 - ошибки. Скомпилировал на версии Linux 1.8.0 5928 перетащив exe-файлы из Windows 1.8.0 5928, залил плагины на такой же сборке... ну осталось только Linux поставить и на нём компилировать.

    Потом FCVAR_PLUGIN заменял на 0, ну чтоб чистенькая компиляция была, аналогично ошибки. Остановка сервера.

    Кодировку всю пересмотрел, т.к. получил иероглифы в одном плагине и перепроверил все, с остальными всё хорошо.

    Изменял в плагинах название, где был вывод в чат вида: "[Plugin] Bla-alalala..." заменял на "[СЕРВЕР] Ляляял...", где понимал, названия "конфигов" и пути к ним. И всё работает, отказа по плагинам нет.

    Подскажите, может я где-то напортачил изначально так, что смешно? Может Metamod тоже должен быт в директории компилятора? Или просто я проклят. Возможно на какие-то моменты нужно обратить внимание?
    hXnAm345wTE.jpg
     
  2. alps

    alps

    Сообщения:
    42
    Симпатии:
    1
    Если VDS, компилируй прямо на сервере
     
  3. Drumanid

    Drumanid Дилетант

    Сообщения:
    567
    Симпатии:
    194
    Исходники бы приложил...
     
  4. Dreizehnt

    Dreizehnt Unteroffizier

    Сообщения:
    622
    Симпатии:
    203
    Там около 40 штук... да и вот плагин "Рекламу" я же не трогал, тоже "багнулась"... Сейчас залил "бекап" (куском как с сервера скачал) и всё работает на 5916 вперемешку с 1.7.0 плагинами и "конфигами" 5912, ошибки в логах рядовые и к остановке не приводят. Просто не у всех же так, пишутся плагины, чего у меня за комбайн багов... Или 1.8.0 такая удачная, что отторгает.

    Ну вот, например, show damage, поменял на 90 строке название и всё:
     

    Вложения:

  5. Drumanid

    Drumanid Дилетант

    Сообщения:
    567
    Симпатии:
    194
    Перекомпелировал плагин на 1.8, убрал ошибку связанную с 234 error(ом).

    Но работать не хочет, ошибок в logs нету... Странно все это.

    Перекомпилировал на 1.7.3

    Полетели следующие ошибки, БЕСИТ ЭТОТ 1.8.
    PHP:
    L 08/14/2016 00:25:12: [SMException reportedPlugin not runnable
    L 08
    /14/2016 00:25:12: [SMException reportedPlugin not runnable
    L 08
    /14/2016 00:25:12: [SMException reportedPlugin not runnable
    L 08
    /14/2016 00:25:12: [SMException reportedPlugin not runnable
    L 08
    /14/2016 00:25:12: [SMException reportedPlugin not runnable
    L 08
    /14/2016 00:25:12: [SMException reportedPlugin not runnable
    L 08
    /14/2016 00:25:12: [SMException reportedPlugin not runnable
    L 08
    /14/2016 00:25:12: [SMException reportedPlugin not runnable
    L 08
    /14/2016 00:25:12: [SMException reportedPlugin not runnable
    Оффтоп
     
    Последнее редактирование: 14 авг 2016
  6. selax

    selax

    Сообщения:
    1.044
    Симпатии:
    211
    @Psychologist21, папки в cfg создаются сами. Если нет - то это уже что то не так с машиной. Те что в переводах вообще не мешают никак, ибо их практически никто не трогает.
     
  7. Drumanid

    Drumanid Дилетант

    Сообщения:
    567
    Симпатии:
    194
    Держи, работает вроде без ошибок.
    Подогнал под 1.8
     

    Вложения:

    • showdamage.rar
      Размер файла:
      26,2 КБ
      Просмотров:
      7
    Dreizehnt нравится это.
  8. Dreizehnt

    Dreizehnt Unteroffizier

    Сообщения:
    622
    Симпатии:
    203
    Так получается 1.8.0 "падлючий"? :read: 1.7 что ли поставить...

    А ещё такой вопрос VDF-файл для "метамода" нужно генерировать под игру?
    --- Добавлено позже ---
    И если не затруднит, возможно разобраться с SCP под 1.8? Имеется версия 1.1.5, есть 2.0.2, на гитхабе ещё одна дичь, у всех есть CS:GO, но все версии брыкаются.
     

    Вложения:

    Последнее редактирование: 14 авг 2016
  9. Drumanid

    Drumanid Дилетант

    Сообщения:
    567
    Симпатии:
    194
    Не советую менять, на то есть причины.
    Например защита от крашей.

    В: От каких крашей?
    О: При помощи чита, можно положить сервер без каких либо усилий, с легкостью, а защиты на 1.7 нету.
    Нет, можно сделать, я не спорю, просто не нашел такого человека который скомпилировал бы файл ext на linux.
     
  10. Dreizehnt

    Dreizehnt Unteroffizier

    Сообщения:
    622
    Симпатии:
    203
    Опять насобирал, поиграл, когда 1 на сервере - нет ошибок в логах, когда кто-то заходит, пишет в чат и я хочу ему ответить в чате, воспользоваться командой для чата или открыть "админку", то сервер падает, в логах потом ругань от многих плагинов, очень странно:
    Оффтоп
    --- Добавлено позже ---
    Нашёл проблемные плагины:
    1. Плагин Blue Screen of Kill для Sourcemod – Записки Джона - этот жалко, подобный есть в VIP, но этот для всех был;
    2. [CS: GO] - Chat Colors CSGO V1.3 (Custom Chat Colors) - этот нужен, но идеальным вариантом было, когда префиксы этого плагина затирались префиксами "випки";
    3. Simple Chat Processor (Redux) - AlliedModders - ад на всех версиях;
    4. TK Punishment v1.1 - Форум - работал плагин, но острой нужды нет, переменными можно наказывать эстетичнее;
    5. [CS:GO] game_player_equip temp fix (mg, dr, ttt, hg map fixer) - AlliedModders - если не выбрасывать нож, то нужды в нём нет :D
    Оффтоп
     
    Последнее редактирование: 16 авг 2016
  11. Drumanid

    Drumanid Дилетант

    Сообщения:
    567
    Симпатии:
    194
    Когда игрок умрет, посинеет экран.
    Не тестировал.

    PHP:
    #include <sourcemod>

    public OnPluginStart()
    {
        
    HookEvent("player_death"pd);
    }

    PerformFade(clientduration, const color[4])
    {
        if (
    client)
        {
            new 
    Handle:message StartMessageOne("Fade"client);

            
    PbSetInt(message"duration"duration);
            
    PbSetInt(message"hold_time"1);
            
    PbSetInt(message"flags"0x0001);
            
    PbSetColor(message"clr"color);

            
    EndMessage();
        }
    }

    public 
    pd(Handle:event, const String:name[], bool:silent)
    {
        
    PerformFade(GetClientOfUserId(GetEventInt(event"userid")), 500, {00200151});
    }
    Оффтоп
     
    Dreizehnt нравится это.
  12. Dreizehnt

    Dreizehnt Unteroffizier

    Сообщения:
    622
    Симпатии:
    203
    Спасибо буду тестировать :) За 18 число логи соберу, напишу - вчера всякое разное ставил без "конфигов" :D Просто сейчас заработали, видимых проблем нет, но SCP взял с "бекапа" сервера, похоже этот тот SCP, который когда-то загружался по первой ссылке в теме.

    UPD: Не работает, сам плагин встал, но и ошибок нет =/
     
    Последнее редактирование: 18 авг 2016
  13. Drumanid

    Drumanid Дилетант

    Сообщения:
    567
    Симпатии:
    194
    Протестил свой же плагин, все работает...



    Мне кажется твоему серверу чего-то не хватает, попробуй обновить sourcemod до последней версии.
     
  14. Dreizehnt

    Dreizehnt Unteroffizier

    Сообщения:
    622
    Симпатии:
    203
    Этот на смерть работает? XD Посмотрю ещё раз, просто оригинальный по убийствам экран "синил", я убивал и ничего...
     
  15. Drumanid

    Drumanid Дилетант

    Сообщения:
    567
    Симпатии:
    194


    PHP:
    #include <sourcemod>

    public OnPluginStart()
    {
        
    HookEvent("player_death"pd);
    }

    PerformFade(clientduration, const color[4])
    {
        if (
    client)
        {
            new 
    Handle:message StartMessageOne("Fade"client);

            
    PbSetInt(message"duration"duration);
            
    PbSetInt(message"hold_time"1);
            
    PbSetInt(message"flags"0x0001);
            
    PbSetColor(message"clr"color);

            
    EndMessage();
        }
    }

    public 
    pd(Handle:event, const String:name[], bool:silent)
    {
        
    PerformFade(GetClientOfUserId(GetEventInt(event"userid & attacker")), 300, {00200151});
    }
     
    Dreizehnt нравится это.
  16. Dreizehnt

    Dreizehnt Unteroffizier

    Сообщения:
    622
    Симпатии:
    203
    Спасибо, попробую)
    --- Добавлено позже ---
    Вообщем у меня только вот так заработал, но спасибо всё как нужно и сервер не "крашит"))
    Код:
    #include <sourcemod>
    
    public Plugin:myinfo =
    {
    name = "Blue Screen Of Kill",
    author = "johnspade & Psychologist21",
    description = "The plugin fades the screen to transparent blue for a second when you kill someone",
    version = "1.0",
    url = "http://hlmod.ru"
    }
    
    public OnPluginStart()
    {
        HookEvent("player_death", Event_PlayerDeath);
    }
    
    PerformFade(client, duration, const color[4])
    {
        if (client)
        {
            new Handle:message = StartMessageOne("Fade", client);
    
            PbSetInt(message, "duration", duration);
            PbSetInt(message, "hold_time", 2);
            PbSetInt(message, "flags", 0x0001);
            PbSetColor(message, "clr", color);
    
            EndMessage();
        }
    }
    
    public Event_PlayerDeath(Handle:event, const String:name[], bool:dontBroadcast)
    {
    new attacker_id = GetEventInt(event, "attacker");
    new attacker = GetClientOfUserId(attacker_id);
    PerformFade(attacker, 300, {0, 0, 200, 151});
    }
    --- Добавлено позже ---
    Попробовал собрать сервер на 1.8.0.5948 и 1.9.0.6000 - все плагины собрались, работают, но не могут войти игроки на сервер, с точками возрождения как понимаете всё нормально. Кто-нибудь сталкивался? Или есть те, кто перешёл на данные версии и не имеет таких проблем? В логах только пару строчек про премиум:
    1.9:
    Код:
    L 10/29/2016 - 23:06:15: [SM] Exception reported: Array index out-of-bounds (index -1, limit 66)
    L 10/29/2016 - 23:06:15: [SM] Blaming: vip/VIP_Core.smx
    L 10/29/2016 - 23:06:15: [SM] Call stack trace:
    L 10/29/2016 - 23:06:15: [SM]   [1] Line 149, VIP_Core.sp::Command_Say
    L 10/29/2016 - 23:06:17: Error log file session closed.
    1.8:
    Код:
    L 10/29/2016 - 23:36:21: [SM] Exception reported: Array index is out of bounds
    L 10/29/2016 - 23:36:21: [SM] Blaming: vip/VIP_Core.smx
    L 10/29/2016 - 23:36:21: [SM] Call stack trace:
    L 10/29/2016 - 23:36:21: [SM]   [1] Line 149, VIP_Core.sp::Command_Say
    L 10/29/2016 - 23:36:23: Error log file session closed.
    Сам баг словить не мог, но 1 раз попал, я в меню выбора команд уже на сервере, при наличии места войти не могу, в наблюдатели тоже войти не могу. От лица игроков выглядит так, что вошедшие нигде не числятся кроме мониторинга. Вот в таком зависшем состоянии и сидишь, окно выбора не закрывается. Лечится повторным входом, но не всегда.

    Вот такая занятная дичь. Работает сервер на 5946 хорошо и с теми же плагинами.
     
  17. Drumanid

    Drumanid Дилетант

    Сообщения:
    567
    Симпатии:
    194
    Попробуй обновить VIP_Core до последней версии.
    Может поможет...

    Попробуй поставить это - [CS:GO] Team Limit Bypass - AlliedModders
     
  18. Dreizehnt

    Dreizehnt Unteroffizier

    Сообщения:
    622
    Симпатии:
    203
    Ядро последнее и даже более того.. Просто тут чисто в новом ядре SM какая-то гадость которая не даёт жить нормально. А есть куда можно написать о проблеме по SM?

    В 5946 сказано
    В остальных они решили не фиксить может :D
    --- Добавлено позже ---
    @Psychologist21, нашёл проблему, вот только не знаю с чем связана, не работают оба плагина Dr.Api, новых из его магазина, т.к. его забанили на SourceMod за создание того самого магазина вот теперь созидать буду Оффтоп :(
     
    Последнее редактирование: 30 окт 2016