• Из-за обновления 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) последний раз были обновлены:

Урок Как сделать ограничитель скорости для автомобиля

skyElmax

Специалист
Автор темы
high coder
15 Сен 2020
151
96
85
Здравствуйте. В интернете не нашел урока(мануала) или скрипта который позволяет игроку ограничить скорость, к примеру в населенных пунктах. Хорошо подойдет для RP серверов. К примеру у Вас есть фракция LSPD и нужно поддерживать скорость для недопущения ДТП, тем более с синхронизацией в RageMP 0.3.7 существенные проблемки.

JavaScript:
let limiter = false; // создадим переменную, которая отвечает за состояние ограна (вкл/выкл)
JavaScript:
let limiter_maxspeed = undefined; //создадим переменную в которую будем записывать максимальную скорость авто
JavaScript:
mp.keys.bind(0x4F, true, function() // 0x4F это символьное имя константы клавиши "O" (англ.)
{
    if (mp.players.local.vehicle) { // проверка на нахождение в автомобиле
        if(limiter) { // проверка на состояние ограничителя (вкл/выкл)
            mp.players.local.vehicle.setMaxSpeed(limiter_maxspeed) // возвращаем автомобилю его стоковую скорость
            limiter_maxspeed = undefined; //очищаем переменную в которую мы ранее записывали стоковую максималку авто
            limiter = false; // выключаем ограничитель
        }
        else {
            limiter_maxspeed = mp.game.vehicle.getVehicleModelMaxSpeed(mp.players.local.vehicle.model); // записываем стоковую скорость автомобиля в переменную
            mp.players.local.vehicle.setMaxSpeed(60/3.6); // ограничиваем скорость авто, где 60 это скорость на которую мы ограничиваем автомобиль, где 3.6 это перевод в км/ч
            limiter = true; // включаем ограничитель
        }
    }
});
JavaScript:
mp.events.add("playerLeaveVehicle", (vehicle, seat) => { //  Срабатывает, когда игрок выходит из машины.

        vehicle.setMaxSpeed(limiter_maxspeed)  // возвращаем автомобилю его стоковую скорость
        limiter_maxspeed = undefined; //очищаем переменную в которую мы ранее записывали стоковую максималку авто
        limiter = false; // выключаем ограничитель
})
Все это нужно вставить в любое место клиентской части вашего сервера. (Пример: client_packages/index.js)


Важное замечание, я тестировал на бета версии мультиплеера 1.1!
Если автомобилю сначала установить скорость (setMaxSpeed), а затем использовать getVehicleModelMaxSpeed, то getVehicleModelMaxSpeed вернёт значение которое вы установили ранее.

Видеоурок:

Ссылки на использованные функции и ивенты:
Key::bind
Entity::setMaxSpeed
Vehicle::getVehicleModelMaxSpeed
PlayerLeaveVehicle
Ссылка на названия кнопок
 
Последнее редактирование модератором:

Harland David Sanders

Куратор портала
Команда форума
Куратор портала
VIP
high coder
media
10 Сен 2020
3,060
2,448
219
Хороший урок. Все по полочкам.
 
  • Like
Реакции: whitepoison1 и skyElmax

koltr

Гуру
high coder
14 Сен 2020
154
114
120
JavaScript:
entity.setMaxSpeed(limiter_maxspeed)  // возвращаем автомобилю его стоковую скорость
Возможно я ошибаюсь, но вместо entity нужно vehicle?
 

skyElmax

Специалист
Автор темы
high coder
15 Сен 2020
151
96
85
JavaScript:
entity.setMaxSpeed(limiter_maxspeed)  // возвращаем автомобилю его стоковую скорость
Возможно я ошибаюсь, но вместо entity нужно vehicle?
Да, спасибо) с системы выдергивал, не обратил внимания.
 
  • Like
  • Dislike
Реакции: Mikhayloff и Ke1thuzad

Etader

Специалист
15 Сен 2020
130
23
82
сделайте радары для установки на дорогах что бы они фиксировали превышаемую скорость и выписывали штраф
 

Mikhayloff

Модератор
Команда форума
high designer
9 Окт 2020
1,302
864
211
Спасибо Серег, это то что мне нужно было
 

19Vitalik70

Участник портала
18 Сен 2021
44
2
8
а ограничение скорости возле EMS и LSPD как прописать? Там нужно на квартал сделать и что бы срабатывала автоматом.
 

Harland David Sanders

Куратор портала
Команда форума
Куратор портала
VIP
high coder
media
10 Сен 2020
3,060
2,448
219