[Release] PushToConsole Command Default Values

Posts 115 of 28 · Page 1 of 2
[Release] PushToConsole Command Default Values
Well, I searched around a bit and couldn't find a thread with all the default, unmodified values for the PushToConsole commands. These are useful if you can't figure out how to disable a specific hack.

What I did was write a small Java program to parse the "Mega PTC Thread" (http://www.mpgh.net/forum/207-combat...ga-thread.html) and get the names of all the commands, and then wrote a DLL to dump the unmodified values using the PopFromConsole method. (Credits: http://www.mpgh.net/forum/207-combat...omconsole.html) Sources for both the Java utility and the DLL are below.

All values were grabbed at the start of a CA match.

So, without further ado, the default values for all the PTC commands in that thread:

Code:
name: ShowFirePath, value: -1.000000
name: windowed, value: 0.000000
name: ShowFps, value: 0.000000
name: CursorCenter, value: 1.000000
name: drawguns, value: 1.000000
name: FogEnable, value: 1.000000
name: ModelDebug_DrawBoxes, value: 0.000000
name: PlayerGravity, value: -1100.000000
name: SkelModelStencil, value: 0.000000
name: WeaponSway, value: 1.000000
name: ShowBreath, value: 0.000000
name: ActivationDistance, value: 100.000000
name: DynamicLight, value: 1.000000
name: EnableWeatherFX, value: 0.000000
name: MuzzleLight, value: 0.000000
name: SnowEnable, value: 1.000000
name: CamDamage, value: 1.000000
name: ModelApplySun, value: 1.000000
name: ClientFXDetailLevel, value: 2.000000
name: ScatterEnable, value: 1.000000
name: WireframeModels, value: 0.000000
name: WireFrame, value: 0.000000
name: ModelDebug_DrawSkeleton, value: 0.000000
name: Prediction, value: 1.000000
name: FullBright, value: 0.000000
name: JumpVel, value: 330.000000
name: FragSelf, value: 0.000000
name: DrawFlat, value: 0.000000
name: SoundEnable, value: 1.000000
name: MusicEnable, value: 1.000000
name: CamMaxPosYOffset, value: 200.000000
name: CamMaxPosYOffset, value: 200.000000
name: WhiteBlood, value: 0.000000
name: DisableCrosshair, value: 0.000000
name: KnockBack, value: 0.000000
name: Hands, value: 0.000000
name: DrawInterface, value: 1.000000
name: ReloadSpeed, value: 0.000000
name: FireSpeed, value: 0.000000
name: SpectatorMode, value: 0.000000
name: PerturbRotationEffect, value: 3.000000
name: PerturbIncreaseSpeed, value: 3.000000
name: PerturbWalkPercent, value: 0.500000
name: PerturbFiringIncreaseSpeed, value: 3.000000
name: PerturbRecoil, value: 0.000000
name: FireMovePerturb, value: 0.000000
name: ZoomedFireMoveDuckPerturb, value: 0.000000
name: ZoomedFireMovePerturb, value: 0.000000
name: ZoomedFireDuckPerturb, value: 0.000000
name: CrossHairR, value: 0.000000
name: CrossHairG, value: 0.000000
name: CrossHairB, value: 0.000000
name: CrossHair_DefaultLength, value: 7.000000
name: CrossHair_DefaultGapLength, value: 0.000000
name: CrosshairGapMin, value: 0.000000
name: CrosshairGapMax, value: 0.000000
name: CrosshairBarMin, value: 0.000000
name: CrosshairBarMax, value: 0.000000
name: HitCrossHairSize, value: 0.000000
name: CrossHair_FiringDuration, value: 0.100000
name: RadarCenterX, value: 0.000000
name: RaderCenterY, value: 0.000000
name: BaseRadarScal, value: 0.000000
name: Radarpos, value: 0.000000
name: RadarRect, value: 0.000000
name: RadarIconSize, value: 0.000000
name: RadarZoominmax, value: 0.000000
name: RadarDefaultZoom, value: 0.000000
name: RadarZoomOutmax, value: 0.000000
name: RadarRadius, value: 0.000000
name: SpawnDelay, value: 0.000000
name: Spawner, value: 0.000000
name: Heal, value: 0.000000
name: HealHP, value: 0.000000
name: PlayerToHost, value: 0.000000
name: PlayerToInfected, value: 0.000000
name: SpyToAgent, value: 0.000000
name: SpyToSpy, value: 0.000000
name: PlayerToSpy, value: 0.000000
name: FreezeTime, value: 0.000000
name: DoobicMode, value: 0.000000
name: KillCam_Off, value: 0.000000
name: KillCam_On, value: 0.000000
name: FriendlyFire_Off, value: 0.000000
name: FriendlyFire_On, value: 0.000000
name: PlayerGravity, value: -1100.000000
name: PlayerVelocity, value: 0.000000
name: ShowPerformanceStatistics, value: 0.000000
name: BaseMoveAccel, value: 3000.000000
name: StartAccel, value: 500.000000
name: MaxAccel, value: 3000.000000
name: AccelInc, value: 6000.000000
name: WalkVel, value: 70.000000
name: FRunVel, value: 285.000000
name: BRunVel, value: 285.000000
name: SRunVel, value: 285.000000
name: JumpVel, value: 330.000000
name: DuckVel, value: 50.000000
name: BaseMoveAccel, value: 3000.000000
name: StartAccel, value: 500.000000
name: MaxAccel, value: 3000.000000
name: AccelInc, value: 6000.000000
name: WalkVel, value: 70.000000
name: FRunVel, value: 285.000000
name: BRunVel, value: 285.000000
name: SRunVel, value: 285.000000
name: SkyEnable, value: 0.000000
name: DebugAimAt, value: 0.000000
name: ShowHitSphere, value: 0.000000
name: ShowLocalHitSphere, value: 0.000000
Java utility to collect all the commands from the thread (this will generate a .h file which is included in the DLL below):

Code:
import java.io.*;
import java.net.*;

public class cmdget {
	
	public static void main(String[] args) throws Exception {
		URLConnection con = new URL("http://www.mpgh.net/forum/207-combat-arms-hack-coding-source-code/167441-pushtoconsole-commands-mega-thread.html").openConnection();
		BufferedReader br = new BufferedReader(new InputStreamReader(con.getInputStream()));
		FileWriter out = new FileWriter("output.h");
		out.write("static char *commands[] = { \r\n");
		
		String line;
		while((line = br.readLine()) != null) {
			if(!line.contains("PushToConsole("))
				continue;
			line = line.replace(""", "\"");
			line = line.substring(line.indexOf('(') + 2, line.lastIndexOf('"'));
			line = line.split(" ")[0];
			out.write("\t\"" + line + "\", \r\n");
			System.out.println(line);
		}
		out.write("\tNULL\r\n};\r\n");
		out.flush();
		out.close();
	}
}
Or, if you can't/don't know how to run the Java app, here's the (current as of 9/5/2010) .h file generated by it.

Code:
static char *commands[] = { 
	"ShowFirePath", 
	"windowed", 
	"ShowFps", 
	"CursorCenter", 
	"drawguns", 
	"FogEnable", 
	"ModelDebug_DrawBoxes", 
	"PlayerGravity", 
	"SkelModelStencil", 
	"WeaponSway", 
	"ShowBreath", 
	"ActivationDistance", 
	"DynamicLight", 
	"EnableWeatherFX", 
	"MuzzleLight", 
	"SnowEnable", 
	"CamDamage", 
	"ModelApplySun", 
	"ClientFXDetailLevel", 
	"ScatterEnable", 
	"WireframeModels", 
	"WireFrame", 
	"ModelDebug_DrawSkeleton", 
	"Prediction", 
	"FullBright", 
	"JumpVel", 
	"FragSelf", 
	"DrawFlat", 
	"SoundEnable", 
	"MusicEnable", 
	"CamMaxPosYOffset", 
	"CamMaxPosYOffset", 
	"WhiteBlood", 
	"DisableCrosshair", 
	"KnockBack", 
	"Hands", 
	"DrawInterface", 
	"ReloadSpeed", 
	"FireSpeed", 
	"SpectatorMode", 
	"PerturbRotationEffect", 
	"PerturbIncreaseSpeed", 
	"PerturbWalkPercent", 
	"PerturbFiringIncreaseSpeed", 
	"PerturbRecoil", 
	"FireMovePerturb", 
	"ZoomedFireMoveDuckPerturb", 
	"ZoomedFireMovePerturb", 
	"ZoomedFireDuckPerturb", 
	"CrossHairR", 
	"CrossHairG", 
	"CrossHairB", 
	"CrossHair_DefaultLength", 
	"CrossHair_DefaultGapLength", 
	"CrosshairGapMin", 
	"CrosshairGapMax", 
	"CrosshairBarMin", 
	"CrosshairBarMax", 
	"HitCrossHairSize", 
	"CrossHair_FiringDuration", 
	"RadarCenterX", 
	"RaderCenterY", 
	"BaseRadarScal", 
	"Radarpos", 
	"RadarRect", 
	"RadarIconSize", 
	"RadarZoominmax", 
	"RadarDefaultZoom", 
	"RadarZoomOutmax", 
	"RadarRadius", 
	"SpawnDelay", 
	"Spawner", 
	"Heal", 
	"HealHP", 
	"PlayerToHost", 
	"PlayerToInfected", 
	"SpyToAgent", 
	"SpyToSpy", 
	"PlayerToSpy", 
	"FreezeTime", 
	"DoobicMode", 
	"KillCam_Off", 
	"KillCam_On", 
	"FriendlyFire_Off", 
	"FriendlyFire_On", 
	"PlayerGravity", 
	"PlayerVelocity", 
	"ShowPerformanceStatistics", 
	"BaseMoveAccel", 
	"StartAccel", 
	"MaxAccel", 
	"AccelInc", 
	"WalkVel", 
	"FRunVel", 
	"BRunVel", 
	"SRunVel", 
	"JumpVel", 
	"DuckVel", 
	"BaseMoveAccel", 
	"StartAccel", 
	"MaxAccel", 
	"AccelInc", 
	"WalkVel", 
	"FRunVel", 
	"BRunVel", 
	"SRunVel", 
	"SkyEnable", 
	"DebugAimAt", 
	"ShowHitSphere", 
	"ShowLocalHitSphere", 
	NULL
};
And, lastly, the DLL to collect the values:

Code:
#include <stdio.h>
#include <windows.h>

#include "ptcinitial.h"

float PopFromConsole(const char* szCommand)
{
	HMODULE hMod = GetModuleHandleA("CShell.dll");
	if(hMod == NULL)
		return;
	DWORD LTClient = *(DWORD *)(0x377E7810);
	typedef void *(*_Fn1)(const char *);
	_Fn1 Fn1 = *(_Fn1 *) (LTClient + 0x104);
	DWORD vTable = *(DWORD *) LTClient;
	typedef float (__stdcall *_Fn2)(void *);
	_Fn2 Fn2 = *(_Fn2 *) (vTable + 0x5C);
	return Fn2(Fn1(szCommand));
}

DWORD WINAPI HaxThreadProc(LPVOID lpParam)
{
	char buf[1024];
	float value;
	while(1) {
		if(GetAsyncKeyState(VK_F12) & 1) {
			FILE *fp = fopen("ptcinitial.txt", "w");
			char **command = commands;
			while(*command != NULL) {
				value = PopFromConsole(*command);
				sprintf(buf, "name: %s, value: %f\r\n", *command, value);
				fputs(buf, fp);
				command++;
			}
			fflush(fp);
			fclose(fp);
		}		
		Sleep(100);
	}
	
	return 0;
}

BOOL WINAPI DllMain(HANDLE hDll, DWORD dwReason, LPVOID lpReserved)
{
	if(dwReason == DLL_PROCESS_ATTACH)
		CreateThread(NULL, 0, HaxThreadProc, NULL, 0, NULL);
	
	return TRUE;
}
Feel free to modify etc, I don't care about credits, if you use/like it, cool, if you don't, fine. Do whatever you want with it. If you want to give me thanks/credits in something you make with it, please do so. If the author of the PopFromConsole method doesn't like that I de-choobed it and put that version in this thread, I'll remove it :P

Tekkn0logik
All I can say is wow, very nice work. We haz us a very intelligent choob. Welcome to the CA Source Section

I wish more choobs were like you.

Choob as in the sense of being new, not a leecher /
Haha, thanks for the support. Updated first post because I forgot to include some...

Also for some reason I don't think ModelDebug_DrawBoxes is right, because enabling it doesn't do anything.
Quote Originally Posted by Tekkn0logik View Post
Haha, thanks for the support. Updated first post because I forgot to include some...

Also for some reason I don't think ModelDebug_DrawBoxes is right, because enabling it doesn't do anything.
Yep, it was patched a few patches back in july I believe. The only alternative is D3D boxes now.
wow very impressive thanks for sharing
thats some nice work

/thanked
where do you read your commands in your dll?
Quote Originally Posted by ppl2pass View Post
where do you read your commands in your dll?
Code:
			char **command = commands;
			while(*command != NULL) {
				value = PopFromConsole(*command);
				sprintf(buf, "name: %s, value: %f\r\n", *command, value);
				fputs(buf, fp);
				command++;
			}
'commands' is #included from ptcinitial.h, which is generated by the java program.

Quote Originally Posted by CodeDemon View Post
Yep, it was patched a few patches back in july I believe. The only alternative is D3D boxes now.
That would explain it.
Quote Originally Posted by Tekkn0logik View Post
'commands' is #included from ptcinitial.h, which is generated by the java program.
Damnit, im no good in java.
Could you provide a text of the .h file.
Quote Originally Posted by ppl2pass View Post
Damnit, im no good in java.
Could you provide a text of the .h file.
Java programs aren't hard to run, but I'll add it to the first post now.

Edit: .h file added.
Good job . Actually... I think you are the only one who actually was able to fix my PopFromConsole O.o
Good fucking job, bro!
That's an amazing idea you had there, and I really think that most people can find this very useful.
I am glad that you made this thread, cuz when I start coding, this would be a VERY helpful program to have.

+Rep and Thanks.
Good job man thanks 4 sharing
soo we could add remeove something from the .h file and then the popfromconsole will run it???
that gave me a idea be back in like 5 hours -_-
nice man
gonna try it
Posts 115 of 28 · Page 1 of 2
This thread is closed for replies.

Similar Threads

Tags for this Thread

None

Need help?