public static readonly int ACHIEVEMENT_SYSTEM = 0x7E01; public static readonly int USER_SCORE = 0x7E02; public static readonly int ROLLING_BOX = 0x7E03; public static readonly int KILL_MSG = 0x7B16;
Could you maybe tell us what "ROLLING_BOX" does?Quote:
"new" packet codes and their original names:
Code:public static readonly int ACHIEVEMENT_SYSTEM = 0x7E01; public static readonly int USER_SCORE = 0x7E02; public static readonly int ROLLING_BOX = 0x7E03; public static readonly int KILL_MSG = 0x7B16;
I'm not that good in reading asm and understanding the overall sense.Quote:
Could you maybe tell us what "ROLLING_BOX" does?
Its the military supply systemQuote:
I'm not that good in reading asm and understanding the overall sense.
But I see: Both server has a handler and client sends it.
My guess: it's ingame; client sends one ROLLING_BOX packet, all other clients receive it (or derivative).
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Text.RegularExpressions;
namespace Parity.Base.App
{
public class XmlRewriter
{
public System.Xml.XmlDocument Document { get; private set; }
public XmlRewriter()
{
this.Document = new System.Xml.XmlDocument();
this.Document.LoadXml("<Document></Document>");
}
protected string EscapeTag(string Input)
{
Input = String.Join("", Input.Trim().Split('(', ')')).Replace(' ', '_');
return char.IsDigit(Input[0]) ? "_" + Input : Input;
}
protected void NodeProcessing(string DocumentContent, System.Xml.XmlNode CurrentNode, int TagDeepness = 0)
{
int NodeCount = 0;
if (!Regex.IsMatch(DocumentContent, @"\[(?<NodeName>[a-zA-Z0-9-_\s]+)\](?<NodeContent>.+)\[/\1\]", RegexOptions.Singleline | RegexOptions.Compiled))
{
MatchCollection SubNodeCollection = Regex.Matches(DocumentContent, @"<!--\s+?<(?<FirstTag>[a-zA-Z0-9-_\s]+)>(?<NodeContent>.*?)\s+?</(?<LastTag>[a-zA-Z0-9-_\s]+)>\s+?//-->", RegexOptions.Singleline | RegexOptions.Compiled);
foreach (Match iMatch in SubNodeCollection)
{
string TempDocument = "<" + iMatch.Groups["FirstTag"].Value + ">" + iMatch.Groups["NodeContent"].Value + "</" + iMatch.Groups["LastTag"].Value + ">";
var MainNode = this.Document.CreateElement("Entry");
CurrentNode.AppendChild(MainNode);
NodeProcessing(TempDocument, MainNode);
}
NodeCount += SubNodeCollection.Count;
}
if (NodeCount == 0)
{
MatchCollection MainNodeCollection = Regex.Matches(DocumentContent, @"[\[|<](?<NodeName>[a-zA-Z0-9-_\s]+)[\]|>](?<NodeContent>.*?)[\[|<]/\1[\]|>]", RegexOptions.Singleline | RegexOptions.Compiled);
foreach (Match iMatch in MainNodeCollection)
{
var MainNode = this.Document.CreateElement(this.EscapeTag(iMatch.Groups["NodeName"].Value));
CurrentNode.AppendChild(MainNode);
NodeProcessing(iMatch.Groups["NodeContent"].Value, MainNode, TagDeepness + 1);
}
NodeCount = MainNodeCollection.Count;
if (NodeCount == 0)
{
MatchCollection ValueCollection = Regex.Matches(DocumentContent, @"\s*(?<Key>[a-zA-Z0-9_\(\) ]+)\s*=\s*(?<Value>[a-zA-Z0-9\.\,_-]+)", RegexOptions.Singleline | RegexOptions.Compiled);
foreach (Match iMatch in ValueCollection)
{
string Key = iMatch.Groups["Key"].Value;
string Value = iMatch.Groups["Value"].Value;
var SubentryNode = this.Document.CreateElement(this.EscapeTag(Key));
SubentryNode.InnerText = Value;
CurrentNode.AppendChild(SubentryNode);
}
}
}
//CurrentNode.OwnerDocument.AppendChild(CurrentNode);
}
public void Process(string Content)
{
uint DocumentChecksum = CRC32.CRC32String(Content);
var ChecksumElement = this.Document.CreateElement("CHECKSUM");
ChecksumElement.InnerText = DocumentChecksum.ToString("X2");
this.Document["Document"].AppendChild(ChecksumElement);
string Document = Regex.Match(Content, @"<\!--(.+)//-->", System.Text.RegularExpressions.RegexOptions.Singleline | RegexOptions.Compiled).Groups[1].Value;
NodeProcessing(Document, this.Document["Document"]);
}
}
}
Thanks for this, but not for my more significant post?Quote:
Its the military supply system
Quote:
Request adresses
/* *********************************** Pointers ********************************* */ #define ADR_PlayerPointer 0xAE57E0 #define ADR_ServerPointer 0xAE4784 #define ADR_RemotePointer 0xC1CC9C #define ADR_ViewAnglesPointer 0xAE36B4 #define ADR_DevicePointer 0xAE36B8 #define ADR_UserPointer 0xAE4784 #define ADR_HealthPointer 0x31FB8 #define ADR_BasePointer 0xB36DB0 #define ADR_WeaponPointer1 0xC10BE0 #define ADR_WeaponPointer2 0xB038A0 /* *********************************** Offsets ********************************** */ #define OFS_DevicePointer 0x2B930 #define OFS_X 0x10304 #define OFS_Y 0x10314 #define OFS_Z 0x1030C #define OFS_Gravity_Y 0xC4AC #define OFS_Gravity_X 0xC4B0 #define OFS_Gravity_Z 0xC4B4 #define OFS_SuperNoSpread 0x906B68 #define OFS_Slot1 0x34158 #define OFS_Slot2 0x34159 #define OFS_Slot3 0x3415A #define OFS_Slot4 0x3415B #define OFS_Slot5 0x3415C #define OFS_Slot6 0x3415D #define OFS_Slot7 0x3415E #define OFS_Slot8 0x3415F #define OFS_AutoShot 0x1038A #define OFS_Invisible 0x40794 #define OFS_FastNadeBlast 0x10118 #define OFS_Pitch 0x101AC #define OFS_Yaw 0x101C8 #define OFS_WeaponState 0xC4D4 #define OFS_AutoPlant 0x10374 #define OFS_LocalIndex 0xC498 #define OFS_NoM134Idle 0x103FC #define OFS_Premium 0x3C8 #define OFS_NoReload 0x10411 #define OFS_NoDelay 0x10414 #define OFS_Level 0x40750 #define OFS_Dinar 0x40760 #define OFS_RoomMaster 0x31564 #define OFS_SuperMaster 0x316A8 /* ********************************** Addresses ********************************* */ #define ADR_Speed 0x906EF8 #define ADR_SpeedRoll 0x906D28 #define ADR_QuickPlantDefuse 0xAE36D8 #define ADR_NoSpawnWait1 0xC37FEC #define ADR_NoSpawnWait2 0xC37FF0 #define ADR_NoSpawnWait3 0xC37FF4 #define ADR_NoBounds1 0xC2D950 #define ADR_NoBounds2 0xC2D954 #define ADR_NoBounds3 0xC2D962 #define ADR_AntiAFKKick 0xC2D950 #define ADR_STW 0x8C7AB4 #define ADR_WUW 0xAEC6B4 #define ADR_WTH 0x903658 #define ADR_Plantanywhere 0xAE36CF #define ADR_NFD 0x102EC #define ADR_NoRecoil1 0xC444 #define ADR_NoRecoil2 0xC448 #define ADR_NoRecoil3 0xC44C #define ADR_FastAmmo 0xAE9EA0 #define ADR_FastRepair 0x30090 #define ADR_FastHealth 0xAE9EA8 #define ADR_FastFlag 0x30090 #define ADR_IngameName 0xB373F4 #define ADR_GMWarning 0xB31994 #define ADR_FarFog 0xAE37BC #define ADR_NearFog 0xAEC6C4 #define ADR_QuickSpawn1 0xC37FEC #define ADR_QuickSpawn2 0xC37FF0 #define ADR_QuickSpawn3 0xC37FF4 #define ADR_FogColor1 0xAE5CF0 #define ADR_FogColor2 0xAE5CEC #define ADR_FogColor3 0xAE5CE8 #define ADR_GlassWals 0xAE37BC #define ADR_BoneShot 0x907B48 #define ADR_StaminaStart 0x8CF264 #define ADR_StaminaRoll 0x8CF270 #define ADR_NoWater1 0xAEC6AC #define ADR_NoWater2 0xAEC6B0 #define ADR_WeaponGravity 0x906B20 /* ************************************* ASM ************************************ */ #define ASM_QuickPlant 0x515A6D #define ASM_NoReload 0x51F0CF #define ASM_AutoAmmo 0x50AA05 #define ASM_SniperAmmo 0x62DA18 #define ASM_AssaultAmmo 0x428ADA #define ASM_EventRoom 0x5AD095 // 2 NOPS #define ASM_OPK1 0x407F7B // Need to be tested #define ASM_OPK2 0x407F84 // Need to be tested #define ASM_OPK3 0x407F7F // Need to be tested /* ************************************ Other *********************************** */ #define ADR_CRC 0x62E510 #define ADR_AUTH 0x4E97CD #define ADR_MESSAGEBOX 0x5250EB #define ADR_MESSAGEBOX_BUFFER ******** #define ADR_MESSAGEBOX_INSTANCE ******** #define ADR_ENGINE_TEXT 0x522AA9 #define ADR_WINDOW_NAME 0x8D5398 #define ADR_ENDGAME_BANNER 0x45C3E5 #define ADR_VMTCheck ******** #define ADR_VMTCheckGordon ******** #define ADR_SOUNDVOLUME 0x41E3E3 #define ADR_IAT_Send ******** #define ADR_IAT_Rreceive ******** #define ADR_IAT_Connect ********
viel glück ... machs einfach ohne, was auch immer du vor hastQuote:
Request Bypass
ring3 cheats are not the safest way either. ring0 or gtfo. Or write a linux distro that allows you cheating.Quote:
using crt dependent functions like you do is indeed the most safe way for do things but not when you are writing cheats