Improve history and achievement export guidance
This commit is contained in:
parent
569299dbdd
commit
35918f24f1
2 changed files with 40 additions and 32 deletions
|
|
@ -62,7 +62,7 @@ def print_banner() -> None:
|
||||||
print()
|
print()
|
||||||
print(rule("="))
|
print(rule("="))
|
||||||
print(style(f" NTE History Exporter v{EXPORTER_VERSION}", BOLD, CYAN))
|
print(style(f" NTE History Exporter v{EXPORTER_VERSION}", BOLD, CYAN))
|
||||||
print(style(f" {GAME_NAME} pull history -> tracker JSON", DIM))
|
print(style(f" {GAME_NAME} history and achievements -> JSON", DIM))
|
||||||
print(style(f" {REPOSITORY_URL}", DIM))
|
print(style(f" {REPOSITORY_URL}", DIM))
|
||||||
heart = "❤️" if (getattr(sys.stdout, "encoding", None) or "").lower().replace("-", "") == "utf8" else "<3"
|
heart = "❤️" if (getattr(sys.stdout, "encoding", None) or "").lower().replace("-", "") == "utf8" else "<3"
|
||||||
print(style(" Created with ", DIM) + style(heart, RED) + style(" by Golumpa", DIM))
|
print(style(" Created with ", DIM) + style(heart, RED) + style(" by Golumpa", DIM))
|
||||||
|
|
@ -75,27 +75,29 @@ def print_live_instructions(local_ip: str, backend: str = "windows_raw", detail:
|
||||||
backend_detail = f" ({detail})" if detail and detail != local_ip else ""
|
backend_detail = f" ({detail})" if detail and detail != local_ip else ""
|
||||||
print(style(f" Capture backend: {backend}{backend_detail}", DIM))
|
print(style(f" Capture backend: {backend}{backend_detail}", DIM))
|
||||||
print()
|
print()
|
||||||
print(style(" How to export your pull history", BOLD))
|
print(style(" Before you begin", BOLD))
|
||||||
print(" 1. For automatic user UID detection, start this tool")
|
print(" Start this exporter before pressing Start on the game's")
|
||||||
print(" before pressing Start on the game's main menu.")
|
print(" main menu. This lets it capture your achievements and")
|
||||||
print(" Already in game? You can still capture history;")
|
print(" detect your account UID and server automatically.")
|
||||||
print(" the tool will ask for your UID if it cannot detect it.")
|
|
||||||
print(" 2. Open a supported history screen:")
|
|
||||||
print(style(" Monopoly > Standard Board history", CYAN))
|
|
||||||
print(style(" Monopoly > Limited Character Board history", CYAN))
|
|
||||||
print(style(" Gashapon > Arc Miracle Box history", CYAN))
|
|
||||||
print(style(" Gashapon > Mystery Box history", CYAN))
|
|
||||||
print(" 3. Start at page 1 and scroll down through every page")
|
|
||||||
print(" you want exported.")
|
|
||||||
print(" 4. Scroll one page past where you plan to stop so the")
|
|
||||||
print(" last pull group can be confirmed as complete.")
|
|
||||||
print(" 5. You can open several boards in the same session.")
|
|
||||||
print()
|
print()
|
||||||
print(style(" Achievement export", BOLD))
|
print(" Already in game? Pull history still works, but achievement")
|
||||||
print(" Start the exporter before launching the game. Achievements")
|
print(" capture requires restarting the game. Missing account details")
|
||||||
print(" loaded at login are captured automatically.")
|
print(" will be requested when your exports are saved.")
|
||||||
print()
|
print()
|
||||||
print(style(" Waiting for history pages... press any key here when done.", BOLD, GREEN))
|
print(style(" Pull history", BOLD))
|
||||||
|
print(" Open a supported history screen, start at page 1, then")
|
||||||
|
print(" scroll through every page you want to export. Go one page")
|
||||||
|
print(" further so the exporter can confirm the final pull group.")
|
||||||
|
print()
|
||||||
|
print(style(" Monopoly:", DIM) + " Standard Board or Limited Character Board")
|
||||||
|
print(style(" Gashapon:", DIM) + " Arc Miracle Box or Mystery Box")
|
||||||
|
print(style(" You can capture more than one board in the same session.", DIM))
|
||||||
|
print()
|
||||||
|
print(style(" Achievements", BOLD))
|
||||||
|
print(" Your completed achievements are captured automatically when")
|
||||||
|
print(" you log in after following the step above.")
|
||||||
|
print()
|
||||||
|
print(style(" Ready - use the game, then press any key here when finished.", BOLD, GREEN))
|
||||||
print(rule())
|
print(rule())
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -154,13 +154,6 @@ def run_live_capture(
|
||||||
stats = capture.stats()
|
stats = capture.stats()
|
||||||
capture.close()
|
capture.close()
|
||||||
|
|
||||||
if stats:
|
|
||||||
console.print_capture_stats(
|
|
||||||
stats.received,
|
|
||||||
stats.dropped,
|
|
||||||
stats.interface_dropped,
|
|
||||||
)
|
|
||||||
|
|
||||||
exports = []
|
exports = []
|
||||||
achievement_path = None
|
achievement_path = None
|
||||||
if achievement_ids:
|
if achievement_ids:
|
||||||
|
|
@ -168,7 +161,6 @@ def run_live_capture(
|
||||||
achievement_path.write_text(
|
achievement_path.write_text(
|
||||||
json.dumps(achievement_ids, ensure_ascii=False) + "\n", encoding="utf-8"
|
json.dumps(achievement_ids, ensure_ascii=False) + "\n", encoding="utf-8"
|
||||||
)
|
)
|
||||||
console.print_note(f"Achievement list written: {achievement_path}")
|
|
||||||
diagnostics_path = None
|
diagnostics_path = None
|
||||||
if write_debug_csv:
|
if write_debug_csv:
|
||||||
diagnostics_path = new_diagnostics_path()
|
diagnostics_path = new_diagnostics_path()
|
||||||
|
|
@ -214,14 +206,25 @@ def run_live_capture(
|
||||||
)
|
)
|
||||||
|
|
||||||
console.print_results_header()
|
console.print_results_header()
|
||||||
|
if stats:
|
||||||
|
console.print_capture_stats(
|
||||||
|
stats.received,
|
||||||
|
stats.dropped,
|
||||||
|
stats.interface_dropped,
|
||||||
|
)
|
||||||
|
if stats:
|
||||||
|
print()
|
||||||
|
|
||||||
if not exports:
|
if not exports:
|
||||||
if achievement_path is not None:
|
if achievement_path is not None:
|
||||||
console.print_note("No pull-history pages were captured.")
|
console.print_success("Achievement export complete.")
|
||||||
|
console.print_note("No pull history was captured (this is fine if you only wanted achievements).")
|
||||||
|
print()
|
||||||
|
console.print_note(f"Export written: {achievement_path}")
|
||||||
else:
|
else:
|
||||||
console.print_problem("No history pages were captured.")
|
console.print_problem("No history pages were captured.")
|
||||||
console.print_note("Make sure the capture backend is running, then reopen the")
|
console.print_note("Reopen a supported history screen and scroll from page 1.")
|
||||||
console.print_note("history screen and scroll from page 1. If no page messages")
|
console.print_note("If no page messages appear, return to the main menu and re-enter the game.")
|
||||||
console.print_note("appear, return to the main menu and re-enter the game.")
|
|
||||||
if diagnostics_path is not None:
|
if diagnostics_path is not None:
|
||||||
console.print_note(f"Diagnostics written: {diagnostics_path}")
|
console.print_note(f"Diagnostics written: {diagnostics_path}")
|
||||||
return {
|
return {
|
||||||
|
|
@ -246,6 +249,9 @@ def run_live_capture(
|
||||||
if item["csv_path"] is not None:
|
if item["csv_path"] is not None:
|
||||||
console.print_note(f"CSV written: {item['csv_path']}")
|
console.print_note(f"CSV written: {item['csv_path']}")
|
||||||
console.print_note(f"Export written: {item['json_path']}")
|
console.print_note(f"Export written: {item['json_path']}")
|
||||||
|
if achievement_path is not None:
|
||||||
|
print()
|
||||||
|
console.print_note(f"Export written: {achievement_path}")
|
||||||
if diagnostics_path is not None:
|
if diagnostics_path is not None:
|
||||||
console.print_note(f"Diagnostics written: {diagnostics_path}")
|
console.print_note(f"Diagnostics written: {diagnostics_path}")
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue