From 9382594dd580e14b8aaade84220b5a11d1ea99eb Mon Sep 17 00:00:00 2001 From: Sui Date: Sun, 23 Oct 2016 17:32:33 +0200 Subject: [PATCH] Position handling, viewmodel scaling, bugs squashing etc. --- AVPPH_CustomLauncher.sdf | Bin 37224448 -> 37289984 bytes MainForm.Designer.cs | 24 ++-- MainForm.cs | 208 +++++++++++++++++++++------- Properties/AssemblyInfo.cs | 4 +- Release/AVP2PH_CustomLauncher.exe | Bin 318464 -> 320000 bytes Release/widescreenfix.dll | Bin 14336 -> 12800 bytes SettingsForms/GameSettingsForm.cs | 3 +- widescreenfix/Main.cpp | 73 +++++++++- widescreenfix/widescreenfix.vcxproj | 2 +- 9 files changed, 248 insertions(+), 66 deletions(-) diff --git a/AVPPH_CustomLauncher.sdf b/AVPPH_CustomLauncher.sdf index 965c4dd88346084394a0b207d5da55dd7175999a..2e8b3b9643fc397392c60b451c521e69f5c77737 100644 GIT binary patch delta 72605 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 diff --git a/MainForm.Designer.cs b/MainForm.Designer.cs index 0e832a7..e8d2e73 100644 --- a/MainForm.Designer.cs +++ b/MainForm.Designer.cs @@ -32,8 +32,8 @@ private void InitializeComponent() this.tableLayoutPanel1 = new System.Windows.Forms.TableLayoutPanel(); this.B_Exit = new System.Windows.Forms.Button(); this.B_DisplaySettings = new System.Windows.Forms.Button(); - this.B_StartGame = new System.Windows.Forms.Button(); this.pictureBox1 = new System.Windows.Forms.PictureBox(); + this.B_StartGame = new System.Windows.Forms.Button(); this.tableLayoutPanel1.SuspendLayout(); ((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).BeginInit(); this.SuspendLayout(); @@ -84,6 +84,16 @@ private void InitializeComponent() this.B_DisplaySettings.UseVisualStyleBackColor = true; this.B_DisplaySettings.Click += new System.EventHandler(this.B_DisplaySettings_Click); // + // pictureBox1 + // + this.pictureBox1.Dock = System.Windows.Forms.DockStyle.Top; + this.pictureBox1.Image = global::AVP_CustomLauncher.Properties.Resources.yes1; + this.pictureBox1.Location = new System.Drawing.Point(4, 4); + this.pictureBox1.Name = "pictureBox1"; + this.pictureBox1.Size = new System.Drawing.Size(348, 210); + this.pictureBox1.TabIndex = 0; + this.pictureBox1.TabStop = false; + // // B_StartGame // this.B_StartGame.Anchor = System.Windows.Forms.AnchorStyles.None; @@ -96,16 +106,6 @@ private void InitializeComponent() this.B_StartGame.UseVisualStyleBackColor = true; this.B_StartGame.Click += new System.EventHandler(this.B_StartGame_Click); // - // pictureBox1 - // - this.pictureBox1.Dock = System.Windows.Forms.DockStyle.Top; - this.pictureBox1.Image = global::AVP_CustomLauncher.Properties.Resources.yes1; - this.pictureBox1.Location = new System.Drawing.Point(4, 4); - this.pictureBox1.Name = "pictureBox1"; - this.pictureBox1.Size = new System.Drawing.Size(348, 210); - this.pictureBox1.TabIndex = 0; - this.pictureBox1.TabStop = false; - // // mainform // this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F); @@ -119,7 +119,9 @@ private void InitializeComponent() this.Name = "mainform"; this.ShowIcon = false; this.Text = "Aliens vs. Predator 2: Primal Hunt - Custom Launcher"; + this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.mainform_FormClosing); this.Load += new System.EventHandler(this.mainform_Load); + this.LocationChanged += new System.EventHandler(this.mainform_LocationChanged); this.tableLayoutPanel1.ResumeLayout(false); this.tableLayoutPanel1.PerformLayout(); ((System.ComponentModel.ISupportInitialize)(this.pictureBox1)).EndInit(); diff --git a/MainForm.cs b/MainForm.cs index 353e773..817e3bb 100644 --- a/MainForm.cs +++ b/MainForm.cs @@ -19,48 +19,119 @@ public partial class mainform : Form GameSettings _GraphicsSettings; ConfigChoice _ConfigChoice; GameHack _gamehack = new GameHack(); + int _posX = 0; + int _posY = 0; public mainform() { + if (File.Exists("autoexecextended.cfg")) + { + setPositionFromConfig(); + } InitializeComponent(); } - private void mainform_Load(object sender, EventArgs e) + #region Functions + private void CheckForRequiredGameFiles() { - CheckForRequiredGameFiles(); + string[] files = { "lithtech.exe", "AVP2X.REZ", "AVP2DLL.REZ", "AVP2L.REZ", "DIALOGUE.REZ", "AVP2P1.REZ", "AVP2P.REZ", "binkw32.dll", "MULTI.REZ", "server.dll", "ltmsg.dll", "binkw32.dll" }; - if(!File.Exists(@"autoexec.cfg")) + for (int i = 0; i < files.Length; i++) { - _ConfigChoice = new ConfigChoice(); - _ConfigChoice.ShowDialog(); + if (!File.Exists(@files[i])) + { + MessageBox.Show("No " + files[i] + " found. Please place the custom launcher in the directory with the game!", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); + Close(); + } } - if (!File.Exists(@"avp2cmds.txt")) + if (!File.Exists(@"widescreenfix.dll")) { - MessageBox.Show("No avp2cmds.txt found. The launcher will try to create it based on files in your current directory.", "Warning", MessageBoxButtons.OK, MessageBoxIcon.Warning); - CreateGenericAVP2Cmds(); + MessageBox.Show("Widescreenfix.dll has not been found. This file is required for Widescreen support.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } - - _GraphicsSettings = new GameSettings(this); } - private void CheckForRequiredGameFiles() + private void CreateGenericAVP2Cmds() { - string[] files = { "lithtech.exe", "AVP2X.REZ", "AVP2DLL.REZ", "AVP2L.REZ", "DIALOGUE.REZ", "AVP2P1.REZ", "AVP2P.REZ", "binkw32.dll", "MULTI.REZ", "server.dll", "ltmsg.dll", "binkw32.dll"}; + string basePath = ""; + object key = Registry.GetValue("HKEY_LOCAL_MACHINE\\SOFTWARE\\Monolith Productions\\Aliens vs. Predator 2\\1.0", "InstallDir", ""); - for (int i=0; i scrRect.X && PosX < scrRect.X + scrRect.Width && + PosY > scrRect.Y && PosY < scrRect.Y + scrRect.Height) + return true; + } + return false; } + #endregion } } diff --git a/Properties/AssemblyInfo.cs b/Properties/AssemblyInfo.cs index f6a9095..f88d491 100644 --- a/Properties/AssemblyInfo.cs +++ b/Properties/AssemblyInfo.cs @@ -32,5 +32,5 @@ // You can specify all the values or you can default the Build and Revision Numbers // by using the '*' as shown below: // [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("0.6.0.0")] -[assembly: AssemblyFileVersion("0.6.0.0")] +[assembly: AssemblyVersion("0.6.1.0")] +[assembly: AssemblyFileVersion("0.6.1.0")] diff --git a/Release/AVP2PH_CustomLauncher.exe b/Release/AVP2PH_CustomLauncher.exe index 9e31c06e1de16fd19900f3ff4a6364f5beb3ebc3..ddaf03d9d3184981e207871d656e92e172ddadc1 100644 GIT binary patch delta 10422 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%0D7)C_xBCeggR!0FosEDJY_D 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 J{jbx&zX7UQqz3>1 literal 14336 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 Ow;v#V`u(4kz<&Xp@wf~C diff --git a/SettingsForms/GameSettingsForm.cs b/SettingsForms/GameSettingsForm.cs index 0338bde..9a131e9 100644 --- a/SettingsForms/GameSettingsForm.cs +++ b/SettingsForms/GameSettingsForm.cs @@ -40,6 +40,8 @@ public GameSettings(mainform parent) } else readcustomconfig(); + + readfile(); } @@ -55,7 +57,6 @@ struct autoexecstruct private void GraphicsSettings_Load(object sender, EventArgs e) { - readfile(); } public void readcustomconfig() diff --git a/widescreenfix/Main.cpp b/widescreenfix/Main.cpp index b790631..9dcad5c 100644 --- a/widescreenfix/Main.cpp +++ b/widescreenfix/Main.cpp @@ -32,7 +32,16 @@ bool Hook(void * toHook, void * ourFunction, int lenght) DWORD jmpResAddress; DWORD jmpFovAddress; -float horizontalRadiansF; +float horizontalRadiansF = 1.57f; +float ViewmodelFOVF; +DWORD jmpViewModelRet; +bool d3drenHooked = false; + +static float modifyViewmodels(float val) +{ + float tempVradian = 2 * atanf(tanf(val / 2.0f) * ((float)resolutionY/resolutionX)); + return (2.0f * atanf(tanf(tempVradian / 2.0f) * 1.333333f)); +} static float increaseHorFOV() { @@ -40,6 +49,46 @@ static float increaseHorFOV() return (2.0f * atanf(tanf(tempVradian / 2.0f) * aspectRatio)); } +void __declspec(naked) ViewModelHack() +{ + /* + "d3d.ren"+107F2: + fstp dword ptr [ebx+4C] + fld dword ptr [ebx+00000098] + */ + __asm + { + fstp dword ptr[ViewmodelFOVF] + push eax + push ebx + push ecx + push edx + push esi + push edi + push esp + push ebp + } + + ViewmodelFOVF = modifyViewmodels(ViewmodelFOVF); + ViewmodelFOVF = modifyViewmodels(ViewmodelFOVF); + + __asm + { + pop ebp + pop esp + pop edi + pop esi + pop edx + pop ecx + pop ebx + pop eax + fld dword ptr[ViewmodelFOVF] + fstp dword ptr[ebx + 0x4C] + fld dword ptr[ebx + 0x00000098] + jmp[jmpViewModelRet] + } +} + void __declspec(naked) fovHack() { __asm @@ -70,6 +119,7 @@ void __declspec(naked) fovHack() jmp[jmpFovAddress] } } + void __declspec(naked) resHack() { __asm @@ -110,6 +160,27 @@ DWORD WINAPI HookThread(LPVOID param) while (true) { aspectRatio = (float)(1.0 * resolutionX / resolutionY); + MODULEINFO d3dren = GetModuleInfo("d3d.ren"); + if (d3dren.lpBaseOfDll == 0x0) + { + d3drenHooked = false; + } + else if(!d3drenHooked) + { + #ifdef _DEBUG + OutputDebugString("d3dRenHooked"); + #endif // DEBUG + + //ViewModel hack + //Overriding: + //fstp dword ptr [ebx+4C] + //fld dword ptr[ebx + 00000098] + int hookLenght = 9; + DWORD hookAddress = (DWORD)d3dren.lpBaseOfDll + 0x107F2; //Solve address = "cshell.dll"+64A0B + jmpViewModelRet = hookAddress + hookLenght; + Hook((void*)hookAddress, ViewModelHack, hookLenght); + d3drenHooked = true; + } Sleep(400); } } diff --git a/widescreenfix/widescreenfix.vcxproj b/widescreenfix/widescreenfix.vcxproj index ebf9961..5bf569e 100644 --- a/widescreenfix/widescreenfix.vcxproj +++ b/widescreenfix/widescreenfix.vcxproj @@ -120,7 +120,7 @@ false WIN32;NDEBUG;_WINDOWS;_USRDLL;WIDESCREENFIX_EXPORTS;%(PreprocessorDefinitions) true - MultiThreadedDebugDLL + MultiThreadedDLL Windows