Jump to content

SACRED 2 ONLINE MULTIPLAYER: HOW-TO, DISCUSSION & DEVELOPMENT


Recommended Posts

9 hours ago, xrystal said:

Hello GhostTula,

just to be clear, do you want to host a gameserver on your system or a complete lobby? And is your operating system Windows or Linux? I think I will not be able to explain that understandable through a translator, but I could try to record a small video to show you how if I know what exactly you want.

Привет GhostTula, для ясности, вы хотите разместить игровой сервер в своей системе или целое лобби? А у вас операционная система Windows или Linux? Думаю, я не смогу объяснить это понятно через переводчика, но я мог бы попытаться записать небольшое видео, чтобы показать вам, как, если я знаю, что именно вы хотите.

Thank you very much. I have Windows 10 installed. I want to launch the lobby.

  • Appreciation 1
Link to comment
  • 2 weeks later...
15 hours ago, GhostTula said:

Good afternoon, can I find out when the video will be released?

Hi, sorry to keep you waiting, I will try to get this done tomorrow, for real. :unsure:
I already have a windows virtual machine prepared, but am still thinking about how to best display the port forwarding and firewall rules, because my home network, especially with an example lobby from inside virtual box will not be really representative to a typical network at home. The currently hosted lobby runs on a dedicated server hence networking is way easier there than at home, but I still want to get it explained/visualizied somehow understandable.
 

  • Like! 1
Link to comment
1 hour ago, xrystal said:

Hi, sorry to keep you waiting, I will try to get this done tomorrow, for real. :unsure:
I already have a windows virtual machine prepared, but am still thinking about how to best display the port forwarding and firewall rules, because my home network, especially with an example lobby from inside virtual box will not be really representative to a typical network at home. The currently hosted lobby runs on a dedicated server hence networking is way easier there than at home, but I still want to get it explained/visualizied somehow understandable.
 

Thank you for your efforts, you can take your time, I'll wait

Link to comment
  • 3 months later...
On 10/13/2019 at 6:14 AM, xrystal said:

Yes, Sacred 2 Multiplayer is a thing again in almost all of it's glory and this is how to play in the OpenNet without using any additional software:

Joining

  1. Launch Sacred 2 (Gold or any version patched to Ice&Blood 2.65, Steam also supported) and go to Multiplayer > OpenNet
    If there is no OpenNet Button, download this file linked here, copy it into your game directory with the same folder structure and restart Sacred 2 before proceeding.
  2. Create a new account:
    You need to fill out all fields, but may enter whatever you like - however: please do not enter your actual cd-key or real email address, just use fake data instead as it does not matter and I dont want to know those anyway, I just can't prevent the game on your end asking for it and sending it to me ;)
  3. Enter the lobby with your credentials and select an existing character or create a new one.
  4. Join any server which matches your game version (see server title and description).
    Joing a non-matching server will crash your game without further notice, so go to a "vanilla" server with an unmodded game and to a "cm160hf" one with the CM Patch installed for example.
  5. Loot Ancaria :)

      Currently, there are pre-configured servers available for following configurations which are hosted together with the lobby (I.e. should be always online): 

  •     "Vanilla" default game without any mods (all difficulties, free & campagin)
  •     "CM Patch 1.60hf" modded game (all difficulties, free & campagin)
  •     "Sacred2 Enhanced Edition 2.4B" (all difficulties, free only)

      Still missing on the list is Dimitrius's Addendum, but it will be added eventually.

Hosting a Server

  1. First, ensure the port your game shall run at is accessible. By default, you want to make sure port 7011 is free in your firewall at least for UDP traffic. If you host it at home, you will have to make sure your internet router does allow & redirect that traffic, too. How exactly to do this depends very much on the network equippment you use, so it is not possible to go into more detail here for me in general - just ask please if you have issues with a specific setup and with sufficient information provided we might be able to help you with that.
  2. Host your server, there are multiple ways to do so:
  • Straight-forward approach, ingame in the Lobby

    After hosting, you will join your new server automatically and it will keep running aslong as your own game does. Others will see it in the lobby now and will be able to join aslong as everything with the port is fine. Remember however, that most internet service providers change their customers IPv4 address every 24hours which may result in sheduled disconnects of your server. If you or your players dont like this, running the gameserver on a server in some datacenter with a static address might be preferable. Depending on the available operating system, dedicated solutions like the following two might serve that purpose for you.

  • Dedicated on Windows:
    Open a commandline (Windows+R Shortcut, input "cmd" and hit enter), navigate to your sacred2 installation folder where the s2gs.exe is located. Start it in the commandline with parameters. Example:

