3D World Editor

Build and change worlds inside the game: fly a free camera, aim at cells, place the game's own blocks, objects and scenery, then play-test at once.

The editor follows the editors of Speedy Blupi and Eggbert 2: the same palette groups in the same order, the same variant cycling, the same automatic re-tiling of rock edges, the same lift speeds. Because it works in 3D it adds tools of its own: a free-fly camera, 3D box selection, copy and paste, quarter turns, backups and thumbnails. This page describes the state as of 2026-11-10.

The rule. The editor is the one approved exception to the faithful-remake rule: it may add authoring UX, but no gameplay mechanics. Everything it places is a block, object or decor the game already has, behaving exactly as in the campaign.

Opening the editor

Way inWhat opens
Main menu, 3D World Editor (above Play)The world screen of the selected player.
World screen, GalaxyThe player's own galaxy; see Your Own Galaxy.
Typing xnjttjpo during playThe editor on the world being played (Speedy Blupi's XMISSION cheat).

The world screen

Each of the three players has ten world slots, shown as a grid of five by two. An occupied slot opens; an empty one creates a new world there, a small playable starter (a 3x3 board of rock, a treasure chest, an exit arrow and Blupi's start). A slot's bin deletes its world after a second click. Slot 1 is seeded once with the showcase world, and the gallery (every block, object and scenery piece in one world) goes into the next free slot. Worlds outside the ten slots and shared worlds are listed under "Other worlds": a click copies one into a free slot. Back (or Escape) returns to the main menu.

Editing a campaign world: xnjttjpo

Typed during play (no Enter), the cheat opens the editor on the mission's own world file. Saving writes the shipped world itself, the versions before it kept in customworlds/campaign-backups/; Stop returns to the mission, started again with the edits. Afterwards Pause shows an Original button: after "Sure?" the world as shipped comes back and the mission restarts. On the web the shipped worlds live in the page's data, so each edit is kept in the browser's storage and laid over them at every start. Like every typed cheat it needs a build with cheats enabled and is blocked by fairplay; see Cheats & Diagnostics.

Camera and aiming

The camera flies freely: W/A/S/D move, Ctrl rises, Shift or Z descends, the right mouse button held turns the view, the mouse wheel zooms. A ray from the cursor through the voxel grid finds the aimed cell (VoxelRaycast):

NumPad 4/6 (X), 8/2 (Z) and 7/9 (Y) move the placement cell away from the aimed one; that coordinate stays fixed while the camera moves, until NumPad 5 aims with the cursor again. The world's bounds carry its axes: X red, Y green, Z blue.

The palette

The icon palette has the ten groups of Eggbert 2's editor in its order, then one group of Galaxy's own. A group mixes terrain blocks, objects and big scenery (BigDecor) as the original's menus did. An entry the game cannot place yet stays in its original position and shows "Not yet implemented."

#GroupEntriesWhat it holds
1Scenery11Mostly BigDecor families (trees, palms, plants, houses, machine and toy backgrounds); the marine plant, a support and a web are cells
2Technical blocks8One representative tile from each of the original's technical tables
3Rock and terrain10Terrain tiles
4Buildings10Building tiles, among them the brick wall and the flight barrier
5Hazards12Patrol and following enemies, lava, a fan, spikes, the drip, the saw, the inverter, the lightning, the crusher
6Moving mechanisms13The lift at four speeds, the conveyor lift, fish, bird, wasp, the large creature, spider, enemy Blupis
7Treasures9Treasure chest, extra-life egg, lollipop, shield, drink, ammunition, charge, the personal mine, dynamite
8Keys and progression10A key, doors, the hub door, a teleporter, a spring, temporary blocks, bridges, the crate and the secret crate (camouflaged as the selected terrain)
9Vehicles5Overcraft, helicopter, skateboard, jeep, tank
10Characters and goals8The exit, the four coloured Blupi starts, posts, signs, the golden key
11Background (Galaxy)32 + 11The 32 sky regions as live thumbnails, then the music: none or tracks 1-10

Placing and changing

3D selection, box fill, copy and paste

Undo and redo (U and R) cover every edit: blocks, objects, BigDecor, sky, music, Blupi starts, turns, object ends and timings.

Objects, routes and lifts

A lift or creature from the moving mechanisms is placed, then the next click sets the end of its route (the editor prompts for it); Escape or a click on it again leaves it still. The four lift entries are one lift at the original PC editor's four speeds, in 20 Hz ticks per cell: slow 20/20 with a rest of 20, normal 10/10/10, fast 6/6/3, and fast-up/slow-back 5/22/2.

The four Blupi starts

Characters and goals holds four independent starts: yellow, orange, blue and green, each drawn in its colour. Moving, turning or removing one leaves the others alone, even when two share a cell. Yellow is the single-player start, and its heading is the one Blupi faces when the world begins.

Sky region and music

The Background group's thumbnails choose the world's sky region (its background picture); the Left and Right arrows step through them too. Its note entries, or the M key, choose the world's music: none or one of the original ten tracks.

Saving and play-testing

Backups, export and import

On the world screen, Backups turns a click on a slot into a restore of its newest backup; clicking again steps further back and comes round to where it began. A deleted slot keeps its world the same way. Export turns a click on a slot into a copy in the shared folder (A-world-3.vwr for player A's slot 3, replacing an earlier export of that slot); on the web the file is also downloaded. Import opens the browser's file picker on the web; elsewhere it tells you where to put files. Shared worlds are listed first among the other worlds, newest first.

FilePath in the player's folder
Slot K of player N (N = 0, 1, 2)customworlds/gamerN/custom_00K.vwr (custom_010.vwr for slot 10)
Its backupscustomworlds/gamerN/backups/custom_00K.1.vwr (newest) to .3.vwr
Its thumbnailcustomworlds/gamerN/custom_00K.png
Shared worldscustomworlds/shared/
The galaxycustomworlds/gamerN/galaxy/
Campaign worlds edited with xnjttjpocustomworlds/campaign-backups/, campaign-edits/, campaign-originals/ (the last on the desktop; the web keeps the originals in memory)

The player's folder is the system's per-user folder on the desktop (~/.local/share/Galaxy Eggbert on Linux, %LOCALAPPDATA%\Galaxy Eggbert on Windows, or --user DIR), /save in the browser's storage on the web, and the app's private storage on Android. World files are ordinary .vwr files; see The .vwr format.

Controls

Keyboard and mouse

H shows these keys on the screen.

InputAction
W A S DFly
Ctrl / Shift or ZUp / down
Right mouse button held, wheelLook, zoom
Left click, SpacePlace in the cyan cell (click again on it: next variant)
Ctrl + clickPlace without cycling; when pasting, keep what is under the copy's air
Delete, Backspace, middle buttonRemove the red selection
V / ONext variant / quarter turn
NumPad 4/6, 8/2, 7/9; NumPad 5Offset the cell in X, Z, Y; aim with the cursor again
Shift + NumPadExtend a 3D selection
F / C / P / Q / XBox fill / copy a box / paste / turn the copy / mirror the copy
U / RUndo / redo
G / T / Tab / + / -Pick an object or start / set its end / next field / change the value
Left / Right arrows, MBackground, music
Enter / Escape / F10Save / cancel / Stop

Touch

Touch editing needs no keyboard. The Move pad flies horizontally, the Up/Down buttons change height, and dragging the world with another finger looks around. Palette entries and PLACE are tapped as buttons. Tools > Select 3D replaces holding Shift, and six X-/X+/Y-/Y+/Z-/Z+ buttons extend the selection.

Gamepad

ControlAction
Left stick / right stickFly / look
RT / LTUp / down
A / X / BPlace / remove / cancel
D-pad, LB / RBOffset the cell in X and Z, and in Y
YSwitch between flying and an on-screen cursor (sticks move it, A clicks palette and Tools)
Start / BackSave / Stop (with the unsaved-change guard)

The menus and the world screen use the cursor automatically, so a whole session can start and end on a gamepad; the mouse keeps working while one is plugged in.

The Tools menu

For touch and gamepad, the Tools menu lists every command with its keyboard equivalent (EditorDeviceControls): Save (Enter), Undo (U), Redo (R), Select 3D, Cancel (Escape), Remove (Backspace), Turn (O), Variant (V), Pick object (G), Set end (T), Next field (Tab), Value + and Value -, Delete obj (Delete), Copy box (C), Paste (P), Turn copy (Q), Mirror (X), Box fill (F), Keep (Ctrl's place without cycling), Reset XYZ (NumPad 5), Music (M), Help (H) and Stop (F10).

For developers

The editor lives in src/GalaxyEggbert/Editor/, namespace GalaxyEggbert::Editor.

SourceRole
WorldEditor.hpp, WorldEditor.cpp, WorldEditorUpdate.cppOne editing session: camera, aiming, placement, history, saving. See WorldEditor.
EditorDeviceControls.*Touch and gamepad front end; it only produces the keyboard and mouse input the editor already understands.
PaletteCategories.*, EditorPalette*.*The groups in Eggbert 2's order, and the palette's input, layout and drawing.
VoxelRaycast.*, BoxRegion.*, Clipboard.*Aiming, 3D selections, copy and paste.
EditCommandStack.*Undo and redo.
AutoTile.hpp, EditorVariants.hppRe-tiling and variant families.
ObjectPathRenderer.*, ObjectPathMarkers.hpp, PlayerStartColor.hppRoute cubes and the coloured starts.
CustomWorldStorage.*, EditorBrowserScreen.*, GalaxyBrowserScreen.*, PlatformFiles.*Slots, backups, thumbnails, sharing, the web's download and file picker. See CustomWorldStorage.

Tests: VerifyGEWorldEditor, VerifyGEEditorDevices, VerifyGEEditorPalette, VerifyGEEditorStorage, VerifyGEEditorObjects. The comparison with the original editors, row by row, is plans/audit/editor_parity.md (ED-0001 to ED-0013).

Verification status (as of 2026-11-10)