Initial NTE history exporter
Initial NTE history exporter Add a Windows live-capture exporter for NTE pull history with support for Permanent Monopoly, Limited Monopoly, and Arc Miracle Box histories. Included: - live packet capture via Windows raw sockets - CSV and JSON export generation - normalized reward and banner mapping files - Monopoly v7 Points Gift / Chase Reward classification - Arc Miracle Box decoding with shared pity metadata - timestamp grouping and UID generation - Windows launcher scripts with admin prompting - docs for usage, export format, limitations, and packet notes - tests covering decoder behaviour and mapping consistency Generated exports, captures, briefs, and local data are ignored for privacy.
This commit is contained in:
commit
bb3fe3b19a
35 changed files with 2439 additions and 0 deletions
53
docs/export-format.md
Normal file
53
docs/export-format.md
Normal file
|
|
@ -0,0 +1,53 @@
|
|||
# Export Format
|
||||
|
||||
The sanitized JSON export uses:
|
||||
|
||||
```json
|
||||
{
|
||||
"format": "nte-history-export",
|
||||
"format_version": 1,
|
||||
"game": "Neverness to Everness",
|
||||
"source": "packet_capture",
|
||||
"exporter": {
|
||||
"name": "nte-history-exporter",
|
||||
"version": "0.1.0"
|
||||
},
|
||||
"banner": {
|
||||
"id": "Lottery_Permanent",
|
||||
"name": "Standard Board",
|
||||
"system": "Monopoly",
|
||||
"shared_pity": false
|
||||
},
|
||||
"scan": {
|
||||
"mode": "stable_only",
|
||||
"boundary_policy": "drop_incomplete_timestamp_groups",
|
||||
"decoded_records": 0,
|
||||
"exported_records": 0,
|
||||
"skipped_records": 0,
|
||||
"warnings": []
|
||||
},
|
||||
"records": []
|
||||
}
|
||||
```
|
||||
|
||||
Record UIDs are deterministic:
|
||||
|
||||
Monopoly:
|
||||
|
||||
```text
|
||||
nte|monopoly|Lottery_Permanent|timestamp_raw|timestamp_group_ordinal|roll_result|reward_key_hex|quantity
|
||||
```
|
||||
|
||||
Limited character records use `Lottery_LimitedCharacter` in the same UID source position.
|
||||
|
||||
Arc:
|
||||
|
||||
```text
|
||||
nte|gashapon|Arc_MiracleBox|timestamp_raw|timestamp_group_ordinal|reward_key_hex
|
||||
```
|
||||
|
||||
The final UID is `sha256(source).hexdigest()[0:32]`.
|
||||
|
||||
Each record includes `pool_group_id`. Arc records use the shared `reward_*` fields and include `source_type: "miracle_box"`.
|
||||
|
||||
Normal JSON exports do not include raw packets or capture-only metadata.
|
||||
Loading…
Add table
Add a link
Reference in a new issue