Skip to content

Releases

OpenTESArena 0.18.0

Choose a tag to compare

@afritz1 afritz1 released this 13 Aug 03:56

This release introduces several major gameplay features including enemy combat AI, leveling up, and NPC conversations.

Thieving mode has been added which allows the player to pickpocket citizens and open locks. Failure may trigger a guard encounter.

Shopkeepers now provide a number of services like buying and selling items, renting a tavern room, and curing diseases. (Bartering, repairing, and spellmaking will be added later)

The engine now defaults to your Steam install of Arena if available. On Windows, it will also check for your GOG install of Arena.

Release video is here.

New features and changes:

  • Added enemy combat AI
  • Added experience gain and leveling up
  • Added inventory item equipping and dropping
  • Added thieving mode ("P" hotkey)
  • Added random enemy encounters based on player level (@Allofich)
  • Added guard encounters upon killing a citizen or failing thieving (@Allofich)
  • Added several shopkeeper services (buy/sell items, rent room, heal, cure disease)
  • Added citizen conversations
  • Implemented NPC's ability to write directions on player's automap
  • Added camping for a manual duration or until healed. Heal rate matches the original game
  • Implemented original loot generation and gold amounts (@Allofich)
  • Implemented original combat hit chance calculation based on level
  • Added chance for disease and paralysis when fighting certain creatures (@Allofich)
  • Added chance of dying during fast travel if diseased
  • Added drunkenness effect after buying too many drinks at a tavern
  • Implemented firing arrows from bow weapons
  • Added "Test Spell" button ("C" hotkey) costing 10 spell points each
  • Implemented sorcerors being incapable of restoring spell points by resting
  • Added player hurt screen effect upon taking damage
  • Implemented status gradient color changes when diseased, drunk, or low health
  • Implemented player move speed based on speed attribute and encumbrance
  • Implemented player climbing and swimming speed based on race and class (@Allofich)
  • Improved door bashing calculation and added self-damage when using fists (@Allofich)
  • Improved citizen navigation when obstacles are in the way
  • Improved detection of Steam version on all platforms and GOG version on Windows (@fetohiaras)
  • Improved UI modding potential (see data/ui/ folder)
  • Improved newline distribution in text (@Allofich)
  • Improved error dialog on engine crash
  • Changed default renderer to Vulkan
  • Improved handling of original tab-color text ('\t' followed by palette color)
  • Improved lifetime management of sounds
  • Initial support for .wav files, capability to be expanded in the future
  • Updated Jolt Physics to 5.5.0
  • Updated WildMIDI to 0.5.0
  • Upgraded Raspberry Pi release from Pi 4 to 5
  • Renamed data/text/ folder to data/exe/
  • Removed Windows dependency on dirent.h

Fixes:

  • Fixed key not being consumed after use on locked door (@Allofich)
  • Fixed wilderness den entrances (@fetohiaras)
  • Fixed assertion with duplicate locks in PALACE5.MIF
  • Fixed player status bar spacing by combining into one texture
  • Fixed wilderness tavern names not showing in conversations
  • Fixed texture on bottom of walls in dungeons, visible when standing in chasms
  • Matched dungeon ceiling texture orientation to the original game
  • Matched fatigue rate and in-game time rate to the original game

Known issues:

  • Armor and enhancement properties on equipped items are not applied yet
  • Human enemies don't display equipped weapons
  • Shopkeeper inventories don't match original game
  • Rented tavern room applies to all taverns globally
  • Holiday conversation variables (%nh, %nhd, %hod) are not implemented
  • Outside textures and sky don't update to match weather after entering and exiting an interior
  • Building names for wilderness temples and in Imperial City don't match original game

For details on how to get OpenTESArena running, follow these instructions. To see what's next, check out the roadmap.

OpenTESArena 0.17.0

Choose a tag to compare

@afritz1 afritz1 released this 01 Oct 03:14

This release adds a Vulkan renderer for significantly improved performance over the software renderer.

Voxels now combine into larger meshes to reduce the number of draw calls and collision shapes required.

The lighting system has been changed from forward to tiled forward which removes the lights-per-mesh limit. This is necessary for some scenes where a single mesh might be affected by 16 or more lights.

Thanks to incredible work done by @Allofich, the mystery surrounding Arena's heavy fog has finally been solved. This effect appears randomly based on weather and is supported in both renderers.

Release video is here.

New features and additions

  • Vulkan renderer
    • Must enable manually in options menu by setting Graphics API to Vulkan
  • Mesh combining
  • Changed forward lighting to tiled forward
  • Added classic heavy fog effect
  • Added floating origin to reduce Z-fighting and shimmering
  • Added tavern patron dialogue
  • Increased physics updates per frame to reduce bumpy feeling when moving
  • Added baseline .OBJ file format support, used with voxels
  • Added inverted mouselook option
  • Added Enable Validation Layers option (must have Vulkan validation layers installed)
  • Improved frame pacing
  • Improved high DPI support
  • Reduced sky mesh vertices
  • Slightly reduced player and citizen move speed
  • Updated SDL to 2.0.12

