Proton: Anno 1404: Venice (33350) black screen (workaround needed)

Created on 26 Aug 2018  ·  27Comments  ·  Source: ValveSoftware/Proton

Steam - System Information

The game window shows up and close immediately. The problem here is DirectX10 -> solution see following screenshot. Now DirectX9 is used.

screenshot_20180826_111225

If I start the game I only see a black screen: steam-33350.log

The solution pointed out in issue (#448) install d3dx9_43 don't work for me.

To get it working I used following winetricks command instead:

$ WINEPREFIX=/mnt/hdd/daten/Steam/steamapps/compatdata/33350/pfx winetricks d3dx9

Game compatibility - Unofficial Regression

Most helpful comment

Can also confirm this is working.
Additionally, I can also confirm that memory leaks are a real problem under windows aswell.

Full step by step Installation:

  1. install "Anno 1404: Venice" through steam (I did not install the base game, just the addon) (with proton 4.2-3)
  2. launch the game through steam
  3. the game will just be a black screen. but that's ok. It will create the necessary wine folder in steam/steamapps/compdata
  4. kill the game (command to kill it: kill -9 $(ps aux | grep -i '[A]nno\ 1404' | awk '{print $2}'))
  5. run WINEPREFIX="/home/$USER/.steam/steam/steamapps/compatdata/33350/pfx" winetricks d3dx9
  6. create the file /home/$USER/.steam/steam/steamapps/compatdata/33350/pfx/drive_c/users/steamuser/Application\ Data/Ubisoft/Anno1404Addon/Config/Engine.ini with the following content:
    xml <Engine> <DirectXVersion>9</DirectXVersion> </Engine>
    (Later this file will contain a 100+ lines of settings, if it already exists, just find the DirectXVersion part and change the value to 9)
  7. done - it should work now

(It still didn't work for me, but that's because it failed to find a valid audio device. I'm running jack2 and wine doesn't play way. After creating a dummy device and selecting it in WINEPREFIX="/home/$USER/.steam/steam/steamapps/compatdata/33350/pfx" winecfg it worked.)


Things I did NOT need to do:

  • I did NOT edit .steam/steam/steamapps/common/Anno\ 1404/Engine.ini
  • I did NOT add PROTON_NO_D3D11=1 or PROTON_NO_D3D10=1
  • I did NOT install d3dx9_43

All 27 comments

Don't forget the font is deformed.

Can confirm the exact same behavior. Need to change engine.ini and install d3dx9 via winetricks
Game playable without issues, just the font is looking weird

From time to time (I could not find a pattern), Anno has problems connecting to the Ubisoft servers (e.g for online profiles). Most of the time, restarting Steam (!) solves the issue, but not all the time.

With Proton 3.7.6 this workaround does not seem to work anymore (it did with version 3.7.3).

My config :
Informations de l'ordinateur :
Fabricant : Unknown
Modèle : Unknown
Type : Ordinateur de bureau
Aucun écran tactile détecté

Processeur :
Fabricant du CPU : GenuineIntel
Marque du processeur : Intel(R) Core(TM) i7-4790 CPU @ 3.60GHz
Famille du processeur : 0x6
Modèle du processeur : 0x3c
Révision processeur : 0x3
Type de processeur : 0x0
Fréquence : 4000 Mhz
8 processeurs logiques
4 processeurs physiques
HyperThreading : Pris en charge
FCMOV : Pris en charge
SSE2 : Pris en charge
SSE3 : Pris en charge
SSSE3 : Pris en charge
SSE4a : Non pris en charge
SSE41 : Pris en charge
SSE42 : Pris en charge
AES : Pris en charge
AVX : Pris en charge
CMPXCHG16B : Pris en charge
LAHF/SAHF : Pris en charge
PrefetchW : Non pris en charge

Version du système d'exploitation :
Debian GNU/Linux 9.5 (stretch) (64 bits)
Nom du noyau : Linux
Version du noyau : 4.9.0-8-amd64
Éditeur du serveur X : The X.Org Foundation
Version du serveur X : 11902000
Gestionnaire de fenêtres X : KWin
Version d'exécution Steam : steam-runtime-beta-release_2018-06-14

Carte graphique :
Pilote : NVIDIA Corporation GeForce GTX 1070/PCIe/SSE2
Version du pilote : 4.6.0 NVIDIA 390.87
Version OpenGL : 4.6
Profondeur de couleur du bureau : 24 bits par pixel
Taux de rafraîchissement du moniteur : 60 Hz
ID fabricant : 0x10de
ID périphérique : 0x1b81
Révision non détectée
Nombre de moniteurs : 1
Nombre de cartes vidéo logiques : 1
Résolution de l'affichage principal : 1920 x 1080
Résolution du bureau : 1920 x 1080
Taille de l'affichage principal : 20.04" x 11.26" (22.95" diag)
50.9cm x 28.6cm (58.3cm diag)
Bus principal : PCI Express 16x
Mémoire vidéo principale : 8192 Mo
Modes MSAA pris en charge : 2x 4x 8x 16x

Carte son :
Périphérique audio : Realtek ALC892

Mémoire :
RAM : 32122 Mo

Divers :
Langue de l'interface : Français
LANGUE : fr_FR.UTF-8
Espace disque total disponible : 938580 Mo
Plus grand bloc disponible sur le disque dur : 66241 Mo
Casque VR : aucun détecté

Rapports d'échec récent :

Workaround seems to work for me, but I had to modify WINEPREFIX for the winetricks.
$WINEPREFIX=/home/$USER/.steam/steam/steamapps/compatdata/33350/pfx winetricks d3dx9

Using Proton 3.16-2 Beta via Steam Play

The problems with the connection did not appear again, rest still applies but works (tested today)
EDIT: Happened again today, again fixed with restarting steam

Worakround doesn't work on Proton 3.16-6 with d3dx9 installed and Engine.ini modified launching from steam.

Hi,
Try to use PROTON_NO_D3D11 - it works at least for me.
Le samedi 19 janvier 2019 à 19:19:47 UTC+1, SonIcco notifications@github.com a écrit :

Worakround doesn't work on Proton 3.16-6 with d3dx9 installed and Engine.ini modified launching from steam.


You are receiving this because you commented.
Reply to this email directly, view it on GitHub, or mute the thread.

Solution was to modify /steamapps/compatdata/33250/pfx/drive_c/users/steamuser/Application Data/Ubisoft/Anno1404/Config/Engine.ini and set <DirectXVersion>0</DirectXVersion> to <DirectXVersion>9</DirectXVersion> and additional with start option PROTON_NO_D3D11=1

Can confirm to get it working using following steps:

  • added <DirectXVersion>9</DirectXVersion> to $yourSteamLibraryPath/steamapps/common/Anno 1404/Engine.ini to the <InitFile> node
  • set launch options to PROTON_NO_D3D11=1 %command% (pro-tip for optirun/bumblebeed user like me: LD_PRELOAD=/usr/lib/nvidia/libGL.so PROTON_NO_D3D11=1 optirun %command%)
  • WINEPREFIX=$yourSteamLibraryPath/steamapps/compatdata/33350/pfx winetricks d3dx9

My system setup: Arch Linux amd64, discrete NVIDIA GPU.

Thanks to all people providing hints and of course a big thanks to Wine team, the proton team and Valve.

I have same issue when launching anno 1404: Venice. Im getting blackscreen also.
Ubuntu 16.04 LTS with NVIDIA GTX 770

If I install the DirectX on the prefix and set it to DirectX 9 in the configuration files, the game runs, however I'm experiencing a glitch in the text font, it looks all weird; it also keeps telling me that I don't have enough memory to play the game, even though I have plenty:

image

Edit: the game crashes with no errors whatsoever after more or less 2 hours of gameplay.
Edit2: it seems that the memory problem happens on Windows too and that the crash is due to it, so no matter here, but the font problem stills.

Can also confirm this is working.
Additionally, I can also confirm that memory leaks are a real problem under windows aswell.

Full step by step Installation:

  1. install "Anno 1404: Venice" through steam (I did not install the base game, just the addon) (with proton 4.2-3)
  2. launch the game through steam
  3. the game will just be a black screen. but that's ok. It will create the necessary wine folder in steam/steamapps/compdata
  4. kill the game (command to kill it: kill -9 $(ps aux | grep -i '[A]nno\ 1404' | awk '{print $2}'))
  5. run WINEPREFIX="/home/$USER/.steam/steam/steamapps/compatdata/33350/pfx" winetricks d3dx9
  6. create the file /home/$USER/.steam/steam/steamapps/compatdata/33350/pfx/drive_c/users/steamuser/Application\ Data/Ubisoft/Anno1404Addon/Config/Engine.ini with the following content:
    xml <Engine> <DirectXVersion>9</DirectXVersion> </Engine>
    (Later this file will contain a 100+ lines of settings, if it already exists, just find the DirectXVersion part and change the value to 9)
  7. done - it should work now

(It still didn't work for me, but that's because it failed to find a valid audio device. I'm running jack2 and wine doesn't play way. After creating a dummy device and selecting it in WINEPREFIX="/home/$USER/.steam/steam/steamapps/compatdata/33350/pfx" winecfg it worked.)


Things I did NOT need to do:

  • I did NOT edit .steam/steam/steamapps/common/Anno\ 1404/Engine.ini
  • I did NOT add PROTON_NO_D3D11=1 or PROTON_NO_D3D10=1
  • I did NOT install d3dx9_43

The fonts seem to be fixed with the corefonts winetrick:
WINEPREFIX=<your path to steamapps>/compatdata/33340/pfx/ winetricks corefonts

EDIT: Just noticed the number can be 33340 or 33350. Probably the difference between Anno 1404 and Dawn of Discovery.

D9VK brings a new bug: in Quickstart: the intro ingame cinematic does a picture in picture bug from the get go. Otherwise performance increase is amazing.

Nota bene:
In dx9, performance increased a lot with latest Proton 4.11 and the futex patched kernel 5,
(using Feral's gamemode as well)
PROTON_USE_D9VK=1 DXVK_HUD=fps gamemoderun %command%

Corefonts didn't fix the fonts issue for me unfortunately.

~Hello, we're using one issue report per unofficially supported game title, so I've gone ahead and transferred this issue report to https://github.com/ValveSoftware/Proton/issues/448#issuecomment-582590396.~

~This issue report was created fairly early on, before that policy was put in place, which is why discussion for this game has been split for so long. Please continue discussing this game on #448.~

EDIT: Oops, my eyes tricked me. Removed the transferred issue report contents and re-opened.

Anno 1404 black screen

Issue transferred from https://github.com/ValveSoftware/Proton/issues/3490.
@Loacoon1 posted on 2020-02-05T20:05:49:

Compatibility Report

  • Name of the game with compatibility issues: Anno 1404 Venice
  • Steam AppID of the game: 33350

System Information

  • GPU: Geforce RTX 2070
  • Driver/LLVM version: Nvidia 440.44
  • Kernel version: 5.4.15
  • Proton version: 4.11.12

steam-33350.log

Symptoms :

The screen remains black all the way from the start. The game seems to start correctly, the audio is ok, but the screen remains black. I used to play it without any problems, but I stopped paying it for a few weeks, and when a started it recently, this happened.
My launch command options are : PROTON_LOG=1 PROTON_USE_D9VK=1 PROTON_FORCE_LARGE_ADDRESS_AWARE=1 PROTON_NO_D3D11=1 PROTON_NO_D3D10=1 %command%
Maybe it's normal but I see some D3Dx10 lines on the log, could be the problem?!...

Reproduction

Lauching the game .

In my case the game doesn't start. It shows a black window for some seconds and then disappears.
in the steamuser/Application Data/Ubisoft/Anno 1404 Folder there's no Engine.ini. After copying it from another installation the game starts.

@kaktuspalme good catch about the Engine.ini file.
It seems that Anno is no longer able to create the Engine.ini file automatically at first launch. Perhaps this is related to proton 5 (previously I used proton 4.x). But if you manually create the Engine.ini file, it now works.

I'm reposting my guide how to get the game working with this update:

Full step by step Installation (this will fix black screen and game starting for 3 seconds and then closing again):

  1. install "Anno 1404: Venice" through steam (I did not install the base game, just the addon) (with proton 5.x (I used 5.0-7))
  2. launch the game through steam
  3. the game will just be a black screen. but that's ok. It will create the necessary wine folder in steam/steamapps/compdata
  4. kill the game (command to kill it: kill -9 $(ps aux | grep -i '[A]nno\ 1404' | awk '{print $2}'))
  5. run WINEPREFIX="/home/$USER/.steam/steam/steamapps/compatdata/33350/pfx" winetricks d3dx9
  6. run WINEPREFIX="/home/$USER/.steam/steam/steamapps/compatdata/33350/pfx" winetricks corefonts (this may help with font issues)
  7. create the file /home/$USER/.steam/steam/steamapps/compatdata/33350/pfx/drive_c/users/steamuser/Application\ Data/Ubisoft/Anno1404Addon/Config/Engine.ini with the following content:

    <InitFile>
    <ScreenXSize>1920</ScreenXSize>
    <ScreenYSize>1080</ScreenYSize>
    <ScreenDepth>32</ScreenDepth>
    <ScreenFormat>0</ScreenFormat>
    <RefreshRate>60</RefreshRate>
    <AspectRatio>0.000000</AspectRatio>
    <ResizableWindow>0</ResizableWindow>
    <NoWindowFrame>0</NoWindowFrame>
    <Gamma>1</Gamma>
    <RE_Device>0</RE_Device>
    <RE_VSync>0</RE_VSync>
    <RE_Cloud>1</RE_Cloud>
    <RE_Framebuffer_Refraction>1</RE_Framebuffer_Refraction>
    <RE_TerrainRenderMode>0</RE_TerrainRenderMode>
    <UseDDSTextures>1</UseDDSTextures>
    <DirectXVersion>9</DirectXVersion>
    <EnableTextureMemoryManagement>0</EnableTextureMemoryManagement>
    <EnableModelMemoryManagement>0</EnableModelMemoryManagement>
    <PreloadCachedShaders>0</PreloadCachedShaders>
    <EnableRenderEngineScheduler>1</EnableRenderEngineScheduler>
    <QualityLevel>2</QualityLevel>
    <RE_AlphaToCoverage>0;0;0;0;0</RE_AlphaToCoverage>
    <RE_Anisotropic>0;0;1;2;1</RE_Anisotropic>
    <RE_Antialiasing>0;0;0;0;0</RE_Antialiasing>
    <RE_Borderline>1;1;1;2;1</RE_Borderline>
    <RE_Cloth>0;1;1;2;1</RE_Cloth>
    <RE_Effects>0;1;2;2;2</RE_Effects>
    <RE_Force>0;0;1;1;1</RE_Force>
    <RE_Lighting>1;1;1;2;1</RE_Lighting>
    <RE_Influence>0;0;0;0;0</RE_Influence>
    <RE_MaxObjectLOD>0;1;2;2;2</RE_MaxObjectLOD>
    <RE_NormalMapping>0;0;1;1;1</RE_NormalMapping>
    <RE_ParallaxMapping>0;0;0;1;0</RE_ParallaxMapping>
    <RE_PostEffects>0;0;1;2;1</RE_PostEffects>
    <RE_Reflection>0;0;1;1;1</RE_Reflection>
    <RE_Refraction>0;0;1;1;1</RE_Refraction>
    <RE_Scattering>1;1;2;2;2</RE_Scattering>
    <RE_Shadows>0;1;1;2;1</RE_Shadows>
    <RE_Terrain>0;1;2;2;2</RE_Terrain>
    <RE_TextureManager>2;1;0;0;0</RE_TextureManager>
    <RE_Water>1;2;3;4;3</RE_Water>
    <EnableUtilization>0</EnableUtilization>
    <EnableFPS>0</EnableFPS>
    <EnableGUIWarning>0</EnableGUIWarning>
    <EnableUndiscovered>1</EnableUndiscovered>
    <EnableAI>1</EnableAI>
    <LanguageTAG>eng</LanguageTAG>
    <Multithreading>1</Multithreading>
    <PreferLocalFiles>0</PreferLocalFiles>
    <EnableWatchThreads>1</EnableWatchThreads>
    <EnableFPPPreloading>0</EnableFPPPreloading>
    <PreloadAll>0</PreloadAll>
    <RecordCFGCache>0</RecordCFGCache>
    <ScriptFilename>Console.ini</ScriptFilename>
    <RenderTransportRoute>1</RenderTransportRoute>
    <MinimapRotation>1</MinimapRotation>
    <EnableTimeDisplay>1</EnableTimeDisplay>
    <EnableInfoMode>1</EnableInfoMode>
    <AutoSaveCount>3</AutoSaveCount>
    <GameSpeed>14</GameSpeed>
    <SaveReplay>1</SaveReplay>
    <AutoQuestReminder>1</AutoQuestReminder>
    <ProfileName></ProfileName>
    <HardwareCursor>1</HardwareCursor>
    <MouseScroll>10</MouseScroll>
    <KeyboardScroll>10</KeyboardScroll>
    <MouseSpeed>10</MouseSpeed>
    <LockCamera>1</LockCamera>
    <EnableZoom>1</EnableZoom>
    <CheckCameraDistance>1</CheckCameraDistance>
    <EnableConsole>1</EnableConsole>
    <TimePerChar>88</TimePerChar>
    <EnableFourthCamPosition>0</EnableFourthCamPosition>
    <MinimapTexResX>64</MinimapTexResX>
    <MinimapTexResY>64</MinimapTexResY>
    <EnableLargeFOV>0</EnableLargeFOV>
    <m_PickHighlightEnabled>1</m_PickHighlightEnabled>
    <VolumeMain>999</VolumeMain>
    <VolumeAmbiente>500</VolumeAmbiente>
    <VolumeSpeech>500</VolumeSpeech>
    <VolumeMusic>500</VolumeMusic>
    <VolumeSound>500</VolumeSound>
    <VolumeMsg>500</VolumeMsg>
    <VolumeAck>500</VolumeAck>
    <SoundSystem>1</SoundSystem>
    <SoundDriver>0</SoundDriver>
    <SoundEnableBink>0</SoundEnableBink>
    <FilterEventMsg>0</FilterEventMsg>
    <FilterEconomyMsg>0</FilterEconomyMsg>
    <FilterDiplomacyMsg>0</FilterDiplomacyMsg>
    <FilterResidentMsg>0</FilterResidentMsg>
    <FilterExplorationMsg>0</FilterExplorationMsg>
    <FilterResearchMsg>0</FilterResearchMsg>
    <FilterMilitaryMsg>0</FilterMilitaryMsg>
    <CheckSumEnabled>0</CheckSumEnabled>
    <StopOnCheckSumError>0</StopOnCheckSumError>
    <CheckSumErrorCount>2</CheckSumErrorCount>
    <IsLogFileOn>0</IsLogFileOn>
    <KIServerPort>5479</KIServerPort>
    <KIBuildLimitation>0</KIBuildLimitation>
    <RenderDebugBlock>0</RenderDebugBlock>
    <ShowAssertStatus>0</ShowAssertStatus>
    <DisableHPTimer>0</DisableHPTimer>
    <SyncTraceDisabled>0</SyncTraceDisabled>
    <WriteMiniDumps>2</WriteMiniDumps>
    <SyncTraceFolder>\\rds.local\DATA\QAPublic\synctraces\</SyncTraceFolder>
    <EnableNetworkEmulation>0</EnableNetworkEmulation>
    <ScreenshotFormat>0</ScreenshotFormat>
    <ScreenshotWidth>0</ScreenshotWidth>
    <ScreenshotHeight>0</ScreenshotHeight>
    <SaveGameCompressLevel>5</SaveGameCompressLevel>
    <UseBinarySavegames>1</UseBinarySavegames>
    <UbiSurveyTime>36000000</UbiSurveyTime>
    <UbiSurveyTimeStatus>1</UbiSurveyTimeStatus>
    <NetComEngineVersion>3</NetComEngineVersion>
    <EnableThreadLoading>0</EnableThreadLoading>
    <EnableSmoothLoading>1</EnableSmoothLoading>
    <m_waitForPlayerTimeout>5000</m_waitForPlayerTimeout>
    <kickPlayerTimeout>4000</kickPlayerTimeout>
    <IGNNewsDiff>0</IGNNewsDiff>
    <IGNAnchorDiff>0</IGNAnchorDiff>
    <IGNQuestsDiff>0</IGNQuestsDiff>
    <LockTeams>0</LockTeams>
    <MapExplored>0</MapExplored>
    <GameType>0</GameType>
    <Resourcen>0</Resourcen>
    <EnableEasyGui>1</EnableEasyGui>
    <EnableEasyStreet>1</EnableEasyStreet>
    <AlreadyUpdated>1</AlreadyUpdated>
    </InitFile>
    

  1. done - it should work now

As @BaaRamEwe pointed out, the AppID 33350 is Anno 1404: Venice, if your game is Dawn of Discovery: Venice, your AppID is 33340. You have to replace all 33350 with 33340 in the commands above.

@Loacoon1 this will probably also fix your issue

EDIT: It might also be worth trying to set the launch option/launch command to PROTON_FORCE_LARGE_ADDRESS_AWARE=1 %command%. I have not verified it, but I've read it might help with memory issues

Not sure if it's an enhancement in proton 5 or PROTON_FORCE_LARGE_ADDRESS_AWARE=1, but I have not gotten a single low memory warning in several hours of gameplay.

Tried @Zauberfisch 's instructions with Proton 5.13.1 and am still getting black screen with a modified mouse cursor (cursor is shown rest of the screen is black).

First tried by creating the directory as suggested, no dice.

Then searched for Engine.ini and found it in a different location.
The Engine.ini file is also in a different location
.steam/debian-installation/steamapps/common/Anno\ 1404/Engine.ini

modified this Engine.ini as well but again black screen only mouse cursor shown.

When that didn't work; I also tried to reduce the resolution in the .ini to 800x600 windowed. But still nothing.

Any more ideas on how to get this game to play?

@globeone I haven't played anno in a while, but as far as I remember, there were at least 2 different Engine.ini files.

So for me those are:

  1. ~/.steam/steam/steamapps/common/Anno 1404/Engine.ini (Your path for it is ~/.steam/debian-installation/steamapps/common/Anno\ 1404/Engine.ini)
  2. ~/.steam/steam/steamapps/compatdata/33350/pfx/drive_c/users/steamuser/Application Data/Ubisoft/Anno1404Addon/Config/Engine.ini

(1.) is the wrong file.
So, you have to find our create (2.) in the right place. When you said you tried my fix, did you create that literally in .steam/steam/steamapps/compatdata/33350/pfx/drive_c/users/steamuser/Application\ Data/Ubisoft/Anno1404Addon/Config/Engine.ini or did you change that to your steam path .steam/debian-installation/steamapps/compatdata/33350/pfx/drive_c/users/steamuser/Application\ Data/Ubisoft/Anno1404Addon/Config/Engine.ini?

EDIT: Also, if you ar playing just Anno1404 (base game, not Venice), then the path will be different, probably .steam/steam/steamapps/compatdata/33350/pfx/drive_c/users/steamuser/Application\ Data/Ubisoft/Anno1404/Config/Engine.ini and if you have "Dawn of Discovery" then it will be different again.

I have both paths. The debian-installation is a syslink created by the Steam installer for Ubuntu 20.04.1 for some reason.

steam -> /home/$USER/.steam/debian-installation

There was already a folder Microsoft in the Application Data folder. The steamuser was the actual logged-in username.
.steam/steam/steamapps/compatdata/33350/pfx/drive_c/users/$USER/Application\ Data/

so next to that Microsoft folder I created
../Ubisoft/Anno1404Addon/Config/Engine.ini

And filled it with the XML from your previous post.

Also tried with older versions of Proton but to no avail.

Apologies, I see now that I'm trying to get the Base Game working. Whereas this instruction is for the add-on. :disappointed:
The base game does have the same 33350 prefix.

Giving up on Anno 1404. I removed the game and reinstalled, follwing the instructions a with the "debian-installation" directtory. did a pstack on the proceses and it's complaining about 64-bit only. So, it's probably a game that has to be run in a 32-bit prefix. Which is something that Valve doesn't yet support.

I just gave it another go, and following what has been said before, the game works. Quite well actually, though very CPU limited.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

shanefagan picture shanefagan  ·  3Comments

ArekPiekarz picture ArekPiekarz  ·  3Comments

leifmetcalf picture leifmetcalf  ·  3Comments

BLaDZer picture BLaDZer  ·  3Comments

prototype99 picture prototype99  ·  3Comments