Last resort logo

SWAT 3 - LAST RESORT GAME MODIFICATION


Spam Prevention - PLEASE READ !! (23 Apr 2021)

Due to a problem with spammers the rules for posting in the forums have changed for new users.

Newly registered users won't have their posts published until a moderator approves them.

Mission Loading Screen

More
3 years 11 months ago - 3 years 11 months ago #1587 by Copy-Cat
Replied by Copy-Cat on topic Mission Loading Screen
I'm heading off to bed, be up about 7am to work on it some more.

Here are my findings if ya wanna follow along or give a shot.

The Function starts at: 0056b1f0 - 83 EC 4C - sub esp,4C { 76 }

Here is the de-compiled code. Some variables have been refactored with known and tested variable names.

Warning: Spoiler!


I was hoping we could find a simple edit and not have to do a rewrite of the op code.

Was gonna share my .CT but can't; only images can be uploaded.

Please Log in or Create an account to join the conversation.

More
3 years 11 months ago - 3 years 11 months ago #1588 by Copy-Cat
Replied by Copy-Cat on topic Mission Loading Screen
The variable local_40.right and local_40.left I thought was the image size since I have a mod on that overwrites it with the original 800x600 texture(not that it was changed to begin with). After changing the image size by modifying the image in paint, the values are not updating in code. This tells me that, local_40 is not the image size. The question is: is there is a variable that has not been updated in the exe for the screen resolution?
Code:
SetRect((LPRECT)&local_30,xLeft,yTop,(local_40.right - local_40.left) + xLeft, (local_40.bottom - local_40.top) + yTop);

SJ did we get all the screen resolution hacks in? Were there any that we didn't know what they are for and that were not included?

UPDATE: Sorry, i was looking at the height not the width...
Local_40.right = image size
Local_40.left = 0;

Please Log in or Create an account to join the conversation.

More
3 years 11 months ago - 3 years 11 months ago #1590 by Slippery Jim
Replied by Slippery Jim on topic Mission Loading Screen
Yes there were some potential 800x600 references not modified because I never figured out what they did. They could have just been "false positives" in terms of them being a resolution reference and were just normal code.

As I mentioned already, the "bible" thread does contain the hex edit locations for the load maps. Long ago I figured it out, experimented a little, and then abandoned changing it because of all the many community maps.

Edit: It was a while ago but I seem to recall that the images always stayed at the top left if you hacked say 1920x1080 and the image was only 800x600. If you could figure out a way to center the images then it would be more appealing.

Edit2: The other problem is how do you tell the game to load different sized images depending on which is the chosen 2D resolution? You can't force all load screens to be 1920x1080 when some people might want to play a lower resolution.

Please Log in or Create an account to join the conversation.

More
3 years 11 months ago #1591 by Copy-Cat
Replied by Copy-Cat on topic Mission Loading Screen
I can move the image but the calculations make the image smaller the more right you go. In addition to that there is only a byte to work with, meaning you cant go more than 127 over wthout being in the negatives.

Here is the spot to move it over so you can try it for yourself.. and see the image get smaller.
Code:
16B2D0 - 52 6A 00 8D 44 24 58 6A 00

its the zero's, try them for yourself

Please Log in or Create an account to join the conversation.

More
3 years 11 months ago #1592 by Slippery Jim
Replied by Slippery Jim on topic Mission Loading Screen
I believe you :)

I still haven't had time to work on the 1366x768 menu fixes yet. Will be tackling that soon.

Please Log in or Create an account to join the conversation.

More
3 years 11 months ago - 3 years 11 months ago #1593 by Copy-Cat
Replied by Copy-Cat on topic Mission Loading Screen
Ok I found the image recalculated size being passed in from a pointer, if I change the register at the point before it calls the SetRect, I can get the image stretch to fit screen.

I need to figure out what modifies the pointer(because it is being reset) to see if it's size is being passed in from the exe so I can hex edit it.

Believe it or not the screen refreshes every time a letter ticks at the bottom text.

I don't think stretching to fit is the way to go tho.... all other fixes incorporated the 800 x 600 screen centered or in a 0,0 location, to have the Map Loading screen full blast like that is a bit harsh on the eyes... What do you think?

The original exe did it, why can't we?

Stilll working at it..

Update: The function is being shared by other screen elements, so far I have counted 6. is that right? what else could possibly be on that screen?
Full screen image is probably gonna be a re-write of the op code, will look into centering the image

Please Log in or Create an account to join the conversation.

Moderators: DarkSynopsis
Time to create page: 0.203 seconds
Powered by Kunena Forum