The RPG Maker Resource Kit

RMRK RPG Maker Creation => VX => VX Scripts Database => Topic started by: game_guy on August 04, 2011, 12:54:47 PM

Title: [XP][VX] One Game Instance
Post by: game_guy on August 04, 2011, 12:54:47 PM
One Game Instance
Authors: game_guy
Version: 1.0
Type: Cheating Prevention
Key Term: Misc System

Introduction

Was reading this thread. http://www.hbgames.org/forums/viewtopic.php?f=12&t=74963&start=0 The guy who resolved it made it way overcomplicated. I decided to make a smaller more compact version.

This script is to prevent multiple instances of your game. This is really only for online games so players can't cheat.

(I'll just keep one topic here instead of posting multiple topics as the script works in both XP and VX without modifications)

Features


Screenshots

N/A

Demo

N/A

Script

Place at very top!
Spoiler for:
Code: [Select]
#===============================================================================
# One Game Instance
# Version 1.0
# Author game_guy
#-------------------------------------------------------------------------------
# Intro:
# Prevents players from opening multiple instances of your games.
#
# Features:
# Prevents Multiple Instances
# Custom File/Error
# XP/VX Compatible
#
# Instructions:
# Place as first script.
# Configure the 2 variables and thats all!
#
# Compatibility:
# Works with everything.
#
# Credits:
# game_guy ~ For creating it.
# ZenVirZan ~ For requesting it.
#===============================================================================

# Custom error message.
ERROR = "Instance already running."
# Custom file name, I'd recommend leaving the ENV[Appdata]
TOKEN_FILE = ENV['APPDATA'] + "game_name.token"

begin
  if FileTest.exists?(TOKEN_FILE)
    begin
      File.delete(TOKEN_FILE)
    rescue Errno::EACCES
      if $DEBUG == false || $DEBUG == nil || $TEST == false || $TEST == nil
        print ERROR
        exit
      end
    end
  end
  $token = File.open(TOKEN_FILE, "w")
end

Instructions

In script.

Compatibility

Works with everything.
XP/VX compatibility.

Credits and Thanks


Author's Notes

Prevent dem hackahs! >:U
Title: Re: [XP][VX] One Game Instance
Post by: exhydra on August 04, 2011, 07:12:33 PM
Although there is a wide path around this protection because of its simplicity, I really like the quick and easy to implement nature of the script. This would put a stop to most casual attempts at exploiting multiple instances. Good work!