Skip to content

GenesisFR/DS1TroubleshootingGuide

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

132 Commits
 
 
 
 

Repository files navigation

Dungeon Siege 1 Troubleshooting Guide

Table of Contents

Glossary

Shortcuts used throughout this document:

DS = Dungeon Siege (base game)
GPU = Graphics Processing Unit (graphics card)
LOA = Legends of Aranna (expansion)
MP = Multiplayer
SP = Singleplayer
<config-file> = %USERPROFILE%\Documents\Dungeon Siege\DungeonSiege.ini
<config-file-LOA> = %USERPROFILE%\Documents\Dungeon Siege LOA\DungeonSiege.ini
<gpu-model> = actual name of your GPU (ex: NVIDIA GeForce GTX 1070)
<mod-name> = folder name of your mod (ex: u6p)
<path-to-docs> = %USERPROFILE%\Documents\Dungeon Siege
<path-to-docs-LOA> = %USERPROFILE%\Documents\Dungeon Siege LOA
<path-to-game> = your installation directory (ex: %PROGRAMFILES(X86)%\Steam\steamapps\common\Dungeon Siege 1)

Please note that while this document is based on the Steam version (combined with Killah's fix), I did my best to accommodate retail users and those not using LOA. Some steps may be different and a few issues may not happen on the retail version.

Guides

Add the game on GameRanger

Method 1:

  1. Download the reg patch and run it from <path-to-game> (select option 4).

  2. In GameRanger, hit Edit -> Options -> Games -> Dungeon Siege -> Browse then select DungeonSiege.exe (the executable must be named DSLOA.exe for LOA) from Program Files:

    GameRanger

Method 2:

  1. Download and run Symlinker (click on Download Standalone Executable). It's a front-end for the mklink command.

  2. In Symlinker, make a directory junction to your game directory in Program Files:

    Symlinker

  3. In GameRanger, hit Edit -> Options -> Games -> Dungeon Siege -> Browse then select DungeonSiege.exe (the executable must be named DSLOA.exe for LOA) from Program Files:

    GameRanger

Note: to change the game resolution, see method 1 or 3 of Use unsupported resolutions.

Capture the game with OBS

By default, the game can't be captured using game capture in OBS, there are 2 ways to work around it:

Method 1:

  1. Install dgVoodoo2.
  2. Add a game capture in OBS and leave it on Capture any fullscreen application.
  3. Run the game and OBS will capture it if dgVoodoo was set up correctly.

Note: the game will crash when loading games and going back to the main menu if it's still being captured (you can set a hotkey in OBS to toggle the visibility of the game capture so it stops capturing the game).

Method 2:

  1. Run the game windowed.
  2. Add a window capture in OBS and select DS (stretch it to fullscreen if you want).
  3. Close DS and undo what you did in step 1 so it runs fullscreen.
  4. Run the game again, OBS will still capture it.

Note: if you're not playing at your native resolution, just make sure you don't alt-tab otherwise it'll fit only part of the screen! If you have to alt-tab, you can either go back to the main menu and load your saved game, or add a Crop/Pad filter (relative) on your window capture to remove the black borders. If the game is not captured or listed in the drop-down menu at all, then you're either running the game in compatibility mode or as admin (OBS can't see processes with compatibility modes and won't list admin processes unless it's also run as admin). If it's not the case, then you're on a system with an integrated GPU and a dedicated GPU (like a laptop) and you may have to run the game on the same GPU that OBS is using. This method also works with other games, as long as they're using DX9 (or older) or OpenGL.

Change the FOV

Hex-edit the game's executable.

Convert DS saves to LOA

After installing LOA, you won't be able to load your DS saved games. You need to add a flag in each saved game for LOA to recognize your DS saved game by performing both steps below:

Decompile the save:

  1. Download and run Tank Viewer.
  2. Click on Open, navigate to <path-to-docs>\Save and select your save.
  3. Click on Extract and select a folder (preferably empty) where to extract the files.
  4. Open the info.gas file with a text editor.
  5. Right below the line starting with is_auto_save, add another line is_dsx = true;.
  6. Save the file.

Recompile the save:

  1. Download and run Tank Creator.
  2. Click on Source and select the folder where you decompiled the files earlier.
  3. Click on Output, select <path-to-docs-LOA>\Save and make sure the file has a DSSAVE extension.
  4. Select DS & LOA under Format.
  5. Click on Create (if nothing happens, see Tank Creator doesn't work).

You should now be able to load your save in LOA. The inventory of your mules may become glitched though (see Packmule inventory is inaccessible).

If you prefer a visual guide, see this.

Source: https://discordapp.com/channels/373223103985090581/400744824593973248/587998587112259584

Enable DirectPlay

If Windows doesn't detect that the game needs DirectPlay (when clicking on Multiplayer), you have to enable it manually.

Method 1 (Windows 10 or later):

Type this command in an admin command-line prompt:

fondue /Enable-feature:DirectPlay

Method 2 (Windows 7 or later):

Type this command in an admin PowerShell prompt, it'll automatically enable any other component required for Directplay to work:

Enable-WindowsOptionalFeature –FeatureName "DirectPlay" -All -Online

Method 3 (Windows Vista or later):

Go to Control Panel -> Programs and Features -> Turn Windows features on or off -> Legacy Components -> Enable DirectPlay.

Method 4 (Windows XP):

Go to the Control Panel -> Add or Remove Programs -> Add/Remove Windows Components. From there, check the box for DirectPlay under the Games section and click OK.

Enable EAX

  1. Download dsoal.
  2. Extract dsound.dll and dsoal-aldrv.dll to <path-to-game>.
  3. Run the game and enable EAX in the options.

Enable LOA

Follow the instructions from Killah's guide.

HD textures

There are currently two HD textures packs available.

The first one (recommended) is a set of upscaled textures (based on the original) using ESRGAN by Antrad2020.

The second one is a set of textures from the Legendary Mod (a DS2 mod that ports DS1 content over the DS2 engine) ripped by Eksevis.

Note: it seems to work fine on all custom campaigns and doesn't bloat saves (only tested in The Lands of Hyperborea and the Ultima remakes).

Import a character

If you want to import an existing character into a single player game, do the following.

  1. Download Siege Editor and install it.
  2. Load your latest save and save it again with a simple name (ex: X).
  3. Run the game again through DSMod or DSLOAMod (they enable the in-game console).
  4. Start a brand-new single player game.
  5. Bring down the console (~), point the cursor at a wide-open patch of ground, and run this command: party load X.dssave

Increase shadow resolution

Open <path-to-game>\system_detail.gas and change the 10 occurrences of shadow_tex_size = 64 to 128, 256, 512 or 1024. You can do a search and replace on = 64.

Note: 512 and above can be VERY taxing when using the All complex setting, especially in forests (in that case, switch to Party complex). Values higher than 1024 (or 256 for DSLOAMod) may prevent the game from loading.

Increase UI size

If you play the game at higher resolutions (like 1080p), the UI won't scale and will become tiny.

There are 2 methods to make it scale. The first one involves rendering the game at your native resolution and the UI at a lower resolution (effectively making it bigger) while the second one involves using a (cheap) commercial software.

Method 1:

  1. Install dgVoodoo2.
  2. Run dgVoodooCpl.exe, go to the DirectX tab, select your native resolution from the Resolution drop-down list and hit OK.
  3. Set the game at the resolution you want the UI to be scaled to, typically 720p or lower (see Use unsupported resolutions).

Note: it won't work while in windowed mode.

Method 2:

Use Lossless Scaling.

Install Mageworld, The Lands of Hyperborea and the Ultima 5/6 remakes on the GOG/Steam version

Normally, the Ultima remakes are meant for the retail version, but some people made guides to make them work on the Steam version (they also work on the GOG version):

I made some drag-and-drop archives (which may be slightly outdated) if you want to skip the installation guide above:

For the other mods, just ignore the above and download these archives:

Please follow these steps for each mod to make sure everything is working properly:

  1. Extract the archive to your DS folder.
  2. Edit the provided BAT file with your desired resolution.
  3. Copy the content of <path-to-docs> to the <path-to-game>\<mod-name>\User\Save subfolder prior to running the mod (if you'd like to keep your key bindings and game preferences).
  4. Run the mod with the BAT file (you can also replicate its arguments in a shortcut or GOG/Steam launch options).
  5. Saved games will be located under the <path-to-game>\<mod-name>\User\Save subfolder (to avoid overriding saves from the main game).

Note: all of these mods are NOT compatible with LOA. Please refer to their respective readme files for further issues.

Play in borderless fullscreen

There are multiple programs that allow games to run borderless fullscreen (you can find an exhaustive list here), however for the sake of simplicity, we'll only cover one of them here.

  1. Download Fullscreenizer and run it.
  2. Run the game in windowed mode.
  3. Switch back to Fullscreenizer.
  4. If the game doesn't appear in the list, click on Show All select Dungeon Siege and click on Add.
  5. Select the game in the list and press the Fullscreenize button (or use your hotkey combination), preferably after loading a game (see note below).

Note: the main menu UI has a fixed resolution and will be broken, repeat step 5 again to make the game windowed again. The game may randomly freeze when switching windowed modes so try to avoid doing it.

Play in other languages

The game on GOG/Steam is available in various languages, however these do not localize cutscenes, voices or LOA. The retail version localizes everything, however language packs are hard to find and some fan translations have been made since the game's release.

Killah and I collected most of these language packs and put them in a single location so that they're easily accessible. You'll find them on Killah's pastebin under Language Packs.

Installing them is a simple as drag-and-dropping their content to <path-to-game>.

Please note that the DS1 packs do not cover LOA so if you're playing LOA, pick the corresponding LOA pack instead. Some of them also do not localize cutscenes and voices (you can guess by the file size).

For Return to Arhok and Yesterhaven, Firstie's revisited versions have been translated to other languages. You can find them here and here.

Play MP

Add zonematch = true to the top of <config-file> (or <config-file-LOA> for LOA) to directly boot into the MP menu (not necessary if you're using the retail version or Killah's fix).

Since ZoneMatch went down in 2006, you can use an open source reimplementation called OpenZone. Keep in mind it's still in beta, may not work for you and has its own issues that won't be covered in this guide for the time being. For assistance, you can post on Discord or Nexus.

When using Internet or ZoneMatch, you'll have to do some port-forwarding when hosting games.

Note: see Booted back to the MP menu when trying to host a game and Lag in MP for eventual issues.

Play MP map in SP

Install one of these mods:

Play windowed

Add fullscreen = false to the top of <config-file> (or <config-file-LOA> for LOA).

Note: the frame rate will be locked to 75 fps, see Frame rate locked to 75 fps in windowed mode to fix it.

Play Yesterhaven map in SP

Method 1 (recommended)

Use Firstie's Yesterhaven revisited.

Method 2:

I made a drag-and-drop archive from Father Bronze's Yesterhaven Single-Player Edition so you won't have to worry about resources conflicting with each other.

Just extract it to your DS folder and use the provided BAT file to run the mod.

Run the game above 1080p

Check the dgVoodoo for 1920x1080+ resolutions section in Beatlebattle's guide.

You'll need dgVoodoo2.

Run the game on Linux

PlayOnLinux (or PlayOnMac) is recommended to ease the process. For the sake of this guide, we'll use PlayOnLinux so the WINEPREFIX is set to ~/.PlayOnLinux/wineprefix/ds. It may differ on your setup.

Requirements

Install Vulkan on your computer using the recommended packages for your graphic card. You should install every package for 32-bit applications. For Intel platforms: vulkan-intel, lib32-vulkan-intel, vulkan-icd-loader, lib32-vulkan-icd-loader, vulkan-tools. Once the command vulkaninfo doesn't report errors anymore, you're good to go.

Install DS/DSLOA

In PlayOnLinux, use the Install a non-listed program link or create a new virtual drive. Wine should be at least version 5.21. You can use PlayOnLinux to install the following libraries:

  • directplay (for networking capabilities)
  • mfc42 (Microsoft Foundation Class library)
  • DXVK_172 (DirectX for Vulkan)

If you want to use the command-line, install setup_dxvk and use:

WINEPREFIX=~/.PlayOnLinux/wineprefix/ds winetricks mfc42 directplay
WINEPREFIX=~/.PlayOnLinux/wineprefix/ds setup_dxvk install

You can now install the game. For the old CD version, just mount CD1 and run Setup.exe. When it asks for CD2, mount CD2 at the exact same location and it should work.

To fix the main menu resolution issues, you need to configure Wine (use the PlayOnLinux button or run WINEPREFIX=~/.PlayOnLinux/wineprefix/ds winecfg). Under the Graphics tab, enable Emulate a virtual desktop.

Note: if you have weird glitches, switch to desktop and back to the game, they should disappear.

Use unsupported resolutions

By default, the game can only be played in 640x480, 800x600 or 1024x768.

However, with some tweaking, you can play it at any resolution. There are a few caveats though:

You have 4 ways to make the game run at custom resolutions.

Method 1 (recommended):

  1. Download SeeFar 2020.
  2. Open the downloaded archive and navigate to the ResolutionFix subfolder.
  3. Extract system_detail.gas to <path-to-game> (it does the same thing than method 2 of Requested display mode is unsupported) and sf_ResolutionFix.dsres to <path-to-game>\Resources.
  4. Run the game.
  5. Select your desired resolution from the options.

Method 2:

Add the width=xxxx and height=xxxx launch parameters (where xxxx is your desired resolution, for instance width=1920 height=1080). See the following instructions for shortcuts, Steam or GOG Galaxy.

When setting the resolution through this method, it will prevent the game from changing it while navigating the options menu.

Method 3:

  1. Open <config-file> (or <config-file-LOA> for LOA) with a text editor.
  2. Change the width = xxxx and height = xxxx to your desired resolution (where xxxx is your desired resolution).
  3. Save the file.

Method 4:

  1. Follow the steps described in Requested display mode is unsupported.
  2. Run <path-to-game>\DSVideoConfig.exe and select your custom resolution.
  3. Copy <path-to-game>\DungeonSiege.ini to <path-to-docs> (or <path-to-docs-LOA> for LOA).

Note: for resolutions higher than 1080p, check Run the game above 1080p.

Issues fixed

Black screen at Gom

When going down the elevator before fighting Gom, the cutscene may break and pressing Escape will trigger a black screen. This bug is caused by the camera script that comes with LOA, which doesn't work properly when SeeFar 2004 or SeeFar 2020 is installed. It breaks one of the camera triggers during that cutscene, preventing it from completing.

There are 3 ways to circumvent it.

Method 1 (recommended):

Use Firstie's SeeFar.

Method 2:

  1. Download this hotfix.
  2. Place it in <path-to-game>\Resources.
  3. Run the game.
  4. Load your saved game.
  5. Proceed to beat Gom.
  6. Remove the hotfix (otherwise the initial cutscene of the LOA campaign will break).

Method 3:

You have to import your party from your modded save to another save that doesn't use SeeFar. For your convenience, you can download an unmodded saved game right before Gom here.

  1. Place the unmodded save into <path-to-docs-LOA>\Save.
  2. Run DSLOAMod (see Make DSLOAMod work on the GOG/Steam version).
  3. Ignore all the errors it may throw.
  4. Load the endgame_save saved game.
  5. Open the console with ~ (or the key above TAB).
  6. Place the mouse cursor on flat ground, between your characters.
  7. Type party load <name-of-your-save>.dssave.
  8. Check that all your characters are there.
  9. Proceed to beat Gom.

Booted back to the main menu after beating Gom

The multiplayer and anything related to it was disabled in the GOG/Steam version. Use Killah's fix.

Note: you'll need to convert your save to LOA.

Booted back to the MP menu when trying to host a game

Cannot find world:global:vosounds in gas tree

Your game files are corrupted. Reinstall the game.

Crash/exception

It can be caused by literally anything. Here are a few common fixes I've gathered since I started playing this game:

  • Use simple shadows (Options -> Shadows -> Simple) or disable them.
  • Lower object quality (Options -> Object Detail).
  • Use dgVoodoo2.
  • Run the game as administrator.
  • Run the game in compatibility mode (try all of them).
  • Run the game from the executable instead of GOG/Steam.
  • Run the game on your other GPU (if you have one).
  • If you're using a resolution higher than 1080p, see Run the game above 1080p.
  • Disable overlays (Discord, GOG, Steam, etc).
  • Right-click DungeonSiege.exe (or DSLOA.exe for LOA) then hit Properties -> Compatibility -> Reduced color mode -> 16-bit (65536) color.
  • One of your saved games is corrupted, remove it.
  • Some mods can conflict with each other. Find and remove conflicting mods.
  • Some mods don't work with LOA. Find and remove incompatible mods, then look for similar mods compatible with LOA.
  • Make the game recognize your GPU with this guide.
  • Make sure <path-to-docs> is on your C drive.
  • Run <path-to-game>\DSVideoConfig.exe and switch your driver to "<gpu-model> - Hardware" (or its TnL equivalent).
  • Lower your shadow resolution to 256, see Increase shadow resolution.
  • Install DirectX 9.0c.

Note: DSVideoConfig only edits <path-to-game>\DungeonSiege.ini (it's intended to be run before playing the game the first time) so make sure to copy it to <path-to-docs> (or <path-to-docs-LOA> if you're using LOA).

D3D Initialization Failure

You're running the game in a resolution not supported by your graphics card or above 1080p. Use another resolution or see Run the game above 1080p.

Frame rate locked to 75 fps in windowed mode

Add maxfps = 0 to the top of <config-file> (or <config-file-LOA> for LOA).

Fuel failed to write file prefs.gas

Source: https://www.facebook.com/photo.php?fbid=710028262735915

Game freezes during cutscenes

This may be caused by the game unable to teleport your other characters if they're in another region. Make sure all your characters are close to each other before triggering a cutscene.

Game screen is offset

If your game looks zoomed in, it's likely caused by your screen scaling settings.

  1. Right-click DungeonSiege.exe (or DSLOA.exe for LOA) then hit Properties.
  2. Go to Compatibility -> Change high DPI settings.
  3. Check Override high DPI scaling behaviour and make sure Application is selected in the drop-down menu.

Alternatively, you can set the Windows display scaling setting back to 100%:

  1. Right-click on your desktop.
  2. Select Display settings.
  3. Go to Scale and layout.
  4. Select 100% (Recommended).

Source: https://steamcommunity.com/app/39190/discussions/0/620696522225972749/#c1642038749323053918

Incompatible version

When playing MP, it's important that everyone uses EXACTLY the same files.

The game performs a CRC check on all files. If files between clients don't match, the game won't let you join someone else's game. It's often caused by different executables, resources, languages (when mixing different writing systems like Latin and Cyrillic for instance) and DSDLLs. Even an additional resource (typically a mod), as insignificant as it may be, can cause a mismatch.

Here are the files that differ between the GOG/Steam and retail versions:

  • Resources\DevLogic.dsres
  • Resources\Logic.dsres
  • Resources\Objects.dsres
  • DungeonSiege.exe

You can get the GOG/Steam version of these files here.

Here are the files that differ between languages:

  • DSLOA\ExpVoices.dsres (retail only)
  • Resources\Language.dsres
  • Resources\Voices.dsres (retail only)
  • Language.dll

Lag in MP

This can be caused by dgVoodoo2. Potential fixes include:

  • Running the game without it.
  • Running the game on LAN.
  • Running the game on LAN through a VPN-like software (ex: Hamachi, ZeroTier).

Mouse cursor is missing

Turn off supersampling in your GPU control panel.

For NVIDIA users:

  1. Right-click on your desktop.
  2. Select NVIDIA Control Panel.
  3. Click on Manage 3D settings.
  4. Set DSR - Factors to Off.

For AMD users:

  1. Right-click on your desktop.
  2. Select AMD Radeon Settings.
  3. Click on the Display tab.
  4. Set Virtual Super Resolution to Off.

Source: https://steamcommunity.com/app/39190/discussions/0/612823460274990833#c617328415054371674

Mouse cursor is stuck

Disable DPI scaling. Follow the same instructions as in the game screen is offset section.

Source: https://steamcommunity.com/app/39190/discussions/0/3192485835693148901

No GPU listed in DSVideoConfig

  1. Install dgVoodoo2 (keep the default settings).
  2. Add DSVideoConfig.exe and DungeonSiege.exe in Windows settings > System > Display > Graphics (set both to High Performance).
  3. Choose your dedicated GPU in DSVideoConfig (don't select dgVoodoo DirectX Wrapper).
  4. Copy <path-to-game>\DungeonSiege.ini to <path-to-docs> (or <path-to-docs-LOA> for LOA).

Packmule inventory is inaccessible

After converting a DS save to LOA, packmules are being treated like traggs (8 * 13 cells) but the UI remains the one from the mule (12 * 13 cells). Therefore, you can't access the items located in the last 5 columns.

You have to remove items from your mule's inventory and hit the Auto-arrange inventory button to be able to access them.

Poor performance

Add bltonly = true to the top of <config-file> (or <config-file-LOA> for LOA).

If the game still doesn't run well, you may want to run it on your other GPU (if you have one) or add your GPU to the list so the game recognizes it (see No GPU listed in DSVideoConfig).

Note: if the framerate is bad in windowed mode, see Frame rate locked to 75 fps in windowed mode, otherwise applying the fixes from UI/cursor flickering may help.

Requested display mode is unsupported

When running the game in resolutions other than the default ones, a warning message will be displayed every time you start/load a game from the main menu.

Method 1 (recommended):

See method 1 of Use unsupported resolutions.

Method 2:

Open <path-to-game>\system_detail.gas and everywhere you see 1024x768, add a duplicate of that line but change it with your resolution, like in the example below:

[resolutions]
{
	[640x480]	{ max_back_buffers = 1; }
	[800x600]	{ max_back_buffers = 1; }
	[1024x768]	{ max_back_buffers = 2; }
	[1280x720]	{ max_back_buffers = 2; }
	[1920x1080]	{ max_back_buffers = 2; }
}

Save failed

When trying to save the game, you may get a message saying "Save failed" and no save is created under <path-to-docs>.

  • Your antivirus/antimalware/ransomware protection is at fault. Add the game as an exception or disable it.
  • You have a username with special (non-latin) characters. Change your username so it only uses latin characters.
  • Run the game as admin.

Note: it happens in a few other games too.

Source: https://steamcommunity.com/app/39200/discussions/0/2619339453457265287

Shadows are missing

This is caused by setting shadow_tex_size too high for DSMod/DSLOAMod, thus preventing them from working. DSMod/DSLOAMod don't support anything above a resolution of 256, therefore set shadow_tex_size to 256 or less. Besides, DSLOAMod crashes with shadow resolution set above 256.

Some resources haven't been copied to the hard disk

You're missing some core files (most likely <path-to-game>\Resources\logic.dsres). Reinstall the game.

Sorry, this save game was not created by Legends of Aranna and cannot be loaded

See Convert DS saves to LOA.

Steam detects the game as running after closing it

This may happen after hosting/joining a multiplayer session.

  1. Open Task Manager.
  2. Go to the Details tab.
  3. Find dpnsvr.exe and terminate it.

Stutters when moving the mouse

  • Disable any kind of frame limiter.
  • Disable any kind of vertical synchronization (including in dgVoodoo2) and FreeSync/G-Sync.
  • This was also caused by the NVIDIA drivers for Cyberpunk (460.79). The problem was fixed in 466.11 (and again in 497.29). If it's still not fixed for you for some reason, use older or newer drivers. You may find them using this link or this one.

Text has artefacts

This is caused by dgVoodoo2 not scaling the game correctly, making vertical lines appear between some characters, causing some of them to be offset vertically and even featuring some kind of blur around the cursor. Basically, the higher you go above 1080p, the more visual artefacts you'll start to notice as DS was never designed to go above 1080p.

Run dgVoodooCpl.exe, go to the DirectX tab, set Filtering to App driven, Antialiasing (MSAA) to Off and Resolution to one of the ISF resolutions.

Textures not loading

This is caused by using the HD textures mod with DSMod/DSLOAMod, therefore making most of the world transparent. DSMod/DSLOAMod don't support anything above a resolution of 256 so you have remove the mod.

Translations partially working

If, after adding a language pack, you notice that some things are translated but others aren't, first make sure you're using the LOA version of the language pack if you're playing LOA.

If there still seems to be missing translations, it's because anything that already exists in-game (ex: actor names, item names and descriptions) will have its data loaded from the save file, not the resource file. Anything newly loaded (ex: new item drops) should load data from the resource file.

UI/cursor flickering

  • Use dgVoodoo2.
  • Right-click DungeonSiege.exe (or DSLOA.exe for LOA) then hit Properties -> Compatibility -> Reduced color mode -> 16-bit (65536) color.
  • Make sure it says bpp = 32 in <config-file> (or <config-file-LOA> for LOA).
  • Disable any kind of antialiasing in your GPU driver settings.
  • Press the Windows key to minimize the game then maximize it.
  • Run the game on your other GPU (if you have one).
  • Run the game in fullscreen or windowed mode.

Unable to access or create a critical path that is required to operate

This is caused by Controlled Folder Access on Windows 10/11 preventing the game from accessing <path-to-docs> (or <path-to-docs-LOA> for LOA).

Add the game to the allowed apps list:

  1. Open Windows Security.
  2. Navigate to Virus & Threat Protection.
  3. Click on Manage Settings.
  4. Scroll down to Controlled Folder Access.
  5. Click on Manage Controlled Folder Access.
  6. Click on Allow an app through Controlled Folder Access.
  7. Click on Add an allowed app then Browse all apps and select <path-to-game>\DungeonSiege.exe (or <path-to-game>\DSLOA.exe for LOA).

Unable to create a new character

If you're experiencing missing animations or freezes in the character creator, this may be caused by third party softwares such as XFire or Raptr. You should disable them or uninstall them as they've been discontinued a long time ago.

Unable to enumerate any DirectDraw devices installed on this system

  1. Download Microsoft DirectX Control Panel 9.0c.
  2. Extract and run directx.cpl as administrator.
  3. Go to the Direct3D tab and make sure Allow Hardware Acceleration is checked.
  4. Go to the DirectDraw tab and make sure Use Hardware Acceleration is checked.

Virtual alloc failed with error

The game is running out of memory. It's usually due to using memory intensive mods such as the HD textures.

Make the game's executable large-address aware using the LAA enabler so it can use more RAM.

White textures

This usually happens when using dgVoodoo2.

  1. Run dgVoodooCpl.exe, go to the General tab and select one of the Direct3D 12 entries from the Output API drop-down list.
  2. Go to the DirectX tab, tick Fast memory access and hit OK.
  3. Decrease shadow resolution to 512 or lower.

Note: if you're using an AMD GPU, turn off Radeon Anti-Lag.

Window is offscreen

Add x=0 and y=0 (each on a separate line) to the top of <config-file> (or <config-file-LOA> for LOA).

Source: https://steamcommunity.com/app/39200/discussions/0/846955554677340085/#c1692669912401473624

Windows cursor flickers at the center of the screen

It's likely caused by using dgVoodoo2, just tab out of the game and tab back in.

You cannot run Dungeon Siege in a resolution higher than your desktop

Lower the game's height (see Use unsupported resolutions) so that it corresponds to your desktop's height minus at least 40 pixels (it can be more) to account for the borders (ex: 1920x1080 -> 1920x1040).

Your hardware configuration is below minimum specification

Add your GPU to <path-to-game>\system_detail.gas with this guide.

Issues unresolved

Black portraits

When using resolutions above 1024x768, you may encounter an issue where some character portraits will become black. It seems like the higher the width, the more aggravating the problem becomes. It starts happening above a width of 1024, so any resolution like these are fine:

640x480
800x600
1024x768

While these are not fine:

1152x864
1280x720
1280x768
1280x800
1280x960
1280x1024
1360x768
1366x768
1440x900
1440x1080
1600x900
1600x1024
1680x1050
1920x1080
2560x1440

I found a workaround that avoids the problem, but you'll have to do it every time you start the game or go back to the main menu.

  1. Set your resolution to 1024x768 or lower from the main menu.
  2. Start a new game or load your saved game.
  3. Set your desired resolution from the Options menu once you're in-game (you'll need the resolution fix, see method 1 of Use unsupported resolutions).

Modding

DS2TankViewer doesn't work

If the official DS2TankViewer doesn't start, you can try the unofficial TankViewer2 instead or Siege Control, a more modern application.

Installing Gmax & SiegeMax for Siege Editor

  1. Uninstall Siege Editor if it was already installed. This is necessary as the toolkit installer checks if Gmax is installed before installing SiegeMax (see step 4).
  2. Download Gmax and install it.
  3. When booting Gmax, you'll be asked for a registration key, use the registry files from the registration_workaround.zip you downloaded in step 2.
  4. Ensure that Gmax is able to boot properly before installing Siege Editor. It may give you errors about bad paths. Go to the Gmax Folder, open gmax.ini as well as plugin.ini and check the keys in there for the folder paths. Change them to point to where you installed Gmax.
  5. Install Siege Editor. If you have installed Gmax correctly, the installer should be able to locate it. It will then install the relevant SiegeMax files allowing you to edit DS mesh files.
  6. Run SiegeMax from the shortcut that should be placed on your desktop when installing Siege Editor. Do not run the regular Gmax exe, that isn't needed anymore.
  7. If SiegeMax complains about file paths, see step 3, but this time you need to go into the Gamepacks folder in the Gmax installation folder. If the folder gamepacks\SiegeMax\scripts\startup is missing, create it.

Note: if you didn't install Gmax through the official installer like the one in step 2, you can make Siege Editor find Gmax by adding its installation path to environment variables. Go to My Computer -> Properties -> Advanced system settings -> Advanced tab -> Environment Variables -> User variables -> New. For variable name, put GMAXLOC and for variable value, put your Gmax installation path.

Make DSMod work on the GOG/Steam version

TLDR (both scenarios): https://www.mediafire.com/file/852l283dl7p580j/DSMod_Steam_version.zip

Download the reg patch and run it from <path-to-game> to make DSMod find your game.

After doing that, you will run into two scenarios depending on which reg patch you were using prior to installing the toolkit.

Scenario 1:

If you were using the new version of the reg patch (a batch script), DSMod will ask for disc 1 of LOA. Download and mount the mini image from Make DSLOAMod work on the GOG/Steam version.

Scenario 2:

If you were using an old version of the reg patch (an executable), the DSMod.exe QA version (02.12.1603) won't match GOG/Steam's DungeonSiege.exe QA version (03.07.0202), so you'll need to use a tool like Resource Hacker to make them identical:

  1. Make a backup of DSMod.exe (just in case).
  2. Run two instances of Resource Hacker as administrator.
  3. In the first instance, hit File -> Open -> DSMod.exe.
  4. In the second instance, hit File -> Open -> DungeonSiege.exe.
  5. In both instances, hit Version Info -> 1 : 1033.
  6. Locate the line MSQAVersion and replace its value in DSMod.exe by the value from DungeonSiege.exe.
  7. Click on the green arrow (or F5) to compile the script.
  8. Click on the green floppy disk (or Ctrl + S) to save the file.

Note: see Shadows are missing and Textures not loading for potential issues.

Make DSLOAMod work on the GOG/Steam version

Download the reg patch and run it from <path-to-game> to make DSLOAMod find your game.

DSLOAMod won't get installed unless LOA is installed. On top of that, it uses SmarteSecure DRM disc check so you'll need to have disc 1 of LOA in your disc drive or it'll refuse to run.

If you don't want to go this route, I created a mini image that will satisfy the disc check.

Just mount the ISO with Windows File Explorer or with a third party software (like WinCDEmu) before running DSLOAMod.

If you have a "Couldn't register file.tmp" popup followed by a SmarteSecure popup, it means the location you're trying to run it from has permission issues. Run DSLOAMod as admin or move it elsewhere.

You may also have a few "ATLCOMHelper Exception" popups. You can safely ignore those and DSLOAMod will run. To get rid of them, either use the DSLOAMod shortcut in the toolkit installation directory, place DSLOAMod in <path-to-game> and run it from there, or open Task Manager and end the task for Protection Stub (32-bit).

Also, if you're running DSLOAMod from a shortcut, you may have to run it without admin privileges.

Note: see Shadows are missing and Textures not loading for potential issues.

Make Siege Editor work on the GOG/Steam version

Download and run the reg patch from <path-to-game> to make the editor find your game.

To fix the "Unable to find video card entry for your hardware" warning in Siege Editor, you need to add an entry corresponding to your GPU in <path-to-game>\system_detail.gas. The device name and both IDs are shown in the error message and must be prefixed with 0x.

Where you add it is important, otherwise it may disable some effects (like complex shadows). Look up the section corresponding to the vendor of your graphics card (nVidia, ATI or Intel). In my case, I added this entry to the beginning of the nVidia vendor section (before the other [device*] entries):

[device*]
{
	name					= "GeForce GTX 1070";
	x vendorid				= 0x10de;
	x deviceid				= 0x1b81;
	x driver_product		= 0;
	x driver_version		= 0;
	b trilinear_filt		= true;
	b shadow_render_target	= true;
}

As a bonus, setting shadow_render_target to true may increase the framerate while using complex shadows. It can be used when not modding too!

You can ignore most of the warnings when starting the editor (they'll pop up if you installed Killah's fix). If you wish to get rid of them, you'll have to disable the Return to Arhok and Yesterhaven campaigns. To do so, rename the extension of the following files to something like dsres.off (or move them somewhere else if you have file extensions hidden):

Note: setting shadow_tex_size higher than 256 will yield another warning that can safely be ignored and using the HD textures mod will make them white.

Remove a tank's protection

  1. Open your protected tank with an hex editor.
  2. Go to offset 38 and replace its value (it can be 04, 05, 06 or 07) by 00.
  3. Save the file.

Source: https://www.facebook.com/groups/DungeonSiegeForever/permalink/814904645815105/?comment_id=814930495812520

Siege Editor doesn't work

If you get "D3D Initialization Failure" when running Siege Editor, it's probably because your desktop resolution is above 1080p.

  • Use dgVoodoo2 and place it in the folder where you installed Siege Editor.
  • Replace preferences.gas in <path-to-docs>\Editor with this one.

Tank Creator doesn't work

If nothing happens when clicking on the Create button in Tank Creator, make sure it's added to the exclusion list of your antivirus. If that still doesn't work, add your TEMP directory to the exclusion list as that's where RPC (the underlying program to Tank Creator) is executed from.

View a protected tank

  1. Open Siege Editor.
  2. Hit Siege Editor -> File -> Convert .dsmap to Files....
  3. Select your DSRES/DSMAP from the Source File button.
  4. Uncheck Use default destination folder and select the folder where you want to extract it (if it's checked, the default destination folder is <path-to-docs>\Bits).
  5. Uncheck Extract .lqd files if you just want to view the extracted files.
  6. Click OK.

Walkthroughs

All-in-One:

DS:

LOA:

Utraean Peninsula:

Links

Credits

This document wouldn't have been possible without the following people:

  • .orix (Discord) - lots of fixes
  • 0xff
  • Ahrimotto
  • AlceX - freezing cutscene fix
  • ALI123 - Chinese translation for DS
  • Antrad2020
  • Azlaroc - 100$ donation
  • bawnerbaw (Discord) - save conversion guide
  • Beatlebattle
  • cagatay - Turkish translation for LOA
  • Casual Sun - Lossless Scaling guide
  • coop13 (Discord) - white texture fix
  • doa_92 - German translation for LOA
  • duyc37 - Korean translation for DS
  • eksevis (Discord)
  • Ettanin (Discord) - CRC check information
  • Father Bronze - SP version of Yesterhaven
  • Firstie - new SeeFar build and revisited maps
  • gaetanolettieri4 - Italian translation for LOA
  • Guilherme Tutilo - Brazilian Portuguese translation for LOA
  • lgrzinc - character creator fix
  • Killah - LOA guide and DS community
  • Kuziem - Polish translation for LOA
  • nightson - Japanese translation for DS
  • Novy Disk - Russian translation for LOA
  • Richard M. - French translation for LOA
  • sadowson (Discord) - lots of fixes and Gmax installation guide
  • Shikafax - Italian translation for DS
  • Soban - save conversion guide
  • soyuka - Linux installation guide
  • starfalll (Discord) - lots of fixes
  • The Walkthrough King
  • Thrillvilled - online hex editor
  • Tiberius
  • TraductionJeux - French translation for DS
  • tristanzz (Discord) - import character guide
  • Tyler799 - format used for this guide
  • WolfBelmi88 - Spanish translation for LOA
  • youare29 - launch parameters
  • Youxia/Bahamut localization teams - Chinese translation for LOA

And the following resources:

Thanks a lot for your help!

Disclaimer

I won't be held responsible if you mess up your game or saved game after using one of these fixes. You do it at your own risk!

You're not allowed to put this document in raw form anywhere, out of respect (it took me over 5 years to compile it). Just share the GitHub link or redirect users to the Steam thread.

About

A document listing all technical issues for Dungeon Siege 1 along with solutions.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors