Вопросы

Привет всем,

 

Столкнулись с такой проблемой... После перехода на Open Multiplayer появилась проблема с машинами.

 

Пример:

Просто играя без всяких причин начинаеться нон-стоп респавн машин именно в одной части карты (добавлю скиншот). Из-за того, что там происходит такая „дискотека“ машин, то рандомно может снести любую машину в Сан-Фиерро, в которой нет водителя. 

 

Мы уже всё перепробовали, но причину найти не можем... Повторюсь, проблема появилась только после перехода на Open Multiplayer. В моде 190 тыс. строчек, найти в чём проблема очень сложно... Может есть какие-либо советы на что надо обратиться внимание? Допустим в 0.3 версии можно было манимипулировать машиной перед её смертью с помощью RakNet, но OMP больше не поддерживает Pawn.RakNet плагин.

 

Я пытался добавить принт на каждый SetVehicleToRespawn, но увы срабатывает принт только на OnVehicleDeath...

sa-mp-089.png

sa-mp-088.png

Поделиться сообщением


Ссылка на сообщение

17 ответов на этот вопрос

  • 0

Изучите вопрос связанный с изменением функций и коллбэков в OpenMP связанных непосредственно с транспортом.

Поделиться сообщением


Ссылка на сообщение
  • 0

Может можно подробнее об этом? Я пытался найти какой-то коллбэк, но ничего не получается сделать, есть функция IsVehicleDead, но не знаю или она может продетвратить респавн, так как машина уже бывает Dead...

Поделиться сообщением


Ссылка на сообщение
  • 0
Web
¯\_(ツ)_/¯

Версия OpenMP последняя? Судя по логу обновлений и изменений есть функции которые помечены устаревшими:

https://www.open.mp/ru/docs/changelog

Мой взгляд зацепили:
 

GetVehiclePoolSize

GetVehicleTower

ChangeVehicleColor 

 

Я думаю проблема именно в :

https://www.open.mp/docs/scripting/functions/GetVehiclePoolSize

И том, что. Цитата с сайта OpenMP переведенная на русский:

Функция получает самый высокий идентификатор транспортного средства, который в настоящее время используется на сервере. Обратите внимание, что в SA:MP эта функция не работает и будет возвращать 0, даже если нет транспортных средств. fixes.inc и open.mp исправляют это, чтобы возвращать -1, но также отказываются от этой функции в пользу MAX_VEHICLES или foreach.

Отредактировано пользователем Web

Поделиться сообщением


Ссылка на сообщение
  • 0

При переходе на ОМП мы уже удалили все старые функции, нигде в нашем коде нет: GetVehiclePoolSize, GetVehicleTower или ChangeVehicleColor. Используем только foreach (new v : Vehicle) от YSI

 

 

Поделиться сообщением


Ссылка на сообщение
  • 0
Web
¯\_(ツ)_/¯

Возможно, дело как раз в этом. Проверьте. Так же я бы отключил респавн транспорта спустя время в функциях создания транспорта. Если он там указан, конечно. К примеру таких как:

AddStaticVehicleEx

CreateVehicle

Так же интересует есть ли на сервере автоматический респавн транспорта по таймеру?

Отредактировано пользователем Web

Поделиться сообщением


Ссылка на сообщение
  • 0

Да, на сервере есть автоматический респавн транспорта, который находиться в продаже. По логам когда он респавниться ничего плохого не происходит, транспорт весь создаётся с помощью CreateVehicle.

 

Так а если foreach не подходит, что в этом случае использовать? 

Поделиться сообщением


Ссылка на сообщение
  • 0
Web
¯\_(ツ)_/¯

Для начала я бы использовал стандартное:

for(new i = 0; i < MAX_PLAYERS; i++)

Что бы убедиться, что дело не в цикле. Ну и покажите, пожалуйста, код который отвечает за респавн транспорта.

Отредактировано пользователем Web

Поделиться сообщением


Ссылка на сообщение
  • 0

Проблема точно будет не в цикле, т.к. у нас до этого всегда стоял for(new i = 0; i < MAX_PLAYERS; i++) и проблема была та же самая, думал foreach поможет, но только убедился что проблема совершенно не в этом.

 

Вот сообственно код, который срабатывает каждые 30 минут.

