Releases: markusmoenig/Eldiron
Releases · markusmoenig/Eldiron
Eldiron v0.9.12
Improvements
Creator
- Added a Geometry Object minimap path for 3D region editing, drawing a top-down XZ wire projection with selection highlights for objects, faces, edges, vertices, and surface-detail lines.
- Extended 3D Geometry Objects with area metadata so named objects can act as gameplay areas for sector-style script destinations such as
goto,teleport, andrandom_walk_in_sector, spawn object-linked items, and fade with Hide in Iso. - Improved Create Box in 3D edge mode so a selected floor edge can attach a wall box to the face below it, with wall thickness taken from the current grid step.
- Added Cut Profile for selected 3D Geometry Objects, starting with centered crenellation/battlement cuts across the full object.
- Added Cut Stairs for selected 3D Geometry Object faces, deriving a stair profile from one top face and one adjacent side face while keeping the result as a single object.
- Added Game / Shortcuts for overriding editor shortcut bindings by stable action ID, with the 3D Object, Vertex, Edge, and Face tools defaulting to
O/V/E/Fwhile preserving in-tool commands such as vertex fill, edge-loop selection, object rotation, and tile application. - Restored the surface-detail drawing workflow so switching from a selected face to the Linedef / Edge Tool enters detail mode and lets clicks add surface points on that face.
- Added Create Pattern for selected 3D faces, with guide mode for editable surface-line stamps and relief mode for generated raised pattern geometry. Patterns include discs, triangles, quads, lines, regular or interleaved tile grids, irregular rounded cobbles, and alternating comma-separated sequences, with PATTERN and BACKGROUND HUD material slots for relief generation.
- Improved action parameter editing so current Create Pattern TOML values are preserved across undo/refresh cycles, and added a modular minimap preview overlay hook used by Create Pattern to show the current pattern outline before applying.
- Added Create Face for closed 3D surface-detail loops, creating a new selectable coplanar face without cutting through the host object so drawn footprints can be extruded into new geometry.
- Added a rounded profile option to Create Ridge and Create Groove for softer surface-line details such as vines, roots, cables, and organic wall carving.
- Added arrow-key texture editing for selected textured 3D faces: arrows adjust offset, Shift+Left/Right rotates, and Ctrl/Cmd+arrows scales.
- Fixed surface-detail
Lexpansion so selecting one point or segment of a stamped or drawn guide loop can select the whole connected surface-detail component. - Fixed leaving surface-detail mode so switching back to Face, Vertex, or Object mode returns to normal geometry selection instead of keeping detail-mode picking active.
- Replaced the old Organic paint tool path with a Surface Noise action for selected 3D faces; the action exposes a
NOISEHUD material slot for tile/color assignment and clearing, and noise is stored per face/evaluated from object/world-space coordinates so adjoining noisy faces can stay continuous around corners.
Bug Fixes
Game
- Fixed the isometric game camera follow target so climbing stairs or elevated geometry keeps the player centered instead of drifting with height changes.
Eldiron v0.9.11
Improvements
Creator
- Improved 3D grid snapping to use power-of-two edit subdivisions from
1through1/32, matching practical mapping increments for precise mesh work. - Updated the 3D grid HUD and shortcut slots so
1through6select1,1/2,1/4,1/8,1/16, and1/32snap steps. - Changed the 3D
,/.shortcuts to step through edit snap subdivisions instead of changing the 2D pixel-grid zoom. - Improved 2D grid-subdivision button and fallback shortcut handling so the same
1through6snap slots are used consistently across Vertex, Linedef, and Sector tools. - Improved 3D vertex dragging so moved vertices snap onto absolute grid positions instead of preserving their previous off-grid offset.
- Improved 3D vertex/edge auto-merge so it also runs after gizmo-based vertex movement.
- Improved 3D edge splitting so splitting a selected edge on quad geometry performs a connected quad loop-cut instead of leaving larger unsplit faces.
- Improved 3D edge splitting on triangle and odd-polygon faces so selected-edge splits divide the touched face instead of only inserting an extra midpoint into the same polygon.
- Improved 3D Face Subdivide so neighboring faces share the new boundary midpoint vertices, preventing detached T-junctions around subdivided faces.
- Improved 3D cutouts on split faces so surface-detail loops that span multiple coplanar face pieces rebuild the full coplanar surface instead of cutting only the small host quad.
- Improved 3D gizmo and vertex/surface marker sizing so handles scale from camera distance instead of selected object size, keeping handles closer to large objects and less overwhelming on tiny details.
- Improved the 3D HUD coordinate readout to show three decimal places normally, four decimal places at
1/16, and five decimal places only at the1/32grid step. - Improved the 3D HUD coordinate readout so selected Geometry Object, face, edge, vertex, and surface-detail positions stay locked while hovering or dragging over other 3D objects.
- Improved 3D Object Tool multi-selection movement so dragging a selected object or its move gizmo moves the selected objects together.
- Improved 3D geometry dragging on small grid steps so free vertex, edge, face, and object movement uses a stable drag plane, and gizmo movement can skip across multiple snap points to keep up with the cursor.
- Improved 3D Object Tool rotation so
Rrotates selected Geometry Objects around Y, whileShift+Rrotates around Z for standing objects on end. - Added a 3D-only HUD length readout for selected Geometry Object edges, selected surface-detail segments, and the active surface-line drawing segment.
- Added 3D rectangle selection for Geometry Objects, faces, edges, and vertices, with Shift adding to the selection and Alt/Option removing from it.
- Improved 3D character and item placement so entity drops and moves can choose and render on the floor below overhead Geometry Object roofs instead of snapping onto the highest overlapping surface.
- Improved mesh character movement so tiny seams between adjacent walkable Geometry Object floors do not block traversal in either direction.
- Improved 2D/isometric movement input so simultaneous cardinal keys stay cardinal-only, using the most recently pressed direction instead of emitting diagonal movement actions.
- Improved 3D Edit Face Texture selection handling so explicit face selections edit only those faces, while object selections still edit all faces when no individual faces are selected.
- Improved 3D Edit Face Texture live updates so UV offset, scale, and rotation changes refresh the editor scene immediately without needing to start or stop the game server.
- Improved 3D face painting so applying or clearing tile and palette sources respects explicit face selections before falling back to whole-object application.
- Extended Edit Vertex to single selected 3D Geometry Object vertices, allowing exact world-coordinate edits for precise vertex placement.
- Added editor-only 3D preview actions for toggling post-processing and lighting while editing without changing project render settings.
Bug Fixes
Creator
- Fixed object-mode
R/Shift+Rrotation being intercepted by the Rect Tool shortcut before selected Geometry Objects could rotate. - Fixed the grid-subdivision HUD buttons painting over the bottom HUD separator line.
- Fixed duplicated Geometry Object selections so duplication is undoable and leaves only the duplicated objects selected at object level, giving multi-object duplicates one group-move selection instead of stale sub-object selections.
Renderer
- Fixed transparent water/glass volumes hiding opaque geometry inside or behind them, such as bridge elements disappearing inside water areas.
Eldiron v0.9.10
Improvements
Creator
- Changed the Game Tool shortcut from
AtoKso right-mouse 3D camera movement no longer conflicts withWASDnavigation. - Improved right-mouse 3D camera movement by grabbing the cursor and feeding raw mouse-motion deltas into the editing cameras while dragging.
- Extended the same captured right-mouse camera movement path to the Xcode / macOS FFI build.
- Improved direct 3D Create Box behavior so newly-created boxes switch to the Object Tool immediately and remain selected for object-level editing.
- Improved 3D tool switching so stale object, face, edge, vertex, and surface-detail selections no longer keep driving shortcuts after changing tools.
- Improved 3D tool switching so selected objects convert into all faces, edges, or vertices when switching to the Face, Edge, or Vertex tools, and selected faces convert into editable vertices when switching to Vertex.
- Improved 3D Face Fill so selected vertices are ordered around their plane before creating the face, avoiding twisted faces from unlucky selection order.
- Improved 3D Edge Tool feedback so newly-created split vertices are visible immediately after splitting selected edges.
- Improved 3D vertex
Xsplitting so two selected non-neighboring vertices on one face split that face along the diagonal instead of leaving an invalid polygon. - Added 3D vertex/edge
Mmerging so selected geometry vertices or edges collapse to their center and affected faces are rebuilt. - Added 3D vertex/edge auto-merge while dragging, so moved vertices collapse into existing vertices when they land on the same grid position.
- Improved 3D topology cleanup after edge split, merge, fill, drag, and vertex delete operations by dropping degenerate faces, triangulating concave/non-planar faces, and refreshing affected UVs.
- Improved 3D grid HUD feedback by keeping the compact
1...0shortcut slots and showing the active snap step beside them. - Improved the 3D grid overlay so visible subdivision lines now match the active
1...0snap step used by geometry movement, resizing, extrusion, duplication, and surface-detail editing. - Improved 3D Face Subdivide so all newly-created child faces stay selected, making repeated subdivision work immediately.
- Shortened the 3D object-selection status text so the footer focuses on hidden HUD mode shortcuts instead of repeating visible action shortcuts.
- Fixed the 3D
,/.grid-size shortcuts so they redraw immediately and stay clamped to valid grid sizes. - Fixed camera shortcuts such as
Cmd/Ctrl+3so they no longer also trigger the plain grid snap shortcuts. - Improved the 3D HUD coordinate readout so selected geometry continues to show a useful position even when the cursor is no longer hovering the object.
- Improved the 3D HUD coordinate readout so it falls back to the ground plane when no object is hovered.
- Improved 3D object gizmo sizing so handles stay closer to large selected objects instead of scaling far off-screen.
- Added object-mode
R/Shift+Rrotation for 90-degree vertical-axis turns on selected Geometry Objects. - Added object-wide
Ttile/color application for selected Geometry Objects, matching the face-level material shortcut while applying the current tile source to every face. - Added per-face 3D texture placement controls for selected faces or selected Geometry Objects, including UV offset, scale, and rotation.
- Improved 3D face texture editing so offset, scale, and rotation parameter changes update the viewport immediately.
- Added direct Geometry Object visibility, solidity, and group-label properties as the foundation for helper geometry, trigger/water volumes, and grouped level pieces.
- Improved mesh collision for direct 3D geometry so walkable faces sample their actual face plane instead of an averaged height, with more robust floor lookup around chunk boundaries.
- Removed legacy terrain/procedural parameter groups from Edit Vertex, Edit Linedef, and Edit Sector; these 2D actions now expose only current map-edit metadata.
Bug Fixes
Creator
- Fixed the 3D HUD position readout so the displayed
Yvalue uses the actual hovered surface height instead of snapping to the edit grid, avoiding flicker between floor levels. - Fixed mesh collision movement so actors can step onto low raised Geometry Object floor edges within the allowed step height instead of being blocked by the cap's vertical side.
Server
- Fixed character lifecycle ordering so the
startupevent is sent before the initialenteredevent for loaded and spawned characters.
Eldiron v0.9.9
A fresh start in 3D with a block-editing style workflow.
New Features
Creator
- Added the new direct 3D geometry editing path for Regions, centered on editable Geometry Objects instead of the older generated/procedural 3D authoring workflow.
- New projects and newly-created Regions now start with a centered starter box so 3D editing has an immediate object to select, resize, subdivide, paint, and cut.
- Added 3D object, face, edge, and vertex editing through the existing tool vocabulary:
- Object Tool selects and moves whole Geometry Objects.
- Sector / Face Tool selects and edits geometry faces.
- Linedef / Edge Tool selects geometry edges and draws face-local surface lines.
- Vertex Tool selects and edits geometry vertices.
- Added direct 3D face actions for creating and editing blockout geometry, including Create Box, Face Extrude, Face Subdivide, Face Inset, Face Merge, Face Delete, and Cut Opening.
- Added face-local surface detail drawing with persistent point/segment data, including line previews, Escape-to-finish behavior, cube-style point handles, selectable segments, and closed-loop support.
- Added Create Ridge and Create Groove actions that convert selected surface lines into persistent raised or recessed geometry, with box and triangle stroke profiles and inherited host-surface material sources.
- Added polygon cutouts from closed surface-line loops, allowing window/door-style openings through Geometry Objects without relying on hardcoded arch/window actions.
- Added direct 3D tile and color application for Geometry Objects, including object-wide material assignment, face material assignment, Rect Tool face painting, palette-color sources, and support for tile/color/tilegraph/nodegraph sources through the same tile-source path.
- Added 3D Rect Tool hover previews and live painting on geometry faces, with nudged render geometry to avoid z-fighting against the host surface.
- Added 3D editing HUD updates for the current selection, including localized status text that shows the available object, face, edge, vertex, and surface-detail shortcuts.
- Added dedicated 3D HUD slots for object MOVE / SIZE modes instead of reusing tile/material icon slots.
- Added 3D camera shortcut and control cleanup for Iso, Orbit, and FirstP editing views, including arrow-key target panning in 3D editing cameras.
- Added FirstP fly navigation for the Creator:
Spacetoggles fly mode, pointer position controls looking/turning,WASDmoves through the level, andEscapeexits back to normal editing. - Added live Rect Tool painting previews in 2D and the new direct 3D path so tile/color strokes appear while dragging instead of only after mouse release.
- Added mesh-collision feeding from direct 3D Geometry Objects, so edited floors, walls, and cutouts participate in 3D movement collision instead of relying on the old procedural 3D path.
- Added procedural tile metadata in Edit Tile Meta, allowing tiles to be tagged by style, kind, and weight for generated maps.
- Added procedural generation support for entrance/exit marker tiles, weighted item spawns such as doors, and weighted character spawns such as dungeon monsters.
- Added support for endless 2D roguelike-style procedural loops, where scripts can scale
region.procedural.*settings, rebuild the current dungeon, and place the player at the regenerated entrance.
Scripting
- Added
world_event(event, value)and the matching visual scripting World Event block, allowing characters, items, and region scripts to delegate orchestration to the World script'sevent(event, value)handler. - Added
teleport_entity(entity_id, sector, region)and the matching visual scripting Teleport Entity block so World scripts can move a player or NPC passed in through a world event. - Added
build_procedural(seed)and the matching visual scripting Build Procedural block so World scripts can regenerate 2Dconnected_roomsprocedural regions during play. - Added script access to live region procedural settings through context variables such as
region.procedural.room_countandregion.procedural.characters.skeleton.percentage, enabling roguelike difficulty scaling before regeneration.
Optimizations
Creator
- Improved direct 3D editor responsiveness by coalescing redundant hover/drag events, processing only the newest queued geometry drag, and throttling expensive overlay refreshes.
- Improved Rect Tool and Organic Tool responsiveness by using dirty chunk updates and avoiding full geometry overlay rebuilds during common paint drags.
- Improved tile-paint commits so tile-only strokes dirty affected scene chunks instead of forcing a full scene-manager rebuild.
Client
- Improved wgpu client UI sharpness by switching the RGBA overlay sampler to nearest filtering.
Documentation
- Rewrote the 3D editing documentation around the new direct Geometry Object workflow, including object, face, edge, vertex, surface-line, ridge/groove, cutout, Rect painting, camera, and shortcut behavior.
- Renamed the 3D-facing tool documentation to match the new shared terminology, including Sector / Face Tool and Linedef / Edge Tool.
- Added documentation for the new 2D procedural dungeon workflow, including Build Procedural,
[procedural]region settings, procedural tile metadata, door/item generation, character generation, and regeneration behavior.
Bug Fixes
Creator
- Fixed Rect Tool and Organic Tool previews so they remain visible when editing geometry is hidden, without forcing the rest of the editing geometry overlay back on.
- Fixed the direct 3D Rect Tool paint preview so the preview rectangle follows drag painting again while still using throttled overlay updates.
- Fixed 3D Rect Tool side-face painting so painted tiles are visible without z-fighting against the selected Geometry Object face.
- Fixed face editing so moving and resizing faces preserves visible UV/checker material feedback after the edit commits.
- Fixed direct 3D selection transitions so switching into face editing with no selected face no longer leaves a stale broken gizmo/object-move state.
- Fixed cutout generation so closed surface-line loops create real through-openings instead of capped recesses.
- Fixed renamed/older 3D starter projects with Rect-painted geometry faces failing to load by accepting both legacy face tile-cell maps and the new vectorized tuple-key format.
- Fixed 3D entity and item editor previews so dragged or placed instances snap to edited geometry floor height instead of flickering between world zero and the floor.
- Fixed Organic Tool terrain painting undo so terrain brush strokes can be reverted like surface strokes.

