PDA

View Full Version : Bypassing FP...


frikos
9th July 2006, 12:00
Hi out there,

i saw some threads, where it has been written, that there are any undetected public bots available.

I just tried my old method and it still works on the current PSB- & FP-Config :cross-eyed:

I always wanted to release it in a complete bot, but i hardly even find the time to manage my work, so i'll just release the method etc.

You should just take a look at the old Window Hack! (http://www.mpcforum.com/showthread.php?t=124314).

The new method just adds 2 new lines.
As an example a retlock and norecoil.


class NewEscapeBar extends R6MenuMPInGameEscNavBar;

//================================================== ===========================
// ••• The Escape-bar gets Created •••
//================================================== ===========================

function Created ()
{
Super.Created (); // create the default bar

Root.CreateWindow(Class'hackclass',1.00, 1.00, 5.00, 5.00)); // create our hack window

// that's the trick, FP checks for this entry , so we reset it to the default and it clears the .ini
Root.MenuClassDefines.ClassInGameEscNavBar = class'R6Menu.R6MenuMPInGameEscNavBar';
Root.MenuClassDefines.SaveConfig();
}


As you see, you can just replace the entry in the R6ClassDefines.ini again:
ClassInGameEscNavBar=Class'yourhackpackage.NewEsca peBar'

After hooking, it will reset the ini with the old, "clean" value... so you'll have to update the ini each time, which would be easily possible through an batch file ;)


For your hacks you can create the "hackclass", this example shows the "keyevent" too


class HackClass extends UWindowWindow;

var bool b_recoil,
b_acc;

//================================================== ===========================
// ••• window gets created; do not change the bLeaveOnScreen •••
//================================================== ===========================

function Created ()
{
Super.Created ();
bLeaveOnScreen = true;
SetAcceptsHotKeys(True); // for the hotkeydown function
}

function BeforePaint (Canvas C, float X, float Y)
{
Super.BeforePaint (C, X, Y);

if (b_recoil) R6Playercontroller(GetPlayerOwner()).m_fDesignerJu mpFactor = -30;

else R6Playercontroller(GetPlayerOwner()).m_fDesignerJu mpFactor = 1;


if (b_acc)
{
R6Weapons(GetPlayerOwner().Pawn.EngineWeapon).m_fE ffectiveAccuracy = R6Weapons(GetPlayerOwner().Pawn.EngineWeapon).m_st AccuracyValues.fBaseAccuracy;
R6Weapons(GetPlayerOwner().Pawn.EngineWeapon).m_fW orstAccuracy = R6Weapons(GetPlayerOwner().Pawn.EngineWeapon).m_st AccuracyValues.fBaseAccuracy;
R6Weapons(GetPlayerOwner().Pawn.EngineWeapon).m_fD esiredAccuracy = R6Weapons(GetPlayerOwner().Pawn.EngineWeapon).m_st AccuracyValues.fBaseAccuracy;
}
}

//================================================== ===========================
// ••• Function similar to keyevent •••
//================================================== ===========================

function bool HotKeyDown(int Key, float X, float Y)
{
switch key
{
case 114: // Key: F3
b_recoil = !b_recoil;
break;

case 115: // Key: F4
b_acc = !b_acc;
break;
}

return false;
}

I hope you can use this... maybe i'll start playing again soon :knockedout:

PS: you should use other class - names ;) maybe it works with the other entries of the .ini too, did not try any other values


// EDIT:
If you don't know where to get keys-numbersyou can look here here... (http://wiki.beyondunreal.com/wiki/InputKeyMap)

the enumeration is also in Engine -> Interactions
i used the following code to get the names dynamicly ingame... like this you can assign keys to different actions while you are playing


function int ConvertEnumToKey ( string enum )
{
local int key;
local string value;

value = "IK_" $ enum;

for (key=0; key<192; key++)
{
if (value == string(GetEnum (Enum'EInputKey', key)))
{
return key;
}
}
return 0;
}


function UpdateHackList (int depth, string value)
{
keyarray[depth] = value;
}

you could make for example a string array with different actions
UpdateHackList(114, "NoRecoil");
Just make a function that gets called from the "keyevent" which gets the action and executes it

i used this one to remove an action from my keys // UnassignKeyFromAction ("F3");

function UnassignKeyFromAction (string key)
{
local int i;

for (i=0; i<192; i++)
{
if (Mid (GetEnum (Enum'EInputKey', i),3) == key)
{
keyarray[i] = "";
return;
}
}
}

and a list for the console to see all assigned actions

function GiveHackList ()
{
local int i;

GetPlayerOwner().AddMessagetoConsole("==============================", root.colors.white);
GetPlayerOwner().AddMessagetoConsole(" ••• Hack List •••", root.colors.white);
GetPlayerOwner().AddMessagetoConsole("==============================", root.colors.white);

for (i=0; i<keyarray.length; i++)
{
if (keyarray[i] != "None" && keyarray[i] != "")
{
GetPlayerOwner().AddMessagetoConsole(Mid (GetEnum (Enum'EInputKey', i), 3) $ " == " $ keyarray[i], root.colors.white);
}
}

GetPlayerOwner().AddMessagetoConsole("==============================", root.colors.white);
}

C-X
10th July 2006, 14:27
Nice frikos. =)

ALBerT
10th July 2006, 20:16
wow gratz on making yet another hook detected. GGz

GLoGG
10th July 2006, 20:43
I'm curious on how many people are actually still hacking this game?..

JohnDeere6996
10th July 2006, 20:57
lol @ albert.

DotProduct
11th July 2006, 17:02
nice but there are many other ways which require much less work

KizZamP-
11th July 2006, 17:58
bleh,didn't see this one,nice job indeed :)

DotProduct
11th July 2006, 18:22
its as simple as opening ur eyes and thinking logicly

RuffianSoldier
11th July 2006, 22:26
good job Frikos. But like dtp said there are alot of easier ways. but still, mad props

JohnDeere6996
13th July 2006, 00:41
why dont someone share these easier ways?

GLoGG
13th July 2006, 16:52
why dont someone share these easier ways?

I think that would ruin there advantage above the public, if it would be shared you know it will only be detected in the next 2 days. Be glad Frikos brought something up.

JohnDeere6996
13th July 2006, 18:10
Reminds me of the mexican goverment, Keep everything for them self and to hell with the people, let them starve and have to go somewhere else. Well at lease somebody can put Frikos method together in a file because the public will have no clue on what to do with the code.

RuffianSoldier
14th July 2006, 19:05
its called: begging noobs dont deserve private hacks

GLoGG
15th July 2006, 13:40
Reminds me of the mexican goverment, Keep everything for them self and to hell with the people, let them starve and have to go somewhere else. Well at lease somebody can put Frikos method together in a file because the public will have no clue on what to do with the code.

Leave it alone man, you aint gonna starve because of a low capacity of bypasses k? it requires a bit of thinking and you'll have ur own.

JohnDeere6996
17th July 2006, 19:09
Leave it alone man, you aint gonna starve because of a low capacity of bypasses k? it requires a bit of thinking and you'll have ur own.


I dont need a bypass. I dont eat at that table anymore. Im talking about the regulars players that come here for a hack that can work on FP server but they dont know the first thing about uscript. Thread like these will do them no good. Most people that come here is looking for a file and instruction on how to use it. I understand that frikos dont have time to compile it so that regular players can use it. but come on when was the last time something was release here that can be use by a regular player.

ALBerT
18th July 2006, 19:52
Very true glogger.