Вопросы

ch3reshnya
Новичок

Такая проблема, что когда я пишу команду которой на сервере не существует сервер просто крашит, например у меня нет команды /me, я ее пишу и серв крашится.
Стоит crashdetect, логи ниже.

  server.log (открыть спойлер)

Буду очень рад, если кто-то поможет, всем удачи!

Поделиться сообщением


Ссылка на сообщение

17 ответов на этот вопрос

  • 0
ch3reshnya
Новичок

Помог переход на Pawn.CMD, DC_CMD уже не функционирует.
Если будете переходить на pawn.cmd то OnPlayerCommanText должен возвращать 0 (return 0).

Всем спасибо

Поделиться сообщением


Ссылка на сообщение
  • 0
Nekit_Krut18
𝒷𝓇𝒾𝑔𝒶𝒹𝒶 𝑜𝓃𝑒 𝓁𝑜𝓋𝑒

@ch3reshnya Вы используете стандартный командный процессор? Или pawncmd, dc_cmd и тд И покажите, что у вас творится в OnPlayerCommandText(......

Поделиться сообщением


Ссылка на сообщение
  • 0
ch3reshnya
Новичок

@Nekit_Krut18 , кстати странно еще то, что я напишу например /goto и сервер крашнет сто процентов, такое постоянно бывает. Я не знаю уже что делать.

Поделиться сообщением


Ссылка на сообщение
  • 0
Cawfee
Великий Гуру

@ch3reshnya, ну, попробуйте отследить, где происходит вылет. Например, в начале команды и в конце команды выводите в консоль строки вида "Проверка1" и "Проверка2". Так и найдете источник.

Поделиться сообщением


Ссылка на сообщение
  • 0
𝙡𝙖𝙨𝙩 𝙚𝙢𝙥𝙚𝙧𝙤𝙧.
Создатель WayDev

В папке pawno создай файл pawn.cfg (если его нет) и пропиши туда флаг -d3, перекомпилируй мод и запусти заново.
Как запустишь после перекомпиляции, используй команду /goto и кинь сюда server.log после проделанных действий.

Поделиться сообщением


Ссылка на сообщение
  • 0
ch3reshnya
Новичок

@glvde. при попытке написать /goto ничего не происходит, при попытке написать /g краш.
Сервер лог:

  server_log.txt (открыть спойлер)

Просто еще прикол то в чем, сервер не вырубается в игре пишет Lost connection to the server. Reconnecting. 
the server is restarting. Хотя сервер запущен. НО! Строка: МОД на хостинге и название пропало, там пустые строки.

Отредактировано пользователем ch3reshnya

Поделиться сообщением


Ссылка на сообщение
  • 0
SCRIPTMAN
Великий Гуру

@ch3reshnya "return 1;" в OnPlayerCommandText замени либо на "return false;" либо на "return SendClientMessage(playerid, -1, "Ошибка: неизвестная команда!");"

Попробуй, надеюсь, поможет.

Поделиться сообщением


Ссылка на сообщение
  • 0
Cawfee
Великий Гуру

@SCRIPTMAN, так SendClientMessage возвращает 1... Грубо говоря, твой ответ выглядит так: "Замени либо на return false, либо на return 1". 

Поделиться сообщением


Ссылка на сообщение
  • 0
ch3reshnya
Новичок

@DEST Команды не существует, в моде команды /g например не существует, но если я ее напишу сервер крашнет.

Отредактировано пользователем ch3reshnya

Поделиться сообщением


Ссылка на сообщение
  • 0
Lionely
Свой человек
  В 4/1/2021 в 12:16, ch3reshnya сказал:

up

Читать далее...  

Пробуйте

public OnPlayerCommandPerformed(playerid, cmdtext[], success)

{

    if(success == -1) // если команда не найдена

    {

        SendClientMessage(playerid, -1, "Команда не найдена");

    }

    return 1;

}

 

Поделиться сообщением


Ссылка на сообщение
  • 0
ch3reshnya
Новичок

!! Заметил еще ошибку, если писать просто неизвестную команду ничего не произойдет, но если написать команду с аргументами (команды которой нет), пример "/awd 1", это команда с аргументом "1", то серв крашит.

Поделиться сообщением


Ссылка на сообщение
  • 0
Lionely
Свой человек
  В 4/7/2021 в 09:05, ch3reshnya сказал:

!! Заметил еще ошибку, если писать просто неизвестную команду ничего не произойдет, но если написать команду с аргументами (команды которой нет), пример "/awd 1", это команда с аргументом "1", то серв крашит.

Читать далее...  

Вам нужно просто скопировать код, который я вам скинул, и вставить в любую часть вашего мода, и только после этого пробовать, так-же если у вас нет команд которые вы используете в паблике: 

OnPlayerCommandText

Как мне кажется, его лучше закомментировать в вашем моде.

Отредактировано пользователем Lionely

Поделиться сообщением


Ссылка на сообщение
  • 0
ch3reshnya
Новичок

@Lionely Если закомментировать то dc_Cmd ругается.
error 004: function "dc_cmd_OnPlayerCommandText" is not implemented
А OnPlayerCommandText у меня не используются, крашит только если команда с аргументом.

Поделиться сообщением


Ссылка на сообщение
Гость
Эта тема закрыта для публикации ответов.
  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

  • Похожий контент

    • Владислав Малиновский
      От Владислав Малиновский
      SWEEK RUSSIA — онлайн игра на телефон с открытым миром, в котором Вы можете создать персонажей вместе со своими друзьями и начать весело проводить время. Вы можете продвигаться по сюжету квестовых миссий или же начать игру с зарабатывания денег в транспортной компании. Создавать организации, подниматься по карьерной лестнице. Заполучив влияние над другими игроками - попробуй себя в роли Президента.
       
      Нам нужны ответственные люди на должность главного администратора. Если вы считаете себя адекватным и ответственным, отпишите в vk.com/devmaksim или t.me/raphmarci.
       
      Официальный сайт проекта - sweekrussia.ru
      Официальный форум проекта - forum.sweekrussia.ru
      Официальное сообщество VK - vk.com/sweekrussia.game
      Официальный TG канал - t.me/sweek_dev
    • bogdan295@gmai
      От bogdan295@gmai
      Здраствуйте, я создавал новую организации когда дело дашло до пикапов они не создаются 
      new lssd1; new lssd2;  else if(pickupid == lssd2)// Вход     {         SetPlayerInteriorEx(playerid,0);         SetPPos(playerid,1567.5510,-1657.9956,5.3859);         SetPlayerFacingAngle(playerid, 500);         return true;     } else if(pickupid == lssd1)// Вsход     {         SetPlayerInteriorEx(playerid,0);         SetPPos(playerid,630.0542,-572.0032,16.3359);         SetPlayerFacingAngle(playerid, 500);         return true;     }     lssd2 = CreatePickupAC(1318,1,626.9653,-571.8394,17.9207, 147); // вход лссд     lssd1 = CreatePickupAC(1318,1,1567.4720,-1660.6494,5.3859, 147); // выход лссд Что я сделал не так?