Eldiron v0.9.8
New Features
Creator
- Restored Creator self-update support for Windows and Linux release builds, matching the GitHub release asset names generated by the release workflow.
- Added macOS update detection that shows the same
Update to v...button when a newer GitHub release exists, opening the Eldiron releases page instead of trying to replace the signed app bundle in place.
Client
- Added
--render-debugtiming output for the wgpu client and SceneVM renderer to diagnose adapter/backend selection, frame preparation, draw, overlay, and raster-stage timings.
Bug Fixes
Creator
- Fixed self-update release detection so newer versions are compared in the correct direction and the latest release is selected reliably.
Renderer
- Fixed severe SceneVM Raster 3D CPU spikes in dense scenes with dynamic billboards and particles by caching static geometry separately and updating only dynamic tails instead of rebuilding the full mesh every frame.
- Fixed SceneVM Raster 2D dynamic billboard rendering so static 2D geometry is cached separately and no longer rebuilt every frame when avatars, items, or particles are present.
- Reduced Raster 3D CPU usage by caching static visible / opaque / transparent / particle index splits and reprocessing only dynamic geometry when the camera and static visibility are unchanged.
- Improved 3D hover-picking performance by using cached transformed raster geometry with per-triangle GeoId metadata instead of re-walking and transforming chunk polygons during mouse movement.
Eldiron v0.9.7
New Features
Creator
- Added the new brush-based Organic Tool workflow for painting surface detail directly onto map surfaces, replacing the older graph-driven organic authoring direction.
- Added a dedicated Organic dock with a live brush preview, visual brush-shape presets, and compact controls for
Base,Border,Noise,Brush Size,Border Size,Noise Amount, andOpacity. - Added Organic toolbar controls for
Free / Locked,Clear, andActive / Deactive, plus a 3D brush-footprint preview for organic painting in place of the generic hover marker. - Added renderer style and post-processing controls for a less shiny retro RPG look, including
style = "clean" | "retro" | "grimy"and post controls forgrit,posterize,palette_bias,shadow_lift, andedge_soften. - Applied the stylized post-processing controls to Raster 2D as well as Raster 3D, so 2D and 3D views can share the same authored color treatment.
Server
- Added the
ensure_activeNPC sequence step so scripted routes can enforce stateful interactions such as opening a door only if needed and closing it again afterward. - Added
hold_speedfor grid-based held movement, so characters can use a fast first-tilespeedwhile keeping sustained held movement smooth and continuous. - Added configurable
[game]simulation pacing withsimulation_mode = "realtime" | "turn_based" | "hybrid"andturn_timeout_ms, so projects can choose between continuous simulation, fully player-driven turns, or Ultima-style idle turn stepping. - Added
multiple_choice(entity, prompt, choice_attribute)for script-defined choice menus using labels authored as character attributes. Selecting an option sends both{choice_attribute}and{choice_attribute}:{index}back to the offering character. - Added the new
dialog(entity, node)system for TOML-authored nested dialogs, including node transitions, continue-style choices, choice events, simpleif/unlessconditions, localization/substitution support, and visual scripting support.
Documentation
- Added Organic Tool documentation covering the new brush-based workflow, dock layout, toolbar controls, and 3D brush preview behavior.
- Added configuration docs for the new renderer style and stylized post-processing settings, including their runtime
world.post.*/region.post.*override fields. - Clarified the
say(...)command documentation to show both the default one-argument form and the optional category-color form. - Moved new
say(...)presentation documentation from global game config to game widget[say]settings. - Added documentation for script-defined multiple-choice menus and TOML-authored nested dialogs, including localization-key usage and message-widget filtering.
Bug Fixes
Creator
- Fixed Organic tool undo / redo and related dock-state restore behavior so brush painting no longer bounces the UI back into the tile picker workflow during restore.
- Improved Organic brush editing so presets are shape-only, thumbnails reuse the current brush colors, and noise is exposed as an actual adjustable paint contribution instead of only a preview accent.
- Fixed project render settings sync so loading a project and editing project settings now apply the same renderer/post/daylight defaults instead of changing the visible sun-shadow state after the first settings edit.
Renderer
- Softened Raster 3D sun-shadow sampling and increased default shadow biasing in the shader to reduce hard shadow acne seams.
- Fixed two-sided 3D lighting so sun shadows and direct lights use light-facing normals instead of camera-facing normals, preventing surfaces from changing lit state when the iso camera moves.
- Added exact compile-time layout checks for the Raster 3D uniform block to guard against backend-sensitive WGSL/Rust alignment mismatches.
Server
- Fixed grid-based player movement so the character
speedattribute now actually affects direct tile stepping, instead of being hardcoded to1.0. - Fixed Eldrin compilation of
say("Text")so the optional category parameter is truly optional, matching the runtime handler and documentation.
Client
- Fixed 2D game widgets so
say(...)speech bubbles render above characters and items like they already do in 3D views. - Game widgets now prefer their own
[say]section for speech bubble duration, text colors, and background styling, with legacy global[say]config kept as a fallback. - Messages widgets can now use
handles = [...]to split regular messages, dialogs, script multiple-choice menus, and inventory offers across different widget placements. - Messages widgets can optionally draw sender portraits from
portrait_tile_idwithportrait = true,portrait_size, andportrait_gap. - Fixed bottom-up Messages widget rendering for very long wrapped messages so the newest/lower lines remain visible instead of the message being culled when its first lines overflow above the widget.

