# Game Save Viewer

Drop any game save file — Minecraft NBT, Unreal Engine GVAS, Palworld containers, JSON/XML/INI/Lua text saves, SQLite profiles — and get the detected format, engine versions, key progress fields and a bounded structural tree.

> Canonical page: https://elysiatools.com/en/tools/game-save-viewer

- **Category:** Development

- **Keywords:** game save viewer, save file inspector, minecraft nbt, level.dat, gvas, unreal engine save, palworld save, stardew valley xml, steam cloud saves, sav file, save game parser

## Overview

A save file is usually opaque precisely when you need it most, so this viewer recognizes the families real games actually use and shows what each spec exposes. Minecraft-family NBT is parsed tag by tag per the wiki.vg specification (all 12 tag types, gzip/zlib/raw wrappers — level.dat is gzip, servers.dat raw). Unreal Engine saves are identified by the "GVAS" magic and decoded per the uesave/gvas layout: save-game version, UE4 and UE5 package file versions, the FEngineVersion tuple and branch string, and the custom-version table; Palworld saves from Steam are unwrapped through their real container (two header ints, "PlZ1" magic, zlib stream) into the GVAS payload. SQLite-backed saves are opened read-only through node:sqlite and listed table by table with row counts and preview rows. Text saves are detected structurally: JSON (deck-builder style), XML (a Stardew Valley SaveGame is recognized by its documented root fields), INI (including Unreal \[/Script/…\] configuration), and Lua table saves (Hades family). Zip containers are reported with their inner entries. Anything else falls back to a Shannon-entropy reading, a hex dump of the first 256 bytes and a printable-strings scan, with a strings heuristic for Source engine .sav files whose block-handler tokens (ADVSYS, EntityPatch, Response System…) are documented on the Valve Developer Community. Progress-relevant fields (name, level, gold, health, seed, playtime…) are pulled out into a key-facts panel, and every parse is bounded — node budget, depth cap, array previews — because save files are untrusted input. Where do saves live? Steam Cloud games keep them under Steam/userdata///remote (per the Steamworks documentation); everything else is game-specific. This tool never modifies your file — it reads one copy in memory and only renders.

## Inputs

- **Save file** (file)
- **Tree detail** (select)

## When to use

- Inspect character stats, world seeds, playtime, or inventory counts stored inside binary or containerized save files.
- Verify engine versions, custom version GUIDs, and package headers in Unreal Engine (.sav) or Palworld files before modding or troubleshooting.
- Explore the internal hierarchical schema of formats like Minecraft NBT or Stardew Valley XML without installing dedicated external editors.

## How it works

- Upload your game save file (.sav, .dat, .nbt, .json, .xml, .db, .sqlite, .lua, or raw binary).
- Choose your preferred tree detail level to view either a compact key-field summary or the full structural property hierarchy.
- The tool unwraps compression wrappers (gzip, zlib, zip), parses engine metadata in memory, and renders key gameplay facts alongside a bounded structural tree.

## Use cases

- Modders checking save layout changes and engine version strings across Unreal Engine 4 and Unreal Engine 5 game builds.
- Minecraft players and administrators retrieving lost world seeds, spawn coordinates, or level names from level.dat files.
- Game developers inspecting SQLite tables or text save structures (JSON/XML/Lua) during save serialization debugging.

## Frequently asked questions

### Does this tool modify or overwrite my original save file?

No. The viewer processes files entirely in memory on a read-only basis and never modifies or writes back to your save.

### Where can I find Steam Cloud saves on my computer?

Steam Cloud saves are typically located in your local Steam directory under Steam/userdata///remote.

### Which Minecraft NBT formats and wrappers are supported?

It parses all 12 standard NBT tag types across gzip-compressed files (such as level.dat), raw files (such as servers.dat), and zlib streams.

### How does the tool handle Palworld save files?

It strips the outer PlZ1 container header, decompresses the zlib stream, and decodes the inner Unreal Engine 5 GVAS payload.

### What happens if I upload an unrecognized binary format?

The viewer falls back to Shannon entropy calculations, printable string scans, and a 256-byte hex preview to help identify raw contents.

## Related tools

- [Structured Log Analyzer](https://elysiatools.com/en/tools/structured-log-analyzer): Detect common log formats, extract core fields, infer field types, and export parsed logs as JSON, CSV, or SQL inserts
- [SQL Explain Plan Visualizer](https://elysiatools.com/en/tools/sql-explain-plan-visualizer): Parse EXPLAIN / EXPLAIN ANALYZE output (PostgreSQL/MySQL/SQLite) into a cost tree, flag estimated-vs-actual row divergence, and suggest indexes
- [Time Series Forecast & Seasonality Analyzer](https://elysiatools.com/en/tools/time-series-forecast-seasonality-analyzer): Forecast future periods from CSV or JSON time-series data and inspect trend, seasonal, and residual decomposition in one report
- [Excel to JSON Converter](https://elysiatools.com/en/tools/excel-to-json): Convert Excel file to JSON format, extracting data from the first worksheet
- [Terraform Plan Visualizer](https://elysiatools.com/en/tools/terraform-plan-visualizer): Parse Terraform plan JSON or text output, classify resource changes, and surface a dependency-oriented summary before apply
- [CSV to Database Migration Planner](https://elysiatools.com/en/tools/csv-to-database-migration-planner): Infer a relational schema from CSV data and generate create-table plus ALTER migration plans for PostgreSQL, MySQL, SQLite, or SQL Server
- [Time Series Anomaly Detector](https://elysiatools.com/en/tools/time-series-anomaly-detector): Upload CSV or JSON time series data, detect anomalies with Z-Score and IQR methods, and return a chart-backed report
- [BOM Character Remover](https://elysiatools.com/en/tools/data-bom-remover): Remove BOM (Byte Order Mark) characters from text and file content. Perfect for cleaning up text files that have encoding issues, fixing CSV imports, and preparing data for processing. Features: - Detect and remove UTF-8 BOM (EF BB BF) - Detect and remove UTF-16 BOM (FE FF or FF FE) - Detect and remove UTF-32 BOM (00 00 FE FF or FF FE 00 00) - Support multiple input formats - Visual BOM character display - Detailed detection report - Support for batch text processing Common Use Cases: - Fix CSV file import errors - Clean up text file encoding issues - Prepare data for JSON parsing - Fix XML parsing problems - Resolve API data encoding conflicts - Standardize text data format

## Samples

- [Android Serialization Java Samples](https://elysiatools.com/en/samples/android-serialization-java): Android Java serialization examples including JSON serialization, deserialization, and XML parsing
- [Android Serialization Kotlin Samples](https://elysiatools.com/en/samples/android-serialization-kotlin): Android Kotlin serialization examples including JSON serialization, deserialization, and XML parsing
- [macOS Serialization Objective-C Samples](https://elysiatools.com/en/samples/macos-serialization-objectivec): macOS Objective-C serialization examples including JSON serialization, JSON deserialization, and XML parsing
- [Web Data Serialization Go Samples](https://elysiatools.com/en/samples/web-serialization-go): Web Go data serialization examples including JSON encoding/decoding and XML parsing
