DARK SOULS™: Prepare To Die Edition

DARK SOULS™: Prepare To Die Edition

Not enough ratings
How to Fix Online Play (2022)
By Fauxy_
This is a workaround for the official online service shutting down on October 25, 2022. There's steam posts on how to fix it, so I made a guide for more visibility.
2
   
Award
Favorite
Favorited
Unfavorite
Fix online, copy save file, start game directly & controller setup
0.) Have the game installed and launched at least once.

1.) Go to:
C:\Program Files (x86)\Steam\SteamApps\common\Dark Souls Prepare to Die Edition\DATA
Right click (or Shift+F10) --> New --> Text Document --> Name it "steam_appid" (no quotes)
Open the newly made steam_appid.txt and put "480" (no quotes) and save it.

2.) Download DSCM.zip, extract it, then launch it.
Tick the "Join DSCM-Net" box & "Expand DSCM" box.
DSCM: https://github.com/metal-crow/DaS-PC-MPChan/releases

3.) Go to:
C:\Users\%UserName%\Documents\NBGI\DarkSouls
There should be a folder with a string of letters & numbers with your original save file.
(e.g. a12b34c5)
Open that folder and copypaste the save file into:
C:\Users\%UserName%\Documents\NBGI\DarkSouls
Otherwise, you'll be creating a brand new save file when you launch.

4.) Launch DS:PTDE from the executable
(or make a shortcut and put it on the desktop, rename to "DS1 Online" if it helps)
Won't work if launched from steam

5.) Press Shift+Tab, in the top-right of the steam overlay it should say "Spacewar"
Below that, click "Controller Configuration"
A window should pop up, then change the current layout to "Gamepad"
From "Templates" tab, Layouts created by Valve.

(Or if steam overlay is disabled)
Open your steam library window and you should see "Spacewar" running.
Click it and select "Controller Layout"
A window should pop up, then change the current layout to "Gamepad"
From "Templates" tab, Layouts created by Valve.

6.) Finished!
Remember to open DSCM, then open DS:PTDE directly/desktop shortcut on subsequent plays.
DSCM for Linux
DISCLAIMER:
This DSCM version was made before the RCE exploit was discovered so the RCE fix isn't implemented like in metal-crow's version, use at your own risk.

DISCLAIMER #2:
Since this guide's steps are for Windows, i'm not sure if the Spacewar online workaround would work following the Reddit post's steps.
Maybe making a DS:PTDE shortcut and adding the launch options to the shortcut would work.
If that doesn't, perhaps a bash/shell script would?
Best to ask the Reddit poster or their GitHub.

Reddit post link:
https://www.reddit.com/r/darksouls/comments/rq8a70/dscm_working_under_linux_for_prepare_to_die/
Links from post:
https://github.com/aoleg94/protonhax
https://github.com/shaunraj/DaS-PC-MPChan/releases/tag/v1.0.0

Reddit post quote+link embeds:
Originally posted by u/dscmlinux:
Hello all,

I finally got the Dark Souls Connectivity Mod (DSCM) working under steam's version of Prepare to Die! I tested the following steps on a 64 bit version of Manjaro.

Download and install protonhax[github.com]

If you are installing this on arch linux, you can use the AUR to grab a copy

yay -S protonhax

Download my modified version of DSCM.[github.com] Extract the zip file to a directory of your choosing

In Steam, right click your copy of Dark Souls: Prepare to Die. Under General -> Launch Options, Add the following:

protonhax init %COMMAND%

Start up Dark Souls: Prepare to Die through steam

Open up a terminal window and run

protonhax run 211420 <Path to DSCM.exe>

You should see DSCM connect! You are ready to play with your friends

I have done a full playthough of Dark Souls with a friend using this method. Please let me know if you experience any problems!
DSCM-Net Active Player Count
In DSCM, click the "DSCM-Net (#)" tab. In the parenthesis is the amount of players connected currently, among other relevant player data.

At first It may be misleading until you open the game and start connecting to nodes.
(I think you can connect to nodes from DS:PTDE players using Spacewar that are not in DSCM-Net, but the amount of them playing would be unknown. Since Spacewar player count ≠ DS:PTDE player count.)

Spacewar:
https://steamcharts.com/app/480
DS:PTDE:
https://steamcharts.com/app/211420
Steam IDs shown by DSCM
In the Steam ID column, IDs are shown as hexadecimal instead of decimal.

