Outdated❗ [MWR] MWR FoV & FPS Changer

Posts 1–15 of 15 · Page 1 of 1
❗ [MWR] MWR FoV & FPS Changer
Ay guys I didn't like having 90 fps so I made this, its pretty sketchy but it works so ye. No idea if it will be detected so use at your own risk.

This works on SP and MP.

To set it up place Config.txt in your MWR steam folder. Config line 1 is FoV, line 2 is FoVScale, line 3 is your gun position. Change these values to whatever suits you.

Make sure you have the 64bit version of this installed: https://www.microsoft.com/en-au/down....aspx?id=48145ⓘ

To use just inject it into MWR SP or MP, I suggest doing it during the main menu. Once it is injected it will automatically change the stuff for you. Use hotkeys to change your maxFPS:
v key = 125 fps
b key = 250 fps
n key = 333 fps



 
Sketchy AF Source

Code:
// MWR FPS Changer.cpp : Defines the exported functions for the DLL application.
//

#include "stdafx.h"
#include <stdio.h>
#include <string>
#include <iostream>
#include <fstream>

typedef int(__cdecl *Cbuf_AddText_T)(int *localClientNum, const char *Command); //Send command to console
Cbuf_AddText_T Cbuf_AddText_MP = (Cbuf_AddText_T)0x00000001404033B0;
Cbuf_AddText_T Cbuf_AddText_SP = (Cbuf_AddText_T)0x0000000140342EB0;

unsigned long long com_maxFps = 0, cg_fov = 0, cg_fovScale = 0, cg_gun_x = 0; //Vars to hold dvar addresses
int fpsVal = 125;
float fovVal = 65, fovScaleVal = 1, gun_xVal = 0;

DWORD WINAPI Main(LPVOID threadArgs)
{
	std::string input;
	std::ifstream infile;
	infile.open("Config.txt");
	for (int i = 0; i < 3; i++)
	{
		std::getline(infile, input);
		if (i == 0) fovVal = std::stof(input);
		if (i == 1) fovScaleVal = std::stof(input);
		if (i == 2) gun_xVal = std::stof(input);
	}
	infile.close();

	if (GetModuleHandleA("h1_mp64_ship.exe") != NULL)
	{
		unsigned long long currentMPBase = 0x000000014D064D00;

		do
		{
			Sleep(1000);
			currentMPBase = 0x000000014D064D00;
			for (int i = 0; i < *(int*)0x000000014D064CF4; i++)
			{
				currentMPBase += 0x60;
				if (*(int*)currentMPBase == 0xF264C46C) com_maxFps = currentMPBase;
				if (*(int*)currentMPBase == 0x8572B2C7) cg_fov = currentMPBase;
				if (*(int*)currentMPBase == 0x79A1090F) cg_fovScale = currentMPBase;
				if (*(int*)currentMPBase == 0x07AC182B) cg_gun_x = currentMPBase;
			}
		} while (com_maxFps == 0 || cg_fov == 0 || cg_fovScale == 0 || cg_gun_x == 0);

		while (true)
		{
			*(int*)(com_maxFps + 0x50) = 0x0;
			*(int*)(cg_fov + 0x50) = 0x0;
			*(int*)(cg_fovScale + 0x50) = 0x0;
			*(int*)(cg_gun_x + 0x50) = 0x0;

			*(int*)(com_maxFps + 0x10) = fpsVal;
			*(float*)(cg_fov + 0x10) = fovVal;
			*(float*)(cg_fovScale + 0x10) = fovScaleVal;
			*(float*)(cg_gun_x + 0x10) = gun_xVal;

			Sleep(1000);
		}
	}

	else if (GetModuleHandleA("h1_sp64_ship.exe") != NULL)
	{
		unsigned long long currentSPBase = 0x000000014C217D20;

		do
		{
			Sleep(1000);
			currentSPBase = 0x000000014C217D20;
			for (int i = 0; i < *(int*)0x000000014C217D10; i++)
			{
				currentSPBase += 0x60;
				if (*(int*)currentSPBase == 0xF264C46C) com_maxFps = currentSPBase;
				if (*(int*)currentSPBase == 0x8572B2C7) cg_fov = currentSPBase;
				if (*(int*)currentSPBase == 0x79A1090F) cg_fovScale = currentSPBase;
				if (*(int*)currentSPBase == 0x07AC182B) cg_gun_x = currentSPBase;
			}
		} while (com_maxFps == 0 || cg_fov == 0 || cg_fovScale == 0 || cg_gun_x == 0);

		while (true)
		{
			*(int*)(com_maxFps + 0x50) = 0x0;
			*(int*)(cg_fov + 0x50) = 0x0;
			*(int*)(cg_fovScale + 0x50) = 0x0;
			*(int*)(cg_gun_x + 0x50) = 0x0;

			*(int*)(com_maxFps + 0x10) = fpsVal;
			*(float*)(cg_fov + 0x10) = fovVal;
			*(float*)(cg_fovScale + 0x10) = fovScaleVal;
			*(float*)(cg_gun_x + 0x10) = gun_xVal;

			Sleep(1000);
		}
	}
	return 0;
}

