init
This commit is contained in:
commit
5962730120
11 changed files with 354 additions and 0 deletions
58
README.md
Normal file
58
README.md
Normal file
|
|
@ -0,0 +1,58 @@
|
|||
# 📊 LoL Bio-Rhythm Analytics
|
||||
|
||||
## 1. Overview
|
||||
A high-performance data analysis engine built with C++ to identify Champion Bio-Rhythms—specific hours of the day when a League of Legends champion's win rate peaks.
|
||||
|
||||
This project analyzes whether timing (e.g., 3:00 PM vs. 3:00 AM) significantly impacts win rates for specific champions by processing large-scale match data from the Riot Games API.
|
||||
|
||||
## 2. Architecture
|
||||
|
||||
- C++ + Boost(Asio, Beast)
|
||||
- MySQL (might be changed to another one)
|
||||
|
||||
```mermaid
|
||||
sequenceDiagram
|
||||
participant Admin as User/Admin
|
||||
participant Sys as lol_analytics
|
||||
participant Riot as Riot API
|
||||
participant DB as DB
|
||||
|
||||
%% ==========================================
|
||||
%% API 1: Sync All Users by League
|
||||
%% ==========================================
|
||||
rect rgb(240, 248, 255)
|
||||
Note over Admin, DB: [API 1] Fetch all users by league
|
||||
Admin->>Sys: Request: Sync League Users (League ID)
|
||||
|
||||
loop Page 1 to End (Until empty)
|
||||
Sys->>Riot: GET /lol/league/v4/entries/... (page=N)
|
||||
Riot-->>Sys: User List Data
|
||||
Sys->>DB: Save/Update Users (Summoner ID, PUUID, etc.)
|
||||
end
|
||||
Sys-->>Admin: User Sync Completed
|
||||
end
|
||||
|
||||
%% ==========================================
|
||||
%% API 2: Sync Matches within Time X ~ Y
|
||||
%% ==========================================
|
||||
rect rgb(255, 245, 238)
|
||||
Note over Admin, DB: [API 2] Fetch matches within time X ~ Y
|
||||
Admin->>Sys: Request: Fetch Matches (Time X ~ Y)
|
||||
|
||||
Sys->>DB: Query User IDs (PUUIDs)
|
||||
DB-->>Sys: PUUID List
|
||||
|
||||
loop For each User
|
||||
Sys->>Riot: GET /lol/match/v5/matches/by-puuid/{puuid}?startTime=X&endTime=Y
|
||||
Riot-->>Sys: Match ID List
|
||||
|
||||
loop For each Match ID
|
||||
Sys->>Riot: GET /lol/match/v5/matches/{matchId}
|
||||
Riot-->>Sys: Match Detail Data
|
||||
Sys->>DB: Save Match Result (win/loss, timestamp, champion)
|
||||
end
|
||||
end
|
||||
Sys-->>Admin: Match Sync Completed
|
||||
end
|
||||
```
|
||||
|
||||
Loading…
Add table
Add a link
Reference in a new issue