Using my ID for example:
0110000103ef9a09 = 76561198026299913
https://gtm.steamproxy.vip/profiles/76561198026299913
or
steam://openurl/https://gtm.steamproxy.vip/profiles/76561198026299913
(when opening a link in a regular browser it will redirect to open in steam's browser.)

To find a Steam profile from DSCM, it needs to be converted from hexadecimal to decimal.
https://www.rapidtables.com/convert/number/hex-to-decimal.html

Wulf did mention this in a steam forum reply.
https://gtm.steamproxy.vip/app/211420/discussions/0/364039531220008335/?ctp=2#c364039531221740158
Originally posted by Wulf:
That's just your steam id in decimal instead of hexadecimal. DSCM accepts both.
There's also a reddit post that questioned the SteamID and got an answer here:
https://www.reddit.com/r/darksouls/comments/7jts1l/dscm_steam64_id_are_not_real_steam64_id/
Finding Recent Players
When in the Shift+Tab overlay, inside the "FRIENDS" box, click the "VIEW PLAYERS" button.
(A lot easier instead of doing it manually with DSCM Steam IDs from above.)
Return to Lordran (Reddit Community Event)
There's also the annual community event "Return to Lordran" from the r/darksouls subreddit.
The last one went from January 6th to January 20th.
https://www.reddit.com/r/darksouls/comments/yrk1wq/return_to_lordran_will_be_january_6th_through_the/
Steam posts talking about online fix
https://gtm.steamproxy.vip/app/211420/discussions/0/3487502140251596753/
Originally posted by Jej:
EDIT: I talked to Metal-Crow on Reddit and the only action that is needed other than installing DSCM is creating the steam_appid.txt file with "480" in it. No library file needed.

Also the game must be run straight from the executable itself, not through Steam.

In fact DSCM isn't mandatory but it's highly recommended given that it includes the RCE fix and some additional features that are quite useful.

It's sad that we have no option but to resort to these measures just to be able to play the game we paid good money for.

Original post:

I recently downloaded the fork of DSCM maintained by Metal-Crow but I'm not quite sure if there's any extra steps I need to take as information seems to be unreliable.

Some claim that only the DSCM fork is needed.
Others claim that the fork is needed but one also needs a .DLL file and a text file pointing towards Spacewar.
Others claim that only DSCM and the text file are needed.

I'm not sure which of these is true. I simply want to play the game in co-op so I'm not interested in additional features. I know that Metal-Crow's fork includes a whitelist option so that the only people I'll connect to are the ones I pick.

https://gtm.steamproxy.vip/app/211420/discussions/0/3487502140251596753/#c3547176090243873573
Originally posted by PainkilleR:
Originally posted by Sealer Moon:
How did you install that version of DSCM? The instructions literally just say "start DSCM, start dark souls, enjoy multiplayer :)))))"
Right, so in Dark Souls Prepare to Die Edition > DATA folder you create a steam_appid.txt file and add "480" to it (without quotes). Then you launch DSCM.exe, tick to connect to dscm-net, and launch DS from DATA folder (DARKSOULS.exe). You won't see any nodes if you launch it via Steam though.

That is basically it. The only other thing forth mentioning is that making steam_appid.txt with 480 is a workaround which makes use of other steam's app called "Spacewar". After launching DS manually from game folder, "Spacewar" will appear in you recently launch apps. You might notice that launching DS this way will not follow your settings set for Dark Souls (ie it can show Steam overlay if you disabled it and vice versa, or it won't recognize your controller, etc). To fix those problems, locate "Spacewar" in your steam library, and delete a custom controller config for it or specify your Steam overlay settings (or any other settings for that matter) the same way you'd want to see them in Dark Souls.

https://gtm.steamproxy.vip/app/211420/discussions/0/3182358960690389585/
Originally posted by pgo9ro:
Who knows when they're gonna fix the rce stuff but in the meanwhile, there is a way to be able to play online with this version of the game. It has been mentioned in some threads here and there but nobody has made like a tutorial or thread talking more in detail about it. Not that it's something difficult to put together that it needs a tutorial to begin with, but I thought I might as well post it if somebody might be interested.
Just a couple of things to consider: 1-Use DSCM, the newest versions are way better so I suggest update iit when you can. 2-You can only play online with players that have changed their game configuration which I'm gonna explain further, so for example if you want to play coop with a friend, both of you have to do this in order to be able to play online together. 3-The game might create a new save file located in C:\Users\*your user name*\Documents\NGBI\DarkSouls. In my case, the save file that normally loads is located inside a folder that has my old GFWL user name under the DarkSouls folder. If this your case, I suggest moving your save file and put it directly inside the DarkSouls folder in order to be able to use your current characters.
So with that out of the way, here are the steps:

1-install the game.
2-install dsfix.
3-run the game and close it afterwards.
4-go to the game's directory, a text file named "steam_appid" should be there.
5-open it with notebook, it should display a random number, erase it and type instead "480" (without the quotes!) save and close.
6-open DSCM and, very important, run the game using the dark souls exe on the game's directory, don't run the game via steam or another shortcut, it might not work.

You're done, DSCM should display players now.

If you want to add something or have any doubts, feel free to post them in the replies. Thanks for reading and have fun.
Steam posts talking about online fix 2
https://gtm.steamproxy.vip/app/211420/discussions/0/3469487093563492469/
Originally posted by Blitz4:
EDIT: There is a community created "patch" for the exploit
Originally posted by William, RCE exploit finder:
The good news is that the updated version of DSCM by MetalCrow https://github.com/metal-crow/DaS-PC-MPChan does patch my exploit, and I think most people are using this to play online, as it seems packaged with other popular mods like Remastest. Whether it ships with a recent enough version, I don't know, however.