s2gs.exe -connmode=opennet -diff=silver -name="Example Server" -description="It would be kind to put a list of mods here if required" -numplayers=5 -type=free -lobby=us.sacred2.net -lobby_port=6900 -externalip=YOUR_IPV4_ADDRESS_HERE -port=7011 -lobby_name=YOUR_ACCOUNT_USERNAME -lobby_pwd=YOUR_ACCOUNT_PASSWORD

For a full list of parameters, see this post which is still up-to-date and valid.

  • Dedicated on Linux (for example a server you own with a static ip address)

The parameters are the same, but since we are on Linux we will need to use wine to launch that windows binary. For that purpose, I have added a example server which is deployed via docker-compose. Just edit the .env to your liking (at least set your servers ip address) and you should be good to go. See this post for more about that.

Hosting a Lobby

  1. You may also setup a complete lobby on a server yourself with it's own game server registry which you or other players could use then to play together by altering the client side "network.lobby_ip" in the        "OptionsCustom.txt" to an address you host it on. This is technically a bit more involved and I suggest reading the whole discussion in this thread if you want to do that as it describes how this all currently works (my lobby server runs that way, too). A copy of the lobby files is hosted at github (yes, needs update, I know ;)) and it is based on this user's post.

I know many information in my post are a bit too general and would also be easier to understand if not only in textform - they will be fleshed out a bit more, soon enough, but for now, this loose collection will have to do. :P
Oh and btw., even while only testing this in a very small scale I still already had the pleasure to meet a few nice people on the servers and for me thats basically what this is all about, bringing the players together, so in terms of purpose this little project already succeeds :)

Thanks to all of you who made it possible to get it this far (and maybe even further)!

Old original entry post as of 10/13/2019, for reference:

  Hide contents

 

Hello,

first things first, I know this is an oddly specific request, however, since asking is cheap and neither time nor success is crucial on this (still it would be very convenient ;)), I will put it anyway: Does anybody has - maybe somewhere hidden in his always growing pile of data or on a old, dust covered hdd lying lonley in some dark corner - network traffic probe files which may randomly include sacred 2 lobby traffic and would be willing to share them (for wireshark, the filter to check for potential traffic would be "tcp.port == 6800" in files, if I remember right, from somewhere between october 2008 and april 2012) for analysis purposes?

I am currently looking into the tincat3.dll and it seems like an actually not impossible, but still time-consuming task to reconstruct the packages sent. I am willing to try this, but also I am more or less only able to work on my rare free weekends on this, so this would take a long time and long time projects in my experience tend to fail. Further more, since the first Sacred - accoding to this thread - uses the older version tincat2.dll which seems quite similar, it would be likewise useful traffic as well, probably not only for me. However, because of it's age I assume the odds are even worse?

Playing with friends on a VPN works nice & flawless, but is for sure not convenient enough for the majority of other players and I kinda miss the simplicity of the old lobby system - even if it never was that busy there, the people you met were always nice to play and talk with and you did not have to scare them away with technical client-side stuff like you are nowadays forced to... :P

 

 

I love you so much XD. The day that my SW comes again to online life has come. U have winned a freaking big beer :bow:

  • Haha 1
Link to comment
7 hours ago, warpoyo said:

I love you so much XD. The day that my SW comes again to online life has come. U have winned a freaking big beer :bow:

This was actually a massive win... noone thought it could be done and for years reverse-engineering the code was thought impossible.  This topics actually a great adventure to read, with the back and forth convos on their way to victory...

Sacred + Community + Forever!

