Skip to content

U-LF/Neoxa_Guard

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Player Database (Neoxa Guard)

A C++ console application for managing and analyzing player data, specifically focusing on linking Player IDs (SteamID64), IP addresses, and Player Names. This tool is designed to help identify alternate accounts ("alts") by tracking shared IP usage using a MySQL backend.

Features

  • Data Insertion: Import large datasets of IDs, IPs, and Names from text files.
  • Link Analysis: Automatically creates relationships between IDs and IPs.
  • Advanced Search:
    • Search by ID: Find all IPs used by a specific ID, and then find all other IDs that have used those IPs (potential alts).
    • Search by IP: Find all IDs associated with a specific IP.
    • Web Search (Recursive): Deep search that recursively follows links to find extended networks of alts.
  • Database Management: Options to clear or delete the database.
  • Reporting: View new links created in the last 24 hours.
  • Data Extraction: Export the entire database content to text files.

Prerequisites

  • Windows OS (Tested on Windows 10/11).
  • Visual Studio 2022 (or compatible C++ IDE) with "Desktop development with C++" workload.
  • MySQL Server (Version 8.0 or higher recommended) with X Plugin enabled.
  • vcpkg: Microsoft C++ Package Manager.

Installation & Setup

1. Install Dependencies (vcpkg)

This project uses the MySQL Connector/C++ (X DevAPI). You need to install it via vcpkg.

  1. Open your terminal (PowerShell or Command Prompt).
  2. Install the package for the x64 platform:
    vcpkg install mysql-connector-cpp:x64-windows
  3. Integrate vcpkg with Visual Studio (if you haven't done so already):
    vcpkg integrate install

2. Configure MySQL Server

Ensure your MySQL Server is running and the X Plugin is active.

  • Check Status: Run SHOW PLUGINS; in your MySQL client and ensure mysqlx is ACTIVE.
  • Default Port: The X Protocol uses port 33060 (distinct from the classic 3306 port).

3. Project Configuration

  1. Open PlayerDatabase.sln in Visual Studio.
  2. Select the Release configuration and x64 platform.
  3. Build the solution (Build > Build Solution or Ctrl + Shift + B).

4. Application Setup

  1. Run the application once (F5 or run the .exe).

  2. It will detect that ServerInfo.txt is missing and create it for you, then exit.

  3. Open the newly created ServerInfo.txt file (located in the project folder or next to the executable).

  4. Enter your MySQL credentials in the following format (3 lines):

    tcp://127.0.0.1:33060
    your_username
    your_password
    
    • Line 1: Connection string. Important: Ensure you use port 33060 (X Protocol). Do not use 3306.
    • Line 2: Your MySQL username (e.g., root).
    • Line 3: Your MySQL password.

Usage

Run the application. The main menu provides the following options:

  • (A) Insert Data: Parses data.txt (if present) and imports IDs, IPs, and Names into the database.
  • (B) Search: Access the search menu to find alts by ID or IP.
    • Select (W) for Web Search to perform a recursive lookup for the most comprehensive results.
  • (E) Statistics: View total counts of IDs, IPs, and Links.
  • (F) Recent Links: Show links created in the last 24 hours.
  • (G) Sync/Update: Re-import data from update files.
  • (H) Extract: Dump the entire database to Data_Update_Sync_*.txt files.

Input Data Format

To import data using Option (A), place a file named data.txt in the same directory. The application parses lines to extract:

  • ID: 17-digit SteamID64.
  • IP: IPv4 address.
  • Name: Player name (extracted from quotes or context).

Troubleshooting

  • "CDK Error: unexpected message":
    • This indicates a protocol mismatch. You are likely trying to connect to the Classic MySQL port (3306) instead of the X Protocol port (33060). Update your ServerInfo.txt to use 33060.
  • "Cannot open include file: 'mysqlx/xdevapi.h'":
    • Ensure vcpkg integrate install has been run.
    • Ensure you installed the package for the correct platform (:x64-windows).
    • Ensure your Visual Studio project is set to use the x64 platform.

Technologies

  • C++: Core application logic.
  • MySQL X DevAPI: Modern, NoSQL-like interface for MySQL interactions.
  • vcpkg: Dependency management.

About

A program that connects with and uses MySQL as a database to store different data of players to find alt accounts and other links

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Contributors

Languages