This is a mobile optimized page that loads fast, if you want to load the real page, click this text.

Вопрос Как правильно добавить сервер. скрипт в мод

DevilGarcia

Новый участник
21 Авг 2025
6
0
3
JavaScript:
const quitPlayer = (player) => {
    player.kick("Вы покинули сервер.");
};


mp.events.addCommand("q", quitPlayer);
mp.events.addCommand("quit", quitPlayer);

У меня есть скрипт, мне нужно его в мод добавить, как серверный скрипт, не клиентский.
Как это сделать? В какую папку нужно ложить скрипт, где нужно его прописывать, ну типо require
 

DevilGarcia

Новый участник
21 Авг 2025
6
0
3
Всё равно пишет Command not found, не добавились эти 2 команды почему-то.
 

DevilGarcia

Новый участник
21 Авг 2025
6
0
3


Хоть я вроде всё правильно сделал. И скрипт вставил в index.js
 

m0v1l3

Начинающий специалист
29 Сен 2020
533
68
95
а смысл если у тебя сервер на c#?

Тогда в conf.json добавь или поменяй значение "enable-nodejs" на true
 
Реакции: Inoi

Vermilion

Высший разум
High developer
BackEnd developer
FrontEnd developer
29 Сен 2021
1,465
874
181
34
В папке packages должен быть index.js в котором ты делаешь импорт из своего quit/index.js

packages/index.js
JavaScript:
require('./quit/index.js');

packages/quit/index.js
JavaScript:
const quitPlayer = (player) => {
    player.kick("Вы покинули сервер.");
};


mp.events.addCommand("q", quitPlayer);
mp.events.addCommand("quit", quitPlayer);
 

Inoi

/dev/null
Команда форума
Moderator
VIP
15 Окт 2020
4,243
2,089
208
35

Inoi

/dev/null
Команда форума
Moderator
VIP
15 Окт 2020
4,243
2,089
208
35
Разве? Раньше работал
ну я прям не пробовал честно говоря, потому что даже идея звучит как хуйня
наверное можно предположить что это чисто типа ТЕХНИЧЕСКИ возможно
но кому в голову это может прийти, нахуя а главное зачем такого монстра городить
 

XDeveluxe

⚡️BackEnd Developer
Команда форума
Moderator
High developer
BackEnd developer
30 Авг 2021
3,012
1,743
211
28
Сервер не может работать на двух языках одновременно, только клиент.
Так всегда было.
 
Реакции: PercyBerkeley

PercyBerkeley

Участник портала
16 Ноя 2024
72
14
25
Однако «player.kick» не выкидывает вас из игры, как в SA-MP. В RAGE это просто разрывает соединение.
 

m0v1l3

Начинающий специалист
29 Сен 2020
533
68
95
Не посмею перечить, но был у меня сервер и есть он в открытом доступе, где как раз-таки и nodejs и c# server-side юзались, только всё основное на c#, а на nodejs небольшой скрипт для маппинга
 

XDeveluxe

⚡️BackEnd Developer
Команда форума
Moderator
High developer
BackEnd developer
30 Авг 2021
3,012
1,743
211
28
Даже боюсь представить реализацию и причину для такой истории.
Но я лично своими глазами не видел ни разу, чтобы это могло работать как-то корректно, выглядит как Франкенштейн
 
Реакции: PercyBerkeley

UchihaMadara

Гений
FrontEnd developer
27 Окт 2020
902
331
141
А че нет? Если бы работало, то работало в двух потоках. Заебись же.

На C# например можно расписывать Gameplay логику (как ты любишь)
На JS всякие асинхронные штуки.
 

Inoi

/dev/null
Команда форума
Moderator
VIP
15 Окт 2020
4,243
2,089
208
35
да не работало бы)
у тебя всё равно сущность сервака основная запускается одна
они либо будут пизда мешать друг другу, либо это микросервисы которые можно и так разложить на одном языке
 

m0v1l3

Начинающий специалист
29 Сен 2020
533
68
95
Наглядный пример - Freedom Project, та же редага в2


 

UchihaMadara

Гений
FrontEnd developer
27 Окт 2020
902
331
141
да не работало бы)
C чего бы нет?

у тебя всё равно сущность сервака основная запускается одна
И шо? Про Threads слышал?


Не будут они мешать друг другу. На других мультиплеерах не мешают же друг другу
 

Inoi

/dev/null
Команда форума
Moderator
VIP
15 Окт 2020
4,243
2,089
208
35
ну если дублировать функционал не будешь какой то
но прямой шины между ними никакой нет
обмен данными тебе надо писать свой любой, одинаковые евенты все отпадают

наверное технически это возможно
но нахуя
 

UchihaMadara

Гений
FrontEnd developer
27 Окт 2020
902
331
141
Так а зачем дублировать? Каждый сервер-сайд(JS и C#) отвечает за своё. Пусть взаимодействуют между собой, но через события.

Не отпадает) Через события же) Вот, например, JS обрабатывает авторизацию игрока. Как только игрок полностью авторизовался (вписал пароль, выбрал персонажа, выбрал спавн), JS сервер вызывает событие "onPlayerSuccessAuth". C# серверу останется прослушать событие, выгрузить данные персонажа из БД, нацепить нужную одежду, headoverlay, facefeatures, мб какие-то просчёты сделать.

Это опять же, как пример. Понятно, что в целом архитектурно такое смотрится не оч. Но высвободить JS поток для других вещей - почему нет?
Да в целом, можно раскидать 50% на JS, 50% на C#. Сервер в 2 потока хуярить будет. Уже лучше, чем в 1.


 
Реакции: Inoi

Similar threads