1080p user interface mod

Full Game Conversions and Custom maps
unexpectedpanda
Posts: 6
Joined: Tue Mar 19, 2013 10:37 am

1080p user interface mod

Post by unexpectedpanda »

I found it irritating that you could run BF1942 in 1080p, get some decent textures and models, but the UI was always scaled up and ugly. So I gave making a UI replacement a shot. I've tried to stay as true to the original as possible, just everything should now have sharper curves, less compress/scaling artifacts, etc.

Changes:
  • High-res buttons, logos, mouse cursor, menu frames, in-game frames, radio command graphics, health/ammo/heat bar graphics, and some high-res mini-map graphics.
  • Menu renders at 1080p, and has a new background for the Esc menu. New menu background movie contains 720p clips from "Apocalypse: The Second World War".
  • Background music for main menu from London Philharmonic Orchestra.
  • All intro movies can be skipped. They're 720p, although playback renders at 1080p.
  • Bold font replaced. Can't really do much here to get sharper curves, as the fonts come from bitmaps and it seems you can't control the font scaling.
It took about four days, and the improvement while playing is quite noticeable (the screenshots don't do it justice). It's spoiled by BF's built-in font-scaling though; if anyone knows how to address this, it would be greatly appreciated.

The mod currently uses the Merciless Creations mod as a base, but I'm sure it can be altered for vanilla BF1942 too. I've included a download link here to the fully patched Merciless mod, as the installers provided on the site weren't exactly friendly.

I've included the Adobe Illustrator file I worked with in case it helps someone expand the mod, or do their own work -- everything else was done directly in Photoshop.

Screenshot comparison
(The 800x600 screenshots only look good because they haven't been stretched/scaled. Not really indicative of what the game looks like on a modern system, unless you run your monitor at 1:1 scaling)
Comparison 1
Comparison 2
Comparison 3
Comparison 4
Comparison 5
Comparison 6

Download
UI mod (141MB)
Merciless Creations mod fully patched (671MB)
Adobe Illustrator file (613KB)

Full blurb below.

Code: Select all

*****************************************************************
Requirements: 
# Battlefield 1942 (tested on Origin build)
# Merciless Creations mod (http://www.mercilesscreations.net/mc/)
*****************************************************************

New UI elements for a 1080p display. 

Everyone's always updating textures, models and sounds, but it seems UI elements are nearly always overlooked. Here's a proof of concept that anyone can use how they see fit.

I recommend you play the game with FxAA turned on through your graphics driver control panel.

Tank Combat 2 Icon by Exhumed, CC Attribution Non Commercial No Derivatives. http://www.iconarchive.com/show/mega-games-pack-25-icons-by-3xhumed/Tank-Combat-2-icon.html

=========================================================================
Known problems (if anyone knows how to fix, would be greatly appreciated)
=========================================================================
I can't control the scaling of fonts used in the game. This prevents putting nicer fonts in.
Whenever a level ends, the mod unloads. I don't know why.
The included .exe likely have version mismatch problems with online servers. You can use the Origin .exe to bypass this, but you'll lose the high-res main-menu and video playback.
Load screens are still the original low resolution versions.

=================================
Hey, the movies aren't skippable!
=================================
That's because you need to boot BF with the mod. Create a shortcut to the .exe, and add "+game 'MC1942'" to the end of the target, without the quotation marks. Launch by the shortcut, and all should be sweet.

==========
New things
==========
All intro movies can be skipped.
720p EA, DICE and legal movies at intro, renders at 1080p.
Menu renders at 1080p.
Background music for menu from London Philharmonic Orchestra.
1080p background image for the esc menu.
Bold font replaced. Can't really do much here to get sharper curves, as the fonts come from bitmaps and it seems you can't control the font scaling.
New menu background movie at 720p, clips from "Apocalypse: The Second World War".
High res buttons.
High res logos.
Mouse cursor replaced.
High res menu frames, and in-game frames.
High res radio command graphics.
High res health/ammo/heat bars.

==========
Executable
==========
The executable is taken from Widescreen gaming forum (http://www.wsgf.org/), and hex edited so the menu and movies render in 1080p. Here's how it was done.

The mmenu and movies in BF1942 usually render at 800x600. In hex, this is 0320 0258. This is stored in the executable byte-shifted twice to the left, so we're looking for an entry of 20 03, followed not too far after by 58 02.

We then want to replace this with the byte-shifted code for 1920x1080 -- that is, 80 07 38 04.

To make the menus render at 1080p, at offset 002B1140 this was changed:
			  
C7 41 30 20 03 00 00 C7 41 34 58 02 00 00 C7 41

To:

C7 41 30 80 07 00 00 C7 41 34 38 04 00 00 C7 41
			  
To make the movies play back in 1080p, at offset 002B0280 this was changed:

30 20 03 00 00 C7 40 34 58 02 00 00 C7 40 38 20

To:

30 80 07 00 00 C7 40 34 38 04 00 00 C7 40 38 20

It isn't easy to do this to the Origin executable, as it's in a wrapper that makes finding the resolution entry impossible.
Last edited by unexpectedpanda on Sun Jul 05, 2015 12:22 pm, edited 1 time in total.
User avatar
one
Posts: 50
Joined: Thu Sep 15, 2011 4:14 pm

Re: 1080p user interface mod

Post by one »

Wow, impressive work! :o How did you unlock all resolutions which can be set in video options? And also, did you try to make the HUD not to stretch in 1080p?
unexpectedpanda
Posts: 6
Joined: Tue Mar 19, 2013 10:37 am

Re: 1080p user interface mod

Post by unexpectedpanda »

That much was the work of whomever made the widescreen gaming forum .exe and the mod.dll files that came with it. It also purports to properly expand the screen ratio rather than stretch.

I didn't pay much attention to the HUD compared to 4:3 -- perhaps in the future, but I'm wondering if the WSGF exe already took care of that. I really just want to be able to modify the font scaling :|
User avatar
buschhans
Posts: 338
Joined: Wed Jul 18, 2012 12:50 pm

Re: 1080p user interface mod

Post by buschhans »

Good work, thx for modding. :)

Works this fix for all BF 1942 mods and my display screen: "1366x768" too?
I have the problem, if i stretch it with the FHSW fix patch, the tipping words i cannot recognize also good anymore.
For FHSW i can change a text fille, but for the other mods nothing?
Little bit complicated.:-/
If do you like the BF 1942 Mods or search a Download please visit: http://hg-clan.blogspot.de/
freddy
Posts: 1267
Joined: Sun Oct 18, 2009 4:58 pm

Re: 1080p user interface mod

Post by freddy »

Thank you for this mod. If i was better with graphics i would love to do a total makeover of the org bf42 completely with CRC checking and the whole shebang.
unexpectedpanda
Posts: 6
Joined: Tue Mar 19, 2013 10:37 am

Re: 1080p user interface mod

Post by unexpectedpanda »

buschhans wrote:Good work, thx for modding. :)

Works this fix for all BF 1942 mods
It should work for pretty much anything, although it would require a few changes first -- it currently makes use of Merciless Creation's mod structure. I think the next step would be to divorce it from that structure (not too large a task, I think), and then users could add it to whatever mod they liked through the appropriate init.con file. I've yet to play with this though.
buschhans wrote:and my display screen: "1366x768" too?
Resolutions below 1920x1080 haven't been tested. In theory it should work so long as you use the original .exe (or indeed, the .exe from the widescreen gaming forum) rather than the new one found in the archive. The reason for this is the exe in the archive forces a resolution of 1080p for the menu and movie playback, and I'd imagine most screens would blank out at being fed a resolution they can't handle.

I'm really not sure you'd benefit from this mod with such a low resolution either. At 1366x768, you might get a *tiny* bit more fidelity scaling down high-res graphics than scaling up low-res graphics, but I'm guessing it'll be much of a muchness really.

Ultimately including an on-the-fly .exe patcher into an installer and a graphics config tool external to BF1942 would be ideal.
buschhans wrote:I have the problem, if i stretch it with the FHSW fix patch, the tipping words i cannot recognize also good anymore.
For FHSW i can change a text fille, but for the other mods nothing?
Little bit complicated.:-/
I'm not sure what this means. I haven't looked into FHSW at all, so am unable to help here.
User avatar
one
Posts: 50
Joined: Thu Sep 15, 2011 4:14 pm

Re: 1080p user interface mod

Post by one »

unexpectedpanda wrote:

It should work for pretty much anything, although it would require a few changes first -- it currently makes use of Merciless Creation's mod structure. I think the next step would be to divorce it from that structure (not too large a task, I think), and then users could add it to whatever mod they liked through the appropriate init.con file. I've yet to play with this though.

I've done it myself and play vanilla BF1942 online with your new graphics now. Works fine, the game looks much better with it.

unexpectedpanda wrote: Resolutions below 1920x1080 haven't been tested. In theory it should work so long as you use the original .exe (or indeed, the .exe from the widescreen gaming forum) rather than the new one found in the archive. The reason for this is the exe in the archive forces a resolution of 1080p for the menu and movie playback, and I'd imagine most screens would blank out at being fed a resolution they can't handle.



I'm really not sure you'd benefit from this mod with such a low resolution either. At 1366x768, you might get a *tiny* bit more fidelity scaling down high-res graphics than scaling up low-res graphics, but I'm guessing it'll be much of a muchness really.



Ultimately including an on-the-fly .exe patcher into an installer and a graphics config tool external to BF1942 would be ideal.


I have 1440x900 on my notebook and everything is OK except one thing - when the game menu loads first time, it's still 800x600 and looks a bit "blurred". But after loading a map menu gets the same resolution as ingame, 1440x900.

unexpectedpanda wrote:
I really just want to be able to modify the font scaling :|
Font system is quite cumbersome... What exactly do you want to do?
P.S. May I use your method of changing menu resolution (described in Readme file) in my version of BF1942.exe? I'm developing a mod and a patch for widescreen (old version, from 2004) + 128 bots support, so I'd like to update it. All credits will be given.
Plus, I think your work should be distributed because it's really good...
unexpectedpanda
Posts: 6
Joined: Tue Mar 19, 2013 10:37 am

Re: 1080p user interface mod

Post by unexpectedpanda »

one wrote: I've done it myself and play vanilla BF1942 online with your new graphics now. Works fine, the game looks much better with it.
Cool :)
one wrote: I have 1440x900 on my notebook and everything is OK except one thing - when the game menu loads first time, it's still 800x600 and looks a bit "blurred". But after loading a map menu gets the same resolution as ingame, 1440x900.
Interesting... I'll have to do some more tests when I get a slab of free time.
one wrote: Font system is quite cumbersome... What exactly do you want to do?
The size that fonts are rendered at (both menu and game) is over-scaled, creating the blurred hodge podge that appears now on high res screens. The bitmap already uses a font at 6pt, so replacing it with a smaller font doesn't work -- you lose legibility and even then it's still scaled up too far. Ideally I'd like the game to render the fonts at around half the size they're being rendered now, so I can get sharper, perhaps intentionally anti-aliased fonts in there.
one wrote: P.S. May I use your method of changing menu resolution (described in Readme file) in my version of BF1942.exe? I'm developing a mod and a patch for widescreen (old version, from 2004) + 128 bots support, so I'd like to update it. All credits will be given.
Plus, I think your work should be distributed because it's really good...
Absolutely. The byte offsets will likely change, hopefully the entries aren't too hard to find.
User avatar
one
Posts: 50
Joined: Thu Sep 15, 2011 4:14 pm

