:: Home :: Get Hosted :: PPM FAQ :: Forum FAQ :: Privacy Policy :: Search :: Memberlist :: Usergroups :: Register :: Profile :: Log in to check your private messages :: Log in ::
Do you want to advertise at Project Perfect Mod. Find out how to do it HERE.

The time now is Wed Apr 01, 2020 9:13 pm
All times are UTC + 0
 Forum index » Featured Tools » Community Tools
C&C Executable Modifier
Moderators: Community Tools Developpers
Post new topic   Reply to topic Page 4 of 4 [166 Posts] View previous topic :: View next topic
Goto page: Previous 1, 2, 3, 4
Author Message
E1 Elite
Commander


Joined: 28 May 2013

PostPosted: Fri Nov 22, 2019 9:10 am    Post subject: Reply with quote

Number of lines in IsoMapPack5 limit extension:

When big maps with high details cross about 9750 + few lines in IsoMapPack5 section, game doesn't decode those and fills the bottom-left corner of the map with height level 0 clear tiles. Though the capacity needed to decode the IsoMapPack5 section in the map is not related to the resolution, game uses the low resolution values (640, 400) for it. This hack raises it to about 3 times the original value (to match 1024, 768).

Code:
[IsoMapPack5Limit]
Name=Map IsoMapPack5 section's limit extension.
Description=Extends the number of lines limit from 9750 + few lines to about 3 times of it.
Type=TS
Offset=0x7A0B6
Original=90 01
Modified=00 03
Offset=0x7A0BB
Original=80 02
Modified=00 04
Offset=0x7A0CA
Original=D0 07
Modified=00 18


Not aware of any YR maps crossing the limit, but if needed the 3 addresses are at 0xAD344, 0xAD349 and 0xAD358.

Back to top
View user's profile Send private message
CCHyper
Defense Minister


Joined: 07 Apr 2005

PostPosted: Fri Nov 22, 2019 3:36 pm    Post subject: Reply with quote

I wasnt aware there was such a limit on the IsoMapPack section...

BTW, this patch will apply to all IsoMapPack sections, 1-5.

The values passed there are fed into the "surface buffer" for the game to read the binary (IsoMapPack) section. I would be careful how large you adjust this to as the LCW buffer has a limit on how much it can uncompress too.

Back to top
View user's profile Send private message
E1 Elite
Commander


Joined: 28 May 2013

PostPosted: Sat Nov 23, 2019 3:32 am    Post subject: Reply with quote

TS/RA2 uses IsoMapPack5, 1-4 are leftover from earlier games.

With the upper limit extended to about 29k lines, the buffer should now be based on the content size alone. Have tested about 11k lines and max expected is about 16k lines.

Back to top
View user's profile Send private message
Lin Kuei Ominae
Seth


Joined: 16 Aug 2006
Location: Germany

PostPosted: Sat Dec 28, 2019 6:37 pm    Post subject: Reply with quote

using Cluster only, the warhead of the current weapon is duplicated in a random area around the center impact point
0x465D6 defines the outer radius in leptons (default is 0x0200)
0x465DB defines the inner radius in leptons (default is 0x0100)

example values
0x0100 is 256 leptons, which is 1 cell
0x0200 is 512, 2 cells
0x0300 is 768, 3 cells
0x0400 is 1024, 4 cells

changing at 0x465EA the 00 to 01, creates the Cluster warheads in the exact center of the cell.

Thanks CCHyper for the research and the offsets.


Cluster50.gif
 Description:
the default behaviour, when giving a projectile Cluster=50
 Filesize:  26.27 KB
 Viewed:  636 Time(s)

Cluster50.gif



_________________
SHP Artist of Twisted Insurrection:  Nod buildings

Public SHPs
X-Mech Calendar (28 Mechs for GDI and Nod)
5 GDI, 5 Nod, 1 Mutant, 1 Scrin unit, 1 GDI building

Tools
Image Shaper______TMP Shop______C&C Executable Modifier

Back to top
View user's profile Send private message
Lin Kuei Ominae
Seth


Joined: 16 Aug 2006
Location: Germany

PostPosted: Sat Jan 04, 2020 7:57 pm    Post subject: Reply with quote

projectiles in TS with Bouncy=yes and using Elasticity have a hardcoded limit to explode on the 3rd hit on the ground.

