Repository navigation
OpenCAGE version 1.0 is here! It brings an extensive new feature set including the ability to build entire custom levels from scratch, import/export animations and sounds, debug and edit the game in realtime, and much much more. There's also a new mod manager to export your creations, or import mods from other creators!
Along with all these new features there's a ton of UX improvements like copy/paste, previews, and undo/redo (or perhaps most importantly - a dark mode!), massive improvements to the rendering quality and performance of the 3D viewport, and far too many bug fixes to list in the changelog.
Check out the launch trailer on YouTube!
Download on Steam!
- Added a Mod Manager:
- Install mods from other modders via mod packages, which can be installed by double clicking the file or dragging them onto OpenCAGE
- Supports handling conflicts across multiple installed mods
- Allows reverting changes back to vanilla
- Supports creating your own mod packages for distribution
- Choose exactly what goes into a mod you make: individual composites, assets and settings, and UI and animation changes one by one
- Choose how a mod you make installs - combined with other mods that change the same levels and files, or replacing what it changes whole - and save a new version of a mod you've installed to take its place
- Added new 'Live Link' functionality:
- Added/modified/removed script entities live update in-game while Live Link is connected - place composites and modify lights, characters, and more in real time
- Dragging an entity with the viewport gizmo, or picking a colour in the inspector, updates the running game as you go
- See real-time script activity in the flowgraph (Show Activity) including active links and trigger counts via new highlighted links and method/target annotations
- Trigger methods on entities manually via a new dropdown in the inspector
- Sync the camera to the viewport to see the in-game camera position in OpenCAGE, or vice-versa
- Play CAGEAnimations in the running game from the CAGEAnimation editor's Animation Mode, to time them against the real level as you edit
- Capture new cubemaps for EnvironmentMap entities in-game (one at a time from the inspector, or all at once with File > Recapture All Cubemaps) - they're automatically imported and assigned, replacing the old ones, at their size or one picked in Options > Misc > Cubemap Capture Size
- Changes made in the Radiosity, Hair and Skin Shading, and Global Constants editors show in the running game as you make them
- Changes made in the Alien Configs, Difficulty Settings and Viewcones editors reach the running game too, which reads those files again after each edit instead of only when it starts - needs the Debug Menu
- Added a script debugger: set breakpoints on flowgraph nodes (right-click > Set Breakpoint, or F9) or on a single method pin (Break on ...) to stop the game's scripts when an entity's methods are about to be called, see the calls that led there, then Continue (F8) or Step (F10) - needs the Debug Menu
- The composite toolbar's 'Script Debugger' menu, each item with its own icon, has Go to Breakpoint, Remove All Breakpoints, Show Live States Above Nodes (each entity's state and data pin values in the running game, over its node), Select Entity Under Game Crosshair, Pause the Game's Scripts, Jump to Node When a Breakpoint Hits and the Runtime Error Log
- Added a Runtime Error Log (Launch Game's new 'Error log' option, under Live Link): the level's script errors and failed checks listed as the game finds them, like a game engine's console - double-click one to go to its entity, flowgraph nodes with errors show a warning sign, with Clear, Clear on Play (on by default) and Group by Entity
- Options > Misc > Hide Live Link Label In-Game takes the 'OpenCAGE Live Link' label off the game's screen, straight away while connected
- Works with the Steam, GOG and Epic Games Store versions of the game
- Added a new 'Debug Menu' launch option, an in-game debug menu (press F7 - rebindable), with its tabs in groups:
- Overview: the level, current and loaded zones, the player's position and speed, the frame rate, draw calls, GPU time and memory in the corner of the screen
- Characters: what every character senses, knows and is doing (with labels, view cones, hearing ranges and paths drawn over the game), controls to change them, their animation trees, clips and skeletons, player cheats, teleports and items, and the alien's menace and what it has learnt
- AI: follow each character's behaviour tree live, see the squads, toggle the trees' own debug switches, and log their debug actions and state changes
- World: what's under a crosshair (its collision, material, entity and model), the zones streaming in, and trigger boxes, doors, the nav mesh, cover, jobs and physics drawn over the game
- Scripts: the script errors the game never reports, waiting calls and trigger counts, saved variables and objectives, global events, CAGEAnimations, a script profiler and the cameras
- Sound: every sound playing and what played it, an event log, speech and subtitles, what the AI hears and the route the sound took through the sound network, and the music - plus making noises for the AI and playing sound events
- Rendering: the game's own rendering switches and debug views, muting or soloing lights, what the radiosity, post-processing and render targets are doing, and why something isn't drawn
- Performance: frame time, draw calls and the renderer's fixed limits, GPU and CPU timing, memory and streaming, and the game's UI memory overlay
- Game: the game's flow and every level to load, saves and achievements, debug and level checkpoints, pausing, stepping and game speed, and alerting, withdrawing or resetting the AI
- Cinematic: the free camera and its tools, which replace Cinematic Tools (see below)
- Characters > Player's cheats include 'Stench of evil' (every enemy near the player dies), 'Invisible but audible' (the AI hears the player but can't see them), 'Break free of strangles' and 'The alien can't grab the player'
- Characters > Player's 'God mode' and 'The alien can't grab the player' also stop the alien's grab and its vent ambushes, which kill without doing damage (god mode keeps facehuggers off the player too)
- Characters > Player can send the HUD's screen-effect events (low health, strangle, death, hits, a medkit's heal...) by hand, for testing HUD mods
- Characters > Control can make an NPC invulnerable, test damage effects (stun, EMP, blind, acid, gas, fire) on it or on everyone nearby, and ragdoll it and stand it back up - plus a choice of damage for every NPC (one-shot kill, one-shot maim, at most 1 damage, nobody dies) and a switch that keeps hurting or killing an ally from ending the game
- AI > Tuning can have the running game read the alien configs, difficulty settings and viewcones again
- The Sound tab's 'AI hears in straight lines' has the AI hear every sound by its straight-line distance, leaving the sound network out - a quick check of a level's sound network
- Game > Tools has a fixed time step, for smooth captures and repeatable tests (camera tracks keep to it), and snapshot slots (experimental) that restart the level from an earlier checkpoint again and again without touching your saves (with 'Don't write saves' on)
- Its lists of things around the camera (environment animations, cover, off-mesh links and traversals, lights and sounds playing) are sorted nearest first once a second and keep their order in between, so their rows no longer jump about as the camera moves, and character labels close together on screen no longer print over each other
- Nearly everything in it has a name, so OpenCAGE and AI assistants can read and drive it over Live Link
- Cinematic Tools are now part of the Debug Menu, in its Cinematic group:
- Launch Game's 'Enable Cinematic Tools' option is replaced by the Debug Menu (ticked for you if you had Cinematic Tools enabled)
- The separate Cinematic Tools injector is no longer shipped, so there's nothing for antivirus software to block
- Live Link and the other scripting helpers now run alongside the free camera
- Works with the Steam, GOG and Epic Games Store versions of the game
- Zones are now loaded around the camera as it moves
- Added camera tracks - capture camera positions, set timings, and play back a smooth track (keep several, and save them to a file)
- Added screenshots (F9) and hiding individual HUD layers
- Cinematic > Screenshots can also use the game's own capture, for stills and image sequences
- Cinematic > Free Camera's 'Fly with this window open' option keeps the free camera flying while the Debug Menu is open: the keys fly it (unless you're typing in one of its boxes), holding the right mouse button away from the window turns it, and the wheel zooms away from the window
- Reworked the Launch Game window:
- Its options are now in three groups (Debug tools, Game options and UI tweaks)
- Some options have new names: 'No UI' is now 'No HUD', 'Patch Current-Gen Optimisations' is 'Current-gen script fixes', 'Render Constant Ambient' is 'Constant ambient lighting', 'Enable Hot Reloading' is 'Hot reload', 'Enable Debug Checkpoints' is 'Debug Checkpoints (in Pause Menu)', 'Enable Level Selection' is 'Level Select (in Main Menu)', 'Enable Debug Loadscreen' is 'Quicker Loadscreen' and 'Add Quit To Menu On Death' is 'Quit Option On Deathscreen'
- Tick 'Load straight into' to launch into a level, skipping the title screen - otherwise the game starts at the front end as normal
- Added a 'Don't write saves' option (with the Debug Menu) which keeps the game from writing to your saved games and settings while you test - it can also be turned on and off in-game from the Debug Menu
- Added a 'Debug entities' option which makes the debug script entities work in game: DebugText, DebugTextStacking, DebugEnvironmentMarker and DebugPositionMarker draw over the game, DebugGraph plots its inputs, DebugObjectMarker names its object, DebugCaptureScreenShot saves screenshots and DebugMenuToggle sets Debug Menu switches (all but DebugMenuToggle work without the Debug Menu)
- Added a 'Possess characters' option (press F6 - rebindable - to select a character to control)
- Added an 'Unlock mouse' option which keeps the game from taking your cursor, so you can work in OpenCAGE beside it (press F4 - rebindable - to give the game the mouse and free it again)
- Added a 'Cap FPS' option
- Added ability to rebind the hot reload key
- The UI tweaks no longer overwrite the game's original UI files
- Starting the game with the runtime utils no longer overwrites another mod's d3d11.dll (ReShade, Special K, DXVK...): it's moved aside while they're in, and put back when you next start the game without them
- The game's UI memory overlay is now a checkbox in the Debug Menu (Performance > Memory) that works live, instead of a launch option that patched the game
- Removed Skip Frontend and Memory Logging
- Added a new 'Save and Build Level' (instancing) option in the File menu:
- Generates instance-specific materials and properties for static geometry based on materials, remappings, and aliases
- Generates navmeshes based on the ExclusiveMaster sets in the level
- Generates radiosity for newly added and moved objects (or the whole level every time, with Options > Misc > Always Fully Rebuild Radiosity)
- Generates instances for collision and physics to match object positions and new scripted entities
- Generates sound networks and spaces for sound routing and reverbs through the level
- Generates cover, spotting and assault jobs for NPCs
- Generates alphalight metadata for supported objects
- Generates dynamic entity materials and models for particles, fog volumes, and more based on entity parameters
- Generates environment animation links and other structuring for renderables and resources
- Generates BVHs for occlusion and lighting
- Generates environment map links
- Improved viewport:
- Added galaxy rendering in the viewport (which can be disabled) - live syncs to changes in the Galaxy Editor
- Added a number of material improvements to the viewport (some optional) including water with planar reflections, cubemap reflections, level fog, planets and gas giants, and glowing surfaces
- Added anti-aliasing options
- Vast performance improvements in the viewport, with configurable draw distance
- Improvements to total memory overhead for the viewport
- Added an 'Enable Viewport' option to turn the viewport off entirely
- Added support for syncing modified resources (textures, models, materials) to the viewport - including newly imported ones
- Added new options for rendering selected entities: wireframe, transparent wireframe, none
- Added additional render filters for a variety of Sphere types, and others
- Added new render filter to show Occlusion Meshes and Collision Meshes
- Added ability to preview Zones in the viewport (will draw zoned entities in distinct colours when enabled, and highlight nodes)
- Added new option to show state resources (navmesh, cover positions) in the viewport - will re-sync on rebuild
- Added ability to highlight all entities in a TriggerSequence in the viewport when selected
- Added a new 'Create' dropdown in the viewport UI which, when enabled, allows you to click on the viewport to create a new entity at that position
- Added ability to drag and drop composites into the viewport to place them
- Added drag-select in the viewport to multi-select entities
- Added support for multi-select moving of objects in the viewport
- Added right click in the viewport with appropriate options
- Added ability to modify splines via the viewport
- Added a new vertex snapping mode (hold V when dragging, or keep it on from the Transform Snap menu)
- Added a new surface snapping mode (SHIFT+END keys)
- Added ability to configure rotation/translation snapping increments
- Added a new 'drag to duplicate' mode (hold SHIFT when dragging the gizmo)
- Added ability to move the origin point for transform controls in the viewport (CTRL+SHIFT)
- World rotation gizmo in viewport now turns with the rotation
- Added new 'Focus on Selected' and 'Fix Camera to Selected Entity' options for the viewport (Options > Viewport) - focus no longer jumps when stepping the hierarchy, and frames the whole level when nothing is selected
- Added a ruler to measure distances in the viewport
- Added crash log reporting for the viewport
- Fixed rotation issue for spotlight previews in the viewport
- Fixed some memory leaks within the viewport which caused silent crashes
- Fixed a separate window appearing briefly when viewport initialises
- Fixed vertex colours in the viewport
- Fixed a bug where moving an entity in the viewport with multiple transform parameters would update all of them
- Fixed a bug where force closing OpenCAGE could leave a viewport process open in the background
- Fixed composites failing to render in the viewport when their models weren't loaded during the initial populate
- Fixed small composites (pickups and similar) being framed so far away they appeared as a speck
- Improved script flowgraph:
- Added a trail of the composites you stepped down through above the flowgraph - click one to go back up to it
- Reworked the back button - it now takes you to the previously loaded composite, and is no longer relative to the currently loaded hierarchy
- Added a dropdown next to the back button to view up to five previously loaded composites
- Added new annotations on nodes - you'll see (P) for ones that are proxied elsewhere, (*) for ones that have one or more other nodes for the same entity, and (!) for unresolvable proxies
- Input pins along the top of a node now show their values above them, and follow edits made in the inspector (a pin with a link coming in shows none, as the link sets its value)
- Added a 'Show Connected Links' window (right-click a node) listing every link in and out of it, with a Go To button that jumps to the node at the other end
- Added new tools for automatically reorganising untidy flowgraph pages
- Added reroute points for links: double-click a link's line to add a dot it's drawn through, and drag it to lead the line round other nodes - the link itself is unchanged, and the points are saved with the page
- Added new function-specific node colours for quicker script navigation (colours are no longer driven by entity type)
- Added new dotted outline for proxy/alias nodes
- Added categories for function entities - used for grouping in the function browser
- Added icons for function entity categories
- Added a new flowgraph design when zoomed out for clarity - shows icons and names when hovered
- Added a 'Show Node Icons When Zoomed Out' option under Options > Entity Display (on by default) - turn it off to keep script flowgraph and animation tree nodes drawn in full at every zoom
- Added context-aware positioning of pins on nodes (relays will always have their output in-line with their input)
- Added functionality to click pins to link them, instead of dragging
- Added search on the 'Select Destination Pin' window, and now sorted alphabetically
- Added right click to add to TriggerSequence on node
- Added arrows to point to off-screen highlighted nodes
- Added option to focus the flowgraph on a newly added node (now defaults off)
- Deleting nodes for an entity no longer prompts you first - you can turn that back on with Options > Entity Display > Show Confirmation When Deleting Node
- Deleting the last node of an entity that nothing else uses (and that isn't drawn in the viewport) now deletes the entity too, in the same undo step
- Improved hit testing in the flowgraph view
- Added support for copy/pasting entities (replaces the old Duplicate option):
- Select one or more nodes in the flowgraph and CTRL+C/CTRL+V to copy/paste
- Same as above, but right click and 'Paste Reference' to create new nodes for the copied entities, or aliases if in other composites
- Select an entity in the viewport and CTRL+C/CTRL+V to copy/paste
- Copied entities on the flowgraph are pasted with their associated links and node layouts
- Any copied entity keeps all its parameters across
- Entities can be pasted across to any other composite
- Reworked Entity Inspector:
- Now allows for multi-select, entities of the same type are grouped, others can be found on tabs
- All entity parameters are now shown at once (removed 'Manage Parameters' popup), with defaults populated
- Modified parameters are marked in bold, right click to reset to default values
- Parameters are grouped by the entity they originate from (makes inheritance more obvious, and navigating easier)
- Added an orange highlight to parameters which are overridden by an alias or proxy elsewhere
- Added a blue highlight to parameters which are overridden by a connection in the flowgraph
- Added a purple highlight to parameters which are controlled by CAGEAnimations
- Added ability to flag vector parameters as colours on composites
- Added support for the material picker when selecting materials for entity parameters
- Zone name now shows on 'Zone' button if one, or opens a list if multiple - this calculation is performed from the root of the active hierarchy
- Modified utility buttons to be on two rows
- The Function button is now named after what it does for the selected entity (Edit Tracks, Edit Sequence, Edit Character, Capture)
- New animation clip editor:
- Browse all available animations by character or env model and context
- Preview animations on models with skeletons
- Export animations to a variety of formats
- Import animations from a variety of formats (with preview)
- Replace an existing animation with a new one from file, keeping its name and everything that plays it
- Edit an animation's metadata (its settings, and the tracks of sounds, footsteps and other moments it fires them at), from the editor or its preview
- Delete animations you've imported
- Support for retargeting to Alien or Humanoid from the UE Mannequin skeleton on import
- Now used to select animations for animation parameters
- Added a new animation tree editor:
- Browse all animation sets and the animation trees contained within them
- Load an animation tree and browse its nodes
- Add new tree nodes and links, and rearrange the layouts
- Copy and paste nodes
- Delete existing tree nodes and links
- Select a node and modify its parameters
- Improved CAGEAnimation editor:
- Added a new bezier curve UI to correctly display parameters over time
- Added new event timelines with colour coded keyframes
- Added a new list view of bezier entries with colour coded lines
- Added option to enable/disable bezier mode
- Added a snap option to snap to timestamps
- Added an interactive control for setting animation length
- Added a new 'Animation Mode' which allows live-edit and preview of animation tracks via the inspector and viewport (and in the running game, with Live Link)
- Entity parameters are now tidied up if unused
- Fixed an issue where some entity links were incorrectly destroyed
- Various other fixes and improvements to better match in-game logic
- Improved model editor:
- Added support for material auto-generation on import
- Added support for normals on export/import
- Added support for skin weights on export/import
- Added support for skeletons and bones on export for characters
- Added a rescale option on import
- Added a new model metadata json file that exports with a model, and is read on import to keep structures similar
- Added an 'export all' option
- Added ability to rename imported models
- Added support for previewing TGA textures, and ones embedded in GLBs on import
- Deleting a model now offers to delete the materials and textures only it used
- Imported models can now optionally create their own composite, with auto-generated ModelReferences set up for submeshes
- Fixed unit scale factor (models are no longer tiny)
- Fixed a bug where large imported models would render incorrectly in-game
- Fixed an issue where UVs would store incorrectly depending on formatting
- Fixed a scale bug when previewing models with multiple submeshes in the model editor
- Fixed vertex colour read/write
- Improved material editing:
- Feature permutations are now functional - you can select from the available permutations in your game data (generated on first launch)
- Added ability to create new materials, and delete them
- For some ubershader types (e.g. fog) permutations can be generated
- Improved Texture Editor:
- Global textures are now auto-imported into the level (makes levels completely independent, and allows editing of those textures)
- Added support for importing non DX10 DDS images (including PNG, JPG, etc)
- Added support for previewing and importing/exporting ASTC textures (for mobile ports)
- Added previews for mip levels, and selection of mip levels on import
- Added support for renaming imported textures
- Corrected persistent/streamed storage (persistent textures are now half-res)
- Updated sound event selector:
- Import and export sounds to/from events
- Preview sound events
- Step or shuffle through every variation behind an event, rather than hearing one arbitrary take
- Replacing a sound for every level updates every copy the game ships, so it can't come back in a level that loads a different bank
- Replace a sound for one level only: the new audio goes into the level's own sound override package (WORLD\LEVEL_SOUND_OVERRIDE.PCK), which the game reads ahead of its shared sound files - so a modded map can have its own sounds without changing them anywhere else
- Edit the sound override packages the DLC levels already ship with, and put a sound back to the base game's audio on one level
- Added a Level Sound Override window (from the sound editor) listing the soundbanks and streams in a level's package, and the sounds changed inside each soundbank, by name (the sound event that plays each one) - to search, add, export or remove them
- Import WAV in the Level Sound Override window: pick the sound a .wav replaces by its sound event, and it's encoded the way the game's own audio is and laid out like the sound it replaces (channels and sample rate) - no Wwise needed - with the original and the new audio to play first
- Importing a .wav now mixes down surround audio and resamples rates the game's decoder can't take, rather than refusing them, and carries a .wav's own loop points over
- New Soundbank in the Level Sound Override window: make a soundbank of the level's own with new sound events, each playing a .wav and sounding like a sound of the game's you pick (its mixer, bus, 3D positioning and attenuation) - no Wwise needed. Its events go in the level's sound event table, so scripts can load the bank with a SoundLoadBank and play them with Sound entities
- The sound event list shows the soundbanks each event is in, in place of the Show Soundbanks button - searching for a soundbank's name lists its events
- Sounds held in a permanent soundbank (such as Weapons or UI) can only be replaced for every level, as the game loads those before any level - the sound editor says which bank holds them
- Sound import/export supported on the Switch and mobile builds, encoding to whichever codec the sound it replaces used (Wwise Vorbis, Wwise ADPCM, or PCM)
- Reworked TriggerSequence editor:
- Added support for dragging and dropping TriggerSequence entries
- Added support for multi-select when adding entities to TriggerSequences
- Added support for multi-select when modifying delays on TriggerSequences
- Added a search in the TriggerSequence entity list
- Added support for proxy TriggerSequences
- Improved composite porting (no longer 'experimental'):
- Composite porting now supports every resource type - every composite can now be ported between levels
- Added new bulk import/export options for porting - can multi-select levels and composites to import, or multiple to export to other level(s)
- Added an option to overwrite source assets when porting
- Added an option to build (instance) the target level when porting
- Added an option to port to every other level in one go
- Added an option to import/export from/to disk (allows sharing modded composites!)
- Porting composites with proxies will now retain them in an 'unresolvable' state
- Fixed an issue where composite layouts could be lost after porting
- Fixed a bug where porting would incorrectly skip shaders and materials carrying similar properties to existing assets in a level
- Fixed various performance issues with porting, should be noticeably quicker
- Added Collision/Physics editor:
- Allows selection of physics or collision proxies on DYNAMIC_PHYSICS_SYSTEM and COLLISION_MAPPING resources
- Allows import of new physics or collision meshes
- New and improved config editors:
- Added a Voice Mappings editor
- Added a Level Text Database editor
- Added a Font Config editor
- Added a Localisation editor
- Added back the legacy Graphics Editor
- Added ability to create new behaviour trees
- Added ability to modify damage ranges in the ammo config editor
- Added info popup about how the config editors save
- Added warnings if saving fails when updating configs
- Fixed the config editors writing numbers in your PC's language (0,840 instead of 0.840 on some systems) and padded with zeros - files written that way are put right the next time they're saved
- Added MCP support:
- Connect Claude and other AI chat apps to OpenCAGE to drive actions such as config editing, script editing, or level population
- Assistants can work the Debug Menu (its switches, values and commands) and the script debugger in the running game, and set the Debug Menu and 'Don't write saves' launch options
- Added a 'Create Level' option in the File menu which can create a new level from scratch
- Added a dark mode option
- Added support for undo/redo
- Added a new Blend Set editor for animations
- Added preview icons for composites in the selector/browser, these will update when you make modifications
- Added an improved check for circular dependencies when making new instances
- Added a new 'unsaved changes' tracker, which will highlight in the taskbar when a modification has been made and not saved
- Added functionality to copy composites (including in-place replacements of instances with copies)
- Added functionality to de-instance a composite, or create a composite from group selection
- Added new achievements on Steam, and updated icons of all existing ones
- Added ability to sort the entity list by clicking the columns
- Added support for multi-select deletion in the flowgraph, viewport, and entity list
- Added controls for the behaviour tree editor to the controls window
- Added an option to stick the controls window on the top layer of the screen
- Added ability for child OpenCAGE editors to gain control of directory editing when primary is closed
- Added auto complete for SwitchLevel level input
- Added improved hierarchy navigation in the proxy/alias selector
- Added an option to save when closing with a level open
- Added argument to allow folder selection when picking game installs
- Added search functionality to the Composite selector
- Added option to search from root in the search panel
- Added ability to right click and delete referenced instances of an entity
- Added a cooldown when creating backups to prevent causing UI deadlocks
- Added support for renaming folders in the composite browser
- Added support for dragging composites/folders to move them in file browser mode
- Added a progress UI for multi-export models/textures
- Added a button to view changelog
- Added a button to view raw crash logs
- Fixed 'Find References' right click on the entity list
- Fixed dropdowns sticking on screen
- Fixed an issue where multiple flowgraph layouts wouldn't appear due to name duplication
- Fixed an issue where viewcones would break upon modification
- Fixed some cases where resolvable proxies/aliases were discarded
- Fixed selection steal when using keybinds to navigate UI
- Fixed a bug where resources were thrown away for Commands BIN
- Fixed file browser mode when selecting a folder
- Fixed an issue on scaled displays in Windows breaking layouts and formatting
- Fixed a UI lock when the flowgraph focus is moving
- Fixed various issues with form ownership to prevent things popping behind
- Fixed some material remapping defects resulting in different materials to retail
- Fixed composite tree diverging when new composites are added/imported
- Fixed the reverbs available to be selected
- Fixed pin delays not syncing across flowgraph pages
- Fixed a bug where the metadata table in Commands held unnecessary GUIDs that grew each save
- Fixed an issue where the hack tool editor would take a long time to load
- Fixed an issue where the Ammo editor would mess up Composite paths
- Fixed an issue where nodes could vanish when changing composites
- Fixed pins showing in the parameter management UI
- Fixed an issue where deep selected aliases would vanish after being added to the nodegraph
- Fixed various bugs related to loading iOS/Android/Switch builds of the game
- Fixed an issue where search would diverge from available entities
- Fixed the search panel's 'Current Composite' scopes searching the composite first opened from the composite browser rather than the one you've stepped into
- Find Uses and Find References now always search every composite, so they no longer come back empty when searching from the composite itself
- Fixed instances where some popups would unexpectedly close on editor context changes (e.g. selecting a new entity)
- Fixed a crash when using CTRL+MMB shortcut in entity hierarchy picker
- Fixed some minor issues when resizing popups
- Fixed popups briefly showing blank white boxes as they open in dark mode
- Fixed incorrect face ordering in cubemap previews (and added a new spherical preview mode)
- Fixed grouping in Entity Palette after searching
- Fixed disabled checkboxes being unreadable in dark mode
- Fixed memory not being released after switching theme with the viewport open
- Saving (and the other actions that need the game closed) no longer closes a game running from another install, and the Mod Manager only waits for this install's game to close
- Certain entity resources are now auto generated, as such the 'Resources' button only shows for editable ones
- Removed the legacy Movers editor
- Removed additional position/rotation controls on renderable resources - they are now autogenerated
- All resource/config editors can now be found under the 'View' toolbar dropdown
- Improved naming for new entities
- Libraries are no longer packaged in the OpenCAGE executable, should save some time on load (and update size)
- Behaviour tree DBs in levels are regenerated when saving based on selected trees in the attribute editor
- Moved help buttons to the title bar, and linked through to new docs for all forms
- Optimised saving logic, viewport population, and level loading - should be noticeably faster
- Improved quality of various icons across the UI
- Selecting an Animation or AnimationSet will fill in the alternate too
- NPC_AlienConfig entities now have selection for the config type
- RewireLocation/Display_Element_On_Map/MapAnchor/Map_Floor_Change entities now have selection for the map elements
- InventoryItem and PickupSpawner entities now have selection for their item, from the items in the Item and Inventory editor
- SimpleWater entities' textures (normal map, alpha mask, flow map and environment map) are now picked in the Texture Editor
- Simplified editor state restoring for resized splitters
- Previously searched proxy searches are now remembered if appropriate
- Backup manager no longer blocks the UI thread (added progress bar)
- PAK and BIN Commands data is now saved by default (for uncompressed levels), and no longer an option
- UI scrolling to a new entity no longer locks other controls
- Updated the docs site to cover additional tools
- A number of other smaller additional fixes and improvements
Historic changelog can be found at opencage.co.uk
Please provide any feedback, issues, or feature requests using the GitHub issues tab.
If providing feedback for the staging branch, please label your issue appropriately.