:knight:

gogo

Link to comment
7 hours ago, gogoblender said:

This was actually a massive win... noone thought it could be done and for years reverse-engineering the code was thought impossible.  This topics actually a great adventure to read, with the back and forth convos on their way to victory...

Sacred + Community + Forever!

:knight:

gogo

That's right..... and it's time to play with my sw online as I did it in the old good days XD

Link to comment
  • 3 weeks later...

Hello! First of all, thank you for giving us the opportunity to play online again with our friends :)

Now I'm trying to create the server in the open net, but I can't understand how to do it :(, do you know if there is a video or something that shows me how to do it? Or any advice of how to get it?

Thank you all!

  • Like! 1
Link to comment
  • 1 month later...

Thanks guys for all your work ! 

I'm discovering the game with my gf who played it years ago and wanted to share some good old memories. 

We'd like to play coop but are probably missing some point with the port redirecting part and we can t create a server and join each other because of an error 61. 

If anyone could lend a piece of advice , we'd be grateful ! 

 

Link to comment
21 minutes ago, jedijimi said:

Did you get it from steam? If yes verify the files. Are you using LAN?

Thanks jedjimi for the helpful info!

On 4/11/2021 at 2:21 PM, Cutter said:

Thanks guys for all your work ! 

I'm discovering the game with my gf who played it years ago and wanted to share some good old memories. 

We'd like to play coop but are probably missing some point with the port redirecting part and we can t create a server and join each other because of an error 61. 

If anyone could lend a piece of advice , we'd be grateful ! 

 

Cutter, we're happy to meet up with you here on the forums

Welcome to DarkMatters!

:dance2:

gogo

Link to comment
On 4/11/2021 at 8:21 PM, Cutter said:

We'd like to play coop but are probably missing some point with the port redirecting part and we can t create a server and join each other because of an error 61. 

Have you tried putting the game executables (Sacred2.exe and S2gs.exe) in the exception lists of your firewalls and/or antiviruses? They often block connections for games by default.

  • Thanks! 1
Link to comment

After I had lots of problems getting Sacred2 Multiplayer to run with VPN connections (tried ZeroTier One), I found this and its just amazing that someone relaunched Servers using the old official domain! Many thanks! 

But now there seems to be a problem with the preconfigured servers which appear in the list on the default domain eu2.sacred.net. I can walk around and see the other players moving, but the enemies do not move. I can't damage them and they do not inflict damage to me. I tried "Vanilla" on Bronze Campagin and Silver Campaign, both have the same issue. Up to last week, everything was working fine. Progress also isn't recognized properly and is only displaying the quest marker on the initial island. Are these existing servers working for you?

Many thanks in advance!

 

Link to comment
On 11/21/2020 at 9:27 AM, xrystal said:

Hi, sorry to keep you waiting, I will try to get this done tomorrow, for real. :unsure:
I already have a windows virtual machine prepared, but am still thinking about how to best display the port forwarding and firewall rules, because my home network, especially with an example lobby from inside virtual box will not be really representative to a typical network at home. The currently hosted lobby runs on a dedicated server hence networking is way easier there than at home, but I still want to get it explained/visualizied somehow understandable.
 

Good day. I would like to know why there is no news from you

Link to comment
9 minutes ago, GhostTula said:

Good day. I would like to know why there is no news from you

Hi Vladimir!

We had actually turned off emal notifications from this forum to members outlying becaus it kept freezing the forum.  i'm sorry about that and understand that everyone here is excited and wants to play Sacred ! :dance:

I'll send him an email, hopefully it will connect and we'll see about turning on at least this topic's email status

Thank you for posting and showing so much interest in his and this team's work!

 

:gogo:

gogo

Link to comment
21 hours ago, GhostTula said:

Good day. I would like to know why there is no news from you

Because I am organizing my private projects time very poorley - again, even though I know how lame that sounds in repetition after such a long time, I can only say sorry for that. Instead of getting stuff just done somehow, I tend to do various things at once and cling to completing neglectible details, which in the end, especially since the everyday life started to consume more and more of my time, just led to way too many things staying unfinished and even sometimes got out of my mind and sight, like those instructions I wanted to prepare for you. So instead of other awkward promises - I just don't know when I will find the time to get this video done the way I wanted to do it (and same is for other tutorials requests as above :unsure:) - I will try to at least outline it as good as I can for the moment as plain text with a few pictures:

First, you have to setup the network stuff to make your lobby accessible from the outside world:

  • In your router, NAT and Portforwardings from your WAN Address to the computer dedicated to run your lobby. If you want to make things easier for the ones who will join your lobby, use all regional default ports, so they don't have to change them in their sacred2 game config on their own:
6800 (EN/FR/IT/DE/AUS/Swiss/Nordic People/Portugal/Benelux/Greece/Australian/South Africa)
6810 (PL/CZ/HU/Slowak)
6820 (SP)
6850 (RUSS)
6900 (US,Canada,Mexiko)
6801 (is also needed for the chat rooms)
  • on the computer with the lobby, allow these ports in the software firewall (I.e. windows firewall or that of your antivirus solution if you have any special installed)
6800 (as main lobby ports onto which all regional ports have been forwarded by your router)
6801 (for chat)
  • The details may differ depending on your router and network setup, but in general, it will look similar to this configuration (pictured example from my opnsense firewall)
  • optionally, setup DDNS on your router and link it to a cheap domain, because your IP will most likely change daily which would be invonvenient for your clients

Then, the lobby itself has a few requirements on windows, two options are available:

1. use cocomeds pre-built binary:

  • works out of the box with sqlite, which makes setup easy
  • you can get the sqlite dll file here (needs to be copied to binary folder)
  • configuration as per his included readme.txt file

2. get the version from my repo:

  • that is the same binary version I currently use for my lobby
  • has a few bugfixes, but currently needs mysql and you have to build it
  • for building, you'll will either need to install Microsoft Visual Studio or MonoDevelop
  • you can get the mysql dll file here (needs to be copied to binary folder)
  • configuration same way as the previous option, however with additional lines in config files: 
    db.cfg
    	line1: IP Adress of Database (if on the same computer 127.0.0.1)
    	line2: Database Port (3306 is default for mysql)
    	line3: Database Name (s2lobby is default)
    	line4: Database User (root is default)
    	line5: Database Password
    ip.cfg:
    	line1: Your public WAN Ip (or DDNS domain)
    	line2: Lobby Port (default 6800)
    	line3: Lobby Chat Port (default 6801)

     

Maybe you could use Docker on Windows, too, then it would be easier with my repo as docker would handle the database stuff , but I only ever tested these docker files in a linux environment and networking differs a bit there as it is not running in a home network, so I am not sure about that.

 

On 4/14/2021 at 8:12 PM, Steforus said:

After I had lots of problems getting Sacred2 Multiplayer to run with VPN connections (tried ZeroTier One), I found this and its just amazing that someone relaunched Servers using the old official domain! Many thanks! 

But now there seems to be a problem with the preconfigured servers which appear in the list on the default domain eu2.sacred.net. I can walk around and see the other players moving, but the enemies do not move. I can't damage them and they do not inflict damage to me. I tried "Vanilla" on Bronze Campagin and Silver Campaign, both have the same issue. Up to last week, everything was working fine. Progress also isn't recognized properly and is only displaying the quest marker on the initial island. Are these existing servers working for you?

Many thanks in advance!

 

I saw that happening twice already: The servers seems to break after many weeks of continuous runtime, but instead of throwing errors or crashing, which both would actually be a good thing as that would be automatically handled :), they keep running staying silent about the issue in the background. Sadly, I don't know how to monitor that from the outside, so aside from noticing the issue activley playing on the servers and acting up manually in case of occurence, the only option to keep them healthy would be a scheduled restart every few days for example. But actually I don't really like that idea either, as it would mean - considering the different timezones playing - that chances are, a restart would hit somebody during playtime makeing him lose a bit of progress (I.e loot) which is never fun.
During the last months I just let the server infrastructure running unsupervised, so I missed to catch that error. I have restarted it now and you should be able to see the kobolds running in terror & fear again from you as they usually do ;)
 

