Amazing Collection of online role playing games for your website!

Backyard Boxin

HOT UPDATED featured_orange_star
Only registered and logged in users can download this file.
Rating
(12 votes)
Technical Details
Filename backyard_boxin.zip
Size 1.15 MB
Downloads 124
Author Unknown
Website Website external
Created 2008-12-31
Changed 2025-12-21
System PHP 4.x
Price $0.00
Screenshot
BackYard Boxin'

Tape up your fists and step into the underground. Backyard Boxin' is a gritty street boxing RPG where you build a fighter from the ground up—train strength, agility, dexterity, and max HP, then stalk the rankings for your next knockout. Cash your winnings, chase the championship belt, and carve your legacy across city leaderboards. Fast, punchy turn based battles let you jump in for quick bouts or grind your way to legend.

The fight is only half the hustle. Join player run clubs, pool resources, and clash for bragging rights. Hit the casino for slots, dice, and the infamous Scratch n Match—risk your roll, announce your jackpot in chat, and watch the arena take notice. With protection for newcomers, banked savings, and a market of street rivals ready to swing, Backyard Boxin' delivers the raw rush of illegal circuits and the thrill of rising from nobody to champion.

File Verification
MD5 Checksum
b0b3503b609ce852e5dea675ee83b994
SHA1 Checksum
8ae97eb66661edafab335edbacbc56a762fd94bd

Backyard Boxin - Game Analysis Report

Metadata

Name: Backyard Boxin

Version: Unknown (circa 2004)

Total Files: 298

Total Size: 1.45 MB

Created Date: August 31, 2004 (Database generation date)

Last Updated: Unknown (appears to be 2004 era)

Author: Unknown (multiple contributors)

Copyright: GPL v2 + Custom Scratch n Match by KPP Internet Promotions

License: GNU General Public License v2 (GPL v2) + Custom components

Project URL: backyardboxin.com (defunct)

PHP Version: PHP 4.3.2+ (tested on this version)

Database: MySQL 3.23.58+ with MyISAM engine

Server: Apache with phpMyAdmin 2.5.7-pl1

File Composition

File Type Count Total Size (MB) Purpose
.gif 113 0.283 UI elements, animations, icons, boxing graphics
.php 104 0.255 Game logic, all functionality
.jpg 51 0.496 Background images, avatars, boxing ring graphics
.txt 7 0.103 Documentation, binary files
.html 5 0.014 Static pages (privacy policy, post info)
.phtml 3 0.001 Configuration files (PHP template style)
.sql 3 0.026 Database schemas
.nfo 2 0.014 Scene release info files
.css 2 0.004 Stylesheets
.zip 2 0.115 Embedded games (TCW v2.0.2, Scratch n Match)
.swf 2 0.040 Flash animations (intro animation)
.htaccess 1 <0.001 Apache configuration
(no extension) 1 0.038 Unknown file
.tpl 1 0.005 Template file
.swi 1 0.060 Flash source file
Total 298 1.45 Complete package

File Distribution Analysis:

  • Graphics (56%): 164 image files (GIF, JPG) for complete visual experience
  • Code (35%): 104 PHP files + 3 PHTML config files for all game systems
  • Documentation (2%): Installation guides, license, binary files
  • Multimedia (3%): Flash intro animation with editable source
  • Other (4%): HTML pages, CSS, SQL, embedded ZIP archives

Technical Architecture

Platform: Web-based LAMP stack application

Frontend: HTML with minimal CSS, Flash intro animation

Backend: Pure PHP procedural code with MySQL

Communication: Traditional page reloads (no AJAX)

Session Management: PHP sessions with MySQL-stored user state

Real-time Updates: Timer-based regeneration system (stamina/HP regen)

Game Engine: Turn-based with stamina consumption mechanics

Key Technical Features:

  • Procedural PHP architecture (no OOP)
  • Direct MySQL queries throughout (mysql_* functions)
  • Turn timer system via control table
  • IP tracking for multi-account detection
  • PayPal integration for donations/purchases
  • Voting reward system (TWG, TopRP, WGI integration)
  • Banking system with deposit protection
  • Mail system with unread tracking
  • Chat system with separate public/private channels
  • Scratch n Match mini-game (DHTML-based)
  • Casino games (slots, craps, dice)
  • Flash intro animation (bybintro.swf)

Game Overview

Backyard Boxin is a street boxing browser game where players train amateur boxers to fight for money and respect in underground matches. Players build their fighter's stats (strength, agility, dexterity), battle other players for cash, join boxing clubs, and compete for the championship belt. The game combines RPG-style character progression with PvP combat and gambling mini-games.

The theme revolves around illegal underground boxing circuits - raw, gritty street fighting for dollars. Players manage a single boxer character, training at the gym, recovering at the hospital/clinic, and challenging rivals in the ring. Success brings wealth, the championship belt, and ranking prestige.

This is an open-source game (GPL v2) with some commercial components (Scratch n Match requires license). The package includes two embedded complete games (TCW v2.0.2 and Scratch n Match) as bonus content.

Genre & Theme

Genre: Boxing RPG / PvP Fighting Game / Browser-based Combat Sim

Theme: Underground street boxing, illegal fighting circuits

Game Style: Turn-based stat-building with real-time PvP battles

Target Audience: Competitive PvP players, boxing/fighting enthusiasts

Gameplay Pace: Fast-paced (quick battles), sessions can be brief bursts

Setting: Urban street boxing in various cities (Bronx is default)

Gameplay Mechanics

Character Progression System

Players develop their boxer through four core attributes:

