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

Вопрос Импорт пакетов на клиенте

dooj

Гуру
high coder
24 Мар 2022
459
166
100
Да, как раз пошёл себя проверять. Признаю, в ванильном js нет require, моя ошибка. Но это не отменяет факта, что на клиентской части ragemp нельзя использовать import/export, реквайрить npm модули и т.д. Теперь мне стало интересно, откуда тогда там require. Пойду читать матчасть.
Что ты несешь? Покажи мне, где ты этому научился или прочитал?
На что упираясь такие выводы? Каким образом Rage мешает делать require или import?

Расскажи мне, как делают билд проектов с вебпаком?
 

dooj

Гуру
high coder
24 Мар 2022
459
166
100
Что дезинфа? Вы хоть протестировали, прежде чем утверждать? На клиентке относительный путь ./ ссылается на client_packages. Только что проверил себя, думал может что-то подзабыл, но нет, всё верно.


index.js:
JavaScript:
require('./folder1/folder2/test1.js');

folder1/folder2/test1.js
JavaScript:
require('./test2.js');

folder1/folder2/test2.js
JavaScript:
mo.console.logInfo(`Test`);

Код выдает ошибку could't locate file test2.js. Потому что он ищет его в папке client_packages. Если в test1.js заменить путь на ./folder1/folder2/test2.js - всё работает.

// И require из node_modules работать, естественно, не будет, ибо на клиентке ванильный JS, а не nodeJS.
Как может относительный путь функции require, которая принадлежит JS, ссылаться на другой относительный путь? Если это не зависимость или еще что-либо?
Полная чушь.

Единственное, где ссылается на относительный путь client_packages, это при объявлении браузера, т.к. это не нативная функция, а функция rage-c.
 

dooj

Гуру
high coder
24 Мар 2022
459
166
100
За энную сумму могу помочь разобраться тебе в этом.
Если тебе это интересно и ты из рашки, то кидай дс
Еще раз повторю, вытаскивать что-либо из node_modules - костыль. Посмотрим когда у тебя будут десятки зависимостей (а они будут), на твой вес проекта, на гите.
 

vpn

Начинающий специалист
29 Май 2022
130
64
65
Посмотреть вложение 5212
Наблюдай. Если требуется видео-демонстрация, жду в дискорд.
"Закаменел будто каменный камень" - Это про тебя моргенштерн строчку написал?

Зачем ты мне показываешь что ты сделал require на свои файлы?
Ты с npm node-модулями вообще знаком?

Вижу у тебя есть package.json, это уже хорошо..
Теперь делай "npm i mysql2" и делай "require" на модуль из папки "node_modules".
Подключи БД на клиентской части, и скидывай результат.

То-что ты сумел подключить самописные файлы это очень круто, но тут другая ситуация.
 

dooj

Гуру
high coder
24 Мар 2022
459
166
100
"Закаменел будто каменный камень" - Это про тебя моргенштерн строчку написал?

Зачем ты мне показываешь что ты сделал require на свои файлы?
Ты с npm node-модулями вообще знаком?

Вижу у тебя есть package.json, это уже хорошо..
Теперь делай "npm i mysql2" и делай "require" на модуль из папки "node_modules".
Подключи БД на клиентской части, и скидывай результат.

То-что ты сумел подключить самописные файлы это очень круто, но тут другая ситуация.
Пару часов назад ты обобщил, написав что нельзя использовать require на Rage.
К этому сообщению я и написал
 

dooj

Гуру
high coder
24 Мар 2022
459
166
100
"Закаменел будто каменный камень" - Это про тебя моргенштерн строчку написал?

Зачем ты мне показываешь что ты сделал require на свои файлы?
Ты с npm node-модулями вообще знаком?

Вижу у тебя есть package.json, это уже хорошо..
Теперь делай "npm i mysql2" и делай "require" на модуль из папки "node_modules".
Подключи БД на клиентской части, и скидывай результат.

То-что ты сумел подключить самописные файлы это очень круто, но тут другая ситуация.
«Он пытается node-модуль как я понимаю воткнуть, а на RAGE так нельзя.»

Не твои ли слова?
 

dooj

Гуру
high coder
24 Мар 2022
459
166
100
"Закаменел будто каменный камень" - Это про тебя моргенштерн строчку написал?

Зачем ты мне показываешь что ты сделал require на свои файлы?
Ты с npm node-модулями вообще знаком?

Вижу у тебя есть package.json, это уже хорошо..
Теперь делай "npm i mysql2" и делай "require" на модуль из папки "node_modules".
Подключи БД на клиентской части, и скидывай результат.

То-что ты сумел подключить самописные файлы это очень круто, но тут другая ситуация.
Я понял о чем ты говоришь и что имел ввиду, если ты к этому.
Ответ был на обобщенное сообщение, с посылом на то, что на Rage нельзя импортировать модули.
 

vpn

Начинающий специалист
29 Май 2022
130
64
65
Я понял о чем ты говоришь и что имел ввиду, если ты к этому.
Ответ был на обобщенное сообщение, с посылом на то, что на Rage нельзя импортировать модули.
Ну я совместил его код, и скриншот который он скинул (Клиентская ошибка).
Так-что какая тема такой и ответ.
 

akudinov28

Гуру
24 Фев 2021
261
118
105
Что ты несешь? Покажи мне, где ты этому научился или прочитал?
На что упираясь такие выводы? Каким образом Rage мешает делать require или import?