21 hours ago, gogoblender said:

I'll send him an email, hopefully it will connect and we'll see about turning on at least this topic's email status

Yes, it did connect, thank you for writing me :D. But while notifications would be convenient, a good working forum is naturally the more important matter :P and the actual issue here was me not having enough time anyway, even if I would have noticed the posts in my absence. I would love to put more effort into all of this, as it still amazes me to have been given the opportunity to work with that lobby code and seeing quite a few players connecting to the servers. I just don't know yet when I will be able to actually do that again. Nevertheless, I will try to be more responsive, especially in case something fails again.

  • Appreciation 1
Link to comment
  • 2 weeks later...

Guys and Girls, Greetings all! Long time no see :) Since it's 2021 year and I have a new interest in Sacred 2 got few questions on multiplayer side of PC version, since my ps 3 gone with and years gone I want to ask you how I can play for multiplayer? I gor gold edition of it and got CM patch also. The main question is - how to get files which you upload to dropbox or mediafire, because in Russia we got blocked at those sites, so we cannot go for them.

Sincerely Andrasael.

  • Like! 1
Link to comment
Just now, Andrasael said:

Guys and Girls, Greetings all! Long time no see :) Since it's 2021 year and I have a new interest in Sacred 2 got few questions on multiplayer side of PC version, since my ps 3 gone with and years gone I want to ask you how I can play for multiplayer? I gor gold edition of it and got CM patch also. The main question is - how to get files which you upload to dropbox or mediafire, because in Russia we got blocked at those sites, so we cannot go for them.