Fixes

  • Fixed swimming camera height
  • Fixed chasm texture bug outside city bounds
  • Fixed puddle rendering performance
  • Fixed puddles not reflecting entities in adjacent chunk

Known issues

  • Ghost-behind-ghost transparency is not supported in Vulkan renderer
  • Walking onto raised platforms like stairsteps is unsolved
  • Item stacking is not implemented, bags of gold can only hold 1 gold
  • Shopkeeper interactions not implemented
  • Bow weapons don't fire projectiles yet
  • Outside textures and sky don't update to match weather after entering and exiting an interior
  • Building names for wilderness temples and in Imperial City don't match original game

For details on how to get OpenTESArena running, follow these instructions. To see what's next, check out the roadmap.

OpenTESArena 0.16.0

Choose a tag to compare

@afritz1 afritz1 released this 22 May 02:12
147abea

This release brings greatly-improved player movement thanks to the addition of Jolt Physics. The player can now climb out of chasms, jump, and swim. Other baseline gameplay features such as hit registering, killable enemies (w/o AI), item pickup, and using keys on doors allow the starting dungeon to now be considered minimum-playable. Rendering performance is still below average and more optimizations are planned.

Release video is here.

New features and changes

  • Jolt Physics integration
  • Minimum-playable starting dungeon
    • Key can be obtained and used on cell door
    • Enemies can be killed (no AI or combat calculation yet)
    • Corpses and treasure can be looted (equipping not implemented yet)
  • Click to attack with right mouse button in modern interface mode
  • Citizen name generation
  • Citizens can be killed (crime not implemented yet)
  • Baseline support for original item definitions
  • Locked treasure chests can be bashed open
  • Locked doors can be bashed open (magically-locked doors not implemented)
  • Attribute allocation and stats in character creation (values not gameplay-functional yet) (@libertus21)
  • Player gold
  • Player can now die from lava and drowning
  • Player can now fall to the ground from exhaustion and may die depending on the location
  • Indoor walking sound and swimming sound
  • Swimming music
  • Fanfare now plays when picking up quest items (quests not implemented yet)
  • Player camera can now look straight up and down without breaking math (@libertus21)
  • VOC sound file repairing feature (data/audio/VocRepair.txt). Removes several pops/clicks in original audio, eventually to be replaced by mods
  • Modern interface reticle
  • Gameplay clock modding (data/Clocks.txt)
  • Convenient Windows batch file in windows/setup_OpenTESArena.bat for installing Visual Studio toolchain and building from source (@libertus21)

Fixes

  • Fixed building interior variants not matching original game
  • Revised light strength to match original game. Some areas like the second level of Mines of Khuras define a light radius override in the original data but it was never used in Arena. This has been fixed.
  • Fixed diagonal wall collision
  • Weapon swinging is now frame-rate independent and should no longer be difficult to successfully swing above 100 fps
  • Fixed voxel visibility quadtree internal node calculation (press F4)
  • macOS build .dylibs are handled better now resulting in less chance of a crash at application start

Known issues

  • Player movement may feel bumpy due to how physics resolves ground collision with several small box shapes. Combining shapes is planned in a future release.
  • Walking onto raised platforms like stairsteps is an unsolved problem and should be fixed in a future release
  • Item stacking is not implemented, bags of gold can only hold 1 gold
  • NPC interactions not implemented
  • Bow weapons don't fire projectiles yet
  • Puddles cause a significant slowdown due to current design for screen-space reflections
  • Puddles might not reflect entities in an adjacent chunk
  • Outside textures and sky don't update to match weather after entering and exiting an interior
  • Screen-space fog is not finished and appears as a low-res cube around the player
  • Building names for wilderness temples and in Imperial City don't match original game

For details on how to get OpenTESArena running, follow these instructions. To see what's next, check out the roadmap.

OpenTESArena 0.15.0

Choose a tag to compare

@afritz1 afritz1 released this 05 Aug 23:18
67cb82a

This release overhauls the graphics code to more closely match the look of the original game. The renderer now also uses meshes, shaders, and draw calls normally found in an OpenGL or Vulkan engine.

Overall FPS is below average due to draw calls not being batched yet and the rasterizer being relatively unoptimized (it was very challenging to reliably coax all compilers to output good assembly, so there is still room for improvement). One optimization of interest however is the addition of a voxel quadtree for efficiently testing visibility to the camera.

Release video is here.

