Intro

Da habe ich endlich wieder mehr Freizeit, und schon fange ich an, Geld für Computerspiele auszugeben, die ich am Ende wenig bis garnicht spiele. Geldverschwendung! Aber wenigstens erhöht sich die Zahl auf meinem Steam-Profil, die anzeigt, wieviele Spiele ich in der Bibliothek habe. Der letzte Neuzugang ist “Life is Strange - True Colors”. Wurde mir empfohlen. Teil eins fande ich damals (wie lange ist das denn eigentlich schon her?) ja super. Mal sehen, ob ich wider meiner Erwartung in dieses Spiel etwas mehr Zeit reinstecken werde.

Life is not Ultrawide

Das erste was mir aufgefallen ist, ist ja das Folgende:

Schwarze Balken in Life is Strange: True Colors
Zur rechten und linken des Bildschirminhaltes zu sehen: FREE SCREEN REAL ESTATE

Das Spiel scheißt auf meinen Monitor. Es ist intolerant gegenüber meiner Bildschirmauflösung. Wozu habe ich denn so ein extra breites Teil auf meinem Schreibtisch stehen? Ich will 21:9, nicht 16:9! Der erste Eindruck von meinem tollen neuen Spiel ist ja jedenfalls schonmal geglückt. Grund genug, mir eine andere Beschäftigung zu suchen: Wie patche ich mir meine 3440x1440p-Auflösung?

Hex Hex! 🪄

Mal schnell in die Internet-Glaskugel geguckt und siehe da: Es gibt bereits Programme, die diese Bildschirmbeschränkung rauspatchen.1

Problem: Nur für Windows. Warum nochmal mache ich mir mein Leben mit diesem Linux (sorry: GNU/Linux) nur so schwer? Genau!

We choose to use GNU/Linux, not because they are easy, but because they are hard.

Von daher: Code für die Windows-Platform reverse-engineeren und ran an die .EXE! In meinem Fall befindet sich die relevante, zu verändernde Datei unter:

~/.steam/steam/steamapps/common/LifeIsStrange3/Siren/Binaries

Kurz mal im Code des verlinkten1 Repo nachgeguckt, und anscheinend reicht es, ein paar Bytes zu ändern, um LIS3 in Ultrawide genießen zu können. Die dafür benötigten Bytes sind im Quellcode des Repos zu finden.

In meinem Fall für 3440x1440p reicht es jetzt, einfach folgendes in der Konsole auszuführen; Einmal für die Auflösung:

$ sed -i 's/\x3B\x8E\xE3\x3F/\x8E\xE3\x18\x40/g' Siren-Win64-Shipping.exe

Abhängig von der Auflösung müssen hier nach dem zweiten / die Bytes anders gesetzt werden. Optional noch folgendes für das FOV:

$ sed -i 's/\x35\xFA\x0E\x3C\xAC\xC5\x27\x37\x6F/\x35\xFA\x3E\x3C\xAC\xC5\x27\x37\x6F/g' Siren-Win64-Shipping.exe

Und tadaa, wieder einmal sich selbst geholfen! Nichts, wofür man extra ein eigenes Programm schreiben muss. Ganz ohne irgendwelche Hex-Editoren, die sind doch eh gruselig. 👀