Change at 0x45516 the 03 to a higher value to raise the max number of bounces.
The value is signed, so max is 0x7F which is 127 bounces.

attached an example using 0x64. Note that this doesn't show 100 bounces since at some point the Elasticity of 0.9 slowed it so much down, that it had to explode due to reaching Speed=0.

Thanks tomsons26 for the hex offset research.


bouncy100.gif
 Description:
 Filesize:  315.61 KB
 Viewed:  534 Time(s)

bouncy100.gif



_________________
SHP Artist of Twisted Insurrection:  Nod buildings

Public SHPs
X-Mech Calendar (28 Mechs for GDI and Nod)
5 GDI, 5 Nod, 1 Mutant, 1 Scrin unit, 1 GDI building

Tools
Image Shaper______TMP Shop______C&C Executable Modifier

Back to top
View user's profile Send private message
gamemazahist
Civilian


Joined: 19 Jan 2020

PostPosted: Sun Jan 19, 2020 2:11 pm    Post subject: Reply with quote

Thanks for YR*/RA2*_FastExit
A similar patch was already, but not for YR (Red Alert 2 User Patch 09.2002):
https://github.com/Evengard/xcc/tree/master/xcc/RA2 User Patch
"Skips splash screen.
Skips WS logo movie.
Skips "The display mode will be changed. If there is a problem with the new display mode then wait and the old mode will be restored." dialog.
Skips "Click OK to keep this display mode or wait and your old display settings will be restored." dialog.
Skips "Are you sure you want to exit Red Alert 2?" dialog."

I hope these patches appear for RA2:
YR Any resolutions in XWIS games
RA2*/YR Disable startup loading screen
YR Disable EA logo
YR Better LAN netcode + Lower FrameSendRate
RA2*/YR Graphics Patcher
YR Any resolutions

*were found in this thread

Back to top
View user's profile Send private message
gamemazahist
Civilian


Joined: 19 Jan 2020

PostPosted: Fri Jan 24, 2020 10:55 am    Post subject: Reply with quote

I could not check where they might be needed, but they are.

[YR_x64_patch]
Name=improves 64-Bit compatibility
Description=If you see typically standard Windows error at startup
Link=http://www.vk.cncguild.net
Type=YR
Group=
Offset=0x1CAFC0
Original=55 8B EC
Modified=33 C0 C3

[YR_4gb_patch]
Name=4GB Patch
Description=Enables to access memory addresses larger then 2GB and improves 64-Bit compatibility
Link=https://ntcore.com/?page_id=371
Type=YR
Group=
Offset=0x11E
Original=0F
Modified=2F
Offset=0x160
Original=AB 6E 4A
Modified=AD 7A 49

[RA2_4gb_patch]
Name=4GB Patch
Description=Enables to access memory addresses larger then 2GB and improves 64-Bit compatibility
Link=https://ntcore.com/?page_id=371
Type=RA2
Group=
Offset=0x11E
Original=0F
Modified=2F
Offset=0x160
Original=E8 74
Modified=1A F6

Back to top
View user's profile Send private message
gamemazahist
Civilian


Joined: 19 Jan 2020

PostPosted: Fri Jan 24, 2020 12:16 pm    Post subject: Reply with quote

Took from the original patches

[RA2_QM_Res_Patch]
Name=QM Resolution Patch
Description=This allows you to use any resolution while playing an QM game
Type=RA2
Group=Graphics
Offset=0x3457CC
Original=0F 8E C3
Modified=E9 C4 00
Offset=0x359E87
Original=0F 8E C0
Modified=E9 C1 00

Back to top
View user's profile Send private message
gamemazahist
Civilian


Joined: 19 Jan 2020

PostPosted: Fri Jan 24, 2020 3:23 pm    Post subject: Reply with quote

[RA2_User_patch]
Name=unknown
Description=Skips splash screen?
Link=https://github.com/Evengard/xcc/tree/master/xcc/RA2%20User%20Patch
Type=RA2
Group=
Offset=0x91A10
Original=83 EC 10
Modified=B0 01 C3

[RA2_User_patch]
Name=Skips "The display mode will be changed." dialog.
Description=Skips "The display mode will be changed. If there is a problem with the new display mode then wait and the old mode will be restored." dialog.
Link=https://github.com/Evengard/xcc/tree/master/xcc/RA2%20User%20Patch
Type=RA2
Group=
Offset=0x142715
Original=FF FF FF FF
Modified=01 00 00 00

