You are an unregistered user, you can register here
Navigation

Information

Site

Donations
If you wish to make a donation you can by clicking the image below.


 
Go Back   The Unreal Admins Page > Forums > Hosted Forums > UTPure > Anti-Cheat Development > Anti-Cheat Developer's Corner

Reply
Thread Tools Display Modes
  #1  
Unread 14th August, 2001, 11:47 PM
El_Muerte_[TDS]
 
Posts: n/a
Default

there's an easy way to be sure to prevent people from hacking the CSHP now that the source code has been released.

Always keep the source code of CSHP on the server, once in a while add to one of those files 'n//......' (newline, slash, slash, whatever...) to the end of the file, compile it. Nothing has been changed to the source code, but it does have a new CRC. Because of this the clients have to download a fresh copy of it.
You can do this on every map change by making a batch script of the ngWorldStats exectubale where you run besides the ngWorldStats program the above routines. This is quite intensive, it's better to just let it recompile once a day when the server is not very populated.

Just use these commands from the base dir (windows):
Code:
del SystemCSHP40.u

echo // CHEATING SUX >> CSHP40ClassesHackProtection.uc

Systemucc make
besure that CSHP40 is in the editorpackages

for unix it's almost the same
Code:
rm System/CSHP40.u

echo // CHEATING SUX >> CSHP40/Classes/HackProtection.uc

System/ucc make
HackProtection.uc can be any source code file in that directory

NOTE: I haven't fully tested this, because:
a) no time yet
B) I don't cheat
Reply With Quote
  #2  
Unread 15th August, 2001, 12:42 AM
DrSiN
 
Posts: n/a
Default

Yes, one of the reasons we released the source was to give admins the ability to compile their own customized version of CSHP.

You can also used the GUID randomizer I released, it works just as well.
Reply With Quote
  #3  
Unread 15th August, 2001, 08:16 AM
2COOL4-U
 
Posts: n/a
Default

Hey EL_Muerto does ucc work for you on l inux, I just couldn't get it working so I send an email to loki games who said that ucc was currently unsupported as a compiler
Reply With Quote
  #4  
Unread 15th August, 2001, 09:12 AM
El_Muerte_[TDS]
 
Posts: n/a
Default

well I thought there wasn't a linux version to, but when I tried it:
Code:
utserveradmin@el-muerte:/home/gameservers/unreal/System$ ./ucc make

--------------------Core--------------------

--------------------Engine--------------------

--------------------Editor--------------------

--------------------UWindow--------------------

--------------------Fire--------------------

--------------------IpDrv--------------------

--------------------UWeb--------------------

--------------------UBrowser--------------------

--------------------UnrealShare--------------------

--------------------UnrealI--------------------

--------------------UMenu--------------------

--------------------IpServer--------------------

--------------------Botpack--------------------

--------------------UTServerAdmin--------------------

--------------------UTMenu--------------------

--------------------UTBrowser--------------------

Success - 0 error(s), 0 warnings

Signal: SIGSEGV [segmentation fault]

Aborting.

Segmentation fault
if it realy compiles stuff I dont' know, but it does check the existsing .u files
Reply With Quote
  #5  
Unread 15th August, 2001, 05:48 PM
2COOL4-U
 
Posts: n/a
Default

if you try to compile something that uses classes in one of the packages that came with UT it tries to reimport the textures used in those classes really weird. Loki games told me that they would perhaps have a wroking version in the next patch ! WEE
Reply With Quote
  #6  
Unread 15th August, 2001, 10:35 PM
ION Ace
 
Posts: n/a
Default

But if u call it cshp40.u , won't ppl just get verson mismatch ?
Reply With Quote
  #7  
Unread 17th August, 2001, 10:31 AM
El_Muerte_[TDS]
 
Posts: n/a
Default

