Jump to content
Sign in to follow this  
V3ct0r

Автоматическое подключение к серверу / вход в игру

Recommended Posts

[Мод] Автоматическое подключение к серверу / вход в игру

 

screenshot_01.png

 

Данная модификация позволяет указывать в параметрах запуска игры дополнительные параметры для автоматического подключения к серверу и входа персонажем в игру:

start system\Game.exe startgame ip:127.0.0.1 port:1973 version:136 login:V3ct0r password:123456 character:V3ct0r

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

 

В отличие от решения, предложенного @ruubi, здесь присутствует функция входа персонажем сразу в игру.

 

Мод может быть полезен для удобного запуска клиента и создания различных программ автообновления ("лаунчеров", "патчеров") с личным кабинетом, например:

 

Список доступных параметров:

ip - IP-адрес сервера [обязателен]
port - порт сервера
version - версия игры из GateServer.cfg
login - логин от аккаунта игрока [обязателен]
password - пароль от аккаунта игрока [обязателен]
character - имя персонажа

Параметры записываются в произвольном порядке в следующем формате:

параметр:значение

Пример:

login:V3ct0r

Если в параметрах запуска Game.exe не будут указаны параметры iplogin и password, то игра запустится в обычном режиме. При отсутствующих параметрах port и version, значения порта сервера и версии игры будут взяты из Game.exe - по умолчанию. Если не был указан параметр character, то игрок попадает на сцену выбора персонажа.

 

 

Требования

 

Установленный Загрузчик модов для сервера и клиента (PKOdev.NET mod loader).

 

 

Информация о моде

 

Название: pkodev.mod.autologin;

Версия: 1.0;

Автор: V3ct0r;

Тип: для клиента (Game.exe);

Поддерживаемые исполняемые .exe файлы: GAME_13X_0, GAME_13X_1, GAME_13X_2, GAME_13X_3, GAME_13X_4, GAME_13X_5.

 

 

Установка

 

Поместите файл DLL-библиотеки мода "pkodev.mod.autologin.client.13x_<ID>.dll" для Вашей версии Game.exe в папку "mods" игрового клиента.

 

 

Скачать

 

1) Бинарные файлы мода (.dll);

2) Исходный код мода для Visual Studio 2019 Community (C++).

 

 

Если Вы столкнулись с какой-либо проблемой, багом или у Вас возникли вопросы, то пишите в данной теме.


Share this post


Link to post
Share on other sites

Если после использования данного апдейта у вас появятся проблемы с отображением квестов/эффектов и других данных из таблиц.

Имейте ввиду это связано с слишком быстрым входом в игру, все таблицы не успевают прогрузится.

  • Thanks 1

Работаем над портированием пиратии под все платформы (win, linux, android, macos, ios)

We are developing the tales of pirates to all platform (win, linux, android, macos, ios)

 

telegram: https://t.me/magicsea_online

Share this post


Link to post
Share on other sites
18 минут назад, Kst сказал:

Если после использования данного апдейта у вас появятся проблемы с отображением квестов/эффектов и других данных из таблиц.

Имейте ввиду это связано с слишком быстрым входом в игру, все таблицы не успевают прогрузится.

Таблицы загружаются до момента открытия окна, есть аналог этой модификации, всем известный tom - который работает нормально,

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

Share this post


Link to post
Share on other sites
19 минут назад, VItal13 сказал:

Таблицы загружаются до момента открытия окна, есть аналог этой модификации, всем известный tom - который работает нормально,

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

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

Таблицы действительно тут не причем.

Мы исправляли это модифицируя мод в SC_HookedLogin после выполнения SC_Login ждали 2 секунды и выполняли CS_BeginPlay. Автору темы предлагал решение

bool CS_HookedConnect(const char* server_ip, unsigned short port, unsigned int timeout)
{
#ifdef _DEBUG
    std::cout << "CS_HookedConnect(" << server_ip << "," << port << "," << timeout << ")" << std::endl;
#endif // DEBUG
    unsigned short portAddr = 0;
    std::string server_ipAddr = "";
    std::string param = TrimString(server_ip);
    size_t p = param.find(':');
    if (p != std::string::npos)
    {
        std::string name = TrimString(param.substr(0, p)); // IP Adress
        if (name.length())
        {
            server_ipAddr = name;
        }
        std::string value = TrimString(param.substr(p + 1, param.length() - (p + 1))); // PORT
        if (value.length())
        {
            try
            {
                port = static_cast<unsigned short>(std::stoul(value));
            }
            catch (...)
            {

            }
        }
    }
#ifdef _DEBUG
    std::cout << "* connection to IP: " << server_ipAddr.c_str() << " port: " << port << std::endl;
#endif // DEBUG
    return CS_Connect(server_ipAddr.c_str(), port, timeout);
}
DWORD WINAPI CheckLoadRes(LPVOID lpThreadParameter)
{
    #ifdef _DEBUG
        std::cout << "Waiting(true)" << std::endl;
    #endif
    Waiting(true);
    Sleep(g_ResumeTime);
    #ifdef _DEBUG
        std::cout << "Waiting(false)" << std::endl;
    #endif
    Waiting(false);
    CS_BeginPlay(g_ChaName.c_str());
    g_Login = "";
    g_Password = "";
    return 0;
}

Я не помню почему так, но было связано с загрузкой эффектов.

При чем это только при первом входе в игру

  • Like 1

Работаем над портированием пиратии под все платформы (win, linux, android, macos, ios)

We are developing the tales of pirates to all platform (win, linux, android, macos, ios)

 

telegram: https://t.me/magicsea_online

Share this post


Link to post
Share on other sites
1 hour ago, Kst said:

Если после использования данного апдейта у вас появятся проблемы с отображением квестов/эффектов и других данных из таблиц.

Имейте ввиду это связано с слишком быстрым входом в игру, все таблицы не успевают прогрузится.

Да, я знаю об этой проблеме, поэтому добавил задержку в 3 секунды перед входом в игру. Для игрока это визуально отображается как загрузка игры.

  • Like 1

Share this post


Link to post
Share on other sites
10 минут назад, V3ct0r сказал:

Да, я знаю об этой проблеме, поэтому добавил задержку в 3 секунды перед входом в игру. Для игрока это визуально отображается как загрузка игры.

Супер!


Работаем над портированием пиратии под все платформы (win, linux, android, macos, ios)

We are developing the tales of pirates to all platform (win, linux, android, macos, ios)

 

telegram: https://t.me/magicsea_online

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this  

×
×
  • Create New...