Primary Stats:

  • Strength - Increases punch power and damage output
  • Cost: $110 per point
  • Directly affects damage calculations
  • Combined with dexterity for total attack power
  • Agility - Determines attack frequency and combo potential
  • Cost: $110 per point
  • Higher agility = more punches per round
  • Affects turn order in combat
  • Ratio determines repeat attacks: attacker_agility / defender_agility
  • Dexterity - Improves hit accuracy and dodge chance
  • Cost: $110 per point
  • Combined with strength for power calculation
  • Higher dex means fewer misses
  • Max HP (Health Points) - Total damage capacity
  • Cost: $110 per point
  • Determines how much punishment boxer can take
  • Regenerates over time at clinic/hospital

Derived Stats:

  • Power - Overall fighter rating (visible in rankings)
  • Level - Experience-based progression (starts at 1)
  • Experience (EXP) - Gained from victories
  • LPV (Last Page View) - Anti-idle tracking

Resource Stats:

  • Stamina - Energy for performing actions
  • Max Stamina: 5 (default, can be upgraded)
  • Regenerates over time via turn timer
  • Required for training, fighting, traveling
  • HP (Current Health) - Battle damage tracking
  • Reduced during fights
  • Regenerates at clinic/hospital
  • Must be above 0 to fight

Combat System

Battle Mechanics:

The game features a simultaneous turn-based combat system with automatic round resolution:

Combat Formula:

My Power = floor(dexterity + strength / 5)
Attack Damage = rand(mypower * 1, 1.5)
Attack String = ceil(agility / enemy_agility)

Combat Flow:

  • Player initiates attack on target
  • System calculates power differential
  • Agility determines number of attacks per round
  • Each attack uses random swing type from swings table (12 types)
  • Damage calculated and applied
  • If enemy survives, they counter-attack
  • Process repeats until one fighter reaches 0 HP

Swing Types:

The game includes 12 different punch types stored in the database:

  • Each has unique animation/description
  • Applied randomly during combat
  • Examples visible in code: varied attack descriptions

Victory Rewards:

  • Cash Prize - Steal money from opponent's wallet (not bank)
  • Championship Belt - If opponent has belt, winner claims it
  • Experience Points - Levels up fighter
  • Win/Loss Record - Tracks combat history
  • Event Log - Combat report sent to both players
  • Chat Announcement - Public notification of knockout

Combat Restrictions:

  • Must have sufficient HP to initiate combat
  • Protection status prevents attacks (new player protection)
  • Trapped status affects combat availability
  • KO limit tracking (attacks in/out counters)

Training System

The Gym (shop.php):

Players spend money to permanently increase stats:

  • Train each stat individually
  • Cost: $110 per training session
  • Choose stat type from dropdown:
  • Max HP
  • Agility
  • Dexterity
  • Strength
  • Max Stamina
  • Specify number of repetitions
  • Instant permanent gains

Training Cost Calculation:

Total Cost = (repetitions * $110)
Stat Gain = repetitions * 1

Example: Training strength 10 times costs $1,100 and adds +10 strength.

Economic Systems

Currency:

  • Wallet - Cash on hand (vulnerable to theft in combat)
  • Bank - Protected savings (cannot be stolen)
  • Points - Premium currency (purchased via PayPal)
  • Platinum - Clan/club currency

Money Sources:

  • Starting Cash - $500 initial wallet
  • Combat Victories - Steal from opponent's wallet
  • Casino Gambling - Slots, craps, dice games
  • Scratch Tickets - $5 tickets with $100 jackpot
  • Donations - Real money purchases via PayPal
  • Voting Rewards - Cash for voting on game listing sites

Banking System (bank.php, bank2.php):

  • Deposit wallet cash into protected bank account
  • Withdraw from bank to wallet
  • No interest system visible
  • Prevents total loss in combat defeats

Casino & Gambling Features

1. Slot Machine (cslots2.php):

  • Requires TWG vote to access (anti-bot measure)
  • Bet any amount from wallet
  • Three-reel slot machine
  • 5 different symbols (1.gif through 5.gif)
  • Jackpot: Match all 3 symbols = 10x bet payout
  • Loss: Any non-match loses entire bet
  • Winners announced in public chat

2. Craps (craps.php):

  • Dice-based gambling game
  • Two six-sided dice
  • Traditional craps rules:
  • First roll: 7 or 11 = win
  • First roll: 2 (snake eyes), 3, 12 = loss
  • Other numbers set "point"
  • Re-roll until point or 7/11
  • Calculates odds display (1 in 6, 2 in 6, etc.)

3. Scratch n Match (scratch.php):

  • Mini-game by KPP Internet Promotions
  • Cost: $5 per ticket
  • DHTML-based scratch interface
  • Mouse-over reveals hidden symbols
  • Three squares must match to win
  • Prize: $100 on matching win
  • Limited plays per day per IP
  • Server tracks:
  • kr_total - Total plays
  • kr_chance - Win frequency (algorithmic)
  • kr_max_wins - Daily win cap
  • kr_timesaday - Play limit per IP
  • Winners announced in public chat

4. Dice Game (dice.php):

  • Simple dice rolling gambling
  • Implementation incomplete in visible code

Club System (Tribes/Clans)

Club Features:

  • Creation Cost: $1,000 (was $25,000 in tribes.php code variant)
  • Password Protection - Invite-only membership
  • Owner/Co-Owner Roles - Hierarchy management
  • Club Resources:
  • Credits (club treasury)
  • Platinum (premium currency pool)
  • Club Stats:
  • Strength (combined member power)
  • Agility (combined member agility)
  • Max HP (club health for battles)
  • HP (current health)
  • Wins/Losses (combat record)
  • Messaging:
  • Public Message (visible to all)
  • Private Message (members only)
  • Club Battles:
  • Clubs can fight each other
  • Track last killed/killed by
  • Separate win/loss records
  • Member Benefits:
  • Shared resources
  • Group identity
  • Collective power
  • Donation system (members donate to club)

Social Systems