Originally posted by Metalcrow:
Good news for you, there is a mod/method to keep playing online with PTDE called "spacewars". This is detailed in https://gtm.steamproxy.vip/app/211420/discussions/0/3182358960690389585/, but basically you put a txt file called steam_appid.txt in with the game, and have the text of it be 480. This will allow you to connect to everyone else using this method. This is what the Remastest mod does.

With this and DSCM you should be able to easily keep playing PTDE!
Now, back to your regularly scheduled broadcast...


Last year Dark Souls was my favorite game. Elden Ring is great, but due to technical and design issues, it's not better than Dark Souls.

The main issue with all Souls-like games of yours is that those that allow Multiplayer are easily hackable, this was known for the past 10 years when Dark Souls: PTD for PC was released and chosen to not be fixed. If you believe you had fixed that issue, nothing you did directly fixed or was relevant to fixing the the hacking issue. The popularity of the games caused more to find tricks seeing that you didn't bother preventing hacking, this allowed some to find ways to literally hacking your opponent's computer and run commands to steal their private data (RCE). It was your choice to not fix the issue.

This decision now, to not fix the RCE in DS:PTD is far far worse, when you already have the code todo so.

This game built the Dark Souls brand, Sekiro, Bloodborne, Elden Ring and also your company. I'll stop recommending it now and suggest a better game instead. I feel so so bad for the streamers and runners and loyal fans for this game.

You do know this decision is a major major video game security risk right? Players are going to create their own servers, you could've consulted with them instead of publicly giving up. You could've had the work done for you for free, but now have this blemish that will never be forgotten. It'll be an asterisk next to any game you release from this point forwards.

There's two good choices at this point and both have something in common.
  1. Fix the RCE in DS:PTD and keep the servers offline
  2. Fix the RCE in DS:PTD and put the servers back online

Don't leave the legacy of Dark Souls in a broken state.

It's also ignorant as you haven't even fixed Dark Souls:Remastered yet. How does anybody here know that you will. If you announce in 2 weeks that you won't fix DS:R, then those that bought DS:R at full price will forever be hateful of your company. It's even worse than just that, From knows that this won't gain traction in social media because DS:PTD is not purchasable on Steam, another form of ignorance. And what's even more ignorant is the "fix" that was implemented in Elden Ring which still allowed hacking, and the patch released for all other Dark Souls games will still allow hacking and in a few years there will likely be another RCE, because it was decided when you were first aware of this issue a decade ago, to not fix it and now you have years of code built on this issue that you don't know how to fix without spending millions to fix it. Sorry. From Software, this is the price you must pay to fix the brand that built your company.

https://gtm.steamproxy.vip/app/211420/discussions/0/3484123669090959843/
Originally posted by ReborN:
You just need to do a bit of work, but 100% still works. Dark Souls 1 PTDE is P2P.

Don't let them kill the best version!!
https://www.youtube.com/watch?v=2-5HIYRzFfA
https://github.com/metal-crow/DaS-PC-MPChan

If you don't want to download the pack from Youtube try this:
https://gtm.steamproxy.vip/app/211420/discussions/0/3182358960690389585/
9 Comments
Milo 27 May @ 2:11pm 
When I launch Dark Souls 1 as "Spacewar", my controller no longer works in the game. I know my controller works, as it works both in the game when launched properly, and in Steam's controller testing menu.

I even tried to add "SpacewarSouls" as a "non-steam game" to see if I could attempt to brute-force the controller API to work. No luck. If it helps, I am using an Xbox One controller.
Inside 23 Mar @ 7:32pm 
HOST_LC_ALL=ko_KR.UTF-8 %command%
Fauxy_  [author] 4 Jan, 2023 @ 9:44pm 
Good to know. I'd also appreciate a response for when/if you do find out.
Vampire Hunter D 3 Jan, 2023 @ 4:16pm 
I can confirm that the Linux instructions do not work anymore, and applying the spacewar workaround on Linux is not straightforward. I haven't figured out how to do it yet.
Fauxy_  [author] 14 Dec, 2022 @ 1:06am 
Could try installing Dark Souls Mouse Fix
https://www.nexusmods.com/darksouls/mods/1241
It requires DSFix
https://www.nexusmods.com/darksouls/mods/19
D!cK 14 Dec, 2022 @ 12:55am 
have you any idea how make game not so sensitive... I mean I play with k/mouse.... When I look around feels not ok...it go for fast....maybe need try low fps to 30 but cant do it ingame. It say 59/60
Fauxy_  [author] 14 Dec, 2022 @ 12:34am 
I don't know if achievements work with this since I already have them all.
D!cK 13 Dec, 2022 @ 10:53am 
works online achvimnts on this way?
Demon of Mathematics 9 Dec, 2022 @ 10:52am 
Hey, seems good (haven't tried it yet). Thank you for this guide.