DWORD WINAPI Keys(LPVOID threadArgs)
{
	while (true)
	{
		if (GetAsyncKeyState(0x56)) fpsVal = 125; //V = 125
		if (GetAsyncKeyState(0x42)) fpsVal = 250; //B = 250
		if (GetAsyncKeyState(0x4E)) fpsVal = 333; //N = 333

		Sleep(20);
	}
	return 0;
}

BOOL APIENTRY DllMain(HANDLE hDllHandle, DWORD dwReason, LPVOID lpreserved)
{
	DWORD threadID;
	switch (dwReason)
	{
	case DLL_PROCESS_ATTACH:
		CreateThread(NULL, 0, Main, NULL, 0, &threadID);
		CreateThread(NULL, 0, Keys, NULL, 0, &threadID);
	case DLL_THREAD_ATTACH:
	case DLL_THREAD_DETACH:
	case DLL_PROCESS_DETACH:
		break;
	}
	return TRUE;
}


MWR FoV + FPS Changer_mpgh.net.rar14 KB · 549 downloads Clean
/Approved. Post back results and as always, use at your own risk.
Hey Dude can you send me an Injector? I hate to play this game at 90 fps^^ ty
Quote Originally Posted by Chemona View Post
Hey Dude can you send me an Injector? I hate to play this game at 90 fps^^ ty
Quote Originally Posted by natosafix View Post
I tried 2 different injector and its not work.
Quote Originally Posted by celesteislegit View Post
i tried winject(injection failed reason 5) and sinject neither worked
Okay try download this https://www.microsoft.com/en-au/down....aspx?id=48145ⓘ the 64bit version. I use ExtremeInjector http://www.mpgh.net/forum/showthread.php?t=1086405 with default options except for Erase PE and Hide Module are turned on. If it still won't inject tell me and I'll make an executeable version.
i tried to install that 64bit package, said I already had it installed. I then injected with extreme and it says injection successful and then the game crashed.

edit: got it working, i put the config file in the main directory of my mwr, i was thinking too smart and put it in my cfg folder
i tried winject(injection failed reason 5) and sinject neither worked
I tried 2 different injector and its not work.
Dude your a legend for unlocked fps, enjoy the game a lot more now. Let's hope we won't get banned for this though haha
Quote Originally Posted by silvex View Post
Dude your a legend for unlocked fps, enjoy the game a lot more now. Let's hope we won't get banned for this though haha
No anti-cheat currently running on infinite warfare and MWR
can we get banned for this?
Not working at the moment was just a patch.
New update 40 minutes ago. Tried it and it is not working.
can ya make 1 for infinite ?
yeh not working anymore after update
Posts 1–15 of 15 · Page 1 of 1
This thread is closed for replies.

Similar Threads

Tags for this Thread

Talk with us