BBB NMS Save File Manipulator — Help

Reference arranged like the application

Teleport Endpoints

Important limitations before using these controls

  1. Before synchronization, formatting or a structured operation, copy EACH pending Raw JSON pane you need into separate external inspection files. Updating one tab can refresh ALL four editors and overwrite other pending text. Reapply, synchronize and verify only understood Bases, Starships or Teleport Endpoints edits, one pane at a time. Keep Inventory text externally: do not synchronize or Pretty Print it because its current update path is defective. Use the documented structured inventory tools from a trustworthy baseline instead. If pending Inventory text blocks a tool, preserve it, deliberately reload a trustworthy saved baseline when ready to abandon the pending app state, then recreate supported changes through structured tools. Never click Sync in every pending tab just to obtain green indicators.
  2. A parse error is not a safe synchronization: the current handler ignores the failure return, can rebuild the previous model’s tree and turn the synchronization light green while invalid text remains. An empty array ([]) is silently ignored by this path; it is not a reliable way to delete all records. After any error or ignored input, do not trust a green light or proceed to Save: preserve the text, compare both panes and the intended field values, correct and retry, or deliberately reload a known saved baseline.

Follow the same branch you see in the application. Select an item below for its definition and behavior.

Teleport Endpoints → Node View

Node View

Shows teleport endpoint records for the loaded context.

Teleport Endpoints → Node View → Endpoint tree

Endpoint tree

Expand endpoint records to inspect stored data. The shared tree also provides structural dragging; moving arbitrary fields should not be treated as a validated teleport operation.

Teleport Endpoints → Node View → Endpoint tree → Right-button drag selection → Delete N Nodes

Right-button drag selection → Delete N Nodes

The shared right-button range-selection handler can expose Delete N Nodes even though the ordinary endpoint right-click menu has no Delete Node item. Confirmation removes the selected structure in app memory. It is not the Set Player Location command.

Before using Right-button drag selection → Delete N Nodes, read the shared safety limitations for this page.

Teleport Endpoints → Node View → Right-button drag selection → Delete N Nodes → Delete Nodes — confirmation

Delete Nodes — confirmation

Review Delete (N) nodes from the Tree? before acting. For a base or generic tree deletion the selected visible-node count can include expanded child fields. The starship-specific controller instead deduplicates complete occupied ship slots and validates the complete request.

Before using Delete Nodes — confirmation, read the shared safety limitations for this page.

↑ This page’s hierarchy

Teleport Endpoints → Node View → Right-button drag selection → Delete N Nodes → Delete Nodes — confirmation → OK

OK

Confirms this deletion request. Generic deletion removes the chosen tree nodes in app memory; starship deletion uses its guarded fixed-slot transaction instead. There is no automatic live save.

↑ This page’s hierarchy

Teleport Endpoints → Node View → Right-button drag selection → Delete N Nodes → Delete Nodes — confirmation → Cancel

Cancel

Rejects the confirmation without performing the requested deletion. Closing this dialog also rejects it.

↑ This page’s hierarchy
↑ This page’s hierarchy

Teleport Endpoints → Divider between Node View and Raw JSON

Node View / Raw JSON pane divider

Teleport Endpoints sets Node View/Raw JSON stretch weights to 6:4; it does not explicitly set equal initial sizes.

Drag the vertical handle of the horizontal QSplitter between the two pane containers to change their widths. This changes layout only: Raw JSON text, shared model values and disk save data remain unchanged. It is not record drag/drop, node movement, synchronization or Pretty Print.

↑ This page’s hierarchy
↑ This page’s hierarchy

Teleport Endpoints → Node View → Right-click menu

Right-click menu

The location command appears when you click an endpoint record.

Teleport Endpoints → Node View → Right-click menu → Set Player Location to this Endpoint

Set Player Location to this Endpoint

Copies the endpoint’s UniverseAddress into PlayerStateData.UniverseAddress, copies its first three Position coordinates into SpawnStateData.PlayerPositionInSystem and sets LastKnownPlayerState to OnFoot. The app then reports the move. This changes the loaded player-location data; it is not an in-game teleport or immediate disk write. The handler uses the recorded position without an added safety-height offset. Review the destination and keep a backup before saving.

Before using Set Player Location to this Endpoint, read the shared safety limitations for this page.

The current handler copies the endpoint’s UniverseAddress and three Position values into the active context’s player/spawn fields, and sets LastKnownPlayerState to OnFoot. It does not perform an in-game teleport, add a safe-height offset, validate terrain or promise a safe spawn. Back up first and inspect the intended destination before saving.

↑ This page’s hierarchy

Teleport Endpoints → Node View → Right-click menu → Toggle Expansion 2 Levels

Toggle Expansion 2 Levels

Collapses an expanded node or expands a collapsed node through the configured two-level helper. This changes only what is visible.

↑ This page’s hierarchy

Teleport Endpoints → Node View → Right-click menu → Highlight In Text Box

Highlight In Text Box

Selects the corresponding line in Raw JSON without changing data. It refuses if the captured node structure and current text cannot be matched reliably; it does not silently synchronize them.

↑ This page’s hierarchy

Teleport Endpoints → Node View → Right-click menu → Copy This Node's Text

Copy This Node's Text

Copies the selected node’s displayed label to the clipboard. It does not serialize that node’s full JSON or export the complete record.

This command copies the visible label of the clicked node, not the node’s complete JSON subtree. To copy JSON, select the desired text in Raw JSON and use Copy; use the whole-context clipboard export only when that larger scope is intended.

↑ This page’s hierarchy
↑ This page’s hierarchy
↑ This page’s hierarchy

Teleport Endpoints → Raw JSON

Raw JSON

Contains the endpoint data displayed by this tab.

Teleport Endpoints → Raw JSON → Synched to Node View — status indicator

Synched to Node View — status indicator

Reports the app’s synchronization flag, not independent JSON validity. Red means the app has marked this editor unsynchronized. Green can also follow a failed parse with invalid text beside an old tree, or ignored [] input; it does not prove the intended edit reached the model, that another editor’s pending work survived, or that a live save was written.

Before using Synched to Node View — status indicator, read the shared safety limitations for this page.

↑ This page’s hierarchy

Teleport Endpoints → Raw JSON → Sync to Node View

Sync to Node View

Attempts to parse this tab’s Raw JSON into the shared in-memory model and rebuild Node View; no live-save write is performed.

Before using Sync to Node View, read the shared safety limitations for this page.

Before using Sync to Node View, read the shared safety limitations for this page.

A Processing notice can remain visible after the Node View appears to update. Wait for owner-controlled dismissal; it reports synchronization work, not successful validation or a live save.

Teleport Endpoints → Raw JSON → Sync to Node View → Processing — Node View synch

Processing — Node View synch

The text-only notice reads: Processing the Node View synch. This can take a few seconds after the Node View appears to update...

This window-modal notice has no Close or Cancel button; Escape does not cancel the operation. The app dismisses it when the enclosing synchronization completes or raises an error. It may also cover the work that follows a confirmed generic node deletion.

↑ This page’s hierarchy
↑ This page’s hierarchy

Teleport Endpoints → Raw JSON → Pretty Print

Pretty Print

Pretty Print is not display-only: it attempts a model update from the editor, reloads indented text from the model and rebuilds Node View.

Before using Pretty Print, read the shared safety limitations for this page.

The current formatting handler reloads the previous model text even after a parse failure or ignored empty array. This can discard pending invalid text; copy it out before formatting. Formatting or a refreshed tree does not prove the intended edit was applied. Compare actual values before saving.

↑ This page’s hierarchy

Teleport Endpoints → Raw JSON → JSON text editor

JSON text editor

Displays this tab’s teleport-endpoint data. You can edit the JSON directly. Line numbers identify text lines; the current line is highlighted. Text is not line-wrapped, so long lines scroll horizontally.

Keep a separate copy of pending text before Sync, Pretty Print or structured changes: a model refresh can replace editor contents in other tabs. Work and verify one tab at a time. Text editing is not an automatic model update or disk write.

The editor displays line numbers and does not wrap long JSON lines. Use the editor’s own horizontal scrollbar to inspect a long value. Selecting or copying text does not edit the save; typing, cutting, deleting or pasting does. A text edit is not automatically a successful synchronization or a disk save.

↑ This page’s hierarchy

Teleport Endpoints → Raw JSON → Right-click menu

Right-click menu

The editor supplies its standard editing commands plus Search Text.

Teleport Endpoints → Raw JSON → Right-click menu → Standard editing commands

Standard editing commands

Undo, Redo, Cut, Copy, Paste, Delete and Select All operate on the text editor, subject to its current selection and available edit history. These are text operations, not a general undo facility for tree operations.

Teleport Endpoints → Raw JSON → Right-click menu → Standard editing commands → Undo

Undo

Reverses the most recent text-editor edit when an undo step is available. It is not an application-wide undo for sorting, upgrades, node deletion or inventory organization.

↑ This page’s hierarchy

Teleport Endpoints → Raw JSON → Right-click menu → Standard editing commands → Redo

Redo

Reapplies a text-editor change that was undone, when redo history is available.

↑ This page’s hierarchy

Teleport Endpoints → Raw JSON → Right-click menu → Standard editing commands → Cut

Cut

Removes selected text and places it on the clipboard. This marks the Raw JSON changed.

↑ This page’s hierarchy

Teleport Endpoints → Raw JSON → Right-click menu → Standard editing commands → Copy

Copy

Copies selected text to the clipboard without changing JSON.

↑ This page’s hierarchy

Teleport Endpoints → Raw JSON → Right-click menu → Standard editing commands → Paste

Paste

Inserts clipboard text at the cursor, replacing any selected text. It does not automatically synchronize the Node View.

↑ This page’s hierarchy

Teleport Endpoints → Raw JSON → Right-click menu → Standard editing commands → Delete

Delete

Removes selected text. This is different from Node View → Delete Node.

↑ This page’s hierarchy

Teleport Endpoints → Raw JSON → Right-click menu → Standard editing commands → Select All

Select All

Selects the complete text of this tab’s Raw JSON editor.

↑ This page’s hierarchy
↑ This page’s hierarchy

Teleport Endpoints → Raw JSON → Right-click menu → Search Text

Search Text

Opens Search Dialog for this tab’s Raw JSON.

Teleport Endpoints → Raw JSON → Right-click menu → Search Text → Enter search term

Enter search term

Text to locate in the current Raw JSON document.

↑ This page’s hierarchy

Teleport Endpoints → Raw JSON → Right-click menu → Search Text → Search Backward

Search Backward

Finds the preceding occurrence from the current cursor. No more occurrences produces End of Search; the implementation does not wrap to the opposite end.

↑ This page’s hierarchy

Teleport Endpoints → Raw JSON → Right-click menu → Search Text → Search Forward

Search Forward

Finds the next occurrence from the current cursor. The match is selected and brought into view.

↑ This page’s hierarchy

Teleport Endpoints → Raw JSON → Right-click menu → Search Text → Close

Close

Closes the Search Dialog without changing JSON.

↑ This page’s hierarchy

Searching follows the current text cursor in the chosen direction. No more occurrences found. means the search reached its end; it does not automatically wrap to the other end. To search again from the beginning or end, close the dialog, reposition the Raw JSON cursor and reopen Search Text.

↑ This page’s hierarchy
↑ This page’s hierarchy
↑ This page’s hierarchy