All Features15 Nove25-

# Raycin Track Manager – New Features Guide
This guide covers all the new features implemented in the Raycin Track Manager plugin. Use this document to understand how to use each feature.
## Table of Contents
1. [Racing Features](#racing-features)
2. [Donation Features](#donation-features)
3. [Shortcodes Reference](#shortcodes-reference)
4. [Admin Features](#admin-features)
5. [Database Tables](#database-tables)
## Racing Features
### 1. Track Completion Tracker
**What it does:** Tracks overall progress through all tracks and awards a “Track Master” badge at 100% completion.
**How to use:**
Automatically tracks progress as users complete races
View progress in the member dashboard: `

Please log in to view your dashboard.

`
Badge is automatically awarded when 100% completion is reached
**Database:** Uses existing `raycin_user_progress` table
**Methods:**
“`php
$members->get_track_completion_stats($user_id);
// Returns: array(‘completed’ => 50, ‘total’ => 100, ‘percentage’ => 50.0, ‘badge_earned’ => false)
“`
### 2. Track of the Week
**What it does:** Features a specific track each week with bonus points for racing on it.
**How to use:**
Admin can set Track of the Week via database or admin interface
Displayed in member dashboard
Bonus points automatically awarded when racing the featured track
**Database Table:** `wp_raycin_track_of_week`
**Methods:**
“`php
$members->get_track_of_week();
$members->set_track_of_week($track_id, $week_start, $week_end, $bonus_points, $description);
“`
**Admin:** Add admin interface to set Track of the Week (coming soon)
### 3. Rivalry System
**What it does:** Tracks head-to-head player comparisons on specific tracks.
**How to use:**
Automatically updates when players race the same track
View rivalries in player profiles
Shows time differences between players
**Database Table:** `wp_raycin_rivalries`
**Methods:**
“`php
$members->get_rivalries($user_id, $track_id = null);
$members->update_rivalry($user_id, $rival_user_id, $track_id);
“`
### 4. Vehicle Class Leaderboards
**What it does:** Separate leaderboards for each vehicle class (Super, Sports, Motorcycles, etc.).
**How to use:**
Use shortcode: `

🏎️ Vehicle Class Leaderboards

F2F Regulars Class Leaderboard

Rank Player Best Lap Races Tracks
1 Reece 3.00 6 5
2 zvonko mitrofonko 3.00 7 7
3 Adamp2412 3.00 4 4
4 KernowGlyn 4.00 16 11
5 dzundar 4.00 4 4
6 Barry 4.00 4 4
7 steva 4.00 3 3
8 enxesquet 4.00 3 3
9 Mateja mmmmmaks 4.00 5 5
10 xtitooxz 4.00 1 1
`
Automatically detects all available vehicle classes from race results
Filter by class using dropdown selector
**Shortcode:**
“`

🏎️ Vehicle Class Leaderboards

Super Class Leaderboard

Rank Player Best Lap Races Tracks
1 DelboyRP 1.00 13 11
2 Sienna 1.00 1 1
3 whitty 1.00 10 9
4 Sadie 1.00 1 1
5 BAAAAAA 1.00 2 2
6 RebeccaB 1.00 8 7
7 KernowGlyn 1.00 17 11
8 lilba 1.00 1 1
9 Baaaaaaaaa 1.00 2 2
10 Street 1.00 1 1
“`
**Parameters:**
`period`: “all”, “month”, “week”, “today”
`limit`: Number of results (default: 10)
`metric`: “best_lap”, “most_races”, “most_wins”
`selected_class`: Pre-select a specific class
**Methods:**
“`php
$leaderboards->get_available_classes();
$leaderboards->get_vehicle_class_leaderboard($race_class, $period, $limit, $metric);
$leaderboards->get_best_in_class_badges($player_name);
“`
### 5. Player Profiles
**What it does:** Public racing profiles showing stats, track mastery, and best-in-class achievements.
**How to use:**
Use shortcode: `

👤 PlayerName

No player data found.

`
Or by user ID: `

👤 randomracespitstop

No player data found.

`
**Shortcode:**
“`

👤 John Doe

No player data found.

Player name required.

“`
**Displays:**
Best lap time
Total races
Track mastery badges (tracks where player is #1)
Best in class badges (vehicle classes where player is #1)
### 6. Social Feed
**What it does:** Activity feed showing player achievements, records, and improvements.
**How to use:**
Use shortcode: `

📰 Activity Feed

No activity to display.

`
Automatically populated when players set records or earn achievements
**Shortcode:**
“`

📰 Activity Feed

No activity to display.

“`
**Parameters:**
`limit`: Number of entries (default: 20)
`feed_type`: Filter by type (“record_set”, “pb_improvement”, “achievement”)
`user_id`: Show only entries for specific user
**Methods:**
“`php
$members->add_social_feed_entry($user_id, $feed_type, $feed_data, $track_id, $event_id);
$members->get_social_feed($limit, $filters);
“`
**Feed Types:**
`record_set`: New track record
`pb_improvement`: Personal best improvement
`achievement`: Achievement earned
`donation_milestone`: Donation milestone reached
### 7. Time Attack Challenges
**What it does:** Auto-generated weekly/monthly time attack events.
**Database Table:** `wp_raycin_time_attack_challenges`
**Structure:**
`track_id`: Track for the challenge
`challenge_type`: “weekly” or “monthly”
`start_date` / `end_date`: Challenge period
`target_time`: Optional target time
`reward_points`: Points for completion
**Methods:**
“`php
// Create challenge (admin only)
$wpdb->insert($table, array(
    ‘track_id’ => 123,
    ‘challenge_type’ => ‘weekly’,
    ‘start_date’ => ‘2025-11-15’,
    ‘end_date’ => ‘2025-11-22’,
    ‘target_time’ => 60.5,
    ‘reward_points’ => 100
));
“`
### 8. Crew/Team System
**What it does:** Create racing crews with leaderboards and team competitions.
**Database Tables:**
`wp_raycin_crews`: Crew information
`wp_raycin_crew_members`: Crew membership
**Structure:**
Crew name, slug, description
Leader ID
Public/private crews
Member roles (leader, member)
**Methods:**
“`php
// Create crew (requires user login)
// Add member to crew
// Get crew leaderboard
“`
**Admin:** Add admin interface for crew management (coming soon)
### 9. Seasonal Competitions
**What it does:** Quarterly or seasonal championships with leaderboards.
**Database Table:** `wp_raycin_seasonal_competitions`
**Structure:**
Season name
Season type: “quarterly”, “monthly”, “yearly”
Start/end dates
Active status
**Methods:**
“`php
// Create seasonal competition (admin only)
// Track points/races during season
// Generate season-end leaderboard
“`
### 10. Achievement System Expansion
**What it does:** Additional achievement types beyond basic badges.
**New Achievements:**
**Speed Demon**: Complete 10+ tracks under 60 seconds
**Marathon Racer**: Race 20+ times in one day
**Night Owl**: Race 10+ times between midnight-6am
**Weekend Warrior**: Complete 25+ races on weekends
**How to use:**
Automatically checked when user races
Badges awarded automatically when criteria met
View in member dashboard
**Methods:**
“`php
$members->check_expanded_achievements($user_id);
// Returns array of newly awarded badge types
“`
### 11. Random Track Generator
**What it does:** “Surprise Me” button that randomly selects a track.
**How to use:**
Use shortcode: `

Random Track Generator

Not sure which track to race? Let us surprise you with a random track!

`
Awards “Explorer” badge on first use
**Shortcode:**
“`

Random Track Generator

Not sure which track to race? Let us surprise you with a random track!

“`
**Parameters:**
`button_text`: Custom button text (default: “🎲 Surprise Me!”)
`show_description`: Show/hide description (default: “true”)
**AJAX Endpoint:**
Action: `raycin_get_random_track`
Nonce: `raycin_random_track`
### 12. Community Challenges
**What it does:** Community-wide goals that all players contribute to.
**How to use:**
Use shortcode: `

🌍 Community Challenges

No community challenges available at this time.

`
Shows challenges with target values >= 100
Displays community progress bar
**Shortcode:**
“`

🌍 Community Challenges

No community challenges available at this time.

“`
**Parameters:**
`limit`: Number of challenges to display (default: 5)
**Database:** Uses `wp_raycin_daily_challenges` table (challenges with high target values)
### 13. Racing Tips & Guides
**What it does:** Placeholder for community-submitted racing tips and track guides.
**How to use:**
Use shortcode: `

💡 Racing Tips & Guides

Tips & Guides Feature
This feature allows community members to submit racing tips and track guides. Coming soon!
`
Currently shows placeholder message
Full implementation requires additional database table
**Shortcode:**
“`

💡 Racing Tips & Guides

Tips & Guides Feature
This feature allows community members to submit racing tips and track guides. Coming soon!
“`
**Future:** Will allow users to submit tips/guides for tracks
### 14. Friend System
**What it does:** Add friends and compare lap times.
**Database Table:** `wp_raycin_friends`
**Structure:**
`user_id`: User who sent request
`friend_user_id`: User who received request
`status`: “pending”, “accepted”, “blocked”
**Methods:**
“`php
// Send friend request
// Accept friend request
// Get friend list
// Compare times with friends
“`
**Admin:** Add UI for friend management (coming soon)
### 15. Track Reviews
**What it does:** Write detailed reviews for tracks, not just ratings.
**Database Table:** `wp_raycin_track_reviews`
**Structure:**
Track ID, User ID
Rating (1-5)
Review text
Approval status
**Methods:**
“`php
// Submit review
// Get reviews for track
// Approve/reject reviews (admin)
“`
### 16. Racing Tournaments
**What it does:** Bracket-style tournaments with single/double elimination.
**Database Tables:**
`wp_raycin_racing_tournaments`: Tournament info
`wp_raycin_tournament_participants`: Registered players
`wp_raycin_tournament_matches`: Match results
**How to use:**
Create tournament (admin only)
Players register for tournament
Admin creates bracket
Record match results
Tournament progresses automatically
**Methods:**
“`php
$members->create_tournament($data);
$members->register_tournament_participant($tournament_id, $user_id);
“`
**Tournament Data:**
“`php
array(
    ‘tournament_name’ => ‘Spring Championship’,
    ‘tournament_slug’ => ‘spring-championship-2025’,
    ‘description’ => ‘Quarterly championship tournament’,
    ‘bracket_type’ => ‘single_elimination’, // or ‘double_elimination’
    ‘start_date’ => ‘2025-12-01’,
    ‘end_date’ => ‘2025-12-31’,
    ‘max_participants’ => 16,
    ‘track_id’ => 123 // Optional: specific track
)
“`
### 17. Live Race Tracking
**What it does:** Shows who is currently racing in real-time.
**Database Table:** `wp_raycin_live_races`
**How to use:**
FiveM server sends race start/end events to API
Website displays active races
Auto-removes races older than 5 minutes
**Methods:**
“`php
$members->add_live_race($player_name, $player_identifier, $track_id, $track_name);
$members->get_live_races($limit = 10);
“`
**FiveM Integration:**
“`lua
— When race starts
exports[‘raycin-api’]:startRace(playerName, identifier, trackId, trackName)
— When race ends
exports[‘raycin-api’]:endRace(identifier)
“`
**Frontend:** Add shortcode/widget to display live races (coming soon)
### 18. Race Replays
**What it does:** Link to race replay videos (YouTube, Twitch, etc.).
**Database Table:** `wp_raycin_race_replays`
**How to use:**
Users submit replay URLs
Link to race results or track pages
Track view counts
**Methods:**
“`php
$members->add_race_replay(array(
    ‘track_id’ => 123,
    ‘replay_url’ => ‘https://youtube.com/watch?v=…’,
    ‘replay_type’ => ‘video’, // or ‘stream’
    ‘lap_time’ => 45.23,
    ‘replay_description’ => ‘Great race!’
));
“`
**Admin:** Approve/reject replay submissions
### 19. In-Game Notifications
**What it does:** Send notifications to Discord/webhooks when events occur.
**Database Table:** `wp_raycin_in_game_notifications`
**How to use:**
Users configure Discord webhook URL in profile
System sends notifications for:
  Achievement earned
  Record set
  Tournament match scheduled
  Friend request received
**Methods:**
“`php
$members->send_in_game_notification(
    $user_id,
    ‘achievement’,
    ‘Achievement Unlocked!’,
    ‘You earned the Speed Demon badge!’,
    array(‘badge’ => ‘speed_demon’)
);
“`
**User Meta:**
`raycin_discord_webhook`: User’s Discord webhook URL
**Discord Webhook Format:**
Sends embed with title, description, and fields
Color-coded by notification type
## Donation Features
### 20. Donation Round-up
**What it does:** Round registration fees up to nearest whole number, with difference going to charity.
**How to use:**
Automatically calculated during event registration
Optional checkbox: “Round up to nearest £1 for charity”
Round-up amount added to donation
**Methods:**
“`php
$donations->calculate_roundup($registration_fee);
// Returns: float (round-up amount)
“`
**Example:**
Registration fee: £4.75
Round-up: £0.25
Total charged: £5.00
Donation: £0.25
### 21. Supporter Badges
**What it does:** Display ⭐ badge next to usernames for users who have donated.
**How to use:**
Automatically displayed in:
  Social feed
  Leaderboards
  Player profiles
  Comments/forums (if integrated)
**Badge Types:**
`charity_supporter`: Donated to charity
`charity_champion`: Donated significant amount
`charity_hero`: Top donor
`supporter`: General supporter badge
**Methods:**
“`php
$donations->has_supporter_badge($user_id);
// Returns: bool
“`
**Display:**
Badge appears as: `Username ⭐`
Gold star emoji with tooltip “Supporter”
### 22. Recurring Donations
**What it does:** Set up monthly/weekly/yearly recurring donations.
**Database Table:** `wp_raycin_recurring_donations`
**How to use:**
Users can set up recurring donations
Payments processed automatically on schedule
Supports PayPal subscriptions
**Methods:**
“`php
$donations->create_recurring_donation(array(
    ‘user_id’ => 1,
    ‘charity_id’ => 2,
    ‘amount’ => 10.00,
    ‘frequency’ => ‘monthly’, // ‘weekly’, ‘monthly’, ‘yearly’
    ‘payment_method’ => ‘paypal’
));
“`
**Frequencies:**
`weekly`: Every week
`monthly`: Every month
`yearly`: Every year
**Cron Job:** Process recurring donations daily (check for due payments)
### 23. Gift Donations
**What it does:** Donate in honor of someone else.
**Database Table:** `wp_raycin_gift_donations`
**How to use:**
During donation, check “This is a gift”
Enter recipient name and email
Optional gift message
Recipient receives notification email
**Methods:**
“`php
$donation_id = $donations->create_donation($donation_data);
$donations->create_gift_donation($donation_id, array(
    ‘recipient_name’ => ‘John Doe’,
    ‘recipient_email’ => ‘john@example.com’,
    ‘gift_message’ => ‘Happy Birthday!’
));
“`
**Email:** Recipient receives email notification about the gift donation
### 24. Donation Milestones
**What it does:** Special announcements when donation totals reach milestones.
**Milestones:**
£100, £500, £1,000, £5,000, £10,000, £25,000, £50,000, £100,000
**How to use:**
Automatically triggered when milestone reached
Added to social feed
Action hook: `raycin_donation_milestone_reached`
**Methods:**
“`php
// Automatically called when donation completed
$public->check_donation_milestones($donation_id, $amount);
“`
**Action Hook:**
“`php
add_action(‘raycin_donation_milestone_reached’, function($milestone, $total, $donation_id) {
    // Send notification, update social feed, etc.
}, 10, 3);
“`
### 25. Admin Dashboard Widget
**What it does:** Widget on WordPress admin dashboard showing donation statistics.
**How to use:**
Automatically appears on WordPress dashboard
Shows:
  Total donations
  Today’s donations
  Site goal progress
  Pending donations count
**Location:** WordPress Admin → Dashboard
**Widget Features:**
Quick stats overview
Progress bar for site goal
Link to review pending donations
Link to all donations page
### 26. Recurring Charity Events
**What it does:** Special features for recurring charity race events.
**How to use:**
Track donation totals across all instances of recurring event
View donation history per event instance
Aggregate totals for event series
**Methods:**
“`php
$donations->get_recurring_charity_events($parent_event_id);
// Returns: array of event instances with donation totals
“`
**Returns:**
“`php
array(
    array(
        ‘event’ => object, // Event object
        ‘donation_total’ => 150.00
    ),
    // … more events
)
“`
### 27. Donation Tiers
**What it does:** Bronze/Silver/Gold tiers based on donation amounts.
**Database Table:** `wp_raycin_donation_tiers`
**How to use:**
Admin creates tiers with min/max amounts
Users automatically assigned tier based on total donations
Tiers can have badges and benefits
**Methods:**
“`php
$donations->get_donation_tier($amount);
// Returns: tier object or false
“`
**Tier Structure:**
“`php
array(
    ‘tier_name’ => ‘Gold Supporter’,
    ‘tier_type’ => ‘gold’,
    ‘min_amount’ => 100.00,
    ‘max_amount’ => null, // null = no upper limit
    ‘badge_name’ => ‘Gold Supporter’,
    ‘benefits’ => ‘Exclusive access, priority support’
)
“`
**Admin:** Add admin interface to manage tiers (coming soon)
### 28. Charity Impact Stories
**What it does:** Story/update content for charities showing impact.
**Database Table:** `wp_raycin_charity_impact_stories`
**How to use:**
Admin creates impact stories for charities
Display on charity pages
Featured stories highlighted
**Methods:**
“`php
$donations->create_impact_story(array(
    ‘charity_id’ => 1,
    ‘story_title’ => ‘Helped 50 Families’,
    ‘story_content’ => ‘With your donations, we were able to…’,
    ‘story_date’ => ‘2025-11-15’,
    ‘is_featured’ => 1
));
“`
**Frontend:** Add shortcode/widget to display stories (coming soon)
### 29. Team Fundraising
**What it does:** Create fundraising teams with goals and progress tracking.
**Database Tables:**
`wp_raycin_team_fundraising`: Team info
`wp_raycin_team_fundraising_members`: Team members
**How to use:**
Create team with goal amount
Team leader invites members
Track team progress toward goal
Team leaderboard
**Methods:**
“`php
$donations->create_team_fundraising(array(
    ‘team_name’ => ‘Racing for Charity’,
    ‘team_slug’ => ‘racing-for-charity’,
    ‘charity_id’ => 1,
    ‘goal_amount’ => 1000.00,
    ‘team_leader_id’ => 1,
    ‘description’ => ‘Our team goal is to raise £1000’
));
“`
**Frontend:** Add shortcode/widget for team pages (coming soon)
### 30. Donation Matching
**What it does:** Admin or sponsors can match donations (e.g., 1:1 or 2:1 matching).
**Database Table:** `wp_raycin_donation_matching`
**How to use:**
Admin applies matching to specific donations
Set matching ratio (1.0 = 1:1, 2.0 = 2:1)
Track matched amounts separately
**Methods:**
“`php
$donations->apply_donation_matching($donation_id, $matching_ratio = 1.0, $matcher_name = );
“`
**Example:**
Donation: £50
Matching ratio: 2.0 (2:1)
Matched amount: £100
Total impact: £150
### 31. Donation Certificates
**What it does:** Generate PDF certificates for donations (placeholder – requires PDF library).
**How to use:**
Currently returns placeholder URL
Full implementation requires TCPDF or FPDF library
Would generate downloadable PDF certificate
**Methods:**
“`php
$certificate_url = $donations->generate_donation_certificate($donation_id);
// Returns: URL to certificate or false
“`
**Future Implementation:**
Install PDF library (TCPDF recommended)
Design certificate template
Generate PDF with donation details
Store in uploads folder
Return download URL
## Shortcodes Reference
### Racing Shortcodes
| Shortcode | Description | Parameters |
|———–|————-|————|
| `

🏎️ Vehicle Class Leaderboards

F2F Regulars Class Leaderboard

Rank Player Best Lap Races Tracks
1 Reece 3.00 6 5
2 zvonko mitrofonko 3.00 7 7
3 Adamp2412 3.00 4 4
4 KernowGlyn 4.00 16 11
5 dzundar 4.00 4 4
6 Barry 4.00 4 4
7 steva 4.00 3 3
8 enxesquet 4.00 3 3
9 Mateja mmmmmaks 4.00 5 5
10 xtitooxz 4.00 1 1
`
| Vehicle class leaderboards | `period`, `limit`, `metric`, `selected_class` |
| `

Player name required.

`
| Player profile page | `player_name`, `user_id` |
| `

📰 Activity Feed

No activity to display.

`
| Activity feed | `limit`, `feed_type`, `user_id` |
| `

Random Track Generator

Not sure which track to race? Let us surprise you with a random track!

`
| Random track generator | `button_text`, `show_description` |
| `

🌍 Community Challenges

No community challenges available at this time.

`
| Community challenges | `limit` |
| `

💡 Racing Tips & Guides

Tips & Guides Feature
This feature allows community members to submit racing tips and track guides. Coming soon!
`
| Racing tips placeholder | `track_id`, `limit` |
### Existing Shortcodes
| Shortcode | Description |
|———–|————-|
| `

Please log in to view your dashboard.

`
| Member dashboard (includes Track Completion, Track of Week) |
| `

Track Leaderboard (All)

Rank Player Best Lap Races Avg Lap Last Race
1 MarioMan 1.00 1 1.00 11/01/2025
2 whitty 1.00 36 2.94 24/08/2025
3 DelboyRP 1.00 47 2.77 10/10/2025
4 SpookyButt 1.00 9 1.56 24/04/2025
5 RebeccaB 1.00 36 3.28 10/10/2025
6 Masrraaa 1.00 2 6.50 21/02/2025
7 Sienna 1.00 3 1.33 19/04/2025
8 Glynrr 1.00 18 4.83 13/01/2025
9 Sadie 1.00 6 4.17 10/10/2025
10 stoika 1.00 3 7.33 21/02/2025
`
| General leaderboards |
| `

Around The Docks Daily Event

📅 Date:
🏁 Track: Around The Docks
👥 Spaces: 998 available (1/999)
Daily Scheduled 🔁 Daily ⭐ 250 Points

Players can compete for the best daily lap time. To participate, you must be a registered member. Registration ensures your results are displayed on the…

MP Hocus Pocus Track - Daily

📅 Date:
🏁 Track: MP Hocus Pocus
👥 Spaces: 998 available (1/999)
Daily Scheduled 🔁 Daily ⭐ 250 Points

Players can compete for the best daily lap time. To participate, you must be a registered member. Registration ensures your results are displayed on the…

`
| Events list |
| `
Reset
⏰ Soon

Around The Docks Daily Event

📅
🏁 Track: Around The Docks
👥 Spaces: 998 available (1/999 registered)
Daily Scheduled 🔁 Daily ⭐ 250 Points

Players can compete for the best daily lap time. To participate, you must be a registered member. Registration ensures your…

⏰ Soon

MP Hocus Pocus Track - Daily

📅
🏁 Track: MP Hocus Pocus
👥 Spaces: 998 available (1/999 registered)
Daily Scheduled 🔁 Daily ⭐ 250 Points

Players can compete for the best daily lap time. To participate, you must be a registered member. Registration ensures your…

`
| Events summary |
| `

Hold Ctrl/Cmd to select multiple

Clear Filters

Current Selection

All race types
Overall Tracks 307 (Tracks matching current filters)
Class Types 21 (Distinct classes in this view)
Race Type Breakdown
Deadline 14
Face To Face 31
Hunting Pack 13
Multi Purpose 70
Parkour 2
Playground 6
R Hotring Circuit 15
Rally 8
Random Transform 19
Runner vs Vehicle 10
Stunt Race 48
Sumo 15
Sumo (Remix) 7
Transform 39
Image Track Name Difficulty Class Race Type Length (km) Checkpoints Lap Times
MP Uni Project lllenium MP Uni Project lllenium 0.10 Super Multi Purpose 2.59 70
P freecrawler Park P freecrawler Park 0.60 Off-Road Parkour 2.61 66 🏆 09:54.34
F2F 19 Josepo F2F 19 Josepo 0.50 F2F Regulars Face To Face 2.63 29 🏆 06:29.69
MP Cheetah Grand Prix MP Cheetah Grand Prix 0.30 open-wheel Multi Purpose 2.65 54
RO Hotring Circuit La Mesa RO Hotring Circuit La Mesa 0.20 Muscle R Hotring Circuit 2.65 51 🏆 01:59.99
F2F RR Prison Alan F2F RR Prison Alan 0.30 F2F Regulars Face To Face 2.66 26 🏆 03:38.51
RT RR3Circuit Lap RT RR3Circuit Lap 0.30 RDM-TSFM-select Random Transform 2.69 57
Around The Docks Around The Docks
⭐⭐⭐⭐⭐ (5/5, 1 ratings)
0.30 Motorcycles Stunt Race 2.69 42 🏆 02:06.18
F2F Alan randomraces1 F2F Alan randomraces1 0.50 F2F Almost Supers Face To Face 2.72 27 🏆 09:13.48
F2F 70 Josepo F2F 70 Josepo 0.40 F2F Regulars Face To Face 2.74 27 🏆 05:58.21
F2F 47 Josepo F2F 47 Josepo 0.60 F2F Almost Supers Face To Face 2.76 27 🏆 04:29.01
MP GP TOK Del Perro MP GP TOK Del Perro 0.30 open-wheel Multi Purpose 2.78 58
F2F RR ICC Alan F2F RR ICC Alan 0.30 F2F Regulars Face To Face 2.80 29 🏆 03:28.26
MP The Grape Castle of Seeds MP The Grape Castle of Seeds 0.40 Super Multi Purpose 2.83 54
MP Glyn-Counter-Clockwise MP Glyn-Counter-Clockwise 0.30 Sports Classics Multi Purpose 2.89 65
Over And Under Over And Under 0.40 Motorcycles Stunt Race 2.89 81 🏆 02:05.20
Threading The Needle Threading The Needle 0.40 Motorcycles Stunt Race 2.89 60 🏆 02:19.84
Forest Forest 0.40 Motorcycles Stunt Race 2.90 49 🏆 02:39.59
F2F RR Sumov1 Alan F2F RR Sumov1 Alan 0.40 F2F Regulars Face To Face 2.91 29 🏆 05:56.40
MP Glyn-Clockwise MP Glyn-Clockwise 0.50 Super Multi Purpose 2.91 66
RO Hotring Circuit Chiliad Peak Raceway RO Hotring Circuit Chiliad Peak Raceway 0.20 Muscle R Hotring Circuit 2.92 51 🏆 01:43.50
F2F RR Side Alan F2F RR Side Alan 0.50 F2F Regulars Face To Face 2.94 30 🏆 04:47.43
Pier Race Pier Race 0.40 Super Stunt Race 2.96 38 🏆 02:10.70
A Tight Spot A Tight Spot 0.40 Motorcycles Stunt Race 2.99 59 🏆 01:59.77
F2F RR Updown Slip Alan F2F RR Updown Slip Alan 0.60 F2F Regulars Face To Face 3.01 29 🏆 04:33.29
MP Git Gud Speedway MP Git Gud Speedway 0.30 Super Multi Purpose 3.01 65
Turbine Turbine 0.30 Motorcycles Stunt Race 3.06 57 🏆 02:42.25
F2F RR SumoV2 Alan F2F RR SumoV2 Alan 0.50 F2F Regulars Face To Face 3.08 31 🏆 05:44.54
Double Loop Double Loop 0.50 Super Stunt Race 3.08 49 🏆 02:10.44
F2F RR Alan 2 F2F RR Alan 2 0.10 F2F Regulars Face To Face 3.10 27 🏆 07:55.14
Big M Big M 0.30 Motorcycles Stunt Race 3.11 56 🏆 01:41.92
Maze Bank Ascent Maze Bank Ascent 0.30 Sports Stunt Race 3.12 60 🏆 02:21.88
F2F JH45 - 04 F2F JH45 - 04 0.70 F2F Almost Supers Face To Face 3.15 41
JH45 FaceToFace 04 JH45 FaceToFace 04 0.70 F2F Almost Supers Face To Face 3.15 41
The Wave The Wave 0.50 Motorcycles Stunt Race 3.17 48
East Coast East Coast 0.40 Super Stunt Race 3.21 51 🏆 02:27.53
F2F RR X Above Alan F2F RR X Above Alan 0.60 F2F Regulars Face To Face 3.33 26
High Flier High Flier 0.30 Motorcycles Stunt Race 3.37 56 🏆 03:00.81
Vespucci Vespucci 0.30 Super Stunt Race 3.37 58
F2F RR Turbine Alan F2F RR Turbine Alan 0.60 F2F Regulars Face To Face 3.40 26 🏆 06:45.14
MP TOK Castle Peach MP TOK Castle Peach 0.40 Super Multi Purpose 3.42 60
Smoke Up Your Asphalt Smoke Up Your Asphalt 0.40 Motorcycles Stunt Race 3.43 51
MP TOK Pibwasser Run MP TOK Pibwasser Run 0.50 Super Multi Purpose 3.44 63
Over The Bridge Over The Bridge 0.40 Motorcycles Stunt Race 3.47 51 🏆 03:00.00
MP Party At The Cove MP Party At The Cove 0.30 Super Multi Purpose 3.49 61
F2F RR Footy Vehicle F2F RR Footy Vehicle 0.60 F2F Regulars Face To Face 3.51 26
City Air City Air 0.35 Sports Stunt Race 3.56 44
Zebra Zebra 0.30 Sports Stunt Race 3.56 39 🏆 03:22.09
F2F RR Footy F2F RR Footy 0.60 F2F Regulars Face To Face 3.57 35 🏆 04:46.98
F2F RR Sea 1 Alan F2F RR Sea 1 Alan 0.40 F2F Regulars Face To Face 3.59 29 🏆 10:00.22
Showing 151-200 of 307 tracks
`
| Track list with lap times |
## Admin Features
### Dashboard Widget
**Location:** WordPress Admin → Dashboard
**Shows:**
Total donations
Today’s donations
Site goal progress
Pending donations count
### Admin Pages
**Coming Soon:**
Track of the Week management
Tournament management
Crew management
Donation tier management
Charity impact stories
Team fundraising management
## Database Tables
### New Tables Created
**Racing Features:**
`wp_raycin_track_of_week`
`wp_raycin_rivalries`
`wp_raycin_social_feed`
`wp_raycin_friends`
`wp_raycin_time_attack_challenges`
`wp_raycin_crews`
`wp_raycin_crew_members`
`wp_raycin_seasonal_competitions`
`wp_raycin_track_reviews`
`wp_raycin_racing_tournaments`
`wp_raycin_tournament_participants`
`wp_raycin_tournament_matches`
`wp_raycin_live_races`
`wp_raycin_race_replays`
`wp_raycin_in_game_notifications`
**Donation Features:**
`wp_raycin_recurring_donations`
`wp_raycin_gift_donations`
`wp_raycin_donation_tiers`
`wp_raycin_charity_impact_stories`
`wp_raycin_team_fundraising`
`wp_raycin_team_fundraising_members`
`wp_raycin_donation_matching`
## API Integration
### FiveM Integration
**Live Race Tracking:**
“`lua
— Start race
exports[‘raycin-api’]:startRace(playerName, identifier, trackId, trackName)
— End race
exports[‘raycin-api’]:endRace(identifier)
“`
**REST API Endpoints:**
`/wp-json/raycin/v1/races/start` – Start live race
`/wp-json/raycin/v1/races/end` – End live race
## Action Hooks
### Available Hooks
“`php
// Donation created
do_action(‘raycin_donation_created’, $donation_id, $data);
// Donation milestone reached
do_action(‘raycin_donation_milestone_reached’, $milestone, $total, $donation_id);
“`
### Filter Hooks
“`php
// Filter donation amount
apply_filters(‘raycin_donation_amount’, $amount, $donation_data);
// Filter supporter badge display
apply_filters(‘raycin_supporter_badge_html’, $badge_html, $user_id);
“`
## Notes
1. **Admin Interfaces:** Many features have database tables and methods but need admin UI interfaces. These can be added as needed.
2. **PDF Certificates:** Donation certificates require a PDF library (TCPDF or FPDF) to be installed.
3. **Discord Webhooks:** Users need to configure their Discord webhook URL in their profile for in-game notifications.
4. **Live Race Tracking:** Requires FiveM server integration to send race start/end events.
5. **Tournament Brackets:** Tournament bracket generation logic needs to be implemented for automatic bracket creation.
## Support
For questions or issues with these features, check the main plugin documentation or contact support.
**Last Updated:** November 2025