private void Launch_Button_Click_1(object sender, EventArgs e) { string selectedcheat = CheatList.GetItemText(CheatList.SelectedItem); var name = "csgo"; var target = Process.GetProcessesByName(name).FirstOrDefault(); if (target == null) { Error.CstmError.Show("Process not found"); return; } if (selectedcheat == "Howling Cheat CSGO") { var injector = new ManualMapInjector(target) { AsyncInjection = true }; string boom = $"hmodule = 0x{injector.Inject(Howling_LoaderV3.Properties.Resources.Cheat).ToInt64():x8}"; // put your cheat in Resources Application.ExitThread(); } if (selectedcheat == "") { Error.CstmError.Show("No Cheat selected"); } }
private void Form1_Load(object sender, EventArgs e) { cl = CheatList.FromJson(new FCWebRequest("https://api.flawcra.cc/fcheatlauncher/cheatlist/").GetResponse()); listBox1.DisplayMember = "Name"; foreach (Game game in cl.Games) { listBox1.Items.Add(game); } CheckForIllegalCrossThreadCalls = false; }
private void Launch_button_Click(object sender, EventArgs e) { string selecedcheat = CheatList.GetItemText(CheatList.SelectedItem); WebClient client = new WebClient(); if ((String)CheatList.SelectedItem == "Wanheda HvH") { client.DownloadFile(Globals.DownLink1, Globals.CheatName1); } if ((String)CheatList.SelectedItem == "Crystality HvH") { client.DownloadFile(Globals.DownLink2, Globals.CheatName2); } var name = "csgo"; var target = Process.GetProcessesByName(name).FirstOrDefault(); if (target == null) { Error.CstmError.Show("Process not found"); return; } if (selecedcheat == "Wanheda HvH") { var injector = new ManualMapInjector(target) { AsyncInjection = true }; string boom = $"hmodule = 0x{injector.Inject(Howling_Software.Properties.Resources.Cheat1).ToInt64():x8}"; // insert your cheat in Resources.resx Application.ExitThread(); Application.Exit(); } if (selecedcheat == "Crystality HvH") { var injector = new ManualMapInjector(target) { AsyncInjection = true }; string boom = $"hmodule = 0x{injector.Inject(Howling_Software.Properties.Resources.Cheat2).ToInt64():x8}"; // insert your cheat in Resources.resx Application.ExitThread(); Application.Exit(); } if (selecedcheat == "") { Error.CstmError.Show("No Cheat selected"); } }
private void lgn_button_Click(object sender, EventArgs e) { string selecedcheat = CheatList.GetItemText(CheatList.SelectedItem); WebClient client = new WebClient(); var name = "csgo"; var target = Process.GetProcessesByName(name).FirstOrDefault(); if (target == null) { Error.CstmError.Show("Process not found"); return; } if (selecedcheat == "Howling Cheat CSGO") { string Temppath = Path.GetTempPath(); var path = Temppath + "Cheat.dll"; // Cheat client.DownloadFile("LINK", path); // dll Link var file = File.ReadAllBytes(path); if (!File.Exists(path)) { Error.CstmError.Show("unexpected error. File not found! press OK to restart client..."); Application.Restart(); } var injector = new ManualMapInjector(target) { AsyncInjection = true }; bool boom = Convert.ToBoolean($"hmodule = 0x{injector.Inject(file).ToInt64():x8}"); if (File.Exists(path)) { File.Delete(path); } Application.ExitThread(); Application.Exit(); } if (selecedcheat == "") { Error.CstmError.Show("No Cheat selected"); } }
private bool CheckHotkey(string trigger) { switch (trigger) { default: return false; // General case "Pause": TogglePause(); break; case "Frame Inch": //special! allow this key to get handled as Frame Advance, too FrameInch = true; return false; case "Toggle Throttle": _unthrottled ^= true; ThrottleMessage(); break; case "Soft Reset": SoftReset(); break; case "Hard Reset": HardReset(); break; case "Quick Load": LoadQuickSave($"QuickSave{Config.SaveSlot}"); break; case "Quick Save": SaveQuickSave($"QuickSave{Config.SaveSlot}"); break; case "Clear Autohold": ClearAutohold(); break; case "Screenshot": TakeScreenshot(); break; case "Screen Raw to Clipboard": // Ctrl+C clash. any tool that has such acc must check this. // maybe check if mainform has focus instead? if (Tools.IsLoaded<TAStudio>() && Tools.Get<TAStudio>().ContainsFocus) { break; } TakeScreenshotToClipboard(); break; case "Screen Client to Clipboard": TakeScreenshotClientToClipboard(); break; case "Full Screen": ToggleFullscreen(); break; case "Open ROM": OpenRom(); break; case "Close ROM": CloseRom(); break; case "Load Last ROM": LoadRomFromRecent(Config.RecentRoms.MostRecent); break; case "Flush SaveRAM": FlushSaveRAM(); break; case "Display FPS": ToggleFps(); break; case "Frame Counter": ToggleFrameCounter(); break; case "Lag Counter": if (Emulator.CanPollInput()) { ToggleLagCounter(); } break; case "Input Display": ToggleInputDisplay(); break; case "Toggle BG Input": ToggleBackgroundInput(); break; case "Toggle Menu": MainMenuStrip.Visible ^= true; break; case "Volume Up": VolumeUp(); break; case "Volume Down": VolumeDown(); break; case "Toggle Sound": ToggleSound(); break; case "Exit Program": _exitRequestPending = true; break; case "Record A/V": RecordAv(); break; case "Stop A/V": StopAv(); break; case "Larger Window": IncreaseWindowSize(); break; case "Smaller Window": DecreaseWindowSize(); break; case "Increase Speed": IncreaseSpeed(); break; case "Reset Speed": ResetSpeed(); break; case "Decrease Speed": DecreaseSpeed(); break; case "Reboot Core": RebootCore(); break; case "Toggle Skip Lag Frame": Config.SkipLagFrame ^= true; AddOnScreenMessage($"Skip Lag Frames toggled {(Config.SkipLagFrame ? "On" : "Off")}"); break; case "Toggle Key Priority": ToggleKeyPriority(); break; // Save States case "Save State 0": SaveQuickSave("QuickSave0"); Config.SaveSlot = 0; UpdateStatusSlots(); break; case "Save State 1": SaveQuickSave("QuickSave1"); Config.SaveSlot = 1; UpdateStatusSlots(); break; case "Save State 2": SaveQuickSave("QuickSave2"); Config.SaveSlot = 2; UpdateStatusSlots(); break; case "Save State 3": SaveQuickSave("QuickSave3"); Config.SaveSlot = 3; UpdateStatusSlots(); break; case "Save State 4": SaveQuickSave("QuickSave4"); Config.SaveSlot = 4; UpdateStatusSlots(); break; case "Save State 5": SaveQuickSave("QuickSave5"); Config.SaveSlot = 5; UpdateStatusSlots(); break; case "Save State 6": SaveQuickSave("QuickSave6"); Config.SaveSlot = 6; UpdateStatusSlots(); break; case "Save State 7": SaveQuickSave("QuickSave7"); Config.SaveSlot = 7; UpdateStatusSlots(); break; case "Save State 8": SaveQuickSave("QuickSave8"); Config.SaveSlot = 8; UpdateStatusSlots(); break; case "Save State 9": SaveQuickSave("QuickSave9"); Config.SaveSlot = 9; UpdateStatusSlots(); break; case "Load State 0": LoadQuickSave("QuickSave0"); Config.SaveSlot = 0; UpdateStatusSlots(); break; case "Load State 1": LoadQuickSave("QuickSave1"); Config.SaveSlot = 1; UpdateStatusSlots(); break; case "Load State 2": LoadQuickSave("QuickSave2"); Config.SaveSlot = 2; UpdateStatusSlots(); break; case "Load State 3": LoadQuickSave("QuickSave3"); Config.SaveSlot = 3; UpdateStatusSlots(); break; case "Load State 4": LoadQuickSave("QuickSave4"); Config.SaveSlot = 4; UpdateStatusSlots(); break; case "Load State 5": LoadQuickSave("QuickSave5"); Config.SaveSlot = 5; UpdateStatusSlots(); break; case "Load State 6": LoadQuickSave("QuickSave6"); Config.SaveSlot = 6; UpdateStatusSlots(); break; case "Load State 7": LoadQuickSave("QuickSave7"); Config.SaveSlot = 7; UpdateStatusSlots(); break; case "Load State 8": LoadQuickSave("QuickSave8"); Config.SaveSlot = 8; UpdateStatusSlots(); break; case "Load State 9": LoadQuickSave("QuickSave9"); Config.SaveSlot = 9; UpdateStatusSlots(); break; case "Select State 0": SelectSlot(0); break; case "Select State 1": SelectSlot(1); break; case "Select State 2": SelectSlot(2); break; case "Select State 3": SelectSlot(3); break; case "Select State 4": SelectSlot(4); break; case "Select State 5": SelectSlot(5); break; case "Select State 6": SelectSlot(6); break; case "Select State 7": SelectSlot(7); break; case "Select State 8": SelectSlot(8); break; case "Select State 9": SelectSlot(9); break; case "Save Named State": SaveStateAs(); break; case "Load Named State": LoadStateAs(); break; case "Previous Slot": PreviousSlot(); break; case "Next Slot": NextSlot(); break; // Movie case "Toggle read-only": ToggleReadOnly(); break; case "Play Movie": PlayMovieMenuItem_Click(null, null); break; case "Record Movie": RecordMovieMenuItem_Click(null, null); break; case "Stop Movie": StopMovie(); break; case "Play from beginning": RestartMovie(); break; case "Save Movie": SaveMovie(); break; // Tools case "RAM Watch": Tools.LoadRamWatch(true); break; case "RAM Search": Tools.Load<RamSearch>(); break; case "Hex Editor": Tools.Load<HexEditor>(); break; case "Trace Logger": Tools.Load<TraceLogger>(); break; case "Lua Console": OpenLuaConsole(); break; case "Cheats": Tools.Load<Cheats>(); break; case "Toggle All Cheats": if (CheatList.Any()) { string type = " (mixed)"; if (CheatList.All(c => c.Enabled)) { type = " (off)"; } else if (CheatList.All(c => !c.Enabled)) { type = " (on)"; } foreach (var x in CheatList) { x.Toggle(); } AddOnScreenMessage($"Cheats toggled{type}"); } break; case "TAStudio": Tools.Load<TAStudio>(); break; case "ToolBox": Tools.Load<ToolBox>(); break; case "Virtual Pad": Tools.Load<VirtualpadTool>(); break; // RAM Search case "Do Search": if (Tools.IsLoaded<RamSearch>()) { Tools.RamSearch.DoSearch(); } else { return false; } break; case "New Search": if (Tools.IsLoaded<RamSearch>()) { Tools.RamSearch.NewSearch(); } else { return false; } break; case "Previous Compare To": if (Tools.IsLoaded<RamSearch>()) { Tools.RamSearch.NextCompareTo(reverse: true); } else { return false; } break; case "Next Compare To": if (Tools.IsLoaded<RamSearch>()) { Tools.RamSearch.NextCompareTo(); } else { return false; } break; case "Previous Operator": if (Tools.IsLoaded<RamSearch>()) { Tools.RamSearch.NextOperator(reverse: true); } else { return false; } break; case "Next Operator": if (Tools.IsLoaded<RamSearch>()) { Tools.RamSearch.NextOperator(); } else { return false; } break; // TAStudio case "Add Branch": if (Tools.IsLoaded<TAStudio>()) { Tools.TAStudio.AddBranchExternal(); } else { return false; } break; case "Delete Branch": if (Tools.IsLoaded<TAStudio>()) { Tools.TAStudio.RemoveBranchExternal(); } else { return false; } break; case "Show Cursor": if (Tools.IsLoaded<TAStudio>()) { Tools.TAStudio.SetVisibleFrame(); Tools.TAStudio.RefreshDialog(); } else { return false; } break; case "Toggle Follow Cursor": if (Tools.IsLoaded<TAStudio>()) { Tools.TAStudio.TasPlaybackBox.FollowCursor ^= true; } else { return false; } break; case "Toggle Auto-Restore": if (Tools.IsLoaded<TAStudio>()) { Tools.TAStudio.TasPlaybackBox.AutoRestore ^= true; } else { return false; } break; case "Toggle Turbo Seek": if (Tools.IsLoaded<TAStudio>()) { Tools.TAStudio.TasPlaybackBox.TurboSeek ^= true; } else { return false; } break; case "Undo": if (Tools.IsLoaded<TAStudio>()) { Tools.TAStudio.UndoExternal(); } else { return false; } break; case "Redo": if (Tools.IsLoaded<TAStudio>()) { Tools.TAStudio.RedoExternal(); } else { return false; } break; case "Select between Markers": if (Tools.IsLoaded<TAStudio>()) { Tools.TAStudio.SelectBetweenMarkersExternal(); } else { return false; } break; case "Select All": if (Tools.IsLoaded<TAStudio>()) { Tools.TAStudio.SelectAllExternal(); } else { return false; } break; case "Reselect Clip.": if (Tools.IsLoaded<TAStudio>()) { Tools.TAStudio.ReselectClipboardExternal(); } else { return false; } break; case "Clear Frames": if (Tools.IsLoaded<TAStudio>()) { Tools.TAStudio.ClearFramesExternal(); } else { return false; } break; case "Insert Frame": if (Tools.IsLoaded<TAStudio>()) { Tools.TAStudio.InsertFrameExternal(); } else { return false; } break; case "Insert # Frames": if (Tools.IsLoaded<TAStudio>()) { Tools.TAStudio.InsertNumFramesExternal(); } else { return false; } break; case "Delete Frames": if (Tools.IsLoaded<TAStudio>()) { Tools.TAStudio.DeleteFramesExternal(); } else { return false; } break; case "Clone Frames": if (Tools.IsLoaded<TAStudio>()) { Tools.TAStudio.CloneFramesExternal(); } else { return false; } break; case "Analog Increment": if (Tools.IsLoaded<TAStudio>()) { Tools.TAStudio.AnalogIncrementByOne(); } else { return false; } break; case "Analog Decrement": if (Tools.IsLoaded<TAStudio>()) { Tools.TAStudio.AnalogDecrementByOne(); } else { return false; } break; case "Analog Incr. by 10": if (Tools.IsLoaded<TAStudio>()) { Tools.TAStudio.AnalogIncrementByTen(); } else { return false; } break; case "Analog Decr. by 10": if (Tools.IsLoaded<TAStudio>()) { Tools.TAStudio.AnalogDecrementByTen(); } else { return false; } break; case "Analog Maximum": if (Tools.IsLoaded<TAStudio>()) { Tools.TAStudio.AnalogMax(); } else { return false; } break; case "Analog Minimum": if (Tools.IsLoaded<TAStudio>()) { Tools.TAStudio.AnalogMin(); } else { return false; } break; // SNES case "Toggle BG 1": SNES_ToggleBg(1); break; case "Toggle BG 2": SNES_ToggleBg(2); break; case "Toggle BG 3": SNES_ToggleBg(3); break; case "Toggle BG 4": SNES_ToggleBg(4); break; case "Toggle OBJ 1": SNES_ToggleObj(1); break; case "Toggle OBJ 2": SNES_ToggleObj(2); break; case "Toggle OBJ 3": SNES_ToggleObj(3); break; case "Toggle OBJ 4": SNES_ToggleObj(4); break; // GB case "GB Toggle BG": if (Emulator is Gameboy gb) { if (!gb.DeterministicEmulation) { var ss = gb.GetSyncSettings(); ss.DisplayBG ^= true; gb.PutSyncSettings(ss); AddOnScreenMessage($"BG toggled {(ss.DisplayBG ? "on" : "off")}"); } else { AddOnScreenMessage($"BG cannot be toggled during movie recording."); } } break; case "GB Toggle Obj": if (Emulator is Gameboy gb2) { if (!gb2.DeterministicEmulation) { var ss = gb2.GetSyncSettings(); ss.DisplayOBJ ^= true; gb2.PutSyncSettings(ss); AddOnScreenMessage($"OBJ toggled {(ss.DisplayOBJ ? "on" : "off")}"); } else { AddOnScreenMessage($"OBJ cannot be toggled during movie recording."); } } break; case "GB Toggle Window": if (Emulator is Gameboy gb3) { if (!gb3.DeterministicEmulation) { var ss = gb3.GetSyncSettings(); ss.DisplayWindow ^= true; gb3.PutSyncSettings(ss); AddOnScreenMessage($"WIN toggled {(ss.DisplayWindow ? "on" : "off")}"); } else { AddOnScreenMessage($"WIN cannot be toggled during movie recording."); } } break; // Analog case "Y Up Small": Tools.VirtualPad.BumpAnalogValue(null, Config.AnalogSmallChange); break; case "Y Up Large": Tools.VirtualPad.BumpAnalogValue(null, Config.AnalogLargeChange); break; case "Y Down Small": Tools.VirtualPad.BumpAnalogValue(null, -Config.AnalogSmallChange); break; case "Y Down Large": Tools.VirtualPad.BumpAnalogValue(null, -Config.AnalogLargeChange); break; case "X Up Small": Tools.VirtualPad.BumpAnalogValue(Config.AnalogSmallChange, null); break; case "X Up Large": Tools.VirtualPad.BumpAnalogValue(Config.AnalogLargeChange, null); break; case "X Down Small": Tools.VirtualPad.BumpAnalogValue(-Config.AnalogSmallChange, null); break; case "X Down Large": Tools.VirtualPad.BumpAnalogValue(-Config.AnalogLargeChange, null); break; // DS case "Next Screen Layout": IncrementDSLayout(1); break; case "Previous Screen Layout": IncrementDSLayout(-1); break; case "Screen Rotate": IncrementDSScreenRotate(); break; } return true; }
private void LoadCheats(string filename, string archive = null) { CheatList.Load(Emulator.AsMemoryDomains(), filename, false); Tools.Load <Cheats>(); }
private void LoadCheats(string filename, string archive = null) { CheatList.Load(filename, false); Tools.Load <Cheats>(); }
private void lgn_button_Click(object sender, EventArgs e) { string selecedcheat = CheatList.GetItemText(CheatList.SelectedItem); WebClient client = new WebClient(); var name = "csgo"; var target = Process.GetProcessesByName(name).FirstOrDefault(); if (target == null) { Error.CstmError.Show("Process not found"); return; } if (selecedcheat == "DogWare HVH Cheat CSGO") { string Temppath = Path.GetTempPath(); var path = Temppath + Globals.CheatName; client.DownloadFile(Globals.DownLink, path); var file = File.ReadAllBytes(path); if (!File.Exists(path)) { Error.CstmError.Show("unexpected error. File not found! press OK to restart client..."); Application.Restart(); } var injector = new ManualMapInjector(target) { AsyncInjection = true }; label1.Text = $"hmodule = 0x{injector.Inject(file).ToInt64():x8}"; if (File.Exists(path)) { File.Delete(path); } Application.ExitThread(); Application.Exit(); } if (selecedcheat == "") { Error.CstmError.Show("No Cheat selected"); } if (selecedcheat == "DogWare Legit Cheat CSGO") { string Temppath = Path.GetTempPath(); var path = Temppath + Globals.CheatName; client.DownloadFile(Globals.DownLink2, path); var file = File.ReadAllBytes(path); if (!File.Exists(path)) { Error.CstmError.Show("unexpected error. File not found! press OK to restart client..."); Application.Restart(); } var injector = new ManualMapInjector(target) { AsyncInjection = true }; label1.Text = $"hmodule = 0x{injector.Inject(file).ToInt64():x8}"; if (File.Exists(path)) { File.Delete(path); } Application.ExitThread(); Application.Exit(); } if (selecedcheat == "") { Error.CstmError.Show("No Cheat selected"); } }