Skip to main content

Quick Start

HeartbeatSocks is a .NET-based Windows desktop application that provides a SOCKS5 proxy service with packet analysis, fake heartbeat replacement, and intelligent data collection capabilities.

System Architecture

┌─────────────────────────────────────────────────────────────────────────────┐
│ HeartbeatSocks System Architecture │
├─────────────────────────────────────────────────────────────────────────────┤
│ │
│ ┌─────────────┐ ┌────────────────────────────────────────────────────┐ │
│ │ Game Client │─▶│ Collection Proxy (:1080) │ │
│ └─────────────┘ │ ┌──────────┐ ┌──────────┐ ┌────────────────┐ │ │
│ │ │ │ Type │─▶│ Signature│─▶│ GameID/Address │ │ │
│ │ │ │ Filter │ │ Matching │ │ Filter │ │ │
│ │ │ └──────────┘ └──────────┘ └───────┬────────┘ │ │
│ │ └──────────────────────────────────────│────────────┘ │
│ │ │ │
│ │ ▼ │
│ │ ┌────────────────┐ │
│ │ │ Data Pool │ │
│ │ │ ┌────────────┐ │ │
│ │ │ │ Global Pool│ │ │
│ │ │ ├────────────┤ │ │
│ │ │ │ Account A │ │ │
│ │ │ ├────────────┤ │ │
│ │ │ │ Account B │ │ │
│ │ │ └────────────┘ │ │
│ │ │ SQLite Storage │ │
│ │ └───────┬────────┘ │
│ │ │ │
│ ▼ ▼ │
│ ┌─────────────────────────────────────────────────────────────────────┐ │
│ │ Heartbeat Simulation Proxy (:1088) │ │
│ │ ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌───────────────────┐ │ │
│ │ │SNI Filter│─▶│Pkt Filter│─▶│ Heartbeat│─▶│ Data Replacement │ │ │
│ │ │ │ │ │ │ Matching │ │ + Selection │ │ │
│ │ └──────────┘ └──────────┘ └──────────┘ └────────┬──────────┘ │ │
│ │ │ │ │
│ │ ┌──────────────────────────────────────────────────┐│ │ │
│ │ │ Traffic Shaping Engine ││ │ │
│ │ │ Timing Jitter│Size Padding│CV Monitor│Adaptive ││ │ │
│ │ └──────────────────────────────────────────────────┘│ │ │
│ └──────────────────────────────────────────────────────│─────────────┘ │
│ │ │
│ ▼ │
│ ┌────────────────────────────┐ │
│ │ Target Server / 2nd Proxy │ │
│ └────────────────────────────┘ │
│ │
│ ┌────────────────────┐ │
│ │ Remote Mgmt API │ HTTP Basic Auth + IP Whitelist │
│ │ REST (:8080) │ Account Mgmt / Data Pool / User Info │
│ └────────────────────┘ │
│ │
└─────────────────────────────────────────────────────────────────────────────┘

Core Concepts

Fake Heartbeat

Fake heartbeat replaces the user's heartbeat packets with real player heartbeat data, making it impossible for target servers to distinguish between real players and proxy users.

Data Pool

The data pool stores real heartbeat data collected by the collection proxy. During replacement, data is selected from the pool based on configurable strategies, supporting multi-dimensional intelligent matching by GameID length, packet type, freshness, and more.

Traffic Shaping

Traffic shaping uses timing jitter, packet size padding, and other techniques to make network traffic characteristics resemble real player traffic, evading statistical analysis by anti-cheat systems.

Dual Proxy Architecture

HeartbeatSocks runs two independent proxy services:

ProxyDefault PortFunction
Collection Proxy1080Pure data collection, transparently passes packets while recording to data pool
Heartbeat Simulation1088Selects data from pool to replace user heartbeat packets

Data Processing Flow

                  ┌── Collection Mode ──┐        ┌── Replacement Mode ──┐
│ │ │ │
Client ──▶ SOCKS5 Proxy ──▶ Analysis │ Client ──▶ SOCKS5 Proxy │
│ │ │ │ │ │
│ ▼ │ │ ▼ │
│ Quality Check │ │ Feature Matching │
│ │ │ │ │ │
│ ▼ │ │ ▼ │
│ Dedup & Store ◀──┤────────┤──▶ Pool Selection │
│ │ │ │ │ │
│ ▼ │ │ ▼ │
│ Pass-through │ │ Replace & Forward │
│ │ │ │ │ │
└────────┼────────────┘ └────────┼─────────────┘
▼ ▼
Target Server Target Server

30-Second Setup

  1. Install and activate license — Enter activation code on first launch
  2. Start collection proxy — Click Start on the "Data Collection" page, point game client proxy to collection port
  3. Accumulate data — Wait for the data pool to collect enough heartbeat data (50+ entries recommended)
  4. Start heartbeat simulation — Configure heartbeat features on the "Heartbeat Simulation" page and start
  5. Switch proxy — Change game client proxy to the heartbeat simulation port
tip

It's recommended to run in collection mode for a while to accumulate data before switching to heartbeat mode. The richer the data pool, the more natural the replacement effect.

Feature Module Overview

┌──────────────────────────────────────────────────────────────────┐
│ HeartbeatSocks Feature Pages │
├────────────────┬────────────────┬────────────────┬───────────────┤
│ Data │ Data │ Heartbeat │ Traffic │
│ Collection │ Warehouse │ Simulation │ Shaping │
│ ・Type Filter │ ・Pagination │ ・Basic Config │ ・Timing │
│ ・Signatures │ ・Auto Mgmt │ ・Features │ ・Padding │
│ ・Addr Filter │ ・Import/Exp │ ・2nd Proxy │ ・CV Monitor │
│ ・GameID │ ・Isolation │ ・SNI Filter │ ・Adaptive │
│ ・Game Types │ ・Cleanup │ ・Pkt Filter │ ・Perturb │
│ │ │ ・Pkt Replace │ │
├────────────────┼────────────────┼────────────────┼───────────────┤
│ Account │ Runtime │ License │ Settings │
│ Management │ Logs │ Management │ │
│ ・Multi-Acct │ ・Categorized │ ・HW Fingerpr. │ ・Remote API │
│ ・Expiration │ ・Error Filter │ ・Multi Types │ ・Basic Auth │
│ ・Pool Isol. │ ・Disk Mgmt │ ・Activation │ ・IP Whitelist│
└────────────────┴────────────────┴────────────────┴───────────────┘