Расскажи мне, как делают билд проектов с вебпаком?
Причём тут билд вебпаком? Сейчас бы показывать require не напрямую на клиенте, а в своей папке src, которая, как я подозреваю, как раз билдится у тебя. Я тебе уже привел выше последовательность действий, которую ты можешь воспроизвести и посмотреть, как клиентская часть отказывается реквайрить файл, который лежит в той же вложенной папке, через относительный путь ./

Никто не говорил про использование зависимостей и импорт/экспорт с помощью сборщика, который, зачастую, пакует весь код в один выходной файл, который ты и подключаешь на клиенте. Разговор шёл конкретно про использование require напрямую в клиентской части.

P.S. Мы ему про мягкое, он нам про тёплое.
 

X-Clusiv

Модератор
Команда форума
high coder
4 Окт 2020
585
276
161
29
1666639177382.png

Все прекрасно подключается.
Для того чтобы использовать какую-либо библиотеку на клиенте. Вам нужно залить её на клиент(client_packages);
Либо писать модуль, отдельно от клиентской части, воспользоваться каким либо сборщиком например webpack и подключать бандл.
 
  • Like
Реакции: dooj

X-Clusiv

Модератор
Команда форума
high coder
4 Окт 2020
585
276
161
29
И вообще. Вкурсе что

stream​

Это библиотека для nodeJS а на клиенте точно не nodeJS...
 

akudinov28

Гуру
24 Фев 2021
261
118
105
Посмотреть вложение 5214
Все прекрасно подключается.
Для того чтобы использовать какую-либо библиотеку на клиенте. Вам нужно залить её на клиент(client_packages);
Либо писать модуль, отдельно от клиентской части, воспользоваться каким либо сборщиком например webpack и подключать бандл.
Ну конечно подключается, ведь ты реквайришь в index.js.
Разговор идёт о том, что имея такую файловую структуру...
JavaScript:
client_packages
--folder1
-- --folder2
-- -- --test1.js
-- -- --test2.js
...и попытавшись в файле test1.js подключить файл test2.js с помощью относительного пути ./ require('./test2.js') (что по логике должно работать, ведь ./ ссылается на ту же директорию), клиентская часть выкинет ошибку. И поэтому я говорю, что подключение файлов в клиентской части ragemp должно всегда начинаться с пути client_packages. То есть, в примере выше, успешно сработает код require('./folder1/folder2/test2.js');

Понятно, что можно использовать сборщики, можно закинуть зависимость напрямую в client_packages, и использовать её оттуда, но речь шла немного не о том.

Что касается изначального вопроса топик стартера, то объяснять ему сейчас про использование сборщика на клиенте - дело неблагодарное, потому товарищ vpn посоветовал автору закинуть его зависимость в папку client_packages, а я уточнил про использование относительных путей на клиенте.
 

Kole so

Новый участник
Автор темы
14 Окт 2022
12
0
3
И вообще. Вкурсе что

stream​

Это библиотека для nodeJS а на клиенте точно не nodeJS...
Я думал NodeJS с обоих сторон, и на сервере и на клиенте.

Еще 1 не большой вопрос, не стоящий отдельной темы...
Когда через 'new' создается class(обьект), то как происходит выделение оперативной памяти для его методов?
Т.е. если я создам для каждого игрока экземпляр класса с методами, то будут ли эти методы дублироваться в ОЗУ?
 

X-Clusiv

Модератор
Команда форума
high coder
4 Окт 2020
585
276
161
29
Я думал NodeJS с обоих сторон, и на сервере и на клиенте.

Еще 1 не большой вопрос, не стоящий отдельной темы...
Когда через 'new' создается class(обьект), то как происходит выделение оперативной памяти для его методов?
Т.е. если я создам для каждого игрока экземпляр класса с методами, то будут ли эти методы дублироваться в ОЗУ?
Конечно будут. Ты же создаешь экземпляр, в следствии этого выделяется память. Но тут ничего критичного. Главное после выхода пользователя не забывай чистить лишний мусор
 
  • Haha
Реакции: lurkmorr228

lurkmorr228

Активный участник
7 Май 2022
24
7
38
Я думал NodeJS с обоих сторон, и на сервере и на клиенте.

Еще 1 не большой вопрос, не стоящий отдельной темы...
Когда через 'new' создается class(обьект), то как происходит выделение оперативной памяти для его методов?
Т.е. если я создам для каждого игрока экземпляр класса с методами, то будут ли эти методы дублироваться в ОЗУ?
методы лежат в прототипе и не создаются каждый раз, просто вызываются с разным контекстом.
Чтобы создать новый метод, нужно в конструкторе прописать
JavaScript:
this.method = this.method.bind(this)

1666968212399.png


1666968404792.png
 
Последнее редактирование:

lurkmorr228

Активный участник
7 Май 2022
24
7
38
Конечно будут. Ты же создаешь экземпляр, в следствии этого выделяется память. Но тут ничего критичного. Главное после выхода пользователя не забывай чистить лишний мусор
как получить лейбл хай кодер?
 

Harland David Sanders

Куратор портала
Команда форума
Куратор портала
VIP
high coder
media
10 Сен 2020
3,101
2,497
219
как получить лейбл хай кодер?
 
  • Like
Реакции: lurkmorr228

lmklde

Специалист
1 Мар 2021
73
49
80
У вас эта плашка должна называться хай хелпер, а не хай кодер)
 
  • Wow
Реакции: Harland David Sanders

lmklde

Специалист
1 Мар 2021
73
49
80
Сорри, но по факту, я думал мне предложат задание какое-то тестовое пройти на знание кода или что-то в таком духе, а там - "выложите полезные ресурсы или мануалы"