foreach (new i : Vehicle)
{
    if(tInfo[i][Turgaus_Car]) // Проверяет или машина принадлежит покупаемым 
    {
        SetVehicleToRespawn(i);
    }
}

Повторюсь, я очень сомневаюсь, что проблема в этом. У меня везде стоят принты, и при срабатывании этого респавна или какого-либо другого из похожих - проблем нет... Это происходит в очень рандомные моменты, можешь просто играть, не использовать никаких респавнов, но машины начнут респавниться без причины... 

 

Иногда это начиналось при подключении нового игрока, иногда при выходе игрока из сервера. В SA-MP версии сервера у меня стояла защита/проверка перед смертью машины находиться ли она в воде с помощью RakNet. Как только пропала проверка перед смертью находится ли машина в воде - начались эти неясные респавны... И как я понимаю место, которое я указал проблемным как раз и находится довольно низко по координате Z и рядом с водой

 

Поделиться сообщением


Ссылка на сообщение
  • 0

Добавил файл, проект не русский. В OnPlayerDeath нет ничего, что может вызвать проблему, в основном только проверка или игрок убит ударом машины

onvehicledeath.txt

Поделиться сообщением


Ссылка на сообщение
  • 0
Web
¯\_(ツ)_/¯

@extN в обычном сампе без ракнета точно так же происходит респавн или нормально все? Так же по какому принципу работает страховка на проекте?

 

 

Отредактировано пользователем Web

Поделиться сообщением


Ссылка на сообщение
  • 0

На обычном сампе и без ракнета всё было хорошо по последним тэстам. Страховка просто навсего уменьшает цену починки авто после того как машина взорвалась

Поделиться сообщением


Ссылка на сообщение
  • 0
9 часов назад, extN сказал:

На обычном сампе и без ракнета всё было хорошо по последним тэстам. Страховка просто навсего уменьшает цену починки авто после того как машина взорвалась

 

В функциях которые создают транспортные средства указан аргумент отвечающий за респавн?

Поделиться сообщением


Ссылка на сообщение
  • 0
4 часа назад, Web сказал:

 

В функциях которые создают транспортные средства указан аргумент отвечающий за респавн?

 

Да, на похти всех стоит -1 (т.е. никогда не респавнить), есть несколько машин где стоит 300 секунд. 

Поделиться сообщением


Ссылка на сообщение
  • 0

Ну у меня больше нет догадок. Не имея доступа к полному коду игрового режима и возможности отладки. Попробуйте обратиться с проблемой на официальный форум Open MP или их дискорд.

Поделиться сообщением


