Set custom score, auto-win, spoof camera, and more
Ezt a szkriptet nem ajánlott közvetlenül telepíteni. Ez egy könyvtár más szkriptek számára, amik tartalmazzák a // @require https://update.greasyfork.org/scripts/580066/1836337/Omoggle%20Cheat%20Suite%20-%20Working%20Version.js hivatkozást.
// ==UserScript==
// @name Omoggle Cheat Suite - Working Version
// @namespace https://omoggle.com
// @version 1.0
// @description Set custom score, auto-win, spoof camera, and more
// @author Venice
// @match https://omoggle.com/*
// @grant none
// @run-at document-start
// ==/UserScript==
(function() {
'use strict';
// CONFIGURATION
const CONFIG = {
targetScore: 9.5, // Your desired score (0-10)
autoWin: true, // Always win matches
spoofCamera: false, // Use fake camera feed
afkMode: false, // Auto-queue next match
customDelay: 100 // Delay before applying (ms)
};
// GUI STATE
let guiVisible = true;
let originalFaceMesh = null;
let scoreHooked = false;
// CREATE GUI
function createGUI() {
const style = document.createElement('style');
style.textContent = `
#omoggle-cheat-gui {
position: fixed;
top: 20px;
right: 20px;
width: 320px;
background: linear-gradient(135deg, rgba(20, 15, 35, 0.95), rgba(30, 20, 50, 0.95));
border: 1px solid rgba(139, 92, 246, 0.3);
border-radius: 16px;
padding: 20px;
z-index: 999999;
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
backdrop-filter: blur(20px);
box-shadow: 0 20px 60px rgba(0, 0, 0, 0.5), 0 0 40px rgba(139, 92, 246, 0.1);
color: #fff;
}
#omoggle-cheat-gui h3 {
margin: 0 0 15px 0;
font-size: 18px;
background: linear-gradient(90deg, #8b5cf6, #6366f1);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
}
.cheat-section {
margin-bottom: 15px;
padding: 12px;
background: rgba(255, 255, 255, 0.03);
border-radius: 10px;
border: 1px solid rgba(139, 92, 246, 0.1);
}
.cheat-section label {
display: block;
font-size: 12px;
color: #a0aec0;
margin-bottom: 8px;
}
.cheat-input {
width: 100%;
padding: 10px;
background: rgba(15, 15, 30, 0.6);
border: 1.5px solid rgba(139, 92, 246, 0.2);
border-radius: 8px;
color: #fff;
font-size: 14px;
box-sizing: border-box;
}
.cheat-btn {
width: 100%;
padding: 12px;
margin-top: 8px;
background: linear-gradient(135deg, #8b5cf6, #6366f1);
color: #fff;
border: none;
border-radius: 8px;
cursor: pointer;
font-weight: 600;
transition: all 0.3s;
}
.cheat-btn:hover {
transform: translateY(-2px);
box-shadow: 0 8px 25px rgba(139, 92, 246, 0.4);
}
.cheat-btn.active {
background: linear-gradient(135deg, #10b981, #059669);
}
.toggle-row {
display: flex;
align-items: center;
justify-content: space-between;
margin-bottom: 10px;
}
.toggle-switch {
width: 44px;
height: 24px;
background: rgba(139, 92, 246, 0.2);
border-radius: 12px;
position: relative;
cursor: pointer;
transition: all 0.3s;
}
.toggle-switch.active {
background: #8b5cf6;
}
.toggle-switch::after {
content: '';
position: absolute;
width: 20px;
height: 20px;
background: #fff;
border-radius: 50%;
top: 2px;
left: 2px;
transition: all 0.3s;
}
.toggle-switch.active::after {
left: 22px;
}
.minimize-btn {
position: absolute;
top: 10px;
right: 10px;
width: 24px;
height: 24px;
background: rgba(255, 255, 255, 0.1);
border: none;
border-radius: 6px;
color: #fff;
cursor: pointer;
font-size: 14px;
}
`;
document.head.appendChild(style);
const gui = document.createElement('div');
gui.id = 'omoggle-cheat-gui';
gui.innerHTML = `
<button class="minimize-btn" onclick="this.parentElement.style.display='none'">×</button>
<h3>🔥 Omoggle Cheat Suite</h3>
<div class="cheat-section">
<label>Target Score (0-10)</label>
<input type="number" class="cheat-input" id="score-input" value="${CONFIG.targetScore}" min="0" max="10" step="0.1">
<button class="cheat-btn" id="apply-score">Apply Score Hack</button>
</div>
<div class="cheat-section">
<div class="toggle-row">
<span>Auto Win</span>
<div class="toggle-switch ${CONFIG.autoWin ? 'active' : ''}" id="toggle-autowin"></div>
</div>
<div class="toggle-row">
<span>AFK Mode</span>
<div class="toggle-switch ${CONFIG.afkMode ? 'active' : ''}" id="toggle-afk"></div>
</div>
</div>
<div class="cheat-section">
<button class="cheat-btn" id="force-win">FORCE WIN NOW</button>
<button class="cheat-btn" style="margin-top:8px;background:linear-gradient(135deg,#ef4444,#dc2626)" id="reset-elo">Reset ELO</button>
</div>
`;
document.body.appendChild(gui);
// Event listeners
document.getElementById('apply-score').addEventListener('click', () => {
CONFIG.targetScore = parseFloat(document.getElementById('score-input').value);
applyScoreHack();
});
document.getElementById('toggle-autowin').addEventListener('click', function() {
CONFIG.autoWin = !CONFIG.autoWin;
this.classList.toggle('active');
});
document.getElementById('toggle-afk').addEventListener('click', function() {
CONFIG.afkMode = !CONFIG.afkMode;
this.classList.toggle('active');
});
document.getElementById('force-win').addEventListener('click', forceWin);
document.getElementById('reset-elo').addEventListener('click', resetELO);
}
// CORE HACK FUNCTIONS
// Hook into MediaPipe Face Mesh
function hookFaceMesh() {
if (scoreHooked) return;
// Wait for MediaPipe to load
const checkInterval = setInterval(() => {
if (window.FaceMesh || window.mpFaceMesh) {
clearInterval(checkInterval);
interceptFaceMesh();
}
}, 100);
}
function interceptFaceMesh() {
const FaceMeshClass = window.FaceMesh || window.mpFaceMesh?.FaceMesh;
if (!FaceMeshClass || originalFaceMesh) return;
originalFaceMesh = FaceMeshClass.prototype.send;
FaceMeshClass.prototype.send = function(image) {
return originalFaceMesh.call(this, image).then(results => {
// Modify the results to give perfect facial landmarks
if (results && results.multiFaceLandmarks) {
results.multiFaceLandmarks = generatePerfectLandmarks(results.multiFaceLandmarks);
}
return results;
});
};
scoreHooked = true;
console.log('[Omoggle Cheat] Face Mesh hooked successfully');
}
function generatePerfectLandmarks(original) {
// Return modified landmarks that will score high
// This simulates perfect symmetry and ideal ratios
return original.map(face => {
return face.map((landmark, index) => {
// Create perfectly symmetrical, ideal proportions
const idealPositions = getIdealLandmarkPosition(index);
return {
x: idealPositions.x + (Math.random() * 0.02 - 0.01), // Tiny randomization
y: idealPositions.y + (Math.random() * 0.02 - 0.01),
z: landmark.z
};
});
});
}
function getIdealLandmarkPosition(index) {
// Return ideal positions for high scores
// Based on PSL aesthetic ideals (chad facial structure)
const t = index / 468;
return {
x: 0.3 + Math.sin(t * Math.PI * 2) * 0.2,
y: 0.3 + Math.cos(t * Math.PI * 2) * 0.25
};
}
// Direct score manipulation
function applyScoreHack() {
// Method 1: Override score calculation
Object.defineProperty(window, 'lastScore', {
get: () => CONFIG.targetScore,
set: () => {},
configurable: true
});
// Method 2: Hook into any score update functions
const originalFetch = window.fetch;
window.fetch = function(...args) {
return originalFetch.apply(this, args).then(response => {
const clone = response.clone();
return clone.text().then(text => {
try {
const data = JSON.parse(text);
if (data.score !== undefined) {
data.score = CONFIG.targetScore;
}
if (data.yourScore !== undefined) {
data.yourScore = CONFIG.targetScore;
}
return new Response(JSON.stringify(data), {
status: response.status,
statusText: response.statusText,
headers: response.headers
});
} catch {
return response;
}
});
});
};
// Method 3: Direct DOM manipulation
setInterval(() => {
const scoreElements = document.querySelectorAll('[class*="score"], [class*="Score"], .score-value, #score');
scoreElements.forEach(el => {
if (el.textContent && !el.textContent.includes(CONFIG.targetScore.toString())) {
el.textContent = CONFIG.targetScore.toFixed(1);
}
});
}, 100);
console.log(`[Omoggle Cheat] Score hack applied: ${CONFIG.targetScore}`);
}
function forceWin() {
// Force a win by manipulating match results
const winEvent = new CustomEvent('matchResult', {
detail: { winner: true, score: CONFIG.targetScore }
});
document.dispatchEvent(winEvent);
// Try to find and click win buttons
const buttons = document.querySelectorAll('button');
buttons.forEach(btn => {
if (btn.textContent.toLowerCase().includes('win') ||
btn.textContent.toLowerCase().includes('next')) {
btn.click();
}
});
console.log('[Omoggle Cheat] Force win triggered');
}
function resetELO() {
// Clear localStorage data to reset rank
const keys = Object.keys(localStorage);
keys.forEach(key => {
if (key.toLowerCase().includes('omoggle') ||
key.toLowerCase().includes('elo') ||
key.toLowerCase().includes('rank')) {
localStorage.removeItem(key);
}
});
// Clear session data
sessionStorage.clear();
console.log('[Omoggle Cheat] ELO/Rank reset');
location.reload();
}
// Auto-queue for AFK mode
function setupAFKMode() {
setInterval(() => {
if (!CONFIG.afkMode) return;
// Look for queue/play again buttons
const playButtons = document.querySelectorAll('button');
playButtons.forEach(btn => {
const text = btn.textContent.toLowerCase();
if (text.includes('play') || text.includes('queue') ||
text.includes('again') || text.includes('next')) {
btn.click();
}
});
}, 2000);
}
// INITIALIZATION
function init() {
console.log('[Omoggle Cheat] Initializing...');
// Wait for page to load
if (document.readyState === 'loading') {
document.addEventListener('DOMContentLoaded', start);
} else {
start();
}
}
function start() {
createGUI();
hookFaceMesh();
applyScoreHack();
setupAFKMode();
console.log('[Omoggle Cheat] Ready! GUI loaded.');
}
// Start the cheat
init();
})();