adambro3 (07-11-2020),FluxDot (07-08-2020),IThoughtItWasANerf (07-08-2020),[MPGH]T-800 (07-08-2020),thezxcvballs (07-08-2020),WalrusWalrus69 (07-08-2020)
Before we begin let's talk about BHVR's implementation of parties. From my research parties work in 2 ways, a P2P party and a dedicated server party. When you create a party, you create a P2P party and after you join the dedicated server party while still hosting the P2P party. Parties work this way so that they are compatible with platform provided methods of joining parties(Steam Invites). When you accept a Steam Invite for a party, you initially connect to the P2P party then your game grabs the Party ID and joins the dedicated server party. This becomes a problem when joining parties outside of your platform, P2P parties are managed by the respective platform provider(Steamworks, PSN, Xbox Live), so you simply cant join a party outside of your platform. To join a Console party we will need to skip the P2P party completely. The only case where the game doesn't join a P2P party is when it creates a party, so we will need to trick the game into thinking its creating a party while in reality it is joining one.
PART 1 Joining A Party:
To join the party is fairly simple, it is explained on the following code. All you need is your friends Cloud ID
PART 2 Forcing your game to connect to the party instead of creating a new one:Code:def joinParty(PlayerID): global cookies, bhvr, should_join_party, party, partyid try: print('Please Make Sure You Are On The Main Menu Screen') print('https://steam.live.bhvrdbd.com/api/v1/party/join?playerId=' + str(PlayerID) + '&autoJoin=true') #Here we are joining the party using the API Request r = requests.post('https://steam.live.bhvrdbd.com/api/v1/party/join?playerId=' + str(PlayerID) + '&autoJoin=true', cookies={'bhvrSession': bhvr}) print(r.text) if r.status_code == 200: #If the connection was successful we save the party information for our MITM Proxy should_join_party = True party = r.content data = r.json() partyid = data['partyId'] print('Success. You have joined the party, click play as survivor on your game') else: print("Error! Couldn't join the party, server returned " + str(r.status_code) + ' \n This might be because you are not on the main menu or bhvr patched this') except: print('unknown error')
For this part we will be using the MITMPROXY module for python in order to supply the correct information to our game.
IMPORTANT INFORMATION:Code:class AddHeader(): def request(context, flow: http.HTTPFlow) -> None: global party, partyid, should_join_party if should_join_party: #In the first if we are telling the game that we are not in a party. If we didnt do this, the game would send a request to remove us from the party we joined in part 1 if 'api/v1/party?includeState' in flow.request.pretty_url: flow.response = http.HTTPResponse.make(404, '{"type":"DataNotFoundException","localizationCode":"notFound","message":"Unable to find requested data in {Party}"}') #We supply the party content of the party we connected previously instead of allowing the game to create one elif 'api/v1/party' in flow.request.pretty_url and not partyid in flow.request.pretty_url: flow.response = http.HTTPResponse.make(200, party) elif 'api/v1/party' in flow.request.pretty_url and partyid in flow.request.pretty_url: should_join_party = False flow.response = http.HTTPResponse.make(200, party)
This script is not meant to be copy pasted. However it is meant to give you an idea how to implement it on a project of yours.
You can not use this to join steam parties of popular streamers(BHVR has patched this).
You can not use this to join console parties of popular streamers, BHVR hides the cloud id in settings so you cant trick them into revealing it.
You can use this method to join DBD Mobile parties too but you will not be able to connect to a match.
If you use this to any of your projects or mpgh posts, a mention is appreciated
Last edited by geoxhon; 07-08-2020 at 05:06 AM.
adambro3 (07-11-2020),FluxDot (07-08-2020),IThoughtItWasANerf (07-08-2020),[MPGH]T-800 (07-08-2020),thezxcvballs (07-08-2020),WalrusWalrus69 (07-08-2020)
Can they see my dbd friend tag if I join them?
WalrusWalrus69 (07-08-2020)
How do I use this?
Patched already or did I fuck something up?Code:{"type":"UnauthorizedException","localizationCode":"ALREADY_CONNECTED","message":"Unauthorized, Conflict : You are already connected !"} Error! Couldn't join the party, server returned 401 This might be because you are not on the main menu or bhvr patched this
plz, do a tutorial. thanks.
Are you willing to sell a completed tool for this? I'd pay for a tool and a tutorial (something simple idk how to code)