Chat System (chat.php, chat2.php):

  • Two separate chat rooms
  • Public messages visible to all
  • Whisper system (private messages to users)
  • Commands system (chatcommands.php)
  • Voting in chat (chatvote.php)
  • Message deletion (chatdelete.php)
  • Silence mode (admins can mute chat)
  • Automated announcements (jackpots, knockouts)
  • Fulltext search indexing on messages

Mail System (mail.php, mail2.php):

  • Private messaging between players
  • Fields:
  • Sender name and ID
  • Subject line
  • Body text
  • Timestamp
  • Unread status
  • Mail viewing and management
  • Bulk mail for admins (adminmail.php)

Event Log (log table):

  • Automated combat reports
  • System notifications
  • Unread tracking
  • Personal activity feed

Forum System:

  • Topics table (thread subjects)
  • Replies table (post responses)
  • Basic forum structure
  • Starter names tracked

Rankings (rankings.php, cityrankings.php):

  • Top 5 display on homepage
  • Power-based ranking
  • City-specific rankings
  • Full leaderboards available

Title Belt Championship

Belt System:

  • One championship belt in circulation
  • belt field: 'yes' or 'no'
  • Victory Condition: Defeat current champion in combat
  • Automatic transfer on knockout
  • Special announcement: "You won the belt!" in red size-5 font
  • Prestigious status symbol
  • Visible in player profiles

Map & Travel System

City System:

  • Multiple cities available (default: BRONX)
  • Travel between cities (travel.php)
  • City-specific rankings (cityrankings.php)
  • City affects gameplay (possibly regional matchmaking)
  • Themap.php suggests world/city map interface

Protection & Safety Systems

Player Protection:

  • Protected Status (char 'Y'/'N')
  • New players start protected
  • Cannot be attacked while protected
  • Likely time-limited or action-limited
  • Trap System:
  • Players can set traps ('on'/'off')
  • Affects incoming attacks
  • Defensive mechanism
  • Hidden Status:
  • Players can hide from lists
  • Privacy feature
  • May prevent targeting
  • Locked Status:
  • Account lockout mechanism
  • Admin/moderation tool
  • Prevents gameplay when locked

Voting Integration & Monetization

Voting Systems:

The game integrated with multiple game listing sites to drive traffic:

  • TWG (Top Web Games)
  • Vote tracking: twgvotes field
  • Reward system (twgreward.php)
  • Signup tracking (twgsignup.php)
  • Upgrade system (twgupgrade.php)
  • Requirement: Must vote to access casino
  • WGI (Web Games Index)
  • Vote tracking: wgi_votes char field
  • Reward system (wgireward.php)
  • TopRP (Top RPG Sites)
  • Vote tracking: toprp varchar field
  • Reward system (toprpreward.php)
  • Signup system (toprpsignup.php)
  • Weekly vote tracking: votethisweek

Vote Reward Mechanics:

  • IP tracking (ip_tracker table with 118,460+ entries)
  • Time-based tracking
  • Rewards likely include:
  • Cash bonuses
  • Points/premium currency
  • Special access (casino requirement)

PayPal Monetization:

  • Payment integration (pptest.php)
  • Donation system (donations.php, donatepoints.php)
  • Purchase points (buyturns.php, purchasepoints.JPG)
  • Raw transaction logging (paypal_raw table)
  • Account upgrades (account_upgrade field)
  • Subscriptions system (subscriptions table)
  • Point store (pointstore.php)

Account Types:

  • Default: "Gold Account" (acct_type field)
  • Account upgrades available
  • Likely premium benefits

Survey System

Survey Tracking:

  • Two surveys implemented (survey, surveytwo)
  • Fields: survey char(1), surveytwo char(2)
  • Likely incentivized with rewards
  • surveytwo.php and survey.php files

Admin & Moderation Systems

Admin Tools:

  • Admin panel (admin.php)
  • Admin list management (adminlist.php)
  • Bulk mail system (adminmail.php)
  • IP deletion (deleteip.php)
  • Inactive account cleanup (inactive.php, inactiveaccts.php)
  • Ban system (banned.php, cleanoutbans.php)
  • Protection toggle (turnoffallprotection.php)
  • Scratch admin (scratchadmin.php)
  • Testing scripts (testingthescript.php, testpost.php)
  • Total reset capability (totalfuknreset.php)

Admin Logging:

  • adminlog table tracks all admin actions
  • Owner ID, action log, unread status
  • Audit trail for moderation

IP Tracking:

  • ip_check table monitors login IPs
  • Timer field (likely for rate limiting)
  • Multi-account detection
  • ip_tracker for voting (118,460+ records suggests active game)

Ban System:

  • banned char field ('Y'/'N')
  • Banned players cannot login
  • IP-based enforcement

Timer & Regeneration System

Control Table:

  • turn_timer double field
  • Manages global game ticks
  • Likely regenerates:
  • Stamina over time
  • HP recovery
  • Action point refresh

Free Turns System:

  • freeturns.php
  • Additional stamina grants
  • Possibly vote rewards or timed bonuses

Additional Features

Profile System:

  • Avatar images (default: /images/none.jpg)
  • Real name field
  • AIM name (AOL Instant Messenger handle)
  • Description field
  • Signature (150 char limit)
  • Profile editing (editprofile.php)
  • Profile viewing (viewprofile.php, view.php, view2.php)

Combat Tracking:

  • attacks_in - Incoming attacks received
  • attacks_out - Outgoing attacks made
  • ko_limit - Knockout tracking limit
  • Attack history (attackhistory.gif)

Misc Features:

  • "Alive" check (alive.php) - anti-idle/bot detection
  • Online users (onlineusers.php, whosonline.php)
  • Welcome page (welcome.php)
  • Start page (start.php)
  • Privacy policy (privacypolicy.html)
  • Help system (help.php)
  • Rules (rules.php, newrules.php)