[RA2_User_patch]
Name=Skips "display settings will be restored." dialog.
Description=Skips "Click OK to keep this display mode or wait and your old display settings will be restored." dialog.
Link=https://github.com/Evengard/xcc/tree/master/xcc/RA2%20User%20Patch
Type=RA2
Group=
Offset=0x143A89
Original=FF FF FF FF
Modified=01 00 00 00

[RA2_User_patch]
Name=Skips exit dialog.
Description=Skips "Are you sure you want to exit Red Alert 2?" dialog.
Link=https://github.com/Evengard/xcc/tree/master/xcc/RA2%20User%20Patch
Type=RA2
Group=
Offset=0x1B46BE
Original=FF FF FF FF
Modified=00 00 00 00

[RA2_User_patch]
Name=unknown
Description=Launcher Remover ?
Link=https://github.com/Evengard/xcc/tree/master/xcc/RA2%20User%20Patch
Type=RA2
Group=
Offset=0x28E70F
Original=75
Modified=EB
Offset=0x29053F
Original=75
Modified=EB

[RA2_User_patch]
Name=Skips WS logo movie
Description=Skips WS logo movie.
Link=https://github.com/Evengard/xcc/tree/master/xcc/RA2%20User%20Patch
Type=RA2
Group=
Offset=0x3DB604
Original=57
Modified=00

[RA2_User_patch]
Name=unknown
Description=unknown
Link=https://github.com/Evengard/xcc/tree/master/xcc/RA2%20User%20Patch
Type=RA2
Group=
Offset=0x3457CC
Original=0F 8E C3
Modified=E9 C4 00
Offset=0x359E87
Original=0F 8E C0
Modified=E9 C1 00

Back to top
View user's profile Send private message
Lin Kuei Ominae
Seth


Joined: 16 Aug 2006
Location: Germany

PostPosted: Sun Feb 09, 2020 10:26 pm    Post subject: Reply with quote

the speed for all subterranean traveling units is hardcoded
the address to change this is at 0x2D8A98
the default value is
00 00 00 00 00 00 33 40
which is a double value for 19.0

Converting a double to hex and back can be done via this site: https://gregstoll.com/~gregstoll/floattohex/

Warning: when using values above 50.0, the subterran unit can get stuck when reaching the target.

At 2D8A90 you can find the double that is used for the pitch speed.
Default value is
00 00 00 00 00 00 50 40
which is a double for 64.0
When a unit digs, it rotates forward from the horizontal normal ground position to the 90° vertical downwards position before it starts going underground.
This value defines the speed at which the unit rotates forward. The higher the value, the slower it rotates and the longer it takes before it starts going underground.

TunnelSpeed in rules.ini also affects this value and works like a multiplier. However it does not affect the speed when the unit emerges vertical up and starts rotating into the horizontal position.


2D8AA0 may also be related to digging, but I couldn't notice any difference when i set a very low and very high value.


Thanks to tomsons for the offsets and the exe research.
_________________
SHP Artist of Twisted Insurrection:  Nod buildings

Public SHPs
X-Mech Calendar (28 Mechs for GDI and Nod)
5 GDI, 5 Nod, 1 Mutant, 1 Scrin unit, 1 GDI building

Tools
Image Shaper______TMP Shop______C&C Executable Modifier

Back to top
View user's profile Send private message
E1 Elite
Commander


Joined: 28 May 2013

PostPosted: Mon Feb 10, 2020 10:13 am    Post subject: Reply with quote

Good find. The same double value at 0x2D8A90 (default 64.0) is accessed for both going down at 0x24C1A1 (90 8A 6D 00) and coming up at 0x24C8CD (90 8A 6D 00). Should be able to nullify the effect of TunnelSpeed on going down turning speed by changing instruction at 0x24C1A5 from DC 71 18 to 90 90 90.

Back to top
View user's profile Send private message
Lin Kuei Ominae
Seth


Joined: 16 Aug 2006
Location: Germany

PostPosted: Mon Feb 10, 2020 11:53 am    Post subject: Reply with quote

Any chance to change the coming up at 0x24C8CD to a different value?
It would be nice to give the digging down a different (much longer) delay than coming up.