Eldiron v0.9.6
New Features
Server
- Added the first NPC sequence system for character background workflows, with TOML-authored
behavior.sequencesand step-basedgoto,use, andwaitactions. - Added sequence runtime script commands
run_sequence(...),pause_sequence(),resume_sequence(), andcancel_sequence()so event handlers can coordinate background behavior with reactive NPC logic such as talk, combat, and time-based routines. - Added timeout- and distance-aware
offer_inventory()sessions for vendors, driven by the sellertimeoutattribute and[intent_distance]setup, with automaticgoodbyecloseout when the buyer leaves range or the session expires.
Bug Fixes
- Reduced 3D mouse-hover sampling in the Creator and graphical clients to 5 times per second and accelerated static geometry hover picking with
rayon, improving dense-scene mouse-move performance on projects likeVillage3D. - Improved the screen Messages widget layout by adding explicit spacing between wrapped message blocks, making consecutive messages easier to distinguish.
- Fixed Messages widget multiple-choice /
offer_inventory()layout so item names and prices are rendered as separate left/right columns again instead of collapsing into one inline text run. - Fixed
offer_inventory()session handling so shop interactions now end withgoodbyewhen the buyer times out or moves too far away, instead of allowing stale purchases from an invalid distance. - Fixed
random_walk()in 2D so it now uses the same tile-centered pathing behavior asrandom_walk_in_sector(), keeping characters aligned to.5 / .5tile centers instead of drifting toward tile boundaries. - Fixed 2D
random_walk()/ pathfinding hangs by rejecting blocked destination tiles before running unbounded A* searches. - Fixed 2D
random_walk()target picking in tight spaces so NPCs prefer nearby walkable tile centers before falling back to continuous random points. - Fixed 2D blocked-tile movement so actors spawned inside blocking content can step out of their starting tile instead of getting trapped permanently.
- Fixed
goto()in 2D so low-speed movement no longer stalls from overly aggressive straight-line progress checks while routing around blockers. - Fixed high-speed 2D
goto()/ path-following so reaching an intermediate path tile no longer incorrectly marks the full destination as arrived. - Fixed
goto()so blocking items and entities now stop movement instead of being ignored by the runtime path step. - Fixed grid-aligned 2D
goto()so NPCs now stay grid-aligned when blocked by dynamic obstacles such as closed doors. - Fixed grid
goto()so temporary blocking by another actor no longer cancels the route permanently and NPCs resume once the blocker moves away.
Eldiron v0.9.5
New Features
Creator
- Added tile aliases for single-tile sources via Edit Tile Meta, with alias-aware tile lookup across Creator inputs and runtime tile-source usage such as
tile_idandset_tile(). - Added
Alt/Opttile picking to the Rect Tool, so clicked 2D/3D rect sources can be sampled from the map and revealed in the tile picker.
Documentation
- Updated the docs to consistently describe tile sources as supporting UUIDs, tile aliases, and palette indices, including
tile_idusage,set_tile(), and the Edit Tile Meta alias workflow.
Bug Fixes
- Fixed debug-mode Play startup so existing Eldrin
source_debugscripts are no longer silently regenerated from visual scripts unless the debug source is actually empty. - Fixed
set_tile()for entity scripts so player / character tile changes now update through the active server host path and propagate as appearance changes to clients. - Fixed standalone client palette-index geometry so clients now initialize
rusterixwith the project palette and palette materials before building runtime tiles, matching Creator behavior. - Fixed 2D movement collision so unnamed internal rect-tool seams no longer behave like blocking walls, while arbitrary sector shapes and real boundary linedefs still block correctly.
- Fixed 2D pathing so tile-based movement targets tile centers instead of tile corners, preventing NPCs from drifting onto
.0tile boundaries instead of.5centers. - Fixed 2D direct movement so blocked tiles are still respected even when collision comes from tile occupancy rather than linedef walls.
- Fixed
2d_gridstep movement from off-center start positions so forward / backward movement recenters onto the grid instead of falsely treating lateral correction as blocked movement. - Fixed sector
leftevents so leaving a sector no longer routes through the wrong internal event name and is now delivered correctly to Eldrin scripts. - Fixed Windows mouse-move stutter in dense 3D scenes like
Village3Dby throttling expensive 3D hover-picking in both the Creator and the graphical clients to the game’s 30 FPS cadence instead of recomputing picks on every raw cursor event.
Eldiron v0.9.4
New Features
- Added the new
pixelsWinit backend as the default accelerated path, including wasm/Chrome surface-format negotiation and an explicitsoftbufferfallback feature for platforms or builds that need it.
Bug Fixes
- Fixed standalone client game-widget mouse release handling so 3D item click intents and world-item drag-and-drop into inventory/equipment slots are no longer dropped on
touch_up().
Eldiron v0.9.3
New Features
Creator
- Improved the Remap Tile action with
remap_allsupport, multiple remap modes, and better palette-reduction handling for aggressive color-count changes. - Added configurable 2D viewport and screen background colors via
background_color_2dandscreen_background. - Improved 2D avatar rendering stability and added
size_2dfor character avatars, allowing 2D-only avatar scaling without affecting the 3Dsizebillboard scale. - Added World and Region scripting entries to the project tree, plus runtime
world.*/region.*render and post overrides for palette remap, fog, background, and related visual settings. - Added automatic item drag-and-drop between world, inventory/equipment slots, and terrain in both 2D and 3D game views.
- Added the first expandable party-bound UI layer for screens, including
partywidget bindings, portrait button support viaportrait_tile_id, and party-aware inventory/equipment slot interaction without breaking existing player-bound screens. - Added configurable 2D visibility / LOS masking via
visibility_range_2dandvisibility_alpha_2d, including runtimeworld.render.*/region.render.*control and tile-blocked sight usingMapMini. - Added optional click-based 2D intents via
click_intents_2d, optional 2D terrain auto-walk viaauto_walk_2d, and optional 2D target highlighting viatarget_rect_color.
Bug Fixes
- Fixed Entity Tool delete handling so character/item deletion no longer hangs from the keyboard path.
- Fixed tile metadata blocking changes so tile status, live tile caches, and runtime blocking update immediately without requiring a save/restart.
- Inverted 2D editor arrow-key panning on Windows and Linux so the cursor keys move the view in the expected direction, while keeping macOS behavior unchanged.
- Added
Home/Endkeyboard support to text editing widgets, including line start/end navigation andShiftselection in both single-line and multi-line editors. - Fixed
Extrude Linedefso it no longer duplicates the base vertices / bottom edge of the source linedef during extrusion. - Fixed Messages widget word wrapping so wrapped lines no longer intermittently show
...from the text truncation path. - Fixed Creator Debug Log auto-opening so general scripting warnings/errors, including runtime setup script failures, are surfaced more reliably instead of only some startup cases.
- Fixed 2D
random_walk_in_sectortarget picking so NPCs no longer jitter against sector borders from repeatedly choosing borderline-invalid walk destinations. - Added the Eldiron Creator version number to the window title bar.
Documentation
- Added docs for
background_color_2d,screen_background, and the newsize_2dcharacter attribute. - Added docs for the new world/region scripting tree items and the
world.render.*,region.render.*,world.post.*, andregion.post.*runtime override paths. - Added docs for party-bound screen widgets, portrait buttons, and the new
party_index,party_role, andportrait_tile_idcharacter attributes. - Added docs for
click_intents_2d,auto_walk_2d,target_rect_color, and 2D intent cursor support on screen widgets.