Sincerely Andrasael.

Gogo, Dobri - the old Army of Sacred 2 hear me and answer ^^ I know you will read this.

  • Like! 1
Link to comment
On 4/27/2021 at 7:16 PM, xrystal said:

Hey @Andrasael
pretty short term solution but should do it for now: I mirrored the file NegativeOne shared to my server - that should not be blocked in your region, hopefully ;)
With that fix you will see the OpenNet button in the multiplayer menu again which will allow you to play (assuming your CM Patch is 160 Hotfix on game version 2.65.1, older versions may work with self hosted servers, but I am not sure about it as I never tested it).

Million + to your karma !!!! Thanks a lot. Will try ))) Yep, cm  and 2.65.1. installed.

Link to comment
On 4/27/2021 at 3:38 AM, Andrasael said:

Gogo, Dobri - the old Army of Sacred 2 hear me and answer ^^ I know you will read this.

Lots of us are still here.. great seeing that youre still in love with this game! Xyrstal has, with his team, found way for community to still play online!

:bounce:

gogo

Link to comment
On 4/17/2021 at 6:46 AM, xrystal said:

Because I am organizing my private projects time very poorley - again, even though I know how lame that sounds in repetition after such a long time, I can only say sorry for that. Instead of getting stuff just done somehow, I tend to do various things at once and cling to completing neglectible details, which in the end, especially since the everyday life started to consume more and more of my time, just led to way too many things staying unfinished and even sometimes got out of my mind and sight, like those instructions I wanted to prepare for you. So instead of other awkward promises - I just don't know when I will find the time to get this video done the way I wanted to do it (and same is for other tutorials requests as above :unsure:) - I will try to at least outline it as good as I can for the moment as plain text with a few pictures:

First, you have to setup the network stuff to make your lobby accessible from the outside world:

  • In your router, NAT and Portforwardings from your WAN Address to the computer dedicated to run your lobby. If you want to make things easier for the ones who will join your lobby, use all regional default ports, so they don't have to change them in their sacred2 game config on their own:

6800 (EN/FR/IT/DE/AUS/Swiss/Nordic People/Portugal/Benelux/Greece/Australian/South Africa)
6810 (PL/CZ/HU/Slowak)
6820 (SP)
6850 (RUSS)
6900 (US,Canada,Mexiko)
6801 (is also needed for the chat rooms)
  • on the computer with the lobby, allow these ports in the software firewall (I.e. windows firewall or that of your antivirus solution if you have any special installed)