Round System:

  • round table tracks game rounds
  • lastround table stores previous round winners
  • Rankings by networth and stolen cards
  • Reset capability (elreseto.php, elreseto2.php, koreset.php)
  • Round counting (count bigint field)

Hospital/Clinic:

  • Clinic system (clinic.php)
  • Hospital system (hospital.php)
  • HP recovery mechanics
  • Likely costs money or time

Battle System:

  • battle table tracks active fights
  • Starter/target IDs
  • Last move tracking
  • Bout system for title fights (bout.php, boutlog.php, titlebouts.php)
  • Title bout table with:
  • Defender/challenger tracking
  • Winner recording
  • Status tracking ('P' likely = pending)

Database Schema

The game uses 30 MySQL tables with MyISAM engine:

Core Player Tables:

  • players - Primary user accounts (2,776 players created)
  • id, user, pass (varchar 15)
  • level, exp, lpv (last page view)
  • wallet, bank, stamina, max_stamina
  • captures, dexterity, trap
  • wins, losses, arch_enemy, enemies
  • agility, strength, hp, max_hp, power
  • belt (championship status)
  • email, rank (Member default)
  • protected, points
  • city, attacks_in, attacks_out
  • hidden, signature, acct_type
  • ko_limit

Combat Tables:

  • battle - Active battle tracking (886 battles)
  • title_bouts - Championship matches (4 bouts)
  • swings - Punch types library (12 swing types)

Social Tables:

  • clans - Clan/tribe system (merged with clubs)
  • clubs - Boxing clubs (61 clubs created)
  • chat - Public chat messages (4,438 messages)
  • chat2 - Secondary chat with whispers (31 messages)
  • chat_config - Chat settings (silence mode)
  • chat_config2 - Secondary chat config
  • mail - Private messages (14,947 messages)
  • log - Event logs (381,945 events!)
  • adminlog - Admin action logs (2 entries)
  • topics - Forum threads
  • replies - Forum posts

Casino Tables:

  • casino - Casino configuration (slot pot: $50 default)
  • ca_users - Casino user tracking
  • kras_params - Scratch ticket parameters
  • kras_users - Scratch ticket play tracking

Economic Tables:

  • paypal_raw - Payment transactions (62 payments)
  • subscriptions - Subscription management

System Tables:

  • control - Global timers (3 entries)
  • round - Round information
  • lastround - Previous round winners
  • timers - Multiple timer tracking
  • ip_check - IP monitoring
  • ip_tracker - Voting IP tracking (118,460 votes!)

Notable Database Statistics:

  • 381,945 event log entries - Shows significant player activity
  • 118,460 vote tracker entries - Massive voting engagement
  • 14,947 mail messages - Active communication
  • 4,438 chat messages - Engaged community
  • 2,776 player accounts - Substantial user base
  • 886 battles - High combat activity
  • 62 PayPal transactions - Monetization success

These numbers indicate this was an actively played game with thousands of real users and substantial engagement.

Development Status & Features

Implemented Features:

Complete stat training system

PvP combat with agility-based combos

12 unique punch/swing types

Championship belt system

Boxing club/tribe system

Banking system with protection

Three casino games (slots, craps, scratch)

Two-room chat system with whispers

Private mail system

Event logging

Forum system

Rankings and leaderboards

City system with travel

Protection system for new players

Trap defense mechanism

IP tracking and multi-account detection

Three voting site integrations

PayPal monetization system

Point store with purchases

Account upgrade system

Subscription system

Survey system (2 surveys)

Admin panel with full moderation tools

Ban system

Profile system with avatars

Round/reset system

Hospital/clinic recovery

Title bout system

Attack history tracking

Online user lists

Flash intro animation

Feature Completeness: 95%

This is a complete, production-ready game that was clearly actively played.

Missing/Incomplete Features:

Bout system incomplete (bout.php has minimal code)

Craps game not fully integrated

Training.php has wrong database references (jd_players vs players)

Some admin functions may be stubs

Strengths & Innovations

Strong Design Elements:

  • Simple, Focused Gameplay - Pure boxing combat without bloat
  • Multi-layered Monetization - Voting + PayPal + subscriptions
  • Casino Integration - Gambling adds replayability
  • Scratch n Match - Unique DHTML mini-game with licensing
  • Agility-based Combos - Combat depth through stat ratios
  • Protection System - New player safety encourages retention
  • Active Community Evidence - 381K log entries, 118K votes shows real engagement
  • Flash Intro - Professional presentation with editable source
  • Embedded Complete Games - TCW and Scratch n Match as bonuses
  • IP-based Anti-cheat - Multi-account detection

Well-Architected Features:

  • Clear separation of concerns (bank vs wallet for theft protection)
  • Voting requirement for casino (anti-bot + traffic generation)
  • Timer-based regeneration prevents grinding
  • Unread tracking in chat/mail/logs improves UX
  • Admin logging provides audit trails

Code Quality Assessment

Strengths:

  • Clear file naming conventions
  • Separated configuration (config.phtml)
  • Multiple language support structure (english.phtml, dutch.phtml)
  • Modular file organization by feature
  • Casino games are self-contained
  • Embedded complete games included

Weaknesses:

  • Pure procedural code (no OOP)
  • Direct MySQL queries (no prepared statements)
  • SQL injection vulnerabilities everywhere
  • Global variables throughout ($stat, $enemy)
  • No input sanitization visible
  • register_globals dependencies (if ($action == train))
  • No password hashing visible (varchar 15 suggests plain/MD5)
  • Mixed database table references (jd_players vs players)
  • No CSRF protection
  • Ancient mysql_* functions (deprecated)
  • Inconsistent coding style
  • No error handling
  • Magic quotes dependencies likely
  • No validation layers
  • Direct POST/GET variable usage