New features and changes

  • New 3D software renderer
    • Closely matches original game's 256 color lighting (special thanks to @Carmina16)
  • Improved Arena data files detection (now checks default C: Steam install on Windows)
  • Added exclusive fullscreen option
  • Added tall pixel correction option
  • Initial work on player attributes (@gazorpo)
  • Improved screenshot saving
  • Minor change to player movement to match original game
  • ARM64 macOS support
  • Replaced debug collision option with ghost mode that allows flying
  • Replaced DebugFast build config with ReleaseGenericNoLTO
  • Removed time scale option

Fixes

  • Fixed fog color in Elden Grove and Murkwood
  • Fixed Ria Silmane voice not continuing in CD version
  • Fixed floor replacement texture when deleting voxels
  • Upgraded to SDL 2.0.10 to fix periodic lag caused by SDL_PollEvent()

Known issues

  • Collision detection is barebones and will be improved in a later release
  • Puddles are unusually expensive to render due to naïve draw call synchronization
  • Puddles might not reflect entities in an adjacent chunk
  • Exterior textures and sky don't update to match weather after entering and exiting an interior
  • Screen-space fog is not finished and appears as a low-res cube around the player
  • Some building names and interiors don't match original game

For details on how to get OpenTESArena running, follow these instructions. To see what's next, check out the roadmap.

OpenTESArena 0.14.0

Choose a tag to compare

@afritz1 afritz1 released this 30 Nov 03:17

The highlight of this release is weather effects. It also redesigns the internal implementation of the UI and input systems, which are big steps towards supporting alternative user interfaces and key rebinding.

Check out the release video to see it in action!

New features and changes

  • Weather effects (rain, snow, thunderstorms)
    • Screen-space fog is unfinished and should be in a future release.
  • UI system redesign (model-view-controller pattern, text rendering redesign, texture allocation redesign)
  • Input system redesign (generic input action listeners; easier to add key bindings and more input methods later)
  • Updated in-game debug profiler
  • DPI-awareness on Windows (allows for native window resolutions on high-DPI monitors)
  • CMake build configuration improvements (replaced Debug/Release/RelWithDebInfo/MinSizeRel with Debug/DebugFast/ReleaseGeneric/ReleaseNative)
  • Updated OpenAL Soft version to 1.19.1
  • Updated SDL version to 2.0.9
  • Updated WildMIDI version to 0.4.4
  • Fixed "Some intro screens might be using an incorrect palette"
  • Fixed "The game will crash during the Ria Silmane cinematic in the CD version if it reaches the end without being skipped (related to chunk system)"
  • Fixed "The automap colors voxels outside of city bounds that should not be considered part of the automap"
  • Revised release build naming convention

Known issues

  • Selecting voxels or objects across a chunk boundary may not always work as intended
  • Some building names and interiors don't match original game
  • The game world is empty for one frame after fast traveling, especially when arriving at a city with an arrival pop-up message
  • Sometimes lights will not be counted as being visible to the camera (related to chunk system)
  • The chasm wall texture of a deleted floor voxel might not match the original game
  • Translucent entities exhibit vertical line artifacts (related to multi-threading)
  • Tavern names in Imperial City don't match original game
  • Diagonal walls have same collision as walls

For details on how to get OpenTESArena running, follow these instructions.

And check out the roadmap to see what's planned for the next release!

OpenTESArena 0.13.0

Choose a tag to compare

@afritz1 afritz1 released this 28 Mar 17:57

This release focuses on improving how the game world is simulated in order to more closely match the original game. There is now a set of active chunks that are added and removed as the player moves around. Textures are now loaded into a renderer-independent format before being passed to engine systems that need them, and with the addition of texture asset references, textures are only loaded from the hard drive once they are needed (and are kept in memory afterwards). Future support for formats like PNG should also be easier to add now.

New features and changes in 0.13.0:

  • Chunk system
    • Interiors "go forever" with default empty chunk
    • Cities "go forever" with floor wrapping
    • The wilderness loads by chunk IDs and can "go forever" by falling back to a default chunk when outside of the original game's 64x64 chunk area
  • Texture system redesign (renderer-independent TextureBuilderID, and TextureAssetReference for deferred loading)
  • Support for Raspberry Pi 4 (no release build yet since performance is very poor)
  • Fixed citizen animation RAM usage issue (no longer ~2.5 GB)
  • Fixed software renderer deadlock (@Alucowie)
  • Fixed streetlight activation updating (wilderness streetlights intentionally do not change activation state)
  • Citizens now only idle if the player is not moving and their weapon is sheathed, to more closely match the original AI
  • Revised sun and moon positions (not sure if they exactly match the original game yet, though)