Re: 1080p user interface mod

Post by one »

unexpectedpanda wrote: The size that fonts are rendered at (both menu and game) is over-scaled, creating the blurred hodge podge that appears now on high res screens. The bitmap already uses a font at 6pt, so replacing it with a smaller font doesn't work -- you lose legibility and even then it's still scaled up too far. Ideally I'd like the game to render the fonts at around half the size they're being rendered now, so I can get sharper, perhaps intentionally anti-aliased fonts in there.
Probably you can do it editing Meme files. I dug through them a bit and found some font "styles" which potentially can give a result:
http://s43.radikal.ru/i101/1303/ed/dcfbe86e851f.jpg
I tried to use a "SizeStyle" with value of 10 and got this:
http://s45.radikal.ru/i109/1303/c9/f4df7d06e35c.jpg
So, if you set it less than 1 the font will get smaller.
Unfortunately I didn't find where SizeStyle should be used to change the whole chat.
unexpectedpanda wrote: Absolutely. The byte offsets will likely change, hopefully the entries aren't too hard to find.
Thank you!
Also, if you're interested, here are Full HD loadscreens made by Dice for BF1942 10th anniversary: http://yadi.sk/d/nhggwyam3UOWI
I think it'd be nice to use them in your mod for vanilla BF1942 ;)
unexpectedpanda
Posts: 6
Joined: Tue Mar 19, 2013 10:37 am

Re: 1080p user interface mod

Post by unexpectedpanda »

Cheers, I'll have a dig around. Definitely interested in those load screens!

Not seen that 1942MEME around, is it in the public domain? I've just been using MenuEditor, which seems to be only able to replace entries, not add them.

Edit: I see it's from BF2. I think I've got that filed away somewhere here, will just have to wait until I move house :)
Post Reply