Ссылка на сообщение
Гость
Эта тема закрыта для публикации ответов.
  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

  • Похожий контент

    • patrickk
      От patrickk
      Всем привет, решил написать dm сервер и довольно хорошим получился, даже на голову выше Goat dm. Оставил не решенную проблему тем что  у меня есть 4 локации с rp run и cj run ну а как добавить cj бег на те локации не знаю и как эта система работает. Надеюсь мне помогут знающие люди
    • Samolet
      От Samolet
      Здраствуйте, cоздаю копию Arizona на ОМП, опен мультиплеер, загрузил и подключил бд, но сервер не хочет вот лог :[2026-10-20T21:03:32+0300] [Info] Log file reloaded. Starting open.mp server (1.5.8.3079) from commit c6759bd8d265171ae3d86598895a23d5a8d92a3b Loading component $CAPI.so Successfully loaded component C-API (1.5.8.3079) with UID 10467dd8d4c56fc6 Loading component LegacyConfig.so Successfully loaded component LegacyConfig (1.5.8.3079) with UID 24ef6216838f9ffc Loading component NPCs.so Successfully loaded component NPCs (1.5.8.3079) with UID 3d0e59e87f4e90bc Loading component Recordings.so Successfully loaded component Recordings (1.5.8.3079) with UID 871144d399f5f613 Loading component Checkpoints.so Successfully loaded component Checkpoints (1.5.8.3079) with UID 44a937350d611dde Loading component TextDraws.so Successfully loaded component TextDraws (1.5.8.3079) with UID 9b5dc2b1d15c992a Loading component Pawn.so Successfully loaded component Pawn (1.5.8.3079) with UID 78906cd9f19c36a6 Loading component GangZones.so Successfully loaded component GangZones (1.5.8.3079) with UID b3351d11ee8d8056 Loading component Actors.so Successfully loaded component Actors (1.5.8.3079) with UID c81ca021eae2ad5c Loading component Pickups.so Successfully loaded component Pickups (1.5.8.3079) with UID cf304faa363dd971 Loading component Dialogs.so Successfully loaded component Dialogs (1.5.8.3079) with UID 44a111350d611dde Loading component Objects.so Successfully loaded component Objects (1.5.8.3079) with UID 59f8415f72da6160 Loading component Console.so Successfully loaded component Console (1.5.8.3079) with UID bfa24e49d0c95ee4 Loading component TextLabels.so Successfully loaded component TextLabels (1.5.8.3079) with UID a0c57ea80a009742 Loading component Variables.so Successfully loaded component Variables (1.5.8.3079) with UID 75e121848bc01fa2 Loading component Databases.so Successfully loaded component Databases (1.5.8.3079) with UID 80092e7eb5821a96 Loading component LegacyNetwork.so Successfully loaded component RakNetLegacyNetwork (1.5.8.3079) with UID ea9799fd79cf8442 Loading component CustomModels.so Successfully loaded component CustomModels (1.5.8.3079) with UID 15e3cb1e7c77ffff Loading component Menus.so Successfully loaded component Menus (1.5.8.3079) with UID 621e219eb97ee0b2 Loading component Vehicles.so Successfully loaded component Vehicles (1.5.8.3079) with UID 3f1f62ee9e22ab19 Loading component Classes.so Successfully loaded component Classes (1.5.8.3079) with UID 8cfb3183976da208 Loading component Timers.so Successfully loaded component Timers (1.5.8.3079) with UID 2ad8124c5ea257a3 Loaded 22 component(s) from /home/gs113492/components Executing Server Config... [2026-10-20T21:03:33+0300] [Info] Loading plugin: crashdetect.so [2026-10-20T21:03:33+0300] [Info] CrashDetect plugin 4.19 [2026-10-20T21:03:33+0300] [Info] Loading plugin: mapandreas.so [2026-10-20T21:03:33+0300] [Info] Loading plugin: streamer.so [2026-10-20T21:03:33+0300] [Info] *** Streamer Plugin v2.9.4 by Incognito loaded *** [2026-10-20T21:03:33+0300] [Info] Loading plugin: sscanf.so [2026-10-20T21:03:33+0300] [Info] [2026-10-20T21:03:33+0300] [Info] =============================== [2026-10-20T21:03:33+0300] [Info] sscanf plugin loaded. [2026-10-20T21:03:33+0300] [Info] Version: 2.8.3 [2026-10-20T21:03:33+0300] [Info] (c) 2018 Alex "Y_Less" Cole [2026-10-20T21:03:33+0300] [Info] =============================== [2026-10-20T21:03:33+0300] [Info] Loading plugin: TOTP.so [2026-10-20T21:03:33+0300] [Info] TOTP plugin v1.0.1 by Games loaded. [2026-10-20T21:03:33+0300] [Info] Loading plugin: mysql_static.so [2026-10-20T21:03:33+0300] [Info] >> plugin.mysql: R39-6 successfully loaded. [2026-10-20T21:03:33+0300] [Info] Loading plugin: libpawn_json.so [2026-10-20T21:03:34+0300] [Error] Function not registered: YSF_SetTickRate [2026-10-20T21:03:34+0300] [Error] Function not registered: PC_Init [2026-10-20T21:03:34+0300] [Info] [debug] Run time error 19: "File or function is not found" [2026-10-20T21:03:34+0300] [Info] [debug] PC_Init [2026-10-20T21:03:34+0300] [Info] [debug] YSF_SetTickRate [2026-10-20T21:03:34+0300] [Error] File or function is not found [2026-10-20T21:03:34+0300] [Error] Function not registered: PC_RegAlias [2026-10-20T21:03:34+0300] [Error] Function not registered: BS_GetWriteOffset [2026-10-20T21:03:34+0300] [Error] Function not registered: BS_Reset [2026-10-20T21:03:34+0300] [Error] Function not registered: PR_RegHandler [2026-10-20T21:03:34+0300] [Error] Function not registered: BS_Delete [2026-10-20T21:03:34+0300] [Error] Function not registered: BS_New [2026-10-20T21:03:34+0300] [Error] Function not registered: BS_ResetReadPointer [2026-10-20T21:03:34+0300] [Error] Function not registered: BS_SetWriteOffset [2026-10-20T21:03:34+0300] [Error] Function not registered: BS_IgnoreBits [2026-10-20T21:03:34+0300] [Error] Function not registered: PR_Init [2026-10-20T21:03:34+0300] [Error] Function not registered: PR_SendRPC [2026-10-20T21:03:34+0300] [Error] Function not registered: PR_SendPacket [2026-10-20T21:03:34+0300] [Error] Function not registered: BS_WriteValue [2026-10-20T21:03:34+0300] [Error] Function not registered: BS_GetNumberOfBytesUsed [2026-10-20T21:03:34+0300] [Error] Function not registered: BS_ReadValue [2026-10-20T21:03:34+0300] [Error] Function not registered: PC_Init [2026-10-20T21:03:34+0300] [Info] [debug] Run time error 19: "File or function is not found" [2026-10-20T21:03:34+0300] [Info] [debug] PC_Init [2026-10-20T21:03:34+0300] [Info] [debug] BS_ReadValue [2026-10-20T21:03:34+0300] [Info] [debug] BS_GetNumberOfBytesUsed [2026-10-20T21:03:34+0300] [Info] [debug] BS_WriteValue [2026-10-20T21:03:34+0300] [Info] [debug] PR_SendPacket [2026-10-20T21:03:34+0300] [Info] [debug] PR_SendRPC [2026-10-20T21:03:34+0300] [Info] [debug] PR_Init [2026-10-20T21:03:34+0300] [Info] [debug] BS_IgnoreBits [2026-10-20T21:03:34+0300] [Info] [debug] BS_SetWriteOffset [2026-10-20T21:03:34+0300] [Info] [debug] BS_ResetReadPointer [2026-10-20T21:03:34+0300] [Info] [debug] BS_New [2026-10-20T21:03:34+0300] [Info] [debug] BS_Delete [2026-10-20T21:03:34+0300] [Info] [debug] PR_RegHandler [2026-10-20T21:03:34+0300] [Info] [debug] BS_Reset [2026-10-20T21:03:34+0300] [Info] [debug] BS_GetWriteOffset [2026-10-20T21:03:34+0300] [Info] [debug] PC_RegAlias [2026-10-20T21:03:34+0300] [Error] File or function is not found [2026-10-20T21:03:34+0300] [Info] [debug] Run time error 19: "File or function is not found" [2026-10-20T21:03:34+0300] [Info] [debug] PC_Init [2026-10-20T21:03:34+0300] [Info] [debug] YSF_SetTickRate [2026-10-20T21:03:34+0300] [Error] File or function is not found [2026-10-20T21:03:34+0300] [Info] [debug] Run time error 19: "File or function is not found" [2026-10-20T21:03:34+0300] [Info] [debug] PC_Init [2026-10-20T21:03:34+0300] [Info] [debug] BS_ReadValue [2026-10-20T21:03:34+0300] [Info] [debug] BS_GetNumberOfBytesUsed [2026-10-20T21:03:34+0300] [Info] [debug] BS_WriteValue [2026-10-20T21:03:34+0300] [Info] [debug] PR_SendPacket [2026-10-20T21:03:34+0300] [Info] [debug] PR_SendRPC [2026-10-20T21:03:34+0300] [Info] [debug] PR_Init [2026-10-20T21:03:34+0300] [Info] [debug] BS_IgnoreBits [2026-10-20T21:03:34+0300] [Info] [debug] BS_SetWriteOffset [2026-10-20T21:03:34+0300] [Info] [debug] BS_ResetReadPointer [2026-10-20T21:03:34+0300] [Info] [debug] BS_New [2026-10-20T21:03:34+0300] [Info] [debug] BS_Delete [2026-10-20T21:03:34+0300] [Info] [debug] PR_RegHandler [2026-10-20T21:03:34+0300] [Info] [debug] BS_Reset [2026-10-20T21:03:34+0300] [Info] [debug] BS_GetWriteOffset [2026-10-20T21:03:34+0300] [Info] [debug] PC_RegAlias [2026-10-20T21:03:34+0300] [Info] Legacy Network started on ***.**.**.***:2717. Помогите пожалуйста