Known issues:

  • Some intro screens might be using an incorrect palette
  • Wilderness building names don't match original game
  • The game world is empty for one frame after fast travelling, especially when arriving at a city with an arrival pop-up message
  • The game will crash during the Ria Silmane cinematic in the CD version if it reaches the end without being skipped (related to chunk system)
  • Sometimes lights will not be counted as being visible to the camera (related to chunk system)
  • The automap colors voxels outside of city bounds that should not be considered part of the automap
  • The chasm wall texture of a deleted floor voxel might not match the original game
  • Translucent entities exhibit vertical line artifacts (related to multi-threading)
  • Tavern names in Imperial City don't match original game
  • Diagonal walls have same collision as walls

For details on how to get OpenTESArena running, see the Installation section in the Readme.

OpenTESArena 0.12.0

Choose a tag to compare

@afritz1 afritz1 released this 11 Oct 00:45

New features and changes in 0.12.0:

  • Wandering citizens in cities and wilderness. They idle if the player's weapon is sheathed
  • Puddle reflections
  • Voice in cinematics (only available in CD version)
  • City entrance jingle
  • Music library system supporting custom MIDI filenames in data/audio/MusicDefinitions.txt
  • Entity animation system redesign
  • Texture manager improvements and initial work on texture instance manager for runtime-generated textures
  • Fonts use less memory and are less dependent on SDL2
  • Added previously-unused OverSnow music to snow weather playlist
  • Fixed final boss display name (was "TODO")
  • Removed directional shading from sun to more closely match original game (planning on adding back later in a newer renderer)

Known issues:

  • Citizen spawning introduced very high RAM usage (>2.5 GB) due to true color animations, even with animation sharing, preventing 32-bit builds from working as intended
  • Some streetlights don't receive on/off signal
  • Translucent entities exhibit vertical line artifacts (related to multi-threading)
  • The renderer may deadlock and freeze the game. If so, reduce render thread count to very low
  • Position of moons is not correct
  • Tavern names in Imperial City are incorrect
  • Diagonal walls have same collision as walls

For details on how to get OpenTESArena running, see the Installation section in the Readme.

OpenTESArena 0.11.0

Choose a tag to compare

@afritz1 afritz1 released this 29 Mar 00:05

New features and changes in version 0.11.0:

  • Original entity loading (static NPCs, creatures, trees, furniture, palace rulers, etc.)
  • Lights
  • Water and lava rendering
  • Translucent entity rendering
  • Ray cast selection with pixel-perfect option (@faha223)
  • 3D positional audio (@Plettro)
  • Initial work on chunk system for game world
  • Periodic creature sounds
  • Fading voxels
  • Streetlights turn on and off automatically
  • Changed in-game day/night clock speed to match original game (R hotkey to fast-forward time)
  • Initial work on texture filtering in pixel shaders (nearest/linear mode)
  • Fixed incorrect cloud pixels (now using partial transparency)
  • Fixed starting dungeon fast travel onVoxelEnter bug

Known issues:

  • Some streetlights don't receive on/off signal
  • Translucent entities exhibit vertical line artifacts (related to multi-threading)
  • The renderer may deadlock and freeze the game. If so, reduce render thread count to very low
  • Position of moons is not correct
  • Tavern names in Imperial City are incorrect
  • Diagonal walls have same collision as walls

For details on how to get OpenTESArena running, see the Installation section in the Readme.

OpenTESArena 0.10.0

Choose a tag to compare

@afritz1 afritz1 released this 06 Oct 19:25

New features and changes in version 0.10.0:

  • Wilderness generation
  • Wilderness automap
  • City <-> wilderness transitions via city gate
  • City placeholder in wilderness
  • Player position in wilderness displayed with F2
  • CD version support
  • Initial work on inventory slots (@MinganMuon)

Notes:

  • Original sprites are not being loaded yet

Known issues:

  • Position of moons is not correct
  • Tavern names in Imperial City are incorrect
  • Diagonal walls have same collision as walls

For details on how to get OpenTESArena running, see the Installation section in the Readme.

OpenTESArena 0.9.0

Choose a tag to compare

@afritz1 afritz1 released this 01 Apr 01:58

New features and changes in version 0.9.0:

  • Distant land, sky, and space rendering. Space rendering takes player latitude into account
  • Sky gradient
  • Palace entrances and gate graphics
  • Improved multi-threading in renderer
  • Improved thread sleeping on frames that took less than the target frame time
  • Improved text wrapping and new line distribution
  • Fixed morning star weapon negative height given to renderer

Notes:

  • Wilderness is not implemented yet
  • Original sprites are not being loaded yet

Known issues:

  • Position of moons is not correct
  • Tavern names in Imperial City are incorrect
  • Diagonal walls have same collision as walls

For details on how to get OpenTESArena running, see the Installation section in the Readme.