Added KOTO_LAN_Control.py
CatMoneyX.py is now in KOTIKOTstandalone app library
This commit is contained in:
@@ -1,199 +0,0 @@
|
|||||||
import os
|
|
||||||
import random
|
|
||||||
import subprocess, sys, time, ctypes
|
|
||||||
try:
|
|
||||||
import pymem
|
|
||||||
except:
|
|
||||||
subprocess.check_call([sys.executable, "-m", "pip", "install", 'pymem'])
|
|
||||||
import pymem
|
|
||||||
|
|
||||||
try:
|
|
||||||
import mem_edit
|
|
||||||
except:
|
|
||||||
subprocess.check_call([sys.executable, "-m", "pip", "install", 'mem_edit'])
|
|
||||||
import mem_edit
|
|
||||||
|
|
||||||
try:
|
|
||||||
import psutil
|
|
||||||
except:
|
|
||||||
subprocess.check_call([sys.executable, "-m", "pip", "install", 'psutil'])
|
|
||||||
import psutil
|
|
||||||
|
|
||||||
try:
|
|
||||||
from PyQt5 import QtCore, QtGui, QtWidgets
|
|
||||||
except:
|
|
||||||
subprocess.check_call([sys.executable, "-m", "pip", "install", 'PyQt5'])
|
|
||||||
from PyQt5 import QtCore, QtGui, QtWidgets
|
|
||||||
|
|
||||||
class Ui_MainWindow(object):
|
|
||||||
def setupUi(self, MainWindow):
|
|
||||||
MainWindow.setObjectName("MainWindow")
|
|
||||||
MainWindow.resize(200, 280)
|
|
||||||
MainWindow.setMinimumSize(QtCore.QSize(200, 280))
|
|
||||||
MainWindow.setMaximumSize(QtCore.QSize(200, 280))
|
|
||||||
MainWindow.setBaseSize(QtCore.QSize(0, 100))
|
|
||||||
self.centralwidget = QtWidgets.QWidget(MainWindow)
|
|
||||||
self.centralwidget.setMinimumSize(QtCore.QSize(0, 0))
|
|
||||||
self.centralwidget.setBaseSize(QtCore.QSize(0, 0))
|
|
||||||
self.centralwidget.setObjectName("centralwidget")
|
|
||||||
self.gridLayoutWidget = QtWidgets.QWidget(self.centralwidget)
|
|
||||||
self.gridLayoutWidget.setGeometry(QtCore.QRect(10, -10, 185, 284))
|
|
||||||
self.gridLayoutWidget.setObjectName("gridLayoutWidget")
|
|
||||||
self.gridLayout = QtWidgets.QGridLayout(self.gridLayoutWidget)
|
|
||||||
self.gridLayout.setContentsMargins(0, 0, 0, 0)
|
|
||||||
self.gridLayout.setObjectName("gridLayout")
|
|
||||||
self.verticalLayout_3 = QtWidgets.QVBoxLayout()
|
|
||||||
self.verticalLayout_3.setSizeConstraint(QtWidgets.QLayout.SetDefaultConstraint)
|
|
||||||
self.verticalLayout_3.setSpacing(6)
|
|
||||||
self.verticalLayout_3.setObjectName("verticalLayout_3")
|
|
||||||
self.textBrowser = QtWidgets.QTextBrowser(self.gridLayoutWidget)
|
|
||||||
self.textBrowser.setMaximumSize(QtCore.QSize(16777215, 80))
|
|
||||||
self.textBrowser.setObjectName("textBrowser")
|
|
||||||
self.verticalLayout_3.addWidget(self.textBrowser)
|
|
||||||
self.horizontalLayout = QtWidgets.QHBoxLayout()
|
|
||||||
self.horizontalLayout.setObjectName("horizontalLayout")
|
|
||||||
self.verticalLayout = QtWidgets.QVBoxLayout()
|
|
||||||
self.verticalLayout.setObjectName("verticalLayout")
|
|
||||||
self.firstscan = QtWidgets.QLineEdit(self.gridLayoutWidget)
|
|
||||||
self.firstscan.setObjectName("firstscan")
|
|
||||||
self.verticalLayout.addWidget(self.firstscan)
|
|
||||||
self.firstcheck = QtWidgets.QPushButton(self.gridLayoutWidget)
|
|
||||||
self.firstcheck.setObjectName("firstcheck")
|
|
||||||
self.verticalLayout.addWidget(self.firstcheck)
|
|
||||||
self.horizontalLayout.addLayout(self.verticalLayout)
|
|
||||||
self.verticalLayout_2 = QtWidgets.QVBoxLayout()
|
|
||||||
self.verticalLayout_2.setObjectName("verticalLayout_2")
|
|
||||||
self.secondscan = QtWidgets.QLineEdit(self.gridLayoutWidget)
|
|
||||||
self.secondscan.setObjectName("secondscan")
|
|
||||||
self.verticalLayout_2.addWidget(self.secondscan)
|
|
||||||
self.secondcheck = QtWidgets.QPushButton(self.gridLayoutWidget)
|
|
||||||
self.secondcheck.setObjectName("secondcheck")
|
|
||||||
self.verticalLayout_2.addWidget(self.secondcheck)
|
|
||||||
self.horizontalLayout.addLayout(self.verticalLayout_2)
|
|
||||||
self.verticalLayout_3.addLayout(self.horizontalLayout)
|
|
||||||
self.horizontalSlider = QtWidgets.QSlider(self.gridLayoutWidget)
|
|
||||||
self.horizontalSlider.setOrientation(QtCore.Qt.Horizontal)
|
|
||||||
self.horizontalSlider.setObjectName("horizontalSlider")
|
|
||||||
self.verticalLayout_3.addWidget(self.horizontalSlider)
|
|
||||||
self.textEdit = QtWidgets.QTextEdit(self.gridLayoutWidget)
|
|
||||||
self.textEdit.setEnabled(True)
|
|
||||||
self.textEdit.setMinimumSize(QtCore.QSize(0, 0))
|
|
||||||
self.textEdit.setMaximumSize(QtCore.QSize(16777215, 30))
|
|
||||||
self.textEdit.setTextInteractionFlags(QtCore.Qt.TextSelectableByKeyboard|QtCore.Qt.TextSelectableByMouse)
|
|
||||||
self.textEdit.setObjectName("textEdit")
|
|
||||||
self.verticalLayout_3.addWidget(self.textEdit)
|
|
||||||
self.pushButton = QtWidgets.QPushButton(self.gridLayoutWidget)
|
|
||||||
self.pushButton.setObjectName("pushButton")
|
|
||||||
self.verticalLayout_3.addWidget(self.pushButton)
|
|
||||||
self.gridLayout.addLayout(self.verticalLayout_3, 0, 0, 1, 1)
|
|
||||||
self.label = QtWidgets.QLabel(self.gridLayoutWidget)
|
|
||||||
self.label.setMouseTracking(True)
|
|
||||||
self.label.setContextMenuPolicy(QtCore.Qt.NoContextMenu)
|
|
||||||
self.label.setTextFormat(QtCore.Qt.RichText)
|
|
||||||
self.label.setScaledContents(False)
|
|
||||||
self.label.setIndent(0)
|
|
||||||
self.label.setObjectName("label")
|
|
||||||
self.gridLayout.addWidget(self.label, 0, 1, 1, 1)
|
|
||||||
MainWindow.setCentralWidget(self.centralwidget)
|
|
||||||
self.menubar = QtWidgets.QMenuBar(MainWindow)
|
|
||||||
self.menubar.setGeometry(QtCore.QRect(0, 0, 200, 21))
|
|
||||||
self.menubar.setObjectName("menubar")
|
|
||||||
MainWindow.setMenuBar(self.menubar)
|
|
||||||
self.statusbar = QtWidgets.QStatusBar(MainWindow)
|
|
||||||
self.statusbar.setObjectName("statusbar")
|
|
||||||
MainWindow.setStatusBar(self.statusbar)
|
|
||||||
|
|
||||||
self.retranslateUi(MainWindow)
|
|
||||||
QtCore.QMetaObject.connectSlotsByName(MainWindow)
|
|
||||||
|
|
||||||
self.horizontalSlider.setValue(100)
|
|
||||||
|
|
||||||
def retranslateUi(self, MainWindow):
|
|
||||||
_translate = QtCore.QCoreApplication.translate
|
|
||||||
MainWindow.setWindowTitle(_translate("MainWindow", "MainWindow"))
|
|
||||||
self.textBrowser.setHtml(_translate("MainWindow", "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
|
|
||||||
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
|
|
||||||
"p, li { white-space: pre-wrap; }\n"
|
|
||||||
"</style></head><body style=\" font-family:\'MS Shell Dlg 2\'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
|
|
||||||
"<p align=\"center\" style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:18pt; font-weight:600;\">CatMoneyX</span></p>\n"
|
|
||||||
"<p align=\"center\" style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">Casino bet changer</span></p>\n"
|
|
||||||
"<p align=\"center\" style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt; font-weight:600;\">by BarsTiger</span></p>\n"
|
|
||||||
"<p align=\"center\" style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:8pt;\">simplified KotoGameScam</span></p></body></html>"))
|
|
||||||
self.firstscan.setText(_translate("MainWindow", "100"))
|
|
||||||
self.firstcheck.setText(_translate("MainWindow", "First check"))
|
|
||||||
self.secondscan.setText(_translate("MainWindow", "50"))
|
|
||||||
self.secondcheck.setText(_translate("MainWindow", "Second check"))
|
|
||||||
self.textEdit.setHtml(_translate("MainWindow", "<!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0//EN\" \"http://www.w3.org/TR/REC-html40/strict.dtd\">\n"
|
|
||||||
"<html><head><meta name=\"qrichtext\" content=\"1\" /><style type=\"text/css\">\n"
|
|
||||||
"p, li { white-space: pre-wrap; }\n"
|
|
||||||
"</style></head><body style=\" font-family:\'MS Shell Dlg 2\'; font-size:8.25pt; font-weight:400; font-style:normal;\">\n"
|
|
||||||
"<p align=\"center\" style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:11pt;\">1000000</span></p></body></html>"))
|
|
||||||
self.pushButton.setText(_translate("MainWindow", "Change bet"))
|
|
||||||
self.label.setText(_translate("MainWindow", "<html><head/><body><p><span style=\" font-size:11pt; font-weight:600;\">C</span></p><p><span style=\" font-size:11pt; font-weight:600;\">a</span></p><p><span style=\" font-size:11pt; font-weight:600;\">t</span></p><p><span style=\" font-size:11pt; font-weight:600;\">M</span></p><p><span style=\" font-size:11pt; font-weight:600;\">o</span></p><p><span style=\" font-size:11pt; font-weight:600;\">n</span></p><p><span style=\" font-size:11pt; font-weight:600;\">e</span></p><p><span style=\" font-size:11pt; font-weight:600;\">y</span></p><p><span style=\" font-size:11pt; font-weight:600;\">X</span></p></body></html>"))
|
|
||||||
|
|
||||||
|
|
||||||
app = QtWidgets.QApplication(sys.argv)
|
|
||||||
MainWindow = QtWidgets.QMainWindow()
|
|
||||||
ui = Ui_MainWindow()
|
|
||||||
ui.setupUi(MainWindow)
|
|
||||||
MainWindow.show()
|
|
||||||
|
|
||||||
address = []
|
|
||||||
straddress = []
|
|
||||||
sortedAddresses = []
|
|
||||||
wantToChangeAddresses = []
|
|
||||||
procName = "GTA5.exe"
|
|
||||||
wantedValue = 1000000
|
|
||||||
|
|
||||||
def firstcsan():
|
|
||||||
global address, straddress
|
|
||||||
value = int(ui.firstscan.text())
|
|
||||||
print("I will check for " + str(value))
|
|
||||||
pid = mem_edit.Process.get_pid_by_name(procName)
|
|
||||||
with mem_edit.Process.open_process(pid) as p:
|
|
||||||
address = p.search_all_memory(ctypes.c_int(int(value)))
|
|
||||||
print('Found', len(address), 'addresses')
|
|
||||||
for i in address:
|
|
||||||
straddress.append(str(i))
|
|
||||||
print(straddress)
|
|
||||||
|
|
||||||
def secondscan():
|
|
||||||
global address, straddress
|
|
||||||
sortedAddresses.clear()
|
|
||||||
proc = pymem.Pymem(procName)
|
|
||||||
valueAfterChange = int(ui.secondscan.text())
|
|
||||||
print("I will leave only " + str(valueAfterChange))
|
|
||||||
for addressFromAll in address:
|
|
||||||
if proc.read_int(addressFromAll) == int(valueAfterChange):
|
|
||||||
sortedAddresses.append(addressFromAll)
|
|
||||||
print('Found after ThrowAwaySort:', len(sortedAddresses))
|
|
||||||
address.clear()
|
|
||||||
for i in sortedAddresses:
|
|
||||||
address.append(i)
|
|
||||||
straddress.clear()
|
|
||||||
for i in address:
|
|
||||||
straddress.append(str(i))
|
|
||||||
print(straddress)
|
|
||||||
|
|
||||||
def scam():
|
|
||||||
global address, straddress, wantedValue
|
|
||||||
wantedValue = getfromslider()
|
|
||||||
print("Started scamming to " + str(wantedValue))
|
|
||||||
proc = pymem.Pymem(procName)
|
|
||||||
for wantToChangeAddress in straddress:
|
|
||||||
proc.write_int(int(wantToChangeAddress), int(wantedValue))
|
|
||||||
print('Changed value in ' + str(wantToChangeAddress) + ' to ' + str(wantedValue))
|
|
||||||
print('Values of addresses ' + str(straddress) + ' now are ' + str(wantedValue))
|
|
||||||
|
|
||||||
def getfromslider():
|
|
||||||
global wantedValue
|
|
||||||
wantedValue = 10000 * ui.horizontalSlider.value()
|
|
||||||
ui.textEdit.setText(str(wantedValue))
|
|
||||||
return wantedValue
|
|
||||||
|
|
||||||
ui.horizontalSlider.valueChanged.connect(getfromslider)
|
|
||||||
ui.firstcheck.clicked.connect(firstcsan)
|
|
||||||
ui.secondcheck.clicked.connect(secondscan)
|
|
||||||
ui.pushButton.clicked.connect(scam)
|
|
||||||
|
|
||||||
sys.exit(app.exec_())
|
|
||||||
105
OfficialProjects/KOTO_LAN_Control/KOTO_LAN_Control.py
Normal file
105
OfficialProjects/KOTO_LAN_Control/KOTO_LAN_Control.py
Normal file
@@ -0,0 +1,105 @@
|
|||||||
|
import ctypes, sys, os, subprocess
|
||||||
|
|
||||||
|
try:
|
||||||
|
from PyQt5 import QtCore, QtGui, QtWidgets
|
||||||
|
except:
|
||||||
|
subprocess.check_call([sys.executable, "-m", "pip", "install", 'PyQt5'])
|
||||||
|
from PyQt5 import QtCore, QtGui, QtWidgets
|
||||||
|
|
||||||
|
class Ui_MainWindow(object):
|
||||||
|
def setupUi(self, MainWindow):
|
||||||
|
MainWindow.setObjectName("MainWindow")
|
||||||
|
MainWindow.resize(361, 190)
|
||||||
|
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Fixed, QtWidgets.QSizePolicy.Fixed)
|
||||||
|
sizePolicy.setHorizontalStretch(0)
|
||||||
|
sizePolicy.setVerticalStretch(0)
|
||||||
|
sizePolicy.setHeightForWidth(MainWindow.sizePolicy().hasHeightForWidth())
|
||||||
|
MainWindow.setSizePolicy(sizePolicy)
|
||||||
|
MainWindow.setMinimumSize(QtCore.QSize(361, 190))
|
||||||
|
MainWindow.setMaximumSize(QtCore.QSize(361, 190))
|
||||||
|
self.centralwidget = QtWidgets.QWidget(MainWindow)
|
||||||
|
self.centralwidget.setObjectName("centralwidget")
|
||||||
|
self.horizontalLayoutWidget = QtWidgets.QWidget(self.centralwidget)
|
||||||
|
self.horizontalLayoutWidget.setGeometry(QtCore.QRect(0, 0, 361, 171))
|
||||||
|
self.horizontalLayoutWidget.setObjectName("horizontalLayoutWidget")
|
||||||
|
self.horizontalLayout = QtWidgets.QHBoxLayout(self.horizontalLayoutWidget)
|
||||||
|
self.horizontalLayout.setContentsMargins(0, 0, 0, 0)
|
||||||
|
self.horizontalLayout.setObjectName("horizontalLayout")
|
||||||
|
self.ON = QtWidgets.QPushButton(self.horizontalLayoutWidget)
|
||||||
|
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Minimum)
|
||||||
|
sizePolicy.setHorizontalStretch(0)
|
||||||
|
sizePolicy.setVerticalStretch(0)
|
||||||
|
sizePolicy.setHeightForWidth(self.ON.sizePolicy().hasHeightForWidth())
|
||||||
|
self.ON.setSizePolicy(sizePolicy)
|
||||||
|
self.ON.setStyleSheet("QPushButton{\n"
|
||||||
|
"font-size: 50px;\n"
|
||||||
|
"font-family: Arial\n"
|
||||||
|
"}")
|
||||||
|
self.ON.setText("ON")
|
||||||
|
self.ON.setObjectName("ON")
|
||||||
|
self.horizontalLayout.addWidget(self.ON)
|
||||||
|
self.OFF = QtWidgets.QPushButton(self.horizontalLayoutWidget)
|
||||||
|
self.OFF.setEnabled(True)
|
||||||
|
sizePolicy = QtWidgets.QSizePolicy(QtWidgets.QSizePolicy.Minimum, QtWidgets.QSizePolicy.Minimum)
|
||||||
|
sizePolicy.setHorizontalStretch(0)
|
||||||
|
sizePolicy.setVerticalStretch(0)
|
||||||
|
sizePolicy.setHeightForWidth(self.OFF.sizePolicy().hasHeightForWidth())
|
||||||
|
self.OFF.setSizePolicy(sizePolicy)
|
||||||
|
self.OFF.setMinimumSize(QtCore.QSize(50, 50))
|
||||||
|
self.OFF.setStyleSheet("QPushButton{\n"
|
||||||
|
"font-size: 50px;\n"
|
||||||
|
"font-family: Arial\n"
|
||||||
|
"}")
|
||||||
|
self.OFF.setObjectName("OFF")
|
||||||
|
self.horizontalLayout.addWidget(self.OFF)
|
||||||
|
MainWindow.setCentralWidget(self.centralwidget)
|
||||||
|
self.menubar = QtWidgets.QMenuBar(MainWindow)
|
||||||
|
self.menubar.setGeometry(QtCore.QRect(0, 0, 361, 21))
|
||||||
|
self.menubar.setObjectName("menubar")
|
||||||
|
MainWindow.setMenuBar(self.menubar)
|
||||||
|
self.statusbar = QtWidgets.QStatusBar(MainWindow)
|
||||||
|
self.statusbar.setObjectName("statusbar")
|
||||||
|
MainWindow.setStatusBar(self.statusbar)
|
||||||
|
|
||||||
|
self.retranslateUi(MainWindow)
|
||||||
|
QtCore.QMetaObject.connectSlotsByName(MainWindow)
|
||||||
|
|
||||||
|
def retranslateUi(self, MainWindow):
|
||||||
|
_translate = QtCore.QCoreApplication.translate
|
||||||
|
MainWindow.setWindowTitle(_translate("MainWindow", "MainWindow"))
|
||||||
|
self.ON.setWhatsThis(_translate("MainWindow", "<html><head/><body><p><span style=\" font-size:18pt;\">ON</span></p></body></html>"))
|
||||||
|
self.OFF.setText(_translate("MainWindow", "OFF"))
|
||||||
|
|
||||||
|
|
||||||
|
def is_admin():
|
||||||
|
try:
|
||||||
|
return ctypes.windll.shell32.IsUserAnAdmin()
|
||||||
|
except:
|
||||||
|
return False
|
||||||
|
|
||||||
|
if not is_admin():
|
||||||
|
ctypes.windll.shell32.ShellExecuteW(None, "runas", sys.executable, " ".join(sys.argv), None, 1)
|
||||||
|
exit()
|
||||||
|
|
||||||
|
def off():
|
||||||
|
os.system('netsh interface set interface name="Ethernet" admin=DISABLED')
|
||||||
|
print("Turned OFF")
|
||||||
|
|
||||||
|
def on():
|
||||||
|
os.system('netsh interface set interface name="Ethernet" admin=ENABLED')
|
||||||
|
print("Turned ON")
|
||||||
|
print("May take a while, about 30 seconds")
|
||||||
|
|
||||||
|
|
||||||
|
app = QtWidgets.QApplication(sys.argv)
|
||||||
|
MainWindow = QtWidgets.QMainWindow()
|
||||||
|
ui = Ui_MainWindow()
|
||||||
|
ui.setupUi(MainWindow)
|
||||||
|
MainWindow.show()
|
||||||
|
|
||||||
|
os.system('cls' if os.name == 'nt' else 'clear')
|
||||||
|
|
||||||
|
ui.ON.clicked.connect(on)
|
||||||
|
ui.OFF.clicked.connect(off)
|
||||||
|
|
||||||
|
sys.exit(app.exec_())
|
||||||
Reference in New Issue
Block a user