CHEATS GAMES
Solid & Active Platinian
how to modify in safefloat ?
i have a game that uses safe float instead of obscuredfloat, how can i modify in safe float? here is safefloat code
I already have the script that uses the obscured value here on the site, how can I change it to work with a safe float?
this is my code that i modified but it doesn't work
i have a game that uses safe float instead of obscuredfloat, how can i modify in safe float? here is safefloat code
C++:
using System;
using Il2CppDummyDll;
namespace JarviGames.Utils
{
// Token: 0x02000005 RID: 5
[Token(Token = "0x2000005")]
public struct SafeFloat
{
// Token: 0x06000016 RID: 22 RVA: 0x00002096 File Offset: 0x00000296
[Token(Token = "0x6000016")]
[Address(RVA = "0x3FE667C", Offset = "0x3FE667C", VA = "0x3FE667C")]
public SafeFloat(float value = 0f, int offsetRange = 1000)
{
}
// Token: 0x06000017 RID: 23 RVA: 0x00002098 File Offset: 0x00000298
[Token(Token = "0x6000017")]
[Address(RVA = "0x3FE6740", Offset = "0x3FE6740", VA = "0x3FE6740")]
public float GetValue()
{
return 0f;
}
// Token: 0x06000018 RID: 24 RVA: 0x000020AE File Offset: 0x000002AE
[Token(Token = "0x6000018")]
[Address(RVA = "0x3FE6754", Offset = "0x3FE6754", VA = "0x3FE6754", Slot = "3")]
public override string ToString()
{
return null;
}
// Token: 0x06000019 RID: 25 RVA: 0x000020B4 File Offset: 0x000002B4
[Token(Token = "0x6000019")]
[Address(RVA = "0x3FE6780", Offset = "0x3FE6780", VA = "0x3FE6780")]
public static implicit operator float(SafeFloat sf)
{
return 0f;
}
// Token: 0x0600001A RID: 26 RVA: 0x000020CC File Offset: 0x000002CC
[Token(Token = "0x600001A")]
[Address(RVA = "0x3FE6794", Offset = "0x3FE6794", VA = "0x3FE6794")]
public static SafeFloat operator +(SafeFloat f1, SafeFloat f2)
{
return default(SafeFloat);
}
// Token: 0x0600001B RID: 27 RVA: 0x000020E4 File Offset: 0x000002E4
[Token(Token = "0x600001B")]
[Address(RVA = "0x3FE67D0", Offset = "0x3FE67D0", VA = "0x3FE67D0")]
public static SafeFloat operator -(SafeFloat f1, SafeFloat f2)
{
return default(SafeFloat);
}
// Token: 0x0600001C RID: 28 RVA: 0x000020FC File Offset: 0x000002FC
[Token(Token = "0x600001C")]
[Address(RVA = "0x3FE680C", Offset = "0x3FE680C", VA = "0x3FE680C")]
public static SafeFloat operator *(SafeFloat f1, SafeFloat f2)
{
return default(SafeFloat);
}
// Token: 0x0600001D RID: 29 RVA: 0x00002114 File Offset: 0x00000314
[Token(Token = "0x600001D")]
[Address(RVA = "0x3FE6848", Offset = "0x3FE6848", VA = "0x3FE6848")]
public static SafeFloat operator /(SafeFloat f1, SafeFloat f2)
{
return default(SafeFloat);
}
// Token: 0x0600001E RID: 30 RVA: 0x0000212C File Offset: 0x0000032C
[Token(Token = "0x600001E")]
[Address(RVA = "0x3FE6884", Offset = "0x3FE6884", VA = "0x3FE6884")]
public static SafeFloat operator %(SafeFloat f1, SafeFloat f2)
{
return default(SafeFloat);
}
// Token: 0x0600001F RID: 31 RVA: 0x00002144 File Offset: 0x00000344
[Token(Token = "0x600001F")]
[Address(RVA = "0x3FE68D0", Offset = "0x3FE68D0", VA = "0x3FE68D0")]
public static SafeFloat operator +(SafeFloat f1, float f2)
{
return default(SafeFloat);
}
// Token: 0x06000020 RID: 32 RVA: 0x0000215C File Offset: 0x0000035C
[Token(Token = "0x6000020")]
[Address(RVA = "0x3FE6904", Offset = "0x3FE6904", VA = "0x3FE6904")]
public static SafeFloat operator -(SafeFloat f1, float f2)
{
return default(SafeFloat);
}
// Token: 0x06000021 RID: 33 RVA: 0x00002174 File Offset: 0x00000374
[Token(Token = "0x6000021")]
[Address(RVA = "0x3FE6938", Offset = "0x3FE6938", VA = "0x3FE6938")]
public static SafeFloat operator *(SafeFloat f1, float f2)
{
return default(SafeFloat);
}
// Token: 0x06000022 RID: 34 RVA: 0x0000218C File Offset: 0x0000038C
[Token(Token = "0x6000022")]
[Address(RVA = "0x3FE696C", Offset = "0x3FE696C", VA = "0x3FE696C")]
public static SafeFloat operator /(SafeFloat f1, float f2)
{
return default(SafeFloat);
}
// Token: 0x06000023 RID: 35 RVA: 0x000021A4 File Offset: 0x000003A4
[Token(Token = "0x6000023")]
[Address(RVA = "0x3FE69A0", Offset = "0x3FE69A0", VA = "0x3FE69A0")]
public static SafeFloat operator %(SafeFloat f1, float f2)
{
return default(SafeFloat);
}
// Token: 0x06000024 RID: 36 RVA: 0x000021BC File Offset: 0x000003BC
[Token(Token = "0x6000024")]
[Address(RVA = "0x3FE69E0", Offset = "0x3FE69E0", VA = "0x3FE69E0")]
public static SafeFloat operator +(float f1, SafeFloat f2)
{
return default(SafeFloat);
}
// Token: 0x06000025 RID: 37 RVA: 0x000021D4 File Offset: 0x000003D4
[Token(Token = "0x6000025")]
[Address(RVA = "0x3FE6A14", Offset = "0x3FE6A14", VA = "0x3FE6A14")]
public static SafeFloat operator -(float f1, SafeFloat f2)
{
return default(SafeFloat);
}
// Token: 0x06000026 RID: 38 RVA: 0x000021EC File Offset: 0x000003EC
[Token(Token = "0x6000026")]
[Address(RVA = "0x3FE6A48", Offset = "0x3FE6A48", VA = "0x3FE6A48")]
public static SafeFloat operator *(float f1, SafeFloat f2)
{
return default(SafeFloat);
}
// Token: 0x06000027 RID: 39 RVA: 0x00002204 File Offset: 0x00000404
[Token(Token = "0x6000027")]
[Address(RVA = "0x3FE6A7C", Offset = "0x3FE6A7C", VA = "0x3FE6A7C")]
public static SafeFloat operator /(float f1, SafeFloat f2)
{
return default(SafeFloat);
}
// Token: 0x06000028 RID: 40 RVA: 0x0000221C File Offset: 0x0000041C
[Token(Token = "0x6000028")]
[Address(RVA = "0x3FE6AB0", Offset = "0x3FE6AB0", VA = "0x3FE6AB0")]
public static SafeFloat operator %(float f1, SafeFloat f2)
{
return default(SafeFloat);
}
// Token: 0x06000029 RID: 41 RVA: 0x00002234 File Offset: 0x00000434
[Token(Token = "0x6000029")]
[Address(RVA = "0x3FE6AF4", Offset = "0x3FE6AF4", VA = "0x3FE6AF4")]
public static bool operator ==(SafeFloat f1, SafeFloat f2)
{
return default(bool);
}
// Token: 0x0600002A RID: 42 RVA: 0x0000224C File Offset: 0x0000044C
[Token(Token = "0x600002A")]
[Address(RVA = "0x3FE6B20", Offset = "0x3FE6B20", VA = "0x3FE6B20")]
public static bool operator !=(SafeFloat f1, SafeFloat f2)
{
return default(bool);
}
// Token: 0x0600002B RID: 43 RVA: 0x00002264 File Offset: 0x00000464
[Token(Token = "0x600002B")]
[Address(RVA = "0x3FE6B4C", Offset = "0x3FE6B4C", VA = "0x3FE6B4C")]
public static bool operator ==(SafeFloat f1, float f2)
{
return default(bool);
}
// Token: 0x0600002C RID: 44 RVA: 0x0000227C File Offset: 0x0000047C
[Token(Token = "0x600002C")]
[Address(RVA = "0x3FE6B70", Offset = "0x3FE6B70", VA = "0x3FE6B70")]
public static bool operator !=(SafeFloat f1, float f2)
{
return default(bool);
}
// Token: 0x0600002D RID: 45 RVA: 0x00002294 File Offset: 0x00000494
[Token(Token = "0x600002D")]
[Address(RVA = "0x3FE6B94", Offset = "0x3FE6B94", VA = "0x3FE6B94")]
public static bool operator ==(float f1, SafeFloat f2)
{
return default(bool);
}
// Token: 0x0600002E RID: 46 RVA: 0x000022AC File Offset: 0x000004AC
[Token(Token = "0x600002E")]
[Address(RVA = "0x3FE6BB8", Offset = "0x3FE6BB8", VA = "0x3FE6BB8")]
public static bool operator !=(float f1, SafeFloat f2)
{
return default(bool);
}
// Token: 0x0600002F RID: 47 RVA: 0x000022C4 File Offset: 0x000004C4
[Token(Token = "0x600002F")]
[Address(RVA = "0x3FE6BDC", Offset = "0x3FE6BDC", VA = "0x3FE6BDC")]
public static bool operator >(SafeFloat f1, SafeFloat f2)
{
return default(bool);
}
// Token: 0x06000030 RID: 48 RVA: 0x000022DC File Offset: 0x000004DC
[Token(Token = "0x6000030")]
[Address(RVA = "0x3FE6C08", Offset = "0x3FE6C08", VA = "0x3FE6C08")]
public static bool operator <(SafeFloat f1, SafeFloat f2)
{
return default(bool);
}
// Token: 0x06000031 RID: 49 RVA: 0x000022F4 File Offset: 0x000004F4
[Token(Token = "0x6000031")]
[Address(RVA = "0x3FE6C34", Offset = "0x3FE6C34", VA = "0x3FE6C34")]
public static bool operator >(SafeFloat f1, float f2)
{
return default(bool);
}
// Token: 0x06000032 RID: 50 RVA: 0x0000230C File Offset: 0x0000050C
[Token(Token = "0x6000032")]
[Address(RVA = "0x3FE6C58", Offset = "0x3FE6C58", VA = "0x3FE6C58")]
public static bool operator <(SafeFloat f1, float f2)
{
return default(bool);
}
// Token: 0x06000033 RID: 51 RVA: 0x00002324 File Offset: 0x00000524
[Token(Token = "0x6000033")]
[Address(RVA = "0x3FE6C7C", Offset = "0x3FE6C7C", VA = "0x3FE6C7C")]
public static bool operator >(float f1, SafeFloat f2)
{
return default(bool);
}
// Token: 0x06000034 RID: 52 RVA: 0x0000233C File Offset: 0x0000053C
[Token(Token = "0x6000034")]
[Address(RVA = "0x3FE6CA0", Offset = "0x3FE6CA0", VA = "0x3FE6CA0")]
public static bool operator <(float f1, SafeFloat f2)
{
return default(bool);
}
// Token: 0x06000035 RID: 53 RVA: 0x00002354 File Offset: 0x00000554
[Token(Token = "0x6000035")]
[Address(RVA = "0x3FE6CC4", Offset = "0x3FE6CC4", VA = "0x3FE6CC4")]
public static bool operator >=(SafeFloat f1, SafeFloat f2)
{
return default(bool);
}
// Token: 0x06000036 RID: 54 RVA: 0x0000236C File Offset: 0x0000056C
[Token(Token = "0x6000036")]
[Address(RVA = "0x3FE6CF0", Offset = "0x3FE6CF0", VA = "0x3FE6CF0")]
public static bool operator <=(SafeFloat f1, SafeFloat f2)
{
return default(bool);
}
// Token: 0x06000037 RID: 55 RVA: 0x00002384 File Offset: 0x00000584
[Token(Token = "0x6000037")]
[Address(RVA = "0x3FE6D1C", Offset = "0x3FE6D1C", VA = "0x3FE6D1C")]
public static bool operator >=(SafeFloat f1, float f2)
{
return default(bool);
}
// Token: 0x06000038 RID: 56 RVA: 0x0000239C File Offset: 0x0000059C
[Token(Token = "0x6000038")]
[Address(RVA = "0x3FE6D40", Offset = "0x3FE6D40", VA = "0x3FE6D40")]
public static bool operator <=(SafeFloat f1, float f2)
{
return default(bool);
}
// Token: 0x06000039 RID: 57 RVA: 0x000023B4 File Offset: 0x000005B4
[Token(Token = "0x6000039")]
[Address(RVA = "0x3FE6D64", Offset = "0x3FE6D64", VA = "0x3FE6D64")]
public static bool operator >=(float f1, SafeFloat f2)
{
return default(bool);
}
// Token: 0x0600003A RID: 58 RVA: 0x000023CC File Offset: 0x000005CC
[Token(Token = "0x600003A")]
[Address(RVA = "0x3FE6D88", Offset = "0x3FE6D88", VA = "0x3FE6D88")]
public static bool operator <=(float f1, SafeFloat f2)
{
return default(bool);
}
// Token: 0x0600003B RID: 59 RVA: 0x000023E4 File Offset: 0x000005E4
[Token(Token = "0x600003B")]
[Address(RVA = "0x3FE6DAC", Offset = "0x3FE6DAC", VA = "0x3FE6DAC")]
public static SafeFloat operator ++(SafeFloat f1)
{
return default(SafeFloat);
}
// Token: 0x0600003C RID: 60 RVA: 0x000023FC File Offset: 0x000005FC
[Token(Token = "0x600003C")]
[Address(RVA = "0x3FE6DE0", Offset = "0x3FE6DE0", VA = "0x3FE6DE0")]
public static SafeFloat operator --(SafeFloat f1)
{
return default(SafeFloat);
}
// Token: 0x04000009 RID: 9
[Token(Token = "0x4000009")]
[FieldOffset(Offset = "0x0")]
private float offset;
// Token: 0x0400000A RID: 10
[Token(Token = "0x400000A")]
[FieldOffset(Offset = "0x4")]
private float value;
}
}
I already have the script that uses the obscured value here on the site, how can I change it to work with a safe float?
this is my code that i modified but it doesn't work
C++:
union intfloat {
int i;
float f;
};
/*
Get the real value of an ObscuredInt.
Parameters:
- location: the location of the ObscuredInt
*/
int GetObscuredIntValue(uint64_t location){
int cryptoKey = *(int *)location;
int obfuscatedValue = *(int *)(location + 0x4);
return obfuscatedValue ^ cryptoKey;
}
/*
Set the real value of an ObscuredInt.
Parameters:
- location: the location of the ObscuredInt
- value: the value we're setting the ObscuredInt to
*/
void SetObscuredIntValue(uint64_t location, int value){
int cryptoKey = *(int *)location;
*(int *)(location + 0x4) = value ^ cryptoKey;
}
/*
Get the real value of an ObscuredFloat.
Parameters:
- location: the location of the ObscuredFloat
*/
float GetObscuredSafeFloatValue(uint64_t location){
int cryptoKey = *(int *)location;
int obfuscatedValue = *(int *)(location + 0x4);
/* use this intfloat to set the integer representation of our parameter value, which will also set the float value */
intfloat IF;
IF.i = obfuscatedValue ^ cryptoKey;
return IF.f;
}
/*
Set the real value of an ObscuredFloat.
Parameters:
- location: the location of the ObscuredFloat
- value: the value we're setting the ObscuredFloat to
*/
void SetObscuredSafeFloatValue(uint64_t location, float value){
int cryptoKey = *(int *)location;
/* use this intfloat to get the integer representation of our parameter value */
intfloat IF;
IF.f = value;
/* use this intfloat to generate our hacked ObscuredFloat */
intfloat IF2;
IF2.i = IF.i ^ cryptoKey;
*(float *)(location + 0x4) = IF2.f;
}