- Messages
- 375
- Reaction score
- 148
- Points
- 903
This can still be more redefined and i plan on updating it more but only for cabcon website..
It was suppose to be a full rebuild of gsc but I have alot of different project I'm working on atm.
You need to use my custom melon loader... because I say so make it feel like gsc
you put your mods in the mods folder like so:
Combat Master\Mods\maps\gametypes\mp
the folders will not be there by default just create them...
any images or cfg go inside mods folder not the sub folders
melonloader if u have it installed just replace the melonloader folder in root
combat master with my custom one so we can load mods like cod...
to use my custom one go into the output folder should be a folder called melonloader
drag and replace the one in your combat masters root directory..
I made the huds in photo pea it can be improved but I rather not,
if there something u can't do with melon loader
patch it with harmony... u can make a custom hud easy just make a new R.png or what ever u change the code to...
I am open to help people as well I wanted to remake
zombie land for combat master but I don't think I'm going to get to
with all these lame ass rats hangin' about
menu controls because its a mod menu:
up and down arrows to scroll
f1 to open
enter key to activate an option...
if u wanna change the position pause and drag it around...
I may work on more updates I don't know right now
but if requested I might...
how is it gsc you might ask well here example code compare:
visual studios code:
looks like gsc to me pretty much....
here what a cod gsc would look like:
here some scripts iv made to make things easier to understand, I made
everything the way it is so it easier.....
tp all players:
aimbot this doesn't do anything with ads this just rotates your player to the enemy:
this is what rotates the player >> myPlayer.transform.LookAt(aimWorldPos);
can change this to other things to experiment
aimbot is host only
make all players and bots super big
I would be safe with this as other player cannot tell that they are big...
you can do this with the map itself too and make the map big as **** where its like toy soldiers,
if u wanted the other players to see the changes you would need to look into unity's networking
that is used on combat master I look a look but its a little complicated and will take me longer
A better way for aimbot would be to use indicator huds as u can differentiate between enemy and teammate
the hud indicators have to indicators inside of the content component
teammate and enemy... these are the icons that float above players heads....
links:
Custom melonloader:
Melon loader custom remake source:
_clientids source:
_clientids updated more clean source:
_clientids updated 9:30 may14
compiled drag and drop mods folder for root game:
I was able to asset rip the game get all of these files which has scripts models and animations and much more:
Latest Update as of june 6th 2023:
mods content everything u need to drag and drop:
custom melon loader folder replacement in combat master:
Video of full walkthrough:
though I recommend using a Beebyte Deobfuscator for some of the text is encrypted
but u can still pretty much get the gist of what exactly is happing with the provided dump above...
and all the provided information.
current menu structure:
Legit was made to feel like gsc...
here an older gif picture:
here a more up to date gif:
Ai not included with mod i was using the ai to record my screen and listen to music.
unlock all for all players doesn't work right yet...
modded xp does work...
esp work off host will find more stuff that works offhost
unity engine uses imgui so you could use this method for other unity games as well...
I am working on reversing there anti-cheat so we can do more fun things
here some anticheat stuff
Menu Controls: to move the menu around you can legit drag it anywhere on screen u want... u can click the options if you don't wanna use the scroller. Open Menu: Aim & V to open menu/close Scroll: Arrow keys up and down to scroll up and down in menu Select Options: Enter key, or click to select an option...
It was suppose to be a full rebuild of gsc but I have alot of different project I'm working on atm.
You need to use my custom melon loader... because I say so make it feel like gsc
you put your mods in the mods folder like so:
Combat Master\Mods\maps\gametypes\mp
the folders will not be there by default just create them...
any images or cfg go inside mods folder not the sub folders
melonloader if u have it installed just replace the melonloader folder in root
combat master with my custom one so we can load mods like cod...
to use my custom one go into the output folder should be a folder called melonloader
drag and replace the one in your combat masters root directory..
I made the huds in photo pea it can be improved but I rather not,
if there something u can't do with melon loader
patch it with harmony... u can make a custom hud easy just make a new R.png or what ever u change the code to...
I am open to help people as well I wanted to remake
zombie land for combat master but I don't think I'm going to get to
with all these lame ass rats hangin' about
menu controls because its a mod menu:
up and down arrows to scroll
f1 to open
enter key to activate an option...
if u wanna change the position pause and drag it around...
I may work on more updates I don't know right now
but if requested I might...
how is it gsc you might ask well here example code compare:
visual studios code:
Code:
string menuName = $"{P}{r}{o}{j}{e}{c}{t}{v}{oo}{ii}{d} {vv}{v1}";
CreateRectangle(140, 140, 336, 337, "R.png", 0);//Mod Menu Background
//Create Title
CreateTitle(20, menuName, 0, Color.white);
//Sub Menu Options
// Read the contents of the GCSC file into a string variable
CreateText(60, "Unlock All Operators", UnlockAllOps);
CreateText(80, "Unlock All Weapons", UnlockAllWeapons);
looks like gsc to me pretty much....
here what a cod gsc would look like:
Code:
self CreateTitle("Project Bloody V1", undefined);
self CreateSuboption("Project Bloody V1", 0, "Sub Menu", ::submenu, "Menu");
self CreateSuboption("Project Bloody V1", 1, "Sub Menu", ::submenu, "Menu");
self CreateSuboption("Project Bloody V1", 2, "Sub Menu", ::submenu, "Menu");
self CreateSuboption("Project Bloody V1", 3, "Sub Menu", ::submenu, "Menu");
here some scripts iv made to make things easier to understand, I made
everything the way it is so it easier.....
tp all players:
Code:
void TPAllPlayerToMe()
{
var myPlayer = PlayerRoot.MyPlayer;
if (myPlayer != null && myPlayer.isActiveAndEnabled)
{
Vector3 myPos = myPlayer.transform.position;
foreach (var player in PlayerRoot.AllPlayers)
{
if (!player.isActiveAndEnabled)
{
continue;
}
player.transform.position = myPos;
GSCLoggerMessage("Player " + player.name + " Teleported to: " + myPos.ToString());
}
}
else
{
GSCLoggerMessage("My player is not active or enabled!");
}
}
Code:
void MyPlayersAim11()
{
Camera mainCamera = Camera.main;
if (mainCamera == null) return;
var myPlayer = PlayerRoot.MyPlayer;
if (myPlayer != null && myPlayer.isActiveAndEnabled)
{
Vector3 myPos = myPlayer.transform.position;
float maxDistance = 10f; // Set your desired maximum distance here
float minDistance = 3f; // Set your desired minimum distance here
foreach (var player in PlayerRoot.AllPlayers)
{
if (!player.isActiveAndEnabled)
{
continue;
}
Vector3 pivotPos = player.transform.position;
float distance = Vector3.Distance(myPos, pivotPos);
if (distance > maxDistance || distance < minDistance)
{
continue;
}
float footPosY = pivotPos.y - 0.2f;
float headPosY = pivotPos.y + 1.8f;
Vector3 w2s_footpos = mainCamera.WorldToScreenPoint(new Vector3(pivotPos.x, footPosY, pivotPos.z));
Vector3 w2s_headpos = mainCamera.WorldToScreenPoint(new Vector3(pivotPos.x, headPosY, pivotPos.z));
if (w2s_headpos.z > 0 && w2s_footpos.z > 0)
{
Vector3 aimPos = new Vector3(w2s_headpos.x, w2s_headpos.y, (w2s_headpos.z + w2s_footpos.z) / 2f);
Vector3 aimWorldPos = mainCamera.ScreenToWorldPoint(aimPos);
myPlayer.transform.LookAt(aimWorldPos);
GSCLoggerMessage("Player " + player.name + " locked on at position " + aimWorldPos);
}
}
}
}
can change this to other things to experiment
aimbot is host only
make all players and bots super big
Code:
void AllPlayersSizeShit(x,y,z)
{
foreach (var player in PlayerRoot.AllPlayers)
{
if (!player.isActiveAndEnabled)
{
continue;
// Set the local scale of the player's transform component to (10, 10, 10)
player.transform.localScale = new Vector3(x, y, z);
GSCLoggerMessage("Big Players Lets Go...!" + player.name + "\n");
}
else if(PlayerRoot.MyPlayer)
{
GSCLoggerMessage("can't make me big...." + player.name + "\n");
}
}
}
example:
AllPlayersSizeShit(10f,10f,10f);
I would be safe with this as other player cannot tell that they are big...
you can do this with the map itself too and make the map big as **** where its like toy soldiers,
if u wanted the other players to see the changes you would need to look into unity's networking
that is used on combat master I look a look but its a little complicated and will take me longer
A better way for aimbot would be to use indicator huds as u can differentiate between enemy and teammate
the hud indicators have to indicators inside of the content component
teammate and enemy... these are the icons that float above players heads....
links:
Custom melonloader:
Melon loader custom remake source:
_clientids source:
_clientids updated more clean source:
_clientids updated 9:30 may14
compiled drag and drop mods folder for root game:
I was able to asset rip the game get all of these files which has scripts models and animations and much more:
Latest Update as of june 6th 2023:
mods content everything u need to drag and drop:
custom melon loader folder replacement in combat master:
Video of full walkthrough:
though I recommend using a Beebyte Deobfuscator for some of the text is encrypted
but u can still pretty much get the gist of what exactly is happing with the provided dump above...
and all the provided information.
current menu structure:
Code:
void MenuStructure()
{
string menuName = $"{P}{r}{o}{j}{e}{c}{t}{v}{oo}{ii}{d} {vv}{v1}";
CreateRectangle(140, 140, 336, 337, "R.png", 0);//Mod Menu Background
//Create Title
CreateTitle(20, menuName, 0, Color.white);
//Sub Menu Options
// Read the contents of the GCSC file into a string variable
CreateText(60, "Unlock All Operators", UnlockAllOps);
CreateText(80, "Unlock All Weapons", UnlockAllWeapons);
CreateText(100, "Unlock All Emblems", UnlockAllEmblems);
CreateText(120, "Toggle Esp", EspToggle);
CreateText(140, "Modded Xp", ModdedXpLobby);
CreateText(160, "Toggle BP", BattlePassBypass);
CreateText(180, "UnlockAllWeaponsAllPlayer", UnlockAllWeaponsAllPlayer);
CreateText(200, "UnlockAllEmblemsAllPlayer", UnlockAllEmblemsAllPlayer);
CreateText(220, "UnlockAllOpsAllPlayer", UnlockAllOpsAllPlayer);//() =>
CreateText(240, "Print Active G Objs", CurrentlyActiveGameObjectsLoadedInScene);
CreateText(260, "No Warehouse OutterCol", RemoveWarehouseOutterCollision);
CreateText(280, "Warehouse MG G Objs", GameObjectsInsideMapgraphicsWarehouse);
CreateText(300, "TP All PlayerToMe", TPAllPlayerToMe);
CreateText(320, "SuperSpeed", GiveSuperSpeed);
//Menu Controls Or Credits
CreateTitle(350, $"Created By: {name}", 0, Color.white);
}
updated structure looks like this now:
public static void MenuHuds()
{
CreateRectangle(140, 140, 336, 337, "R.png", 0);//Mod Menu Background
}
public static void MenuStructure()
{
MenuHuds();
//Create Title
CreateTitle(20, menuName, 0, Color.white);
//Sub Menu Options
CreateText(60, "Unlock All Operators", functions.UnlockAllOps);
CreateText(80, "Unlock All Weapons", functions.UnlockAllWeapons);
CreateText(100, "Unlock All Emblems", functions.UnlockAllEmblems);
CreateText(120, "Toggle Esp", functions.EspToggle);
CreateText(140, "Modded Xp", functions.ModdedXpLobby);
CreateText(160, "Toggle BP", functions.BattlePassBypass);
CreateText(180, "UnlockAllWeaponsAllPlayer", functions.UnlockAllWeaponsAllPlayer);
CreateText(200, "UnlockAllEmblemsAllPlayer", functions.UnlockAllEmblemsAllPlayer);
CreateText(220, "UnlockAllOpsAllPlayer", functions.UnlockAllOpsAllPlayer);//() =>
CreateText(240, "Print Active G Objs", functions.CurrentlyActiveGameObjectsLoadedInScene);
CreateText(260, "No Warehouse OutterCol", functions.RemoveWarehouseOutterCollision);
CreateText(280, "Warehouse MG G Objs", functions.GameObjectsInsideMapgraphicsWarehouse);
CreateText(300, "TP All PlayerToMe", functions.TPAllPlayerToMe);
CreateText(320, "SuperSpeed", functions.GiveSuperSpeed);
//Menu Controls Or Credits
CreateTitle(350, $"Created By: {name}", 0, Color.white);
}
we call functions from the functions.cs instead of call them from the same .cs file
this will keep it more clean.
may14 9:30pm update
public static void MenuHuds()
{
CreateRectangle(140, 140, 336, 337, "R.png", 0);//Mod Menu Background
}
public static void MenuStructure()
{
MenuHuds();
//Create Title
CreateTitle(20, menuName, 0, Color.white);
//Sub Menu Options
CreateText(60, "Unlock All Operators", UnlockAllOps);
CreateText(80, "Unlock All Weapons", UnlockAllWeapons);
CreateText(100, "Unlock All Emblems", UnlockAllEmblems);
CreateText(120, "Toggle Esp", EspToggle);
CreateText(140, "Modded Xp", ModdedXpLobby);
CreateText(160, "Toggle BP", BattlePassBypass);
CreateText(180, "Toggle Noclip", ToggleNoclip);
CreateText(200, "Toggle SuperSpeed", ToggleSuperSpeed);
CreateText(220, "Tp Allplayers Shoot", ToggleTeleport);//() =>
CreateText(240, "Perfect Weapon", NorecoilOrWeaponSway);
CreateText(260, "No Warehouse OutterCol", RemoveWarehouseOutterCollision);
CreateText(280, "Infinity Ammo Test", ToggleInfiniteAmmo);
CreateText(300, "TP All PlayerToMe", TPAllPlayerToMe);
CreateText(320, "SuperJumpTest", ToggleJump);
//Menu Controls Or Credits
CreateTitle(350, $"Created By: {name}", 0, Color.white);
}
added shoot all players at crosshairs
test for norecoil and weapon sway
ammo testing
super jump for host can be applied to players as well
here an older gif picture:
here a more up to date gif:
Ai not included with mod i was using the ai to record my screen and listen to music.
unlock all for all players doesn't work right yet...
modded xp does work...
esp work off host will find more stuff that works offhost
unity engine uses imgui so you could use this method for other unity games as well...
I am working on reversing there anti-cheat so we can do more fun things
here some anticheat stuff
Code:
public static string ConstructErrorForSupport(string text, [string prefix = null], [Il2CppSystem.Exception exception = null])
Member of Il2CppCodeStage.AntiCheat.Common.ACTk
public static string GenerateBugReport([Il2CppSystem.Exception exception = null])
Member of Il2CppCodeStage.AntiCheat.Common.ACTk
public static void GetUnityInfo()
Member of Il2CppCodeStage.AntiCheat.Common.ACTk
public static void PrintExceptionForSupport(string errorText, [Il2CppSystem.Exception exception = null])
Member of Il2CppCodeStage.AntiCheat.Common.ACTk
public static void PrintExceptionForSupport(string errorText, [string prefix = null], [Il2CppSystem.Exception exception = null])
Member of Il2CppCodeStage.AntiCheat.Common.ACTk
public static string applicationPlatform { get; set; }
Member of Il2CppCodeStage.AntiCheat.Common.ACTk
public static string DocsRootUrl { get; set; }
Member of Il2CppCodeStage.AntiCheat.Common.ACTk
public static string LogPrefix { get; set; }
Member of Il2CppCodeStage.AntiCheat.Common.ACTk
public static Il2CppInterop.Runtime.InteropTypes.Arrays.Il2CppStructArray<char> StringKey { get; set; }
Member of Il2CppCodeStage.AntiCheat.Common.ACTk
public static string SupportContact { get; set; }
Member of Il2CppCodeStage.AntiCheat.Common.ACTk
public static string unityVersion { get; set; }
Member of Il2CppCodeStage.AntiCheat.Common.ACTk
public static string Version { get; set; }
Member of Il2CppCodeStage.AntiCheat.Common.ACTk
//something attachted to player
public string _AccessedApi_k__BackingField { get; set; }
Member of Il2CppCodeStage.AntiCheat.Common.BackgroundThreadAccessException
public virtual void StopDetectionInternal()
Member of Il2CppCodeStage.AntiCheat.Detectors.ACTkDetectorBase<T>
public bool IsCheatDetected { get; set; }
Member of Il2CppCodeStage.AntiCheat.Detectors.ACTkDetectorBase<T>
public static void StopDetection()
Member of Il2CppCodeStage.AntiCheat.Detectors.InjectionDetector
public static void Dispose()
Member of Il2CppCodeStage.AntiCheat.Detectors.InjectionDetector
public virtual void EndInvoke(Il2CppSystem.IAsyncResult result)
Member of Il2CppCodeStage.AntiCheat.Detectors.InjectionDetector.InjectionDetectedEventHandler
public static void StopDetection()
Member of Il2CppCodeStage.AntiCheat.Detectors.ObscuredCheatingDetector
public static void StopDetection()
Member of Il2CppCodeStage.AntiCheat.Detectors.SpeedHackDetector
public int coolDown { get; set; }
Member of Il2CppCodeStage.AntiCheat.Detectors.SpeedHackDetector
public byte maxFalsePositives { get; set; }
Member of Il2CppCodeStage.AntiCheat.Detectors.SpeedHackDetector
public byte currentFalsePositives { get; set; }
public static void StopDetection()
Member of Il2CppCodeStage.AntiCheat.Detectors.TimeCheatingDetector
public override void StopDetectionInternal()
Member of Il2CppCodeStage.AntiCheat.Detectors.TimeCheatingDetector
public static void StopDetection()
Member of Il2CppCodeStage.AntiCheat.Detectors.WallHackDetector
public override void StopDetectionInternal()
Member of Il2CppCodeStage.AntiCheat.Detectors.WallHackDetector
public void StopRigidModule()
Member of Il2CppCodeStage.AntiCheat.Detectors.WallHackDetector
public void StopRaycastModule()
Member of Il2CppCodeStage.AntiCheat.Detectors.WallHackDetector
public void StopWireframeModule()
Member of Il2CppCodeStage.AntiCheat.Detectors.WallHackDetector
public byte maxFalsePositives { get; set; }
Member of Il2CppCodeStage.AntiCheat.Detectors.WallHackDetector
public byte rigidbodyDetections { get; set; }
Member of Il2CppCodeStage.AntiCheat.Detectors.WallHackDetector
public byte raycastDetections { get; set; }
Member of Il2CppCodeStage.AntiCheat.Detectors.WallHackDetector
public byte maxFalsePositives { get; set; }
Member of Il2CppCodeStage.AntiCheat.Detectors.WallHackDetector
public UnityEngine.GameObject solidWall { get; set; }
Member of Il2CppCodeStage.AntiCheat.Detectors.WallHackDetector
Plain
Member of Il2CppCodeStage.AntiCheat.Storage.ObscurationMode
public static void Dispose()
Member of Il2CppCodeStage.AntiCheat.Time.SpeedHackProofTime
public void OnSpeedHackDetected()
Member of Il2CppCodeStage.AntiCheat.Time.SpeedHackProofTime
Last edited: