# textdomain: map_octree

##[ src\commands.lua ]##
Set octree position 1 to your current location (or copy from WorldEdit)=
Position 1 set: @1=
Set octree position 2 to your current location (or copy from WorldEdit)=
Position 2 set: @1=
Save the selected area to a snapshot file under worldpath/map_octree=
Missing name. Usage: /octree_save <name> [<radius> [<height>]] [-sync] [inflight@=<n>]=
radius@=@1 height@=@2=
pos1/pos2=
Save failed: @1=
Saved @1 chunks in @2ms from @3 to @4 (sync, @5)=
Starting async save (@1)...=
Async save FAILED: @1=
Async save complete: @1 chunks in @2ms (batches@=@3, inflight@=@4)=
Async save failed to start=
Async save '@1' started with @2 batches (inflight@=@3)=
Empirical benchmark: measures real save_to_file_async throughput for each batch size=
Load a snapshot file from worldpath/map_octree into memory=
List snapshot files saved on disk in worldpath/map_octree=
No saved octree maps found=
Saved octree maps (@1):@n@2=
List snapshots currently loaded in memory=
No loaded octree maps in memory=
Loaded octree maps (@1):@n@2=
Unload a snapshot from memory=
Unloaded map '@1'=
Paste a saved snapshot into the world (defaults to its original position)=
Query the node at your current position from the loaded snapshot=
Show info about the currently loaded snapshot=
Clear the current snapshot from memory=
Show Lua memory usage=
Run octree self-tests=
All tests passed (@1) in @2ms=
Tests failed: @1/@2 failed (@3ms)@n=
Toggle or set wireframes/markers (debug visuals)=
Toggle or set debug logging (timings/perf logs)=
Full benchmark: hot, cold, cold cache@=0. Reports total_us + call_us + call_p50/call_p95.=
Enable restore tracking for a saved snapshot=
Show restore tracking status for a snapshot=
Restore modified nodes from a tracked snapshot=
Disable restore tracking for a snapshot=
List snapshots with tracking enabled=

##[ src\commands.lua ]##
##[ src\commands\autotune.lua ]##
Player not found=

##[ src\commands\autotune.lua ]##
Autotune already running=
[octree_autotune] Empirical benchmark: budget@=@1ms, test_area@=@2 trees (@3x@4x@5)=
[octree_autotune] k @= trees per axis in the batch (batch @= k^3 trees)=
[octree_autotune] Testing configs: k@=@1 (separate areas to avoid cache)=
  k@=@1: SKIP (read@=@2ms > budget@=@3ms)=
  k@=@1: read@=@2ms, inflight@=@3, testing...=
  k@=@1: FAILED - @2=
  k@=@1: @2 chunks in @3s → @4 chunks/s (inflight@=@5)=
[octree_autotune] No valid configurations found!=
[octree_autotune] @=@=@= RESULTS @=@=@==
  k@=@1: @2 trees/s (read@=@3ms, inflight@=@4)@5=
[octree_autotune] BEST: k@=@1, volume@=@2, inflight@=@3 → @4 trees/s=
[octree_autotune] Projected: @1k trees in ~@2s=
[octree_autotune] NOTE: CPU-bound (@1 async workers @= num_cpus-2). This is your hardware limit.=
[octree_autotune] Applied: volume@=@1, budget@=@2ms, inflight@=@3 (override: fewer workers faster)=
[octree_autotune] Applied: volume@=@1, budget@=@2ms, inflight@=@3 (from CPU count)=
octree_autotune started (empirical benchmark, ~30-60s)=
