Question

SCRIPTMAN
Великий Гуру

Приветствую!

С проблемой разбираюсь уже около месяца, суть такая:
У нас своя сборка SAMP на карте CRMP, у меня и ещё у одного человека (у нас обоих разрешение FHD), всё работает нормально, у других, разрешение у которых отлично от нашего, при спавне после реги или авторизации кидает в загрузку(белый экран, по центру чёрный прямоугольник), при этом, стоит заметить, что при спавне на выбор скина при регистрации у них всё нормально, а вот потом, либо после окончания регистрация, либо после авторизации такая штука. AddPlayerClass в ONGMI есть

Что было предпринято мной: полностью переписан спавн игроков во всём модем, убрал так называемый "двойной" спавн, всё сделал по грамотному, так же проверяли на локалке - проблема не исчезла.

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

Демонстрация проблемы

 

Спойлер

stock SpawnPlayerEx(playerid)
{
    new Float: x,
        Float: y,
        Float: z,
        Float: a,
        skin = PI[playerid][pModel],
        world = 0,
        interior = 0,
        weapon1 = 0, ammo1 = 0,
        weapon2 = 0, ammo2 = 0,
        weapon3 = 0, ammo3 = 0;

    if(GetPVarInt(playerid, "player_in_enter") == 1) // вот это координаты и спавн выбора скина
    {       
        x = -2716.9604,
        y = 1953.1338,
        z = 35.5185,
        a = 45.0,
        world = (playerid + 1),
        skin = JoinRegM[SelectCharPlace[playerid]];
    }

    else
    {
        PlayerSpawned[playerid] = false;

        if(PI[playerid][pMember]) skin = PI[playerid][pMemberSkin];
        else skin = PI[playerid][pModel];

        if(PI[playerid][Spectating][0] != INVALID_PLAYER_ID) // Был в спектре
        {
            x = GetPVarFloat(playerid, "SpecX"),
            y = GetPVarFloat(playerid, "SpecY"),
            z = GetPVarFloat(playerid, "SpecZ"),
            a = GetPVarFloat(playerid, "SpecA"),
            world = GetPVarInt(playerid, "SpecVw"),
            interior = GetPVarInt(playerid, "SpecInt");

            if(PI[playerid][pMember]) skin = PI[playerid][pMemberSkin];
            else if(Oldskin2[playerid] > 0) skin = Oldskin2[playerid];
            else skin = PI[playerid][pModel];
        }

        else if(ClothesRound[playerid] == 2) // В магазине одежды
        {
            new WM = 2 +random(100);
            interior = playerid,
            world = WM;
            x = -1774.4742,
            y = 1768.3673,
            z = 2377.4409,
            a = 180;
          
            switch(PI[playerid][pSex])
            {
                case 1:
                {
                    SelectCharPlace[playerid] = 0;
                    skin = JoinShopM[SelectCharPlace[playerid]][0];
                }
                case 2:
                {
                    SelectCharPlace[playerid] = 0;
                    skin = JoinShopF[SelectCharPlace[playerid]][0];
                }
            }
        }

 

Спойлер

SetSpawnInfo(playerid, 0, skin, x, y, z, a, weapon1, ammo1, weapon2, ammo2, weapon3, ammo3);
SpawnPlayer(playerid);
SetPlayerInterior(playerid, interior);
SetPlayerVirtualWorld(playerid, world);

 

Спойлер

public OnPlayerSpawn(playerid)
{
    if(GetPVarInt(playerid, "player_in_enter") == 1) // вызывается тоже при выборе скина
    {       
        TogglePlayerControllable(playerid, false);
        SetPlayerCameraPos(playerid, -2721.5674, 1957.3044, 36.5426);
        SetPlayerCameraLookAt(playerid, -2720.9348, 1956.5221, 36.4679);
        return false; // остальной код не вызывается
    }
// вызыается при авторизации или окончании реги
    if(GetPVarInt(playerid,"Killed_Go_Reset_Spawn") == 1) ResetPlayerWeaponAC(playerid);

    #if defined ALBION_GUARD

    PG_DATA[playerid][Kill_Time] = 0;
    
    if(PlayerLogged[playerid] != true)
    {
        SendMess(playerid, MSG_PLAYER_NEED_TO_LOGGED);
        return AC_KICK(playerid,  "NO SPAWN (1)", 7);
    }
    
    #endif

    // Global
    StopAudioStreamForPlayer(playerid);
    TogglePlayerControllable(playerid, true);
    SetHunger(playerid, PI[playerid][pHunger]);
     DisablePlayerCheckpoint(playerid);
    SetPlayerScore(playerid, PI[playerid][pLevel]);
    SetPlayerColorEx(playerid, TeamColors[GetTeamID(playerid)]);   
    if(PI[playerid][pFightStyle]) SetPlayerFightingStyle(playerid, PI[playerid][pFightStyle]);
    else SetPlayerFightingStyle(playerid, 0);
    if(PI[playerid][pWanted]) SetPlayerWantedLevel(playerid, PI[playerid][pWanted]);   

    if(PI[playerid][pCash])
    {
        ResetPlayerMoney(playerid);
        GivePlayerMoney(playerid, PI[playerid][pCash]);
    }

    SetPVarInt(playerid, "K_Times", 0);
    SetPVarInt(playerid, "AC_Protection", 1);
    SetPlayerSkills(playerid);
    if(GetPVarInt(playerid, "Connected"))

 

 

Edited by SCRIPTMAN

Share this post


Link to post

1 answer to this question

  • 0
SCRIPTMAN
Великий Гуру

К сожалению, ответа не дождался. Но, я поделюсь решением данной проблемы. Отчаянный, переписав уже всю систему спавна, я решил проверить скрипты. Проблема оказалась в camera_point_fix.asi, именно он и вызывал эту штуку. И теперь понятно, почему такого не было, когда мы спавнили скин для выбора - не требовался фикс камеры игрока, т. к. она была фиксированной. 

Share this post


Link to post
Guest
This topic is now closed to further replies.
Sign in to follow this  
Followers 0
  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • тимормо
      By тимормо
      Копия Diamond RP (основа State 99)
      Скачать файл Мод DIAMOND RP (ver. 1.0)
      Основа: State 99
      Автор мода: #TomSnow
      Вопросы/Баги: https://vk.com/etalon_dev
       
      Приветствую всех! На связи #TomSnow
       
      Я принял решение начать поэтапную разработку и восстановление легендарного мода Diamond RolePlay образца 2015–2017 годов, взяв за основу мод State 99 (оригинальная основа DRP).
       
      Каждая новая версия разрабатываемого мода будет публиковаться в открытом доступе для всех участников и подписчиков сообщества (https://vk.com/etalon_dev). Это позволит вам не только следить за процессом разработки, но и принимать непосредственное участие в развитии проекта: тестировать обновления, находить баги, сообщать о недоработках и помогать делать мод максимально качественным и стабильным.
       
      Если вам интересна данная тематика и вы хотите наблюдать за ходом разработки, подписывайтесь на нашу группу ВКонтакте (https://vk.com/etalon_dev) и ожидайте публикацию версий проекта.
       
      Спасибо всем за поддержку! Впереди нас ждёт много интересной работы и возвращение атмосферы классического Diamond RolePlay. 
       
      Информация о моде:
       
      Версия MySQL R 39-6
      Античит Nex-AC (Доработанный)
      Стример Streamer Plugin v2.9.4
      Командный процессор Pawn CMD
       
      Список обновлений мода
       
       
      Добавил тимормо Добавлено 07/15/26 Категория Моды Автор #TomSnow  
    • тимормо
      By тимормо
      Мод DIAMOND RP (ver. 1.0)
      Основа: State 99
      Автор мода: #TomSnow
      Вопросы/Баги: https://vk.com/etalon_dev
       
      Приветствую всех! На связи #TomSnow
       
      Я принял решение начать поэтапную разработку и восстановление легендарного мода Diamond RolePlay образца 2015–2017 годов, взяв за основу мод State 99 (оригинальная основа DRP).
       
      Каждая новая версия разрабатываемого мода будет публиковаться в открытом доступе для всех участников и подписчиков сообщества (https://vk.com/etalon_dev). Это позволит вам не только следить за процессом разработки, но и принимать непосредственное участие в развитии проекта: тестировать обновления, находить баги, сообщать о недоработках и помогать делать мод максимально качественным и стабильным.
       
      Если вам интересна данная тематика и вы хотите наблюдать за ходом разработки, подписывайтесь на нашу группу ВКонтакте (https://vk.com/etalon_dev) и ожидайте публикацию версий проекта.
       
      Спасибо всем за поддержку! Впереди нас ждёт много интересной работы и возвращение атмосферы классического Diamond RolePlay. 
       
      Информация о моде:
       
      Версия MySQL R 39-6
      Античит Nex-AC (Доработанный)
      Стример Streamer Plugin v2.9.4
      Командный процессор Pawn CMD
       
      Список обновлений мода
       
       
    • x4reo
      By x4reo
      EPOCH ROLE PLAY | ВОЗВРАЩЕНИЕ В 90-Е Создаем атмосферный Full RP проект без «фарма» и лишней «дичи»     О ПРОЕКТЕ Epoch Role Play — это площадка для тех, кто ценит качество, а не статистику. Мы строим живой мир, где каждое действие имеет последствия, а экономика строится на социальном взаимодействии.   КОГО МЫ ИЩЕМ? • Lead Developer (Pawn/C#/JS): Создание ядра мода, БД, оптимизация. • Mapper/Level Designer: Создание аутентичных интерьеров 90-х. • Game Designer: Проработка ролевых правил и сценариев. • SMM-менеджер: Ведение соцсетей, создание контента. • Дизайнер: Оформление медиа и UI проекта. • Discord-архитектор: Настройка каналов и безопасности. • Web-разработчик: Сайт и форум проекта. • Bot-developer (VK/TG): Безопасность: 2FA, привязка аккаунтов.   НАШИ УСЛОВИЯ 1. Энтузиазм: Проект стартует без бюджета. Мы ищем единомышленников. 2. Соавторство: Каждый участник — полноценный совладелец проекта. 3. Партнерство: Вся прибыль от монетизации распределяется пропорционально вкладу.     КОНТАКТЫ ДЛЯ СВЯЗИ Telegram: x4reoo  
    • Gabriel C
      By Gabriel C
      Всем привет. Ищу клиентскую сборку Flin RP для ПК.
      Нужна полноценная версия клиента со всеми необходимыми файлами для запуска игры и подключения к серверу.
      Желательно сборку примерно 2023 года, так как по имеющимся файлам видно, что обновления клиента и систем Real Cars / Real Skins были сделаны в начале 2023 года.
      Нужна именно ПК-сборка/клиент Flin RP:
      лаунчер (если был); папка с игрой; ASI/плагины; cache/modpack с моделями. Если у кого-то осталась рабочая сборка или архив клиента — буду благодарен за помощь.