clients should not install cshp
if they don't do it there's no problem, if they do have a local cshp they will get a version mismatch (and that's what you want)
Reply With Quote
  #8  
Unread 17th August, 2001, 10:37 AM
UsAaR33
 
Posts: n/a
Default

IMO, you should swap the name....
If the old CSHP stays in the entry (i.e. disconnecting) from a server, when one join yours, they will get a version mismatch, even though CSHP is only in the cache
Reply With Quote
  #9  
Unread 17th August, 2001, 03:27 PM
DrSiN
 
Posts: n/a
Default

I guess I should have been more clear. Yes you want to rename it to something new each time.
Reply With Quote
  #10  
Unread 11th November, 2001, 06:36 AM
StarKilLer{MOK}
 
Posts: n/a
Default

If you recompile it and change a line, does the server go into MOD status on NGstats?
Reply With Quote
  #11  
Unread 11th November, 2001, 06:22 PM
StarKilLer{MOK}
 
Posts: n/a
Default

I tried recompiling without changing the name and it did not give me any version mismatches when i downloaded the new one with the same name again.
Reply With Quote
  #12  
Unread 12th November, 2001, 12:40 AM
DarkByte
 
Posts: n/a
Default

The mismatch will come if you join another server with CSHP4+ on right after playing on yours .. or vice-versa.
Reply With Quote
  #13  
Unread 16th October, 2009, 12:46 AM
{DOU}Draco {DOU}Draco is offline
Dominating
 
Join Date: Jul 2006
Posts: 104
Default

I wanted to rename and recompile the CSHP40 source just for grins. I keep
getting a 'Can't assign const variables' error. What could be causing this? I see
nothing wrong with the way the code is done, yet I keep getting the error in
exactly the same 2 places.

Code:
simulated function xxAttachConsole()
{
	local CSHPConsole c;
	local UTconsole oldc;

    if (zzMyConsole == None)
	{
		zzMyConsole = CSHPConsole(zzMyPlayer.Player.Console);
		if (zzMyConsole == None)
		{
			zzMyPlayer.Player.Console.Disable('Tick');
			c = new (none) class'CSHPConsole';
			if (c != None)
			{
				oldc = UTConsole(zzMyPlayer.player.Console);
				c.zzMyCheatRI = self;
				c.zzOldConsole = oldc;
======>			zzMyPlayer.Player.Console = c;
				zzMyConsole = c;
				zzMyConsole.xxGetValues(); //copy all values from old console to new
                zzMyConsole.ConsoleWindow.WindowTitle = "Console - "$zzMyBadge.VersionStr;
			}
                        else
                          xxDoClientMsg(1,1,"");	// CSHP Restricted
		}
		else if (zzmyplayer.player.console.class!=class'CSHPconsole')
		{
			zzbBadGuy=true;
			xxDoClientMsg(1,2,""$zzmyplayer.player.console.class); // "Console illegal Altered
			zzmyplayer.consolecommand("disconnect");
		} //disconnect if hacking.
	}
}
Code:
final function xxrevert()
{
local int i;
	//return to old console.
	zzOldConsole.ConsoleWindow = ConsoleWindow;
	zzOldConsole.Root = Root;
	zzOldConsole.Root.console=zzoldconsole;
	zzOldConsole.SpeechWindow = SpeechWindow;
	zzOldConsole.MessageWindow = MessageWindow;
	zzOldConsole.bTyping = bTyping;
	zzOldConsole.TypedStr = TypedStr;
	zzOldConsole.bShowSpeech = bShowSpeech;
	zzOldConsole.bCreatedRoot = bCreatedRoot;
	zzOldConsole.bshowconsole = bshowconsole;
	zzOldConsole.MouseX= MouseX;
	zzOldConsole.MouseY= MouseY;
	zzOldConsole.bUWindowType= bUWindowType;
	zzOldConsole.bUWindowActive=bUWindowActive;
	zzOldConsole.bLocked=bLocked;
	zzOldConsole.bQuickKeyEnable=bQuickKeyEnable;
	zzOldConsole.showdesktop=showdesktop;
	// added by db
	zzOldConsole.bTimeDemo=bTimeDemo;
	zzOldConsole.bSaveTimeDemoToFile=bSaveTimeDemoToFile;
	// copy history
	zzOldConsole.HistoryCur = HistoryCur;
	zzOldConsole.HistoryTop = HistoryTop;
	for (i = 0; i<MaxHistory; i++)
	    zzOldConsole.History[i] = History[i];

	//states:

	switch (zzmystate)
	{
		case 1:
			zzoldconsole.gotostate('UWindow');
			break;

		case 2:
			zzoldconsole.gotostate('Typing');
			break;

		default:
			zzoldconsole.gotostate('');
	}

=====>  viewport.console=zzoldconsole; //set console back.
}
I put the arrows where the issues are. If anyone has the source that they
have been able to compile, could you please send it my way? Any help is
much appreciated.

~Johnny Jones
__________________
***Dang! I'm a member of [FuN]***

Reply With Quote
Reply


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump


All times are GMT +1. The time now is 12:54 PM.


 

All pages are copyright The Unreal Admins Page.
You may not copy any pages without our express permission.