The Arcive of Official vBulletin Modifications Site.It is not a VB3 engine, just a parsed copy! |
|
Arcade Anti-Cheater Mod Details »» | |||||||||||||||||||||||||
Board: 3.x
Purpose: If your board is a scripting/coding board you probably have cheaters using your arcade. They are people that use memoryhacks/colorbots, and believe me, people do cheat. This hack is to clean up scores. Before, if you wanted to remove a score, you had to create your own mysql query and even though the score was removed the highscore still showed up as belonging to them. This process has been fixed by this hack. Functionaliy: - Remove all scores from a user - Remove a users highscores - Fix the titleholders/highscores Screenshot: http://www.elitecoders.org/ftp/ronin...rcadeadmin.jpg Code: Attatched No Edits Required PHP script: Attatched Instructions: Perform the following edits, OR upload the attatched PHP file in place of your own arcadeadmin.php. #-------------------------------------------------------------------------------# Find In arcadeadmin.php #-------------------------------------------------------------------------------# Code:
print_form_header('arcadeadmin', 'pruneinvalid'); print_table_header("Remove All Invalid Scores"); print_description_row("This action will remove all invalid score records from the database. Invalid records are created during automated score pruning, or if a session is terminated prematurely."); print_submit_row("Remove All Invalid Scores", 0); Add Below #-------------------------------------------------------------------------------# Code:
// ARCADE HACK BY RONIN print_form_header('arcadeadmin', 'prunebyuser'); print_table_header("Remove User Scores"); print_description_row("This action will remove a users scores from the database."); print_input_row("Enter the userid here", 'userid'); print_yes_no_row("Remove highscores only? (as opposed to all scores)", 'high', 0); print_submit_row("Remove User Scores", 0); print_form_header('arcadeadmin', 'fixhighscores'); print_table_header("Fix High Scores"); print_description_row("This action will update the highscore listings and awards with the actual highscore information for each game"); print_submit_row("Update Highscores", 0); // ARCADE HACK BY RONIN Find in arcadeadmin.php #-------------------------------------------------------------------------------# Code:
// ###################### INVALID RECORD PRUNING ####################### if ($_POST['do'] == "prunenoscore") { if ($_POST['confirmation']=="YES") { $DB_site->query("DELETE FROM " . TABLE_PREFIX . "gamesessions WHERE sessiontype=1"); } define('CP_REDIRECT', 'arcadeadmin.php?do=scores'); print_stop_message('arcade_cp_settingssaved'); } Add Below #-------------------------------------------------------------------------------# Code:
// ###################### PRUNE BY USER ####################### if ($_POST['do'] == "prunebyuser") { $userid=$_POST['userid']; $high=$_POST['high']; if ($high) { $query = " SELECT gamename, MAX(score) AS score FROM gamesessions WHERE valid=1 GROUP BY gamename "; $myquery = $DB_site->query($query); while($row = $DB_site->fetch_array($myquery)) { $delete = "DELETE FROM gamesessions WHERE gamename = '".$row['gamename']."' && userid ='".$userid."' && score = ".$row['score']; $DB_site->query($delete); } define('CP_REDIRECT', 'arcadeadmin.php?do=scores'); print_stop_message('arcade_cp_settingssaved'); } else { $DB_site->query("DELETE FROM " . TABLE_PREFIX . "gamesessions WHERE userid=".$userid); define('CP_REDIRECT', 'arcadeadmin.php?do=scores'); print_stop_message('arcade_cp_settingssaved'); } } // ###################### FIX HIGHSCORES ####################### if ($_POST['do'] == "fixhighscores") { $query = " SELECT gamename, MAX(score) AS score FROM gamesessions WHERE valid=1 GROUP BY gamename "; $myquery = $DB_site->query($query); while($row = $DB_site->fetch_array($myquery)) { $user = "SELECT userid FROM gamesessions WHERE valid=1 AND score='".$row['score']."' AND gamename='".$row['gamename']."'"; $userquery = $DB_site->query($user); while($useid = $DB_site->fetch_array($userquery)) { $update = "UPDATE games SET `highscore`='".$row['score']."', `highscorerid`='".$useid['userid']."' WHERE shortname='".$row['gamename']."'"; $DB_site->query($update); } } define('CP_REDIRECT', 'arcadeadmin.php?do=scores'); print_stop_message('arcade_cp_settingssaved'); } Show Your Support
|
Comments |
#32
|
||||
|
||||
Quote:
|
#33
|
|||
|
|||
THanks!
/me hits install |
#34
|
|||
|
|||
Quote:
There is no way to know whether they cheated/are cheating in a simple arcade game. |
Thread Tools | |
|
|
X vBulletin 3.8.12 by vBS Debug Information | |
---|---|
|
|
More Information | |
Template Usage:
Phrase Groups Available:
|
Included Files:
Hooks Called:
|