Maybe 0x24C8CD could point to 0x2D8AA0 instead, who showed no effect when i changed it. (The address value would have to be E0 8A 2D 00 right?)
_________________
SHP Artist of Twisted Insurrection:  Nod buildings

Public SHPs
X-Mech Calendar (28 Mechs for GDI and Nod)
5 GDI, 5 Nod, 1 Mutant, 1 Scrin unit, 1 GDI building

Tools
Image Shaper______TMP Shop______C&C Executable Modifier

Back to top
View user's profile Send private message
E1 Elite
Commander


Joined: 28 May 2013

PostPosted: Mon Feb 10, 2020 1:11 pm    Post subject: Reply with quote

Should already be possible by using like TunnelSpeed=0.3 as it affects only the going down turn speed.

Value at 0x2D8AA0 is 32.0 which is smaller than default 64.0. When replacing bytes add 400000 to the EXE address and use as 006D8AA0 (A0 8A 6D 00). Could use double values already used in the code like 006CC6D8 has 160.0 etc. for replacement. If patch is made, can put any needed value.

Edit: Didn't check for the replacement examples for float/double, so corrected.

Last edited by E1 Elite on Mon Feb 10, 2020 3:30 pm; edited 1 time in total

Back to top
View user's profile Send private message
Lin Kuei Ominae
Seth


Joined: 16 Aug 2006
Location: Germany

PostPosted: Mon Feb 10, 2020 2:12 pm    Post subject: Reply with quote

For DTA we need a high TunnelSpeed (about 50 to 100), so it doesn't take ages for the unit to actually move downwards (from ground level to subterran level should be instantly). But we still need the delay caused by the unit rotating 90° down. A high value for 2D8A90 would do this, but it would also mean a long delay when emerging.

Thus the need for a very slow pitching down and a separate very fast pitching up.

0x2D8AA0 is good, because a small value means a fast pitching speed, which we need for digging up.

E1 Elite wrote:
Value at 0x2D8AA0 is 32.0 which is smaller than default 64.0. When replacing bytes add 400000 to the EXE address and use as 006D8AA0 (A0 8A 6D 00).

yeah, that's why in my example for using
0x2D8AA0
i would have to use the address
E0 8A 2D 00
_________________
SHP Artist of Twisted Insurrection:  Nod buildings

Public SHPs
X-Mech Calendar (28 Mechs for GDI and Nod)
5 GDI, 5 Nod, 1 Mutant, 1 Scrin unit, 1 GDI building

Tools
Image Shaper______TMP Shop______C&C Executable Modifier

Back to top
View user's profile Send private message
E1 Elite
Commander


Joined: 28 May 2013

PostPosted: Mon Feb 10, 2020 2:42 pm    Post subject: Reply with quote

If you want to put 32.0 for coming up at 0x24C8CD then replace 90 8A 6D 00 with A0 8A 6D 00 (0x2D8A90 with 0x2D8AA0).

By transposing the place where 4 has to be added, E0 8A 2D 00 has 2 mistakes.

Back to top
View user's profile Send private message
Lin Kuei Ominae
Seth


Joined: 16 Aug 2006
Location: Germany

PostPosted: Mon Feb 10, 2020 2:56 pm    Post subject: Reply with quote

damn, i first switched the endianness and then added the 400000
should have added first 400000 and then switch endianness.
_________________
SHP Artist of Twisted Insurrection:  Nod buildings

Public SHPs
X-Mech Calendar (28 Mechs for GDI and Nod)
5 GDI, 5 Nod, 1 Mutant, 1 Scrin unit, 1 GDI building

Tools
Image Shaper______TMP Shop______C&C Executable Modifier

Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic Page 4 of 4 [166 Posts] Goto page: Previous 1, 2, 3, 4
View previous topic :: View next topic
 Forum index » Featured Tools » Community Tools
Jump to:  
Share on TwitterShare on FacebookShare on Google+Share on DiggShare on RedditShare on PInterestShare on Del.icio.usShare on Stumble Upon
Quick Reply
Username:


If you are visually impaired or cannot otherwise answer the challenges below please contact the Administrator for help.


Write only two of the following words separated by a sharp: Brotherhood, unity, peace! 

 
You can post new topics in this forum
You can reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum


Powered by phpBB © phpBB Group

[ Time: 0.4068s ][ Queries: 14 (0.0814s) ][ Debug on ]