Code Audit Example:

// From battle.php - multiple vulnerabilities:
mysql_query("update players set hp=$stat[hp] where id=$stat[id]");
mysql_query("update players set wallet=wallet+$creditgain where id=$stat[id]");
mysql_query("insert into log (owner, log) values($stat[id],'You layed...')");

Issues:

  • Direct variable interpolation (SQL injection)
  • No prepared statements
  • No error checking
  • Unescaped user input in log messages (XSS)

Overall Code Quality Rating: 3.5/10

For 2004 standards, this is typical PHP 4 "script" code. Functional but riddled with security holes. The sheer volume of database activity (381K logs, 118K votes) proves it worked in production, but would be catastrophically insecure by modern standards.

Modern-Day Assessment & Conclusions

Current Viability

What This Codebase Is Good For Today:

  • Game Design Study - Simple, focused boxing RPG mechanics
  • Combat Formula Reference - Agility-based combo system is clever
  • Monetization Model - Multi-stream revenue (voting + PayPal + subscriptions)
  • Community Engagement Example - 381K log entries proves engagement strategies work
  • Mini-game Integration - Scratch n Match DHTML technique educational
  • Historical Artifact - Represents mid-2000s browser game monetization peak
  • Graphics Assets - 164 boxing-themed images reusable
  • Flash Assets - Editable .swi source file included

NOT Recommended For:

  • Production deployment (MASSIVE security vulnerabilities)
  • Learning PHP (teaches dangerous practices)
  • Code reuse (complete rewrite mandatory)
  • Payment processing (PayPal integration insecure)

Requirements to Fire It Up

Minimal Setup (EXTREMELY DANGEROUS):

Server Requirements:

  • PHP 4.3.2 to 5.6 maximum (PHP 7+ breaks mysql_* functions)
  • MySQL 3.23.58 or higher (5.x recommended)
  • Apache 2.x
  • phpMyAdmin 2.5.7+
  • register_globals = On (PHP directive, massive security hole)
  • magic_quotes_gpc = On (likely dependency)
  • GD Library (for image manipulation if any)

Installation Steps:

  • Extract to web root
  • Edit config.phtml:
  • $hostname (database host)
  • $mysqluser (database username)
  • $mysqlpassword (database password)
  • $database (database name)
  • $languagefile (english.phtml or dutch.phtml)
  • Import database.sql via phpMyAdmin
  • Optional: Import createtables.sql for Scratch n Match
  • Configure Apache .htaccess settings
  • Setup PayPal merchant account credentials (pptest.php)
  • Configure voting site IDs for TWG, WGI, TopRP
  • Set file permissions (uploads, avatars likely need write access)

Critical Issues:

  • Finding PHP 5.6 server increasingly impossible
  • register_globals removed in PHP 5.4+
  • mysql_* functions removed in PHP 7.0
  • PayPal legacy API likely deprecated
  • No HTTPS enforcement (payment data at risk)

Modernization Requirements (PHP 8.4 + Modern Stack)

Estimated Effort: 500-700 hours (12-17 weeks full-time)

1. PHP Modernization (200-280 hours)

Critical Changes:

  • ❗ Replace ALL mysql_* functions with PDO (104 PHP files)
  • ❗ Implement prepared statements for EVERY query
  • ❗ Remove register_globals dependencies
  • ❗ Add password hashing (bcrypt/Argon2 - currently plain text/MD5)
  • Update to PHP 8.4 syntax
  • Convert to OOP with MVC architecture
  • Add namespaces and PSR-4 autoloading
  • Implement dependency injection
  • Add type hints and return types
  • Add exception handling throughout
  • Sanitize ALL user inputs

Example Modernization:

// OLD (2004):
if ($action == train) {
  mysql_query("update players set $train=$train+$gain where id=$stat[id]");
}

// MODERN (2024):
if ($request->input('action') === 'train') {
  $validStats = ['max_hp', 'agility', 'dexterity', 'strength', 'max_stamina'];
  $train = $request->input('train');
  if (!in_array($train, $validStats)) {
    throw new InvalidArgumentException('Invalid stat type');
  }
  $stmt = $pdo->prepare("UPDATE players SET {$train} = {$train} + ? WHERE id = ?");
  $stmt->execute([$gain, $userId]);
}

2. Security Overhaul (150-200 hours)

Critical Vulnerabilities to Fix:

SQL Injection - EVERYWHERE (highest priority):

// Vulnerable:
mysql_query("select * from players where id=$id");

// Fixed:
$stmt = $pdo->prepare("SELECT * FROM players WHERE id = ?");
$stmt->execute([$id]);

XSS (Cross-Site Scripting) - All output:

// Vulnerable:
print "Welcome $stat[user]";

// Fixed:
echo "Welcome " . htmlspecialchars($user->name, ENT_QUOTES, 'UTF-8');

Password Security - Critical:

  • Currently varchar(15) suggests plain text or MD5
  • Implement bcrypt with cost factor 12+
  • Add password strength requirements
  • Implement secure password reset

Payment Security - PayPal Integration:

  • Move to modern PayPal REST API
  • Implement webhook verification
  • Add CSRF tokens to payment forms
  • Enforce HTTPS for all payment pages
  • Sanitize all PayPal IPN data
  • Add transaction logging with integrity checks

Session Security:

  • Implement secure session handling
  • HttpOnly and Secure cookie flags
  • Session regeneration on privilege escalation
  • CSRF tokens on all forms
  • Rate limiting on sensitive actions

Additional Security Measures:

  • Input validation library (whitelist approach)
  • Output escaping for all user data
  • File upload validation (avatar system)
  • IP rate limiting (not just tracking)
  • Brute force protection on login
  • Security headers (CSP, X-Frame-Options, etc.)
  • SQL injection prevention via prepared statements
  • Principle of least privilege for database user

