Previous Post

[Update] Dark Souls 2: Seamless Co-op - Enemy Scaling, Player Spectating, and Voice Chat

Next Post
[Update] Dark Souls 2: Seamless Co-op - Enemy Scaling, Player Spectating, and Voice Chat
1 / 3
DESCRIPTION

Hi everyone

Development of the mod continues. And in this post I will describe some of the features I've added / modified on top of the vanilla co-op experience.

Enemy Scaling

In the vanilla game, only certain powerful enemies have any sort of multiplayer scaling (e.g. bosses behind fog walls). Enemies you see in the map area won't get any buffs as more players join the session.

In order to somewhat preserve the game's challenge, I have implemented my own baseline scaling manager within Dark Souls II seamless co-op which will - by default - be set to 80% increased health per friendly player. This will of course be customisable by the session host.

Additional enemy damage scaling will also be possible, however this will either default to 0% increase or a very low number as being one-shot by a regular hollow doesn't seem very fun.

Spectating

I've been hard at work implementing spectator mode into seamless. In the previous games I had used the debug camera control feature left over from the developers to lock the camera onto a target to spectate them.

This is not present in Dark Souls II - so instead I spent a day reverse engineering the player camera system to create a spectator mode which dead players will enter when fighting a boss or if there is an invader present in this session.

Let me know what you think!

Voice chat

Voice chat is a feature that was first introduced in Dark Souls II and was later brought forward into Dark Souls III. FromSoftware have implemented this almost exactly the same as the Spacewar demo project available on Steamworks - as a result the sample rate for the audio of other players is an ear-grating 11000 (think xbox 360 mic tier audio quality) which is all that Steam's voice chat system supported at the time.

As this has been upgraded on Steam's end to a sample rate of 48000 now, this is something I have implemented into the mod itself. As a stretch goal for the mod I think I would like to eventually add proximity chat as an option to the mod as this might make the game more enjoyable for both co-opers and invaders alike.

Vanilla bugfixes

As I have described on my previous post - despite the recent fixes applied by the developers - Dark Souls II still has some extremely problematic networking exploits that I have already fixed in the Blue Acolyte mod.

One example of this is the MapItemPackNetworkCtrl list of networking packets. This is the way that the game controls and synchronises items dropped and picked up by other players and is largely host-based.

For example - when player A is the host and player B and C are guests:

Player B drops an item -> Information about the item is sent to player A who then distributes the information back to player B and C spawning the map item object (the bag you see on the floor)

Player C picks up the item player B dropped -> A pickup request is sent to player A, who then validates that the item object still exists. Then a pickup confirmation packet will be sent back to player C which will give them the items within the map object.

The "item injection" script that many cheaters abuse is simply directly sending the pickup confirmation packet to players who have not attempted to pick up an item. Therefore making it possible for the cheater to spawn an invalid / save corrupting item and put it in another player's inventory without any interaction from the victim player.

Aside from this, there are several other crashes and save-corrupting exploits that are rather easy to pull off using these unsafe systems. I've implemented all of the most critical fixes from Blue Acolyte into seamless (and improved many of them).

Next steps

The next big hurdle I have to overcome is being able to request world information from the host for every map upon joining. Right now, the mod works flawlessly if you stick directly with the host the entire time. However you may encounter issues if you warp to an area, and then walk to a map that the host has completed before as the updated map information for that completed area isn't yet networked.

I'll probably make more posts as this develops as there's a lot to discuss. I considered making a video discussion some of these topics as I could talk about them for hours - I just try to keep it readable and interesting.

As always - thank you for your patience and a huge thank you to all of my supporters <3

Take care,

Yui

Yui PATREON 22 favs
VIEWS1
FILES3 files
POSTEDNov 16, 2025
ARCHIVEDNov 16, 2025