Search the Community
Showing results for tags 'Сервер'.
-
качает гигабайт обновы, потом пишет невозможно запустить гта 5, потом вылазит окошко что нету патча, Гта лицензия в сошиал клабе Гта онлайн работает, на сервера не заходит https://imgur.com/a/fiHydGc
-
В этом топике будет приведен пример добавления некоторых методов в стандартное API RageMP, основной целью этого действа является сокращение кода и ускорение разработки в будущих скриптах. Пример: // За место этого: mp.players.forEach(_player => { _player.outputChatBox("Hello!!!"); }); //Можно будет использовать удобное сокращенное: mp.players.BroadcastMessage("Hello!!!"); Начнём. Создаем в каталоге 'packages/keker' файл 'new-api.js', и сразу же объявим его в 'packages/keker/index.js' добавив туда строку: require('./new-api'); Теперь начнем добавлять наш код в 'new-api.js', начнем с методов для работы с векторами, точнее для вычисления дистанции между ними: mp.Vector3.Distance = function (v1, v2){ return Math.abs(Math.sqrt(Math.pow((v2.x - v1.x),2) + Math.pow((v2.y - v1.y),2)+ Math.pow((v2.z - v1.z),2))); } // функция вычисляющая расстояние между двумя точками в пространстве X;Y;Z; mp.Vector3.Distance2D = function (v1, v2){ return Math.abs(Math.sqrt(Math.pow((v2.x - v1.x),2) + Math.pow((v2.y - v1.y),2))); } // функция вычисляющая расстояние между двумя точками на плоскости X;Y; Теперь их можно вызывать в любом месте вашего кода. Пример: let distance = mp.Vector3.Distance(player.position, player.veh.position); // Вернет расстояние от игрока до его машины в пространстве X;Y;Z let distance = mp.Vector3.Distance2D(player.position, player.veh.position); // Вернет расстояние от игрока до его машины в горизонтальной плоскости X;Y; Теперь добавим в 'new-api.js' методы broadcast'a сообщений и удобного спавна машин: mp.players.BroadcastMessage = function(s, v, d, c){ if(typeof v == 'undefined'){ // если функция вызвана с 1 параметром BroadcastMessage("Wellcome!!!"); this.forEach( player => { player.outputChatBox(s); }); } else if( typeof v == 'string'){ // если функция вызвана с параметром цвета BroadcastMessage("Wellcome!!!", "#ddd"); this.forEach(player => { player.outputChatBox("<font color='"+v+"'>"+s+"</font>"); }); } else if(typeof v == 'object' && typeof d == 'number'){ // если функция вызвана с параметром радиуса действия BroadcastMessage("Wellcome!!!", new mp.Vector3(0, 0, 0), 50); this.forEach(player => { if(Math.pow((player.position.x - v.x), 2) + Math.pow((player.position.y - v.y), 2) + Math.pow((player.position.z - v.z), 2) < Math.pow(d, 2)){ // проверяем находится ли игрок в заданом радиусе if(typeof c == 'string') { // если функция вызвана со всеми параметрами BroadcastMessage("Wellcome!!!", new mp.Vector3(0, 0, 0), 50, "#ddd"); player.outputChatBox("<font color='"+c+"'>"+s+"</font>"); } else { player.outputChatBox(s); } } }); } } // функция выводящая сообщение в чат либо всем игрокам онлайн, либо игрокам находящимся в определенном радиусе, так же позволяет задать цвет текста mp.vehicles.Spawn = function(m, x, y, z){ if(typeof x == 'number' && typeof y == 'number' && typeof z == 'number'){ return this.new(mp.joaat(m), new mp.Vector3(x, y, z)); } else if(typeof x == "object") { return this.new(mp.joaat(m), x); } } // Спавн транспорта в заданной точке, либо по координатам X;Y;Z, возвращает созданый транспорт Их вызов в дальнейшем будет выглядеть так: //за место этого довольно маштабного кода: mp.players.forEach(_player => { _player.outputChatBox("<font color='#ddd'>Hello!!!</font>"); }); // Теперь можно использовать это, эти несколько вариантов mp.players.BroadcastMessage("Hello!!!"); // Разошлет сообщение всем игрокам сервера mp.players.BroadcastMessage("Hello!!!", "#ddd"); // Разошлет сообщение всем игрокам сервера, цвет текста будет #ddd mp.players.BroadcastMessage("Hello!!!", player.position, 50); // Разошлет сообщение всем игрокам в радиусе 50м от текущего, Local Chat mp.players.BroadcastMessage("Hello!!!", player.position, 50, "red"); // Разошлет сообщения всем игрокам в радиусе 50м от текущего, цвет текста красный // Удобный спавн траспорта // За место этого: let veh = mp.vehicles.new(mp.joaat('sultanrs'), new mp.Vector3(200, 14, 25)); // Теперь можно использовать это: let veh = mp.vehicles.Spawn('sultanrs', 200, 14, 25); // Создаст транспорт в указаных координатах, и вернет его в переменную veh //или это: let pos = player.postion; pos.x += 2; let veh = mp.vehicles.Spawn('sultanrs', pos); // Создаст транспорт в указанной точке и вернет его Ну и пару методов для работы с игроком, можно как добавить в 'new-api.js' это: mp.events.add({"playerJoin": player => { player.TeleportTo = function(x, y, z){ if(typeof x == 'object'){ // если первый параметр является вектором this.position = x; } else if(typeof x == 'number' && typeof y == 'number' && typeof z == 'number'){ // если координаты заданы по отдельности this.position = new mp.Vector3(x, y, z); } } // функция телепорта игрока к заданой точке, либо по координатам X;Y;Z; player.Message = function(s, c){ if(typeof s == 'string' && typeof c == 'string'){ // если задан цвет this.outputChatBox("<font color='"+с+"'>"+s+"</font>"); } else if (typeof s == 'string'){ this.outputChatBox(s); } } // функция для быстрой отправки сообщения игроку в чат, с возможностью задать цвет текста } }); Либо вставить код от сюда в 'packages/keker/evens/common.js', вызов этих методов будет выглядеть так: // Телепорт игрока player.TeleportTo(player.veh.position.x-2, player.veh.position.y, player.veh.postion.z); // Телепортирует игрока к точке сбоку от его машины let pos = player.veh.position; pos.x -= 2 player.TeleportTo(pos); // сделает тоже самое только сдесь в функцию передается вектор а не координаты // Удобный вывод сообщений игроку, с возможностью задать цвет текста player.Message("Hello!!!"); // Отправит сообщение в чат игроку player.Message("Hello!!!", "#ddd"); // Отправит сообщение в чат игроку, цвет текста #ddd Ну вот и все, надеюсь, что кому нибудь пригодится!
-
Всем доброго дня! Есть добрые люди которые могу помочь установить сервер GTA 5 на локальную машину. RAGE mp server скачал установил. Как подключить базу данных? Какой мод установить на сервер? Как сделать себя админом? Как на сервер добавить мод полиции и разные работы (такси, грузчик, дальнобойщик, автобусник и т.д.). Куда устанавливаются моды на сервер?
-
У меня открыты порты для сервера, но ip указан локальный, поэтому никтл не может зайти, как и где убрать локальный ip, и сменить на другой?
-
Вставляем в common.js может кому будет полезно var setTimeTimer = 0; //Таймер, нужен что бы игровое время обновлялось не моментально а с n интервалом // setTimeout(function() { var date = new Date(); //получаем реальное время mp.environment.time.hour = date.getHours(); //устанавливаем игровое время (часы) mp.environment.time.minute = date.getMinutes();// устанавливаем игровое время (минуты) },0); //Игровой цикл setInterval(function(){ setTimeTimer++; //инкрементируем таймер if(setTimeTimer == 60) //60 - интервал обновления времени { //Получаем и устанавливаем время var date = new Date(); mp.environment.time.hour = date.getHours(); mp.environment.time.minute = date.getMinutes(); setTimeTimer = 0; //Обнуляем таймер } },1000); // 1000 - задержка между следующим вызовом setInterval в мс.