6800 (as main lobby ports onto which all regional ports have been forwarded by your router)
6801 (for chat)
  • The details may differ depending on your router and network setup, but in general, it will look similar to this configuration (pictured example from my opnsense firewall)
  • optionally, setup DDNS on your router and link it to a cheap domain, because your IP will most likely change daily which would be invonvenient for your clients

Then, the lobby itself has a few requirements on windows, two options are available:

1. use cocomeds pre-built binary:

  • works out of the box with sqlite, which makes setup easy
  • you can get the sqlite dll file here (needs to be copied to binary folder)
  • configuration as per his included readme.txt file

2. get the version from my repo:

  • that is the same binary version I currently use for my lobby
  • has a few bugfixes, but currently needs mysql and you have to build it
  • for building, you'll will either need to install Microsoft Visual Studio or MonoDevelop
  • you can get the mysql dll file here (needs to be copied to binary folder)
  • configuration same way as the previous option, however with additional lines in config files: 
    
    db.cfg
    	line1: IP Adress of Database (if on the same computer 127.0.0.1)
    	line2: Database Port (3306 is default for mysql)
    	line3: Database Name (s2lobby is default)
    	line4: Database User (root is default)
    	line5: Database Password
    ip.cfg:
    	line1: Your public WAN Ip (or DDNS domain)
    	line2: Lobby Port (default 6800)
    	line3: Lobby Chat Port (default 6801)

     

Maybe you could use Docker on Windows, too, then it would be easier with my repo as docker would handle the database stuff , but I only ever tested these docker files in a linux environment and networking differs a bit there as it is not running in a home network, so I am not sure about that.

 

I saw that happening twice already: The servers seems to break after many weeks of continuous runtime, but instead of throwing errors or crashing, which both would actually be a good thing as that would be automatically handled :), they keep running staying silent about the issue in the background. Sadly, I don't know how to monitor that from the outside, so aside from noticing the issue activley playing on the servers and acting up manually in case of occurence, the only option to keep them healthy would be a scheduled restart every few days for example. But actually I don't really like that idea either, as it would mean - considering the different timezones playing - that chances are, a restart would hit somebody during playtime makeing him lose a bit of progress (I.e loot) which is never fun.
During the last months I just let the server infrastructure running unsupervised, so I missed to catch that error. I have restarted it now and you should be able to see the kobolds running in terror & fear again from you as they usually do ;)
 

Yes, it did connect, thank you for writing me :D. But while notifications would be convenient, a good working forum is naturally the more important matter :P and the actual issue here was me not having enough time anyway, even if I would have noticed the posts in my absence. I would love to put more effort into all of this, as it still amazes me to have been given the opportunity to work with that lobby code and seeing quite a few players connecting to the servers. I just don't know yet when I will be able to actually do that again. Nevertheless, I will try to be more responsive, especially in case something fails again.

Thank you for the amazing guide, time and support! This is still one of the most noteworthy creations this community has assembled over the 15 years... always honored with the amount of passion and commitment the community keeps putting into this game!

:hugs:

gogo

Link to comment

Original Thread for those who knows German:

https://forum.worldofplayers.de/forum/threads/1547669-Anleitung-Sacred-2-OpenNet-Multiplayer

 

Finally someone came up with the Idea of buying the OpenNet Server Domain and wrote an Lobby Server Script.

Supports Modded and Vanilla Clients!

How to Play:

1. Start your Game

2. Choose Multiplay

3. Create a New Account

   -Choose Username

   -Choose Password

   -Choose any E-Mail (Please don´t use your real one the Admin don´t want your Information)

   -Choose any Random CD-Key for example 1111-1111-1111-1111

Have Fun!!

He got the EU-Domain (eu.sacred2.net:6800) so I don´t know if your Game needs another Domain.

 

Edited by IsBrainAFK
Link to comment
  • The title was changed to SACRED 2 ONLINE MULTIPLAYER: HOW-TO, DISCUSSION & DEVELOPMENT

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...
Please Sign In or Sign Up