Prepare umbrella emulation

This commit is contained in:
momo5502 2021-03-09 18:01:43 +01:00
parent b10fd2d139
commit d4ca18258c
3 changed files with 32 additions and 0 deletions

View File

@ -8,6 +8,7 @@
#include "game/demonware/servers/lobby_server.hpp" #include "game/demonware/servers/lobby_server.hpp"
#include "game/demonware/servers/auth3_server.hpp" #include "game/demonware/servers/auth3_server.hpp"
#include "game/demonware/servers/stun_server.hpp" #include "game/demonware/servers/stun_server.hpp"
#include "game/demonware/servers/umbrella_server.hpp"
#include "game/demonware/server_registry.hpp" #include "game/demonware/server_registry.hpp"
#define TCP_BLOCKING true #define TCP_BLOCKING true
@ -366,6 +367,7 @@ namespace demonware
tcp_servers.create<auth3_server>("aw-pc-auth3.prod.demonware.net"); tcp_servers.create<auth3_server>("aw-pc-auth3.prod.demonware.net");
tcp_servers.create<lobby_server>("aw-pc-lobby.prod.demonware.net"); tcp_servers.create<lobby_server>("aw-pc-lobby.prod.demonware.net");
tcp_servers.create<umbrella_server>("prod.umbrella.demonware.net");
} }
void post_load() override void post_load() override
@ -406,6 +408,11 @@ namespace demonware
utils::hook::set<uint8_t>(0x140698B69, 0xAF); // CURLOPT_SSL_VERIFYHOST utils::hook::set<uint8_t>(0x140698B69, 0xAF); // CURLOPT_SSL_VERIFYHOST
utils::hook::set<uint8_t>(0x14088D0E8, 0x0); // HTTPS -> HTTP utils::hook::set<uint8_t>(0x14088D0E8, 0x0); // HTTPS -> HTTP
// HTTPS -> HTTP
utils::hook::inject(0x14003852E, "http://prod.umbrella.demonware.net/v1.0/");
utils::hook::inject(0x14003884F, "http://prod.umbrella.demonware.net/v1.0/");
utils::hook::inject(0x140038A07, "http://prod.umbrella.demonware.net/v1.0/");
utils::hook::set<uint8_t>(0x140437CC0, 0xC3); // SV_SendMatchData utils::hook::set<uint8_t>(0x140437CC0, 0xC3); // SV_SendMatchData
} }

View File

@ -0,0 +1,11 @@
#include <std_include.hpp>
#include "umbrella_server.hpp"
namespace demonware
{
void umbrella_server::handle(const std::string& packet)
{
// TODO:
}
}

View File

@ -0,0 +1,14 @@
#pragma once
#include "tcp_server.hpp"
namespace demonware
{
class umbrella_server : public tcp_server
{
public:
using tcp_server::tcp_server;
private:
void handle(const std::string& packet) override;
};
}