1. Соблюдайте Правила форума и проявляйте уважение к другим участникам беседы.

Фейк лоби для тех у кого нет карты

Тема в разделе 'Основные вопросы', создана пользователем molodec, 14 сен 2016.

  1. molodec Можно доверять

    Сообщения:
    25
    Спасибы:
    2
    Дата начала использования бота:
    1.04.2016
    Перечитывал форум, видел кто-то хвастался фейковым лобби для игроков у которых нет карты (и скачивание карт запрещено). Вот мне интересно может этот код или какая-то инфа по этому поводу есть в пабе?)
    Вообще очень любопытно как такое реализовать. я еще новичок, так сказать, в этих делах, но что-то мне подсказывает что это сделать невозможно. ведь бот определяет есть ли карта у игрока или нет в функции EventPlayerMapSize, т.е уже после того как игрок зашел в лобби, и уже поздно направлять игрока в фейковое лобби))
    вот собственно и я создал эту тему на случай, если кто-то очень добрый поделится какой-то инфой, НАПРИМЕР: как узнать есть ли у игрока карта или он будет ее скачивать еще до того как он оказался в лобби, т.е имея дело с "potential player", в функции EventPlayerJoined, вообще возможно ли это?
  2. Suicider Старожила

    Сообщения:
    673
    Спасибы:
    117
    Сборка бота GHost:
    Ghost++ 17.1 by w3gh
    Дата начала использования бота:
    12.07.2011
    Всё возможно... Ведь бан работает по анологии

    З.Ы. Но наврядли просто так тебе кто распишет этот код за "спасибо" :)
  3. molodec Можно доверять

    Сообщения:
    25
    Спасибы:
    2
    Дата начала использования бота:
    1.04.2016
    в том-то и дело что не совсем: прежде чем зайти в лобби, игрок отправляет инфу боту (ник, айпи, реалм...) и если игрок забанен то в лобби он так и не войдет (на этой стадии игрока еще можно "перенаправить" в фейк лобби), в таком случае на настоящем лобби даже не будет надписи "игрок присоединился к игре/игрок покинул игру" (разве что от имени бота). а вот проверить игрока "на наличие карты" можно уже только после того как он присоединился к лобби. вот у меня никак не получается сделать так, чтобы бот узнавал есть ли у игрока карта или нет тогда, когда игрок только коннектится в лобби.
  4. Suicider Старожила

    Сообщения:
    673
    Спасибы:
    117
    Сборка бота GHost:
    Ghost++ 17.1 by w3gh
    Дата начала использования бота:
    12.07.2011
    посмотри, что тут... точно не вникал

    в game_base.cpp
    Код:
                if (m_Bans)
                {
                    vector<CGameSlot> Slots = m_Map->GetSlots( );
                    potential->Send( m_Protocol->SEND_W3GS_SLOTINFOJOIN( 1, potential->GetSocket( )->GetPort( ), potential->GetExternalIP( ), Slots, 0, m_Map->GetMapGameType( ) == GAMETYPE_CUSTOM ? 3 : 0, m_Map->GetMapNumPlayers( ) ) );
                    potential->SetDeleteMe( true );
                    return;
                }
  5. LOOL Гуру

    Сообщения:
    114
    Спасибы:
    35
    Дата начала использования бота:
    1901
    аха постори пакеты которые связаны со скачкой мапы там нужны PIDы игроков
    а PID назначается хостом токо после захода в лоби :opasnoste:
    molodec нравится это.