lah7 / sims2-4k-ui-patch Goto Github PK
View Code? Open in Web Editor NEWWork in progress patch program to upscale The Sims 2's UI for 4K displays
License: GNU General Public License v3.0
Work in progress patch program to upscale The Sims 2's UI for 4K displays
License: GNU General Public License v3.0
Windows 11
v0.1.0
Repack or other automated installation
Opening the patcher and reads C:\Program Files (x86)\EA Games then it crashes with error below
EA Games folder has read/write permissions on users, administators and trustedinstaller
I've also tried moving the folder somewhere else but it stays on Checking for patches forever...
Traceback (most recent call last):
File
"D:\a\sims2-4k-ui-patch\sims2-4k-ui-patch\venv\Lib\site-packa
ges\cx_Freeze\initscripts\__startup__.py", line 141, in run
File
"D:\a\sims2-4k-ui-patch\sims2-4k-ui-patch\venv\Lib\site-packa
ges\cx_Freeze\initscripts\console.py", line 25, in run
File "sims2_4k_ui_patcher.py", line 503, in <module>
File "sims2_4k_ui_patcher.py", line 161, in __init__
File "sims2_4k_ui_patcher.py", line 261, in
refresh_game_status
File "D:\a\sims2-4k-ui-patch\sims2-4k-ui-patch\gamefile.py",
line 43, in __init__
IndexError: list index out of range
OK
Static cursors (like the main arrow) are OK, but the animated "busy" cursor isn't processed yet.
At the moment, it shrinks to half the size (1x density), which doesn't look good.
This is documented at the URLs:
I had trouble understanding where within the DBPF file (binary) to process this.
Currently, we must depend on SimPE to extract the files. It would be excellent to process the original ui.package
without relying on SimPE and manual steps.
Windows 11
v0.1.0
No response
The patcher does not recognize my installation folder. I tried selecting it manually, that did not work either. It gives the error,
"Wrong folder selected
No installation of The Sims 2 (or its expansion packs) was found in this folder."
In the patcher status bar it says, "Missing EA Games Folder"
I tried to reinstall the game in the registry as "Program Files (x86)\EA GAMES\The Sims 2 Ultimate Collection", but that did not work either. I also tried running as Administrator, and taking ownership of the folder and giving full control permissions.
I am using The Sims 2 Starter Pack.
No response
Also note the misalignment on the left (#11)
Until #3 is resolved, we don't know if we can place the new ui.package
in the user's EA Games\The Sims 2\Downloads
folder instead of the game's installation directory. It would make removal of the "mod" easier for later.
I'm not actually sure how the mod system works - if it needs anything special, or if only concerns custom content (new objects, clothes, etc) and not graphical modifications to the game itself.
At the moment, the game ignores the file if placed there and does not show up in the custom content dialog box.
Players might be able to use this project for 2K or 1440p displays, which is 150% scaling. The project will focus on getting it right for 4K, before we support other scaling options.
The end result are some pretty large ui.package
files. After figuring out #1, it would be ideal to support the compression of the new ui.package
file.
The loading screens are stored in the base game's ui.package
. They are some kind of RIFF file with the .uiScript
extension.
$ file *
00000000-499DB772-8DA3ADE7.uiScript: RIFF (little-endian) data
00000000-499DB772-8DA3ADE8.uiScript: RIFF (little-endian) data
00000000-499DB772-8DA3ADE9.uiScript: RIFF (little-endian) data
00000000-499DB772-8DA3ADEA.uiScript: RIFF (little-endian) data
00000000-499DB772-8DA3ADEB.uiScript: RIFF (little-endian) data
00000000-499DB772-8DA3ADEC.uiScript: RIFF (little-endian) data
00000000-499DB772-8DA3ADED.uiScript: RIFF (little-endian) data
RIFF is a container, so if possible, we'll need to find out what format this data is, so we can extract and repack its contents.
With the rest of the UI upscaled, they don't look great at the moment:
Would love to test this on macOS, but I'm having trouble to install my Ultimate Collection on it (both Origin and Starter Pack).
I followed the steps in your archived repo on it, but the game always shuts down after the EA splash screen. Do you know any updated instructions to install and run it?
I've tried both with Whisky and Gcenx' Wineskin project already, but maybe I'm missing some wineskin?
Thanks for any help!
Hello everyone,
Every time I try to run the script I get the following error:
https://i.imgur.com/2w4FvDA.png
It can output FontStyle.ini but not ui.package. What causes this error, and how can I fix it?
Just an issue to document test findings.
The game compresses its packages using QFS compression - but which level is best for recreating the package?
I wrote a script to benchmark the levels using a test file (can be found in the tools
folder) to find out!
ui.package
from The Sims 2 University.Higher compression levels take longer to compress. When you add up the game & expansion packs, and that the patcher program is currently single threaded, it does take a really long time. After about level 30, it's not really worth the trivial smaller file size. Overall, there is not much difference to the decompression time.
For now, I'll set the hardcoded value to 20. In future, I'll add more options to the patcher program so this can be freely changed.
More of a curiosity, does fractional scaling (like 110% or 125%) work? Does the game support floating point numbers for its UI geometry and graphics?
For example, a 64x64 box or graphic:
Scale | Pixels |
---|---|
100% | 64 x 64 |
110% | 70.4 x 70.4 |
120% | 76.8 x 76.8 |
130% | 83.2 x 83.2 |
150% (#37) | 96 x 96 |
200% | 128 x 128 |
Fractional scaling has its disadvantages. It's likely to cause subpixel rendering and potentially blurriness, depending on how we upscale the images.
ℹ️ Give this issue a 👍🏼 if you have a need for fractional scaling.
These files contain the game's loading screen (after the splash):
00000000-499DB772-CCC9AF70
00000000-499DB772-CCC9AF80
Perhaps they could be processed again to fill the entire screen (2160p)
Windows 11
v0.1.0
No response
Hey, first of all amazing idea! So i have the Sims 2 Starter Pack and it's a different Path then the original UC Version. It's C:\Program Files (x86)\The Sims 2 Starter Pack. It can't find it automatically which i understand but then i put it in manually and it still couldn't find it. Am i doing something wrong is it a bug?
No response
First, we need the game to accept our new ui.package
so we can test the upscaled UI (#3)
I don't know if every expansion pack needs upscaling, or just the base game and the expansion pack used to launch the game.
Using the base game as a test, when the new ui.package
is placed in C:\Program Files (x86)\EA Games\The Sims 2\TSData\Res\UI\Fonts\FontStyle.ini
, the game:
From what I can see, the DBPF is structurally correct, and SimPE opens it fine with the same group/instance IDs. The only thing that is absent is the "compressed directory listing". Does the game expect this? Maybe it'll work after implementing #2 or a placeholder listing?
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.