3. Database Modernization (60-80 hours)

  • Convert MyISAM to InnoDB (transaction support critical for payments)
  • Add foreign key constraints:
  • players.club → clubs.id
  • mail.senderid → players.id
  • battle.starter/target → players.id
  • log.owner → players.id
  • Add proper indexes:
  • players: wallet, power, city, protected
  • battle: starter, target, lastmove
  • mail: owner, unread
  • ip_tracker: vote_ip, time
  • Normalize table structures:
  • Separate chat1/chat2 into single table with room_id
  • Merge clans/clubs (they're identical structures)
  • Split players table (too many columns)
  • Implement database migrations system
  • Add timestamps (created_at, updated_at)
  • Change password field to char(60) for bcrypt
  • Add email verification fields
  • Consider Redis for:
  • Session storage
  • Online user tracking
  • Combat queue
  • Turn timer cache

4. Frontend Modernization (100-140 hours)

  • Replace Flash intro with HTML5/CSS3 animation
  • Rebuild UI with modern HTML5/CSS3
  • Implement responsive design (mobile-first)
  • Replace table layouts with CSS Grid/Flexbox
  • Add JavaScript framework (Vue.js or Alpine.js)
  • Implement AJAX for:
  • Chat updates (real-time)
  • Combat animations
  • Mail notifications
  • Stat updates
  • Add WebSocket support for:
  • Live chat
  • Combat notifications
  • Online user updates
  • Improve UX/UI design:
  • Modern boxing theme
  • Better navigation
  • Loading states
  • Error handling
  • Success feedback
  • Add client-side validation
  • Implement progressive enhancement
  • Replace GIF animations with CSS animations
  • Optimize image assets (convert to WebP)
  • Add accessibility features (ARIA labels, keyboard navigation)

5. Casino Game Modernization (40-60 hours)

  • Scratch n Match:
  • Replace DHTML with Canvas/SVG
  • Touch-friendly for mobile
  • WebGL effects
  • Fair RNG (server-side verification)
  • Slot Machine:
  • CSS3 reel animations
  • Sound effects
  • Provably fair system
  • WebSocket for live jackpots
  • Craps:
  • Complete implementation (currently partial)
  • 3D dice animation (Three.js)
  • Physics simulation
  • Betting interface
  • Add New Games:
  • Blackjack
  • Poker
  • Roulette
  • All with provably fair algorithms

6. Payment System Modernization (40-60 hours)

  • Migrate PayPal Classic API → PayPal REST API
  • Add Stripe integration (better conversion)
  • Implement subscription management:
  • Auto-renewal
  • Cancellation
  • Upgrade/downgrade
  • Add cryptocurrency payments (optional)
  • PCI compliance audit
  • Fraud detection
  • Refund management
  • Receipt generation
  • Tax calculation (if applicable)
  • Webhook verification
  • Test mode for development
  • Admin payment dashboard

7. Architecture Refactoring (80-100 hours)

  • Implement MVC framework (Laravel recommended):
  • Models for all database entities
  • Controllers for each game section
  • Views with Blade templating
  • Routing system
  • Create service layer:
  • CombatService (battle logic)
  • EconomyService (wallet/bank/payments)
  • CasinoService (gambling logic)
  • SocialService (chat/mail/forums)
  • Implement repository pattern:
  • PlayerRepository
  • BattleRepository
  • ClubRepository
  • TransactionRepository
  • Add event system:
  • CombatCompleted event
  • BeltWon event
  • LevelUp event
  • PaymentReceived event
  • Create API layer (RESTful):
  • /api/player/{id}
  • /api/combat/{id}
  • /api/chat/messages
  • /api/rankings
  • Implement middleware:
  • Authentication
  • Authorization (belt holders, club owners)
  • Rate limiting
  • CORS handling
  • Add command bus pattern for actions
  • Implement job queue for:
  • Email notifications
  • Turn regeneration
  • Combat processing
  • Payment webhooks
  • Create form request validation classes
  • Implement proper logging (Monolog)

8. Testing & Quality Assurance (60-80 hours)

  • Write unit tests:
  • Combat formulas
  • Economy calculations
  • Casino RNG
  • Payment processing
  • Add integration tests:
  • Complete combat flow
  • Payment workflows
  • Club creation/joining
  • Chat system
  • Implement PHPUnit testing suite
  • Add code coverage analysis (80%+ target)
  • Performance testing:
  • Load testing (100+ concurrent users)
  • Combat simulation stress test
  • Payment gateway load test
  • Security penetration testing:
  • SQL injection attempts
  • XSS probing
  • CSRF testing
  • Payment manipulation
  • Browser compatibility testing:
  • Chrome, Firefox, Safari, Edge
  • Mobile browsers
  • Create CI/CD pipeline:
  • Automated testing on commit
  • Staging deployment
  • Production deployment
  • Implement error monitoring (Sentry)

Total Estimated Modernization Cost: $25,000 - $70,000 at industry rates

Verdict: The game mechanics are simple and engaging (proven by 381K log entries), but the implementation is dangerously outdated. The combat system is straightforward and fun, and the monetization model (voting + PayPal) was clearly effective.

However, building from scratch would be 40-50% faster than refactoring. You'd essentially rewrite 90%+ of the code anyway. The only reusable elements are:

  • Game design/mechanics
  • Combat formulas
  • Graphics assets (164 images)
  • Database schema concepts (after normalization)

A modern rebuild with Laravel + Vue.js + WebSockets would take 400-500 hours vs 500-700 hours to modernize this codebase.

Code Quality Assessment Summary

What Works Well:

  • Simple, focused gameplay loop
  • Clear combat mechanics
  • Multi-stream monetization
  • Evidence of real player engagement
  • Casino games add variety
  • Club system promotes community

What Doesn't Work:

  • Zero modern PHP practices
  • Catastrophic security vulnerabilities
  • No input validation anywhere
  • No abstraction layers
  • Global state everywhere
  • Mixed table name references (jd_players vs players)
  • Incomplete features (bout.php mostly empty)

Grade: D (Barely functional but dangerous)

The game clearly worked in production (381K log entries don't lie), but it's held together with duct tape and prayer. Security is non-existent, code quality is poor even for 2004 standards, and multiple systems are incomplete or broken.

Inherent Dangers of Running This Code

CRITICAL SECURITY RISKS (Severity: 10/10):

1. SQL Injection Everywhere - Every database query is vulnerable:

// From battle.php:
mysql_query("update players set wins=wins+1 where id=$stat[id]");
// Attacker sets $stat[id] to: "1; DROP TABLE players; --"
// Result: Entire player database deleted

Attack Surface:

  • 104 PHP files with direct queries
  • No prepared statements anywhere
  • User input directly concatenated
  • Attackers can:
  • Read entire database
  • Modify any player account
  • Grant themselves championship belt
  • Create fake payment records
  • Delete all data

2. Ancient PHP Version - PHP 4.x/5.x Requirements:

  • 400+ known CVEs
  • register_globals vulnerability (remote code execution)
  • No security patches available
  • Magic quotes issues
  • Session fixation vulnerabilities

3. Password Security Disaster:

// Password stored in varchar(15) - suggests plain text or MD5
CREATE TABLE `players` (
  `user` varchar(15) NOT NULL default '',
  `pass` varchar(15) NOT NULL default '',

Impact:

  • All passwords visible in database breach
  • MD5 rainbow tables crack instantly
  • No salting visible
  • No password strength requirements
  • Credential stuffing attacks trivial

4. Payment System Vulnerabilities - CATASTROPHIC:

PayPal Integration Issues:

  • No webhook verification visible
  • No amount validation
  • Direct POST data trust
  • Raw transaction storage without integrity checks

Attack Scenarios:

// Attacker manipulates PayPal IPN:
POST to pptest.php with:
payment_status=Completed
mc_gross=1000.00
item_number=999999
// Result: Free points/subscriptions without payment

Financial Impact:

  • Fake payment records
  • Subscription fraud
  • Point generation without payment
  • Refund manipulation
  • Database evidence tampering

5. XSS (Cross-Site Scripting) - Everywhere:

// From various files:
print "Welcome $stat[user]";
print "$enemy[user] attacked you!";

Attack Vectors:

  • Username: <script>steal_session()</script>
  • Chat messages: <img src=x on-error=malware()>
  • Mail subjects: <iframe src=phishing.com>
  • Signatures: JavaScript injection
  • Club names: Persistent XSS

Impact:

  • Session hijacking (all users)
  • Keylogging
  • Phishing attacks
  • Malware distribution
  • Admin session theft

6. CSRF (Cross-Site Request Forgery) - No Protection:

Attack Example:




Result: While logged in, victim:

  • Transfers all money
  • Attacks other players
  • Sends spam mail
  • Modifies profile
  • Joins/leaves clubs

7. Register Globals Exploitation:

// Code depends on: if ($action == train)
// Attacker URL: shop.php?action=train&stat[id]=1&stat[wallet]=999999
// Result: Modify any variable including:
$stat[id] = 1;        // Become admin
$stat[wallet] = 999999; // Infinite money
$stat[belt] = 'yes';  // Steal championship

8. Casino RNG Manipulation:

// From cslots2.php:
$r1 = rand(1,5);
$r2 = rand(1,5);
$r3 = rand(1,5);
if ($r1 == $r2 && $r2 == $r3) {
  // Win 10x bet
}

Issues:

  • PHP rand() is predictable (not cryptographically secure)
  • No server-side seed storage
  • No fairness verification
  • Attackers can:
  • Predict outcomes
  • Manipulate results via timing
  • Drain slot pot ($50 default, but grows with losses)

9. File Upload Vulnerabilities (if avatar upload exists):

  • No file type validation visible
  • No size limits in code
  • Directory traversal possible
  • Could upload PHP shell: avatar.php.jpg

10. Session Hijacking:

  • No HttpOnly cookie flags visible
  • No Secure cookie flags
  • No session regeneration
  • Session fixation possible
  • XSS can steal session tokens

Real-World Attack Scenarios:

Scenario 1: Total Takeover (5 minutes)

`sql

-- In username field during signup:

admin' OR '1'='1

-- Or in any search/filter:

'; UPDATE players SET pass='hacked', rank='Admin' WHERE id=1; --

`

Result: Admin account compromised, full database access.

Scenario 2: Financial Fraud (2 minutes)

`

  • Create fake PayPal IPN POST request
  • Set payment_status=Completed
  • Set mc_gross=999.99
  • Script grants points without payment
  • Repeat for all accounts

`

Result: Infinite premium currency, bankrupts game economy.

Scenario 3: Worm Distribution (10 minutes)

// In chat message:
<script>
// Steal session, post to all chat rooms
fetch('/chat.php', {
  method: 'POST',
  body: 'chat=' + encodeURIComponent('<script src=evil.js></script>')
});
</script>

Result: Self-replicating malware infects all users viewing chat.

Scenario 4: Championship Belt Theft (1 minute)

// Visit: battle.php?stat[belt]=yes&stat[id]=1&enemy[belt]=no&enemy[hp]=0

Result: Instant championship without fighting.

Risk Level: CATASTROPHIC

Impact Assessment:

  • Confidentiality: Total breach (all passwords, emails, IPs visible)
  • Integrity: Total compromise (any data can be modified)
  • Availability: Easy to destroy (DROP TABLE attacks)
  • Financial: Payment fraud, stolen money
  • Legal: PCI non-compliance, GDPR violations
  • Reputation: Complete destruction if breached

DO NOT DEPLOY THIS CODE TO ANY INTERNET-ACCESSIBLE SERVER

Even local testing is risky without network isolation. The 62 PayPal transactions in the database mean real money was processed through this vulnerable system. Historical breaches likely occurred but went undetected.

Innovation & Uniqueness Rating

Innovation Score: 5/10 (for 2004)

Standard Elements:

  • RPG stat training (common)
  • PvP combat (expected)
  • Banking system (standard)
  • Chat/mail (required)
  • Ranking system (ubiquitous)

Moderately Innovative Elements:

Agility-based Combo System - Clever Formula

  • attacks = agility_ratio
  • Creates rock-paper-scissors balance
  • Fast boxers get multiple hits
  • Slow tanks hit harder per punch
  • Better than simple stat comparison
  • Championship Belt Mechanic - Nice touch:
  • Single belt in circulation
  • Must defeat champion to claim
  • Creates king-of-the-hill dynamic
  • Prestige system without complexity
  • Multi-stream Monetization - Smart for 2004:
  • Voting for traffic (3 sites integrated)
  • PayPal direct payments
  • Subscription system
  • Account upgrades
  • Point store
  • Survey incentives
  • Well-diversified revenue
  • Scratch n Match Integration - Creative:
  • DHTML-based mini-game
  • Licensed component (KPP Internet Promotions)
  • Mouse-driven scratching mechanic
  • IP-limited play (anti-abuse)
  • Adds variety to boxing theme
  • Vote-to-Play Casino - Clever traffic generation:
  • Casino locked behind vote requirement
  • Drives TWG voting
  • Reduces bot gambling
  • Converts players to traffic generators

Derivative Elements:

  • Tribe/clan system (copied from every browser game)
  • Forum integration (standard)
  • Admin tools (expected)
  • Profile system (required)
  • Mail system (copy-paste from others)

Uniqueness Score: 4/10

Backyard Boxin is a straightforward boxing RPG in the crowded 2004 browser game market. It doesn't break new ground but executes the formula competently. The boxing theme is less common than medieval/mafia themes, giving it minor differentiation.

The combat system's agility-based combos show original thinking, and the embedded Scratch n Match game adds unique value. However, most features are standard browser game fare.

Historical Significance:

Backyard Boxin represents the mid-tier commercial browser game of 2004. Not innovative enough to be remembered, but successful enough to generate:

  • 2,776 player accounts
  • 381,945 event log entries
  • 118,460 voting site interactions
  • 62 actual PayPal payments
  • 14,947 mail messages

These numbers prove it worked commercially. The game sustained a real community and generated revenue through multiple streams (voting traffic + direct payments).

Comparison to Contemporary Games

vs. Urban Dead (2005):

  • Urban Dead more innovative (zombie apocalypse)
  • Backyard Boxin simpler mechanics
  • Both used turn-based combat
  • Urban Dead had better community features

vs. Kingdom of Loathing (2003):

  • KoL had humor/personality
  • Backyard Boxin more serious
  • Both had simplistic graphics
  • KoL more polished overall

vs. Mafia-themed games (abundant in 2004):

  • Backyard Boxin: Boxing theme (less common)
  • Mafia games: More prevalent
  • Similar mechanics (stats, combat, money)
  • Backyard Boxin: Championship belt unique

Market Position: Lower mid-tier commercial product. Not polished enough to compete with top free games, but functional enough to attract paying customers.

Final Recommendation

For Developers
  • DO study the agility-based combat formula
  • DO examine the multi-stream monetization approach
  • DO extract the championship belt mechanic concept
  • DO reference the casino mini-game integration strategy
  • DON'T attempt to modernize this codebase
  • DON'T use as a PHP learning resource
  • DON'T run in any environment with value
For Game Designers
  • Good reference for simple PvP mechanics
  • Belt mechanic creates engaging competition
  • Casino games add variety to core loop
  • Voting integration smart for traffic generation
  • Protection system good new player experience
  • Example of feature bloat (30 tables for simple game)
For Server Administrators
  • NEVER deploy this code
  • NEVER expose to internet
  • ONLY examine in isolated VM
  • UNDERSTAND represents massive liability
  • USE as security anti-pattern example
  • SHARE as cautionary tale
For Business Analysts
  • Excellent case study in browser game monetization
  • Multi-stream revenue (voting + payments + subscriptions)
  • 62 PayPal transactions proves willingness to pay
  • 118K votes shows traffic generation success
  • 381K log entries demonstrates engagement
  • Free-to-play with optional upgrades model

Bottom Line

This wasn't a hobby project - this was a functioning commercial game. The game design is decent; the implementation is catastrophically dangerous. If you want to recreate this game today, study the mechanics, appreciate the monetization model, learn from the engagement numbers, and then build it from scratch with Laravel + Vue.js.

Rating Summary

Historical Value ★★★☆☆ 3/5 - Decent commercial success example
Code Quality ★☆☆☆☆ 1/5 - Barely functional, riddled with bugs
Game Design ★★★☆☆ 3/5 - Simple but engaging mechanics
Monetization Strategy ★★★★☆ 4/5 - Multi-stream revenue, real success
Community Engagement ★★★★★ 5/5 - 2,776 players, 381K logs, 62 payments!
Security ☆☆☆☆☆ 0/5 - Catastrophic vulnerabilities everywhere
Overall Grade D Functional commercial game, extremely dangerous code

Security Warning

Running many of the scripts in this archive on a live server presents a serious security risk. These projects were created before modern hardening practices and may contain vulnerabilities that can compromise your system.

We strongly recommend using this code for reference and analysis only, or in isolated local environments. By downloading these files, you accept full responsibility for their use.