• Из-за обновления GTA 5 (был добавлен новый патч) может временно не работать вход в RAGE Multiplayer.

    ERROR: Your game version is not supported by RAGE Multiplayer.

    Данная ошибка говорит о том, что GTA V обновилась до новой версии (GTA Online тоже). Вам необходимо обновить саму игру в главном меню вашего приложения (Steam / Epic Games / Rockstar Games).
    Если после этого RAGE:MP все равно не работает - вам нужно дождаться выхода патча для самого мультиплеера (обычно это занимает от нескольких часов до нескольких дней).

    Новости и апдейты Rockstar Games - https://www.rockstargames.com/ru/newswire/
    Статус всех служб для Rockstar Games Launcher и поддерживаемых игр: https://support.rockstargames.com/ru/servicestatus


    Grand Theft Auto 5 (+ GTA Online) последний раз были обновлены:

Мануал Личные сообщения между игроками на сервере

Redgard

Начинающий специалист
Автор темы
10 Дек 2020
7
2
53
Добавляем в папку packages/keker/commands файл pm.js со следующим содержанием:

JavaScript:
findPlayerByIdOrNickname = playerName => {
  var foundPlayer = null;

  // Проверяем, число ли это
  if (playerName == parseInt(playerName)) {
    // Если число - ищем среди ID'ов пользователей
    foundPlayer = mp.players.at(playerName);
  }

  // Если пользователь не найден по ID - ищем по никам
  if (!foundPlayer) {
    mp.players.forEach((_player) => {
      if (_player.name === playerName) {
        foundPlayer = _player;
      }
    });
  }

  return foundPlayer;
};

module.exports = {

  // Добавляем команду `/pm`
  "pm": (player, args) => {
    // Проверяем корректность введённой команды
    if (args.length < 3 || !args[1].length || !args[2].length) {
      // Если что-то в команде было введено не так, то выводим соответствующее сообщение
      player.outputChatBox('Для отправки личного сообщения введите:<br /><b>/pm [id_получателя_или_ник] [текст сообщения]</b>');

      return false;
    }

    // Ищем пользователя по иду или нику среди всех пользователей сервера
    const recipient = findPlayerByIdOrNickname(args[1]);

    // Если пользователь не найден, то выводим соответствующее сообщение
    if (!recipient) {
      player.outputChatBox('<b>Указанный пользователь не найден в игре</b>');

      return false;
    }

    // Собираем текст сообщения из агрументов, игнорируя команду `/pm` и ид/ник получателя в аргументах
    const message = args.slice(2).join(' ');
    // Генерируем строку для чата в формате:
    // [PM] Ник_Отправителя[ID_Отправителя] -> Ник_Получателя[ID_Получателя]: Текст сообщения
    const str = `<b>[PM] ${player.name}[${player.id}] -> ${recipient.name}[${recipient.id}]</b>: ${message}`;

    // Отправляем сообщение в чат получателю
    recipient.outputChatBox(str);
    // Отправляем сообщение в чат отправителю
    player.outputChatBox(str);
  }

};
Когда пользователь введёт команду:
/pm [id или ник игрока] [текст сообщения]
будет отправляться личное сообщение указанному игроку.

Примеры:
/pm 0 Текст сообщения

/pm ragetestmaster Текст сообщения

ВАЖНО!
Требуется сохранить файл pm.js в кодировке UTF-8 (Unicode), т.к. в нём присутствует кириллица!
Иначе все системные сообщения, написанные на русском, в игре будут отображаться знаками вопроса вместо букв.

Совет:
Создавайте команды в разных файлах, 1 файл = 1 команда!
 
  • Like
Реакции: roliki90 и Agressor