PDA

View Full Version : Hud Customization and Resolution


Achemelie
12-13-2004, 7:20 PM
Is there anyway to make the HUD smaller? Or bump up the resolution? Thanks.

UED77
12-13-2004, 9:31 PM
Welcome to Warboards, Achemelie!

Unfortunately, the resolution is hard-coded into the Starcraft Game Engine itself and the only person (besides Blizzard programmers) who has knowledge of Patch 1.11b offsets decided to retire and not to give them out. Thus you have no way of modifying it.

But.... the dialogue files that control the actual appearence and layout of the HUD can be changed. Please see this thread (http://www.warboards.org/showthread.php?t=7151), in which I have answered a similar question.

The background files for the HUD are in StarDat.mpq\game
pconsole.pcx
tconsole.pcx
zconsole.pcx
pconover.pcx
tconover.pcx
zconover.pcx


UED77

Achemelie
12-13-2004, 10:37 PM
Thank you! I'm not any good at programming though so is there any actual apps I can apply to the game? I want to make the sizes a little smaller so they aren't hogging up the whole screen. Thanks again!

Garrec
12-13-2004, 11:06 PM
Unfortunately, the resolution is hard-coded into the Starcraft Game Engine itself and the only person (besides Blizzard programmers) who has knowledge of Patch 1.11b offsets decided to retire and not to give them out. Thus you have no way of modifying it.
That's not entirely true. I've done a bit of reseach into the matter, and I have found the offsets to change the game resolution. I wrote them down somewhere, but I don't feel like finding them at the moment.

The result? Nothing really desirable. Any pixels outside the 640x480 box are black. The visible area on the monitor just shrinks. I don't know how the game draws the screen, so I don't know how to expand the visible area. I kind of stopped working on it after that one day of research.

UED77
12-13-2004, 11:06 PM
Well, you should download and use BinEdit (use the link in the other thread I gave you) and use that to customize the interface. It's really simple to use, and soon you will be adept at customizing .bin files.

Oh, and I'm not sure about how much you know about extracting these files, but you will need WinMPQ, a good listfile ( *cough* like mine, which I acknowledge is not the most complete, but is the .ORG network in-house listfile :)), and the required runtime files. Once you installed everything, start up WinMPQ, go to Options and specify the listfile path. Then open StarDat.mpq in your SC dir, and extract the files you wish to customize using BinEdit. Just scroll down on the list until you come across "rez\", and there you will find the ones I listed above.

Good luck.


EDIT: Wow, Garrec, did you really? Perhaps if you (or the community as a whole) could do a little experiment in which we changed the resolution of the title screen (rez\titledlg.bin) and the corresponding background (glue\title\title.pcx), and see how the game reacts....


UED77

Garrec
12-15-2004, 2:50 PM
Bumping up the resolution or changing the HUD size may require drastic changes to several parts of the source code. In theory, somehow making the HUD smaller doesn't mean you get to see much more of the battlefield. To keep the program running at optimum performance, only the squares of the map that are visible would be drawn. Any squares under the HUD could be ignored. The size of the HUD itself could be hard coded somewhere into the program. I still don't know how exactly the program draws the screen.

Bumping the resolution could require several different changes. It still only draws the portion of the screen under 640x480, all other space is black. The mouse cursor only reaches within the default screen size. Other changes may include how units are selected, such as double clicking a unit will only select units within the visible default screen size. All these variables are probably hard-coded into the program in separate places.

I'm not sure if this is against WB rules to post this stuff. If it is, I apologize. But here goes. The game has been updated to the latest version (1.11b).
In the STARCRAFT.EXE file:
Y screen size offset: 0D4521 (2 (or 4) bytes)
X screen size offset: 0D4526 (2 (or 4) bytes)
Bits per pixel?: 0D452B (1 byte)

These are for references only, but you can substitute these resolution values. I put them in a code block so they'd be easier to read. I haven't tried going on bnet with any of these changes, so make these changes at your own risk. I suggest backing up file before making changes.


Resolution Byte 1 Byte 2
1024 0 (0x00) 4 (0x04)
768 0 (0x00) 3 (0x03)
1280 0 (0x00) 5 (0x05)
1600 64 (0x40) 6 (0x06)
1200 176 (0xB0) 4 (0x04)
320 64 (0x40) 1 (0x01)
240 240 (0xF0) 0 (0x00)
640 128 (0x80) 2 (0x02)
480 224 (0xE0) 1 (0x01)
800 32 (0x20) 3 (0x03)
600 88 (0x58) 2 (0x02)