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

    Ошибка: Ваша версия Grand Theft Auto V не поддерживается 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/newswire/
    Статус всех служб для Rockstar Games Launcher и поддерживаемых игр: https://support.rockstargames.com/ru/servicestatus


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

Избавляем себя от рутины с одеждой после обновления GTAV на RedAge

vvrm7

Новый участник
21 Дек 2025
13
1
3
Сейчас я покажу реализацию автоматической системы получения id гташной одежды.

Идем в dotnet\resources\NeptuneEvo\Chars\ClothesComponents.cs и заменяем на файл в прикрипленных
заменяем пути в файле B:\github\spb-online на свои


далее идем в клиентский файл по пути \src_client\index.js
и заменяем функцию getOffsets() на вот эту вот


JavaScript:
function getOffsets() {
    let data = {
        male: {},
        female: {}
    }

    /*set male model first */
    mp.players.local.model = mp.game.joaat('mp_m_freemode_01')
    mp.game.wait(500)

    // clothes
    let i = 0;
    for (let key in clothesTypes) {
        let type = clothesTypes[key]
        data.male[key] = mp.players.local.getNumberOfDrawableVariations(type)
        i++;
    }

    // props
    i = 0;
    for (let key in propsTypes) {
        let type = propsTypes[key]
        data.male[key] = mp.players.local.getNumberOfPropDrawableVariations(type)
        i++;
    }

    /* set female model */
    mp.players.local.model = mp.game.joaat('mp_f_freemode_01')
    mp.game.wait(500)

    // clothes
    i = 0;
    for (let key in clothesTypes) {
        let type = clothesTypes[key]
        data.female[key] = mp.players.local.getNumberOfDrawableVariations(type)
        i++;
    }

    // props
    i = 0;
    for (let key in propsTypes) {
        let type = propsTypes[key]
        data.female[key] = mp.players.local.getNumberOfPropDrawableVariations(type)
        i++;
    }

    // Отправляем данные на сервер для автоматического обновления
    mp.events.callRemote('server.clothes.updateOffsets', JSON.stringify(data));

    mp.console.logInfo("MALE::", true)
    for (let key in data.male) {
        mp.console.logInfo(`{ ClothesCategory.ClothesType.${key} , ${data.male[key]},`, true)
    }
    mp.console.logInfo("FEMALE::", true)
    for (let key in data.female) {
        mp.console.logInfo(`{ ClothesCategory.ClothesType.${key} , ${data.female[key]},`, true)

    }
}

Отключаем все dlc, залетаем на сервер вводим команду, дожидаемся прогрузки всех этапов в командной строке сервера, далее заходим в созданный txt файл, копируем полученные данные и вставляем в dotnet\resources\NeptuneEvo\Chars\ClothesComponents.cs , после чего компилируем цеф и серверную часть.
Скрипт сам заменит данные в json файлах и обновит базу данных.
 

Вложения

  • ClothesComponents.cs
    188.1 KB · Просмотры: 9
Последнее редактирование:

Harland David Sanders

🍔 ChefBurger
Команда форума
High developer
10 Сен 2020
3,750
2,969
259
автоматической системы получения id
Избавляем себя от рутины

И где же эта волшебная таблетка? Нам все также надо копировать и вставлять верные ид, все также нужно делать пересборку проекта, все также заменять верные json в цеф..
 
Реакции: MFMODx

vvrm7

Новый участник
21 Дек 2025
13
1
3
И где же эта волшебная таблетка? Нам все также надо копировать и вставлять верные ид, все также нужно делать пересборку проекта, все также заменять верные json в цеф..
тут выдается готовый файл, где не надо по одному id цеплять с консоли клиента, а цеф вроде как цепляет данные из папки json/ в которой скрипт автоматически устанавливает id
 

Harland David Sanders

🍔 ChefBurger
Команда форума
High developer
10 Сен 2020
3,750
2,969
259
тут выдается готовый файл, где не надо по одному id цеплять с консоли клиента, а цеф вроде как цепляет данные из папки json/ в которой скрипт автоматически устанавливает id
Сходи пересмотри логику работы .cs, в какой момент получается новая папка json и зачем нужна папка src_cef/json.
 

Harland David Sanders

🍔 ChefBurger
Команда форума
High developer
10 Сен 2020
3,750
2,969
259

NULMEKS

Гений
22 Сен 2023
765
477
113
28
тут выдается готовый файл, где не надо по одному id цеплять с консоли клиента, а цеф вроде как цепляет данные из папки json/ в которой скрипт автоматически устанавливает id
Cef не как сама цеплять не будет с корня сервера!
Просто эти все файлы json лежат в папке src_cef\src\json\clothes.

После того так ты обновляешь в dotnet\resources\NeptuneEvo\Chars\ClothesComponents.cs
Перед запуском сервере в корне чистишь папку json и запускаешь сервер, после чего там создаться файлы и от туда ты уже их копируешь в src_cef\src\json\clothes
после чего белишь Cef и все.

Так что попросту твой скрипт который был написан GPT не чего не упрощает.
Это не избежание процедура.

Если просто каким то образом хотел упростить данную задачу то надо написать небольшой скрипт который будет запускаться каждый раз когда стартует сервер и делать лог файл.
В этом файле будет уже актуальные все ID после чего ты опять же делаешь процедуру как раньше только чисто просто без команды и консоли так как у тебя лежит лог файл с чистыми ID.
 

vvrm7

Новый участник
21 Дек 2025
13
1
3
Cef не как сама цеплять не будет с корня сервера!
Просто эти все файлы json лежат в папке src_cef\src\json\clothes.

После того так ты обновляешь в dotnet\resources\NeptuneEvo\Chars\ClothesComponents.cs
Перед запуском сервере в корне чистишь папку json и запускаешь сервер, после чего там создаться файлы и от туда ты уже их копируешь в src_cef\src\json\clothes
после чего белишь Cef и все.

Так что попросту твой скрипт который был написан GPT не чего не упрощает.
Это не избежание процедура.

Если просто каким то образом хотел упростить данную задачу то надо написать небольшой скрипт который будет запускаться каждый раз когда стартует сервер и делать лог файл.
В этом файле будет уже актуальные все ID после чего ты опять же делаешь процедуру как раньше только чисто просто без команды и консоли так как у тебя лежит лог файл с чистыми ID.
Чуть меньше профессионализма пожалуйста, чайники в чате.
 

Harland David Sanders

🍔 ChefBurger
Команда форума
High developer
10 Сен 2020
3,750
2,969
259
обновил, проверил, вроде работает
Еще чуть обнови первый пост: Файл .cs лучше выкладывать кодом прямо сюда или вложением прикрепляй.
Dropmefiles долго не хранит файлы и потом возникнут вопросы, мануал перестанет быть актуальным.
 

vvrm7

Новый участник
21 Дек 2025
13
1
3
Еще чуть обнови первый пост: Файл .cs лучше выкладывать кодом прямо сюда или вложением прикрепляй.
Dropmefiles долго не хранит файлы и потом возникнут вопросы, мануал перестанет быть актуальным.
готово
 

NULMEKS

Гений
22 Сен 2023
765
477
113
28