You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
34 KiB
34 KiB
Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog and this project adheres to Semantic Versioning.
DevilutionX 1.3.0
Features
Platforms
- Added support for Android (please leave us a review 🤗)
- Added support for the original Nintendo 3DS
- Added support for Lepus - jz4760/RG300 with multiplayer support
- Switch: Added TCP/IP multiplayer support
- Vita: Added TCP/IP multiplayer support
- OpenDingux: Added TCP/IP multiplayer support
- 3DS: Added TCP/IP multiplayer support
- 3DS: Add launcher sound
Graphics / Audio
- Animations are now updated at render time for high fps visuals
- Added support for hardware cursor (solves cursor lag)
- Quests being ordered logically in the quest panel
- Quest panel now lists completed quests
- More fine grained volume slider
- Added option for pickup sound
- Shrine reveals map in a different color than your own exploration
- Automap has drop shadow for better contrast in some levels
- Added font with support for Extended Latin, Greek, Coptic, Cyrillic, Chinese, Japanese, and Korean
- Item outline color now matches rarity
- Use gold color to indicate unique items in stores
- Improved XP bar visuals
- More widescreen loading scenes
- Mac: Icon now follow Big Sur style guide
Multiplayer
- Added built in support for ZeroTier (no need for port forwarding, no need for an extra application)
- Added support for unencrypted public games
- Added auto discovery of public games over ZeroTier
- Share map exploration (in a different color than your own exploration)
Controls
- Press alt to show items on ground with labels
- Added option for stopping the hero with a key-press
- Hold click to continue to attack/walk/consume
- Click ctrl-click to drop an item
- Click shift-click to swap to the clicked weapon
- Limit the max width between panels
- Center align panels
- Rune bomb and crypt map can be used when standing next to target
- Added option for disabling crippling shrines
- Improve inventory filling order
- Added option to refill belt automatically
- gamepad: Equip equipment when pressing [use]
- gamepad: Operate object as last option for primary controller action
- gamepad: Allow applying oils with secondary action button
- gamepad: Inventory now takes object size into consideration
- gamepad: Add joystick dead zone range to ini
- touch: Add input hint to virtual keyboards
Stability / Performance / System
- Add support for translations
- Run in self-contained (portable) mode if diablo.ini is in the same folder as DevilutionX
- Chat now supports Unicode, including emojis
- Several actions can now have their key bindings remapped in the ini
- Added key bind options for quick save/load
- Show additional logging with
--verbose - Start directly in Hellfire mode with
--hellfire - Support for MPQs with compressed audio
- Log errors to the terminal as well
- Added options to adjust audio quality to ini
- Update Shareware help text to match retail version
- Automatically pause and mute the game when put in the background
- Allow for multiple heroes with the same name
- Only update diablo.ini if there are changes
- Windows: Auto detect location of MPQ files from GOG installation
Translations
- Added Brazilian Portuguese
- Added Bulgarian
- Added Czech
- Added French
- Added German
- Added Italian
- Added Korean (requires the additional fonts)
- Added Polish (optional dub by professional voice actors)
- Added Russian
- Added Simplified Chinese (requires the additional fonts)
- Added Spanish
- Added Traditional Chinese (requires the additional fonts)
Bugfixes
Gameplay
- Fix small rooms missing from some levels
- Golem's to-hit being incorrect after loading a save game
- Diablo: Correct spells mana cost for the Sorcerer
- Diablo: Armor piercing was 2x of what it should be
- Diablo: Barbarian missing his armor piercing bonus
- Hellfire: Elemental spell was missing
- Hellfire: Firering spell not creating the correct shape
Platforms
- Switch: No longer reacts to touch events
Graphics / Audio
- Corrected directional sounds for distant sources
- Fix sound cut off when exiting game or starting the intro video
- Entirely new audio mixer to solve audio issues and lower memory usage
- Fixed rendering issues on 8bit outputs
- Hellfire: Clearly indicate if it's in shareware mode
Multiplayer
- Reverted melee damage, when friendly fire and friendly mode is on
- Do not show XP bar when chat is open
- Do not show unbound status in place of game name
- Show host version when incompatible
Controls
- Gamepad: Prevent wasting stat points on maxed out stats
- Gamepad: Do not reset cursor position when switching between mouse and gamepad
- Gamepad: Unable to open crypt and hive
- Gamepad: Close cathedral map when pressing B-button
- Touch: Open virtual keyboard when text input is needed
Stability / Performance / System
- Correctly reset game state if not saved
- Compatibility with shareware save games
- Correctly handle folders with non English symbols in them
- Free network connection after ending game
- Never require write mode for MPQ files
- Allow for comments in ini file
- Load assets from a folder called
assetsnext to the application if not found in data paths - Added listfile to our MPQs
- Add ini option for showing FPS
- Fix name filtering
- Correct minor memory leaks
- Further reduced memory usage
- Performance improvments
- Windows: Only show network errors once
Bugfixes for original Diablo bugs
Gameplay
- Player becoming immune to stun while using manashield at low health
- Monsters and players are no-longer immune to missiles when moving horizontally
- Fix missiles hitting multiple times
- Fix missiles sometimes skipping hit checks when passing a target
- Fix charging monsters disappearing from the game if changing levels while they were charging
- Fix negative AC bonus resulting in +1 AC
- Do not attack dead monsters
- Show more accurate
To hitvalue in char panel - Wake up minions when their leader wakes up
- Disallow swapping gear while not standing/walking to avoid animation lock
- Switching of spells during casting changing the cost of the cast
- Not being able to pick up items after starting a new game for a short amount of time
- Persist shop inventory shop items when saving and loading
- Diablo's chamber opening with one lever after level loading
- Thaumaturgic shrine not restocking trapped chests
- Scavengers/Gravedigger were only able to search for corpses south of them
- Scavenger leaders getting stuck if minions started eating
- Quest monsters level being increased twice
- Fix gold piles with 0 gold from incorrect treasure room generation
- Avoid using temporary missiles for game state tracking
- Object interactions stacking while other actions are being performed
- Quest items sometimes not being picked up when clicked
- Teleport spell failing for some valid positions
- Phasing spell sometime failing or sending you outside the level
- Phasing not working in Lazarus' chamber
- Too many monster slots being allocated for golems on levels with quests
- Golems spawning on top of the player
- Fix Zhar's bookcase resetting a golem instead of Zhar
- Zhar saying his line twice in a game
- Fix stairs up to level 8 sometimes taking the player to town instead
- Fix random tiles being explored on automap
- Fixed various typos
Graphics / Audio
- Monster light not updating when monster teleports
- Correctly shorten item names depending on visual length
- Missing dirt corners on map
- Wobbling map indicator when walking
- Fix screen position jumping after loading some saves
- Some lava still animated despite game pause
- Fully close the dialog screen when pausing game
- Changed player saying "Not enough mana" to a more fitting message when using a level 0 spell
- Draw belt item number for unusable scrolls
Multiplayer
- Correct dsync caused by incorrect vision range for other players
- Sync monster active state
- Player attack speed being out of sync
- Dsync when switching items without sufficient inventory space
- Compensate for desync cause related to player movement
- Golem dsyncing if owner leaves level
- Prevent golems from fighting each other
- Play the correct sound when a player is hit by missiles
Controls
- Controls [ + ] stat point buttons sometimes not responding to clicks
Stability / Performance / System
- Keyboard layout is now correct when entering chat messages
- Validate network messages to harden security
- Fix corrupt save games for levels with large amount of entities
- Game now remembers the last selected hero
- Added menu for switching between Hellfire / Diablo
- Make menu navigation wrapping consistent
- Corrected multiple crashes and stability issues
Bugfixes for original Hellfire bugs
Gameplay
- Range monsters cannot hit target at melee range
- Monsters could not see firewalls if covered by lightning wall and vice versa
- Armor piercing affix on ranged weapons decreasing hit chance instead of increasing it
- Fix stuttering when running in town
- Firering spell damage not being based on the caster
- Firering spell giving XP to the wrong player
- Solar shrine time was off by 1 hour, and did nothing between 4 and 5 am
- Reflect spell not working after loading a save game
- Potion trap was not degrading rejuvenation potion into mana or life
- Barbarian's skill not correctly updating health points
Graphics / Audio
- Fix missing player lights when loading Hive level 3
- Apply lights to all berserked monsters after loading save game
- Remove light when killing a berserked monster
- Blood star becoming invisible when blocked
- Rotate arrows in the appropriate direction when blocking
- Candles around the storybook sometimes missing in Crypt
- Celia now leaves after her quest ends
- Update Celia and Complete Nut graphics when completing their quests
- Only play "Uh uh" sound the first time you pick up the cathedral map
- Glass breaking sound sometimes not playing for the potion trap
Multiplayer
- Fix dsync in Hive
- Open Crypt from the start
- Restrict access to Hive and Crypt based on level
- Reflect spell not being synced
- Search spell affecting all players
Known issues
- Switch/3DS: Polish dub produces static sounds
- OpenDingux: Now requires Beta
DevilutionX 1.2.1
Bugfixes
Gameplay
- Gharbad not having to go out of vision before progressing his quest
- Diablo: Items with negative AC morphing in multiplayer
- Diablo: Griswold and Wirt selling unusually expensive items
- Diablo: Gold not going directly to inventory
- Hellfire: Some monsters having lower than intended HP
- Hellfire: Auric Amulet not taking effect in most scenarios
Graphics / Audio
- Windows: Glitchy audio
Controls
- Vita: Inability to edit hero name on the creation screen
Stability / Performance / System
- Quest panel crashing the game for some quests
- Windows: Some systems getting a sensor permission error
- Windows: Stability issues and item morphing in Hellfire
Bugfixes for original Hellfire bugs
Gameplay
- Rage/Search/Lightningwall not factoring in the hero level for the first player
- Sparkling Shrine dealing an incorrect amount of damage
- Items with negative AC morphing in multiplayer
DevilutionX 1.2.0
Features
Gameplay
- Hellfire support
- Shareware support
- Fully migrate saves between Diablo and Hellfire
- Gold picked goes to stack even when inventory is open
- Pepin automatically heals
- Show other players on the map
- Preserve list position when buying and selling items in stores
- Preserve hotkeys and active spell across games
- Set default active spell for new heroes
- Experience bar (off by default)
- Monster health bar (off by default)
- Auto equip all item types on pickup or purchase (off by default)
- Auto pickup gold (off by default)
- Run in town (off by default) (also in multiplayer)
- Disable friendly fire from arrows an spells (off by default)
- Disable quest randomization (off by default)
- Adria refills mana (off by default)
- Barbarian and Bard heroes in Diablo (off by default)
Controls
- Use belt via the numpad
- Close panels when pressing ESC
- Shift-click to spend all stat points
- Shift-click to clear readied spell
- Shift-click consumables to move them between the belt and inventory
- Shift-click equipment equip/unequip them
- Controller mapping
- D-Pad / Left stick navigation now works in all menus and is more responsive.
- START + SELECT now opens the main menu.
- Right stick mouse emulation has been improved.
- Gamepads plugged in while the game is running can be used.
- All connected gamepads can be used (previously, only the first one).
Graphics / Audio
- Widescreen menus
- Scroll subtitles at the same speed as narration reader
- Apply sound volume to videos
- Improved transparency (on by default)
- Auto-equip sounds (off by default)
- Show monster type (off by default)
- Disable walking sounds (off by default)
Stability / Performance / System
- Document ini-file options
- Reorganize ini-file
- Allow for up to 99 save games of each type
- Much lower memory usage (now in line with the original)
- Configurable network port
- Performance improvements
- DIABDAT.MPQ may now be upper case
- Support for portable installs
- Support file paths longer than 259 characters
- Add
--ttf-dirand--ttf-nameto allow for specifying a different UI font - Switch Windows releases to 64-bit
- Added support for Nintendo 3DS
- Added support for PlayStation Vita
- Added support for DragonFly BSD
- Added AppImage for Linux
Bugfixes
Gameplay
- Catacombs doors never having traps
Graphics / Audio
- Incorrect graphics under cave doors in multiplayer
- Minor color issues in some videos
- Command-line output missing on Windows
- Correct visuals and function of the joining-game-dialog
Controls
- Mouse jumping to the top of the windows when using the menu
- Mouse not releasing when exiting the window
- Dragging on touch devices
Stability / Performance / System
- Multiplayer host crashing after beating the game
Bugfixes for original Diablo bugs
Gameplay
- Base damage not being updated when leveling up
- Player vision radius not updating properly before changing level
- Tiles not properly being marked as out of visibility when walking
- Scavengers/Gravediggers taking damage when eating on higher difficulties
- Flash only dealing 10% damage in some directions
- Not getting XP for the first monster placed on a level
- Not getting XP from monsters hit by golems
- Monsters going inactive when fighting golems offscreen
- Monsters with hiding ability fleeing in the wrong direction from golems
- Fallen fleeing in the wrong direction
- Monsters charge directions being biased for some angles
- Monsters not being able to properly judge the location of firewalls
- Some unique items morphing on a new game
- Incorrectly seeing legit items as duplicates
- Items being destroyed if held in cursor when entering dungeon
- Being able to waste gold on red scrolls when not having room for them
- Gaining mana from reading books despite wearing an item with corruption
- Gold piles will be filled to their max, before starting a new one
- Inconsistent repair prices caused by rounding errors
- Arkaine's Valor brought from previous games breaking the game state
- Several issues causing Arkaine's Valor to enter a broken state
- Black Mushroom quest not resetting between games
- Randomly being teleported from level 15 to Lazarus' chamber
- Several bugs in Lazarus quest when re-entering the teleport
- Town portals appearing on two levels when cast in a quest level
Controls
- Inconsistent mouse behavior when opening/closing various panels
Graphics / Audio
- Gold icons graphics are always correct
- Arrows graphics not aligning with the move direction
- Wrong death sound when monster/golem kills another monster
- Lights not always following unique monsters
- Lights added on map update not working (Arkaine's Valor, etc.)
- Player light radius not readjusting when a player is knocked back
- Loadscreen colors on entering the Poison Water quest
- Lava pools sometimes having roof tiles in them
- Doors sometimes missing in Halls of The Blind
- Broken outline on some inventory items
Stability / Performance / System
- Fix more stability issues
Bugfixes from Hellfire 1.00 - 1.01
- Monster hitpoints overflowing in Nightmare/Hell difficulty
- Gharbad the Weak not dropping his item when killed by a golem
- Some stability issues
Bugfixes for original Hellfire bugs
Gameplay
- Firewall damage calculation being too low
- Firewall/Lightningwall damage being based on the dungeon level instead of spell level for the first player
- Right-hand item's decay suffix being applied to the left-hand item in multiplayer
- Town Shrine would always cast TP from the first player instead of the user
- Oily Shrine and Sparkling Shrine would cast their traps as if the first player was doing it
- The farmer would always think he was talking to the local player
- Scavenger/Gravedigger AI being stuck for a round after eating
- Sync available quests in multiplayer
- Correct spell level being ignored for Search and Rage
Graphics / Audio
- Monster attack sound sometimes not playing
- Missing sounds when bards and barbarians talk to cows
- "0 Gold" sometimes spawning on The Cornerstone
- Minor typography corrections
Bugfixes from Diablo 1.03 - 1.09
- The Hidden Shrine freezes when not holding an applicable item
- Memory corruption when casting town portal
- Crashes associated with Black Death
- Players getting stuck in a wall when using Town Portals
- Some Hell difficulty monsters being too easy to hit
- Mana Shield bugs that could make a player invulnerable and/or invisible
- Disarming skill not working on levels 13 through 15
- Mana Shield permanently using up level missiles
- Corrected behaviour of Thieves, Speed/Haste, Balance/Stability/Harmony, and Piercing/Bashing/Puncturing
- Mana Shield becoming less effective with increasing spell level
- Excessive damage when a Mana Shield expired due to an attack
- Bows with fire damage prevented the Gargoyles from healing
- Right-clicking belt item 5-8 not working while the Spellbook is open
- Mana Shield and Nova not appearing for other players
- Shields disappearing when worn after wielding two-handed weapons
- Adria's books appear white even when the player can't read them
- Equipped shields not appear properly to other players
- Monster health not appearing correctly on Nightmare and Hell difficulty
- Diablo's scream being muted if you load a save game during his death throes
- Multiplayer character files are now located in the data directory, and may be moved between computers
- Some stability issues
Known issues
- Save game difficulty does not carry over from 1.1.0
- Amiga builds are currently unstable
DevilutionX 1.1.0
Features
- Proper widescreen (and other aspects) support
- Select difficulty in single player (remembered in the save game)
- Adjustable game speed in-game
- V-sync can now be disabled in the ini
- Better line drawing function used for the automap
- Support for loading custom Hell level maps
- Make all objects and monsters available to custom maps
- Added support for joining a game via hostname instead of IP
Bugfixes
- You can now enter and exit fullscreen also when the game is paused
- [Amiga] Fix double-clicking in menu
Original Diablo bugs
- Fix some monsters AC and to-hit values on Nightmare/Hell ending up as 0
- Fix player base block resetting to 0 after loading a save game
- Correctly render trees in front of the player
- Fully render sprites that are larger than the floor tiles
- Fix objects disappearing when walking on the opposite wall
- Duping via belt has been fixed
- Correctly detect if the mouse is clicking the world or UI in some areas
- Minor typography corrections
- Corrected name of Chamber of Bone in automap
- Correctly align the inventory slots
DevilutionX 1.0.3
Bugfixes
- Fix keyboard input in the menu
DevilutionX 1.0.2
Features
- Support for integer scaling
- Controller: Map Start + L1/R1 to char/inventory
- Added
--save-dirto allow for specifying the save game folder - Correctly scale the game on systems with a non-standard DPI setting
Bugfixes
- Some cave levels were generated with an incorrect layout
- Firebolt mana cost is now correct
- Allow players to join Nightmare/Hell games without first creating a game
- Correctly load the full white color
- Correct navigation in the difficulty select screen
- The window can now be resized after exiting fullscreen mode
- Fix memory leak in audio code
- Fix hanging for 20 sec on the error screen
DevilutionX 1.0.1
Features
- Toggle fullscreen at any point by hitting alt+enter (mouse grab can be disabled in diablo.ini)
- Controller: B button closes the currently active panel.
- Added a navigation menu for controllers
- Focus on the exit item before quitting.
- Minor performance improvements (save/load time and main menu).
- Add a list of known mods
Platforms
- Added support for 32bit PowerPc
- Added support for Amiga
- Added support Clockwork PI GameShell
- Added support for GKD350h
- Switch to OPK for RetroFW (requires 2.0)
- Update OpenDingux/RetroFW build root
Bugfixes
- Game crashing on systems that do not report monitor refresh rate.
- Fixed belt not working correctly when holding shift on us keyboard layouts
- Always keep track of the latest hero level when selecting difficulty.
- Correct screenshot path
- Turn the screen red for 200ms when taking screenshots.
- Fix town load screen missing on the first load.
- Fix minor HOM issue at some houses in town.
- Allow for space as text input
- Fixed a couple of typos in error messages
Original Diablo bugs
- Fix belt not working correctly when holding shift on *non-*us keyboard layouts
- Fix one more rare crash.
DevilutionX 1.0.0
Features
- FPS no longer capped at 20hz; smoother mouse and transitions
- Full-featured gamepad support
- All movies can now be skipped via ESC
- Implement
--help,--versionand--data-dir - Implement FPS counter (
-f) - Force windowed mode with
-x - Skip startup movies with
-n - Implement scroll wheel navigation
- Implement touch support
- Load assets from the same folder as the mpq
- Faster loading
Platforms
- Added Nintendo Switch support
- Added Retro Gamer Handheld (OpenDingux/Retrofw) support
- Added OpenBSD support
- Windows version is now build as GUI an app and has an icon
Bugfixes
- Fixed random missing sounds
- Fixed NPCs not talking about the right quest
- Error messages implemented in GUI
- Fixed having to restart the game between network sessions
- Fixed game not working on some Radeon GPUs
- Fixed panel missing after minimizing game if upscaling is disabled
- Fixed clicks in the left letterbox being incorrectly handled
- Fixed end movie not looping
Original Diablo bugs
- Fixed a large number of rare stability issues from the original game
- Correctly take open panels into account when casting spells
- Fix sound some times being muted after Diablo dies
DevilutionX 0.5.0
Features
- Sound is now accurate to the original
- All in-game issues fixed
- Delete hero, inline dialogs and scrollbars are now implemented
- Screenshots now have different names
- Multiple simultaneous dialogs fixed
- All builds are now 64bit (except for Windows and Raspberry Pi)
- Memory leaks and crashes fixed
- All keys are now mapped
- UI text now has correct shadows
- Much lower CPU usage
- diabdat.mpq can now be loaded with read-only access
Known issues
- Error dialogs not implemented in main UI
- The game must restart after hosting multiplayer
0.10.0
June 22, 2019
- All functions are now binary identical to the 1.09b version
- Fix buying from Wirt
- Replace many magic numbers with constants
- Fix a handful of minor issues
- Add toggle fullscreen with alt+enter in debug builds
June 21, 2019
- All functions are now binary identical to Diablo 1.09b
June 1, 2019
- MVG posts a video about the project and releases a Nintendo Switch port
DevilutionX 0.4.0
May 20, 2019
- Fixed flickering mouse in caves
- 32bit ARM build (Raspberry Pi)
- 32bit FreeBSD build
- 32bit Haiku support (see HaikuDepot)
- Included font for rendering credits and progress screen
- Upscaling quality can be adjusted or fully disabled in diablo.ini
- Windowed mode can be set in diablo.ini
- Mouse capture can be set in diablo.ini
- Direct file access implemented (mods won't need to pack their files in an MPQ)
- Music and speech memory leaks fixed
0.9.6
May 19, 2019
- 96% of functions are now binary identical to the 1.09b version
- Fix several item corruption issues introduced in 0.9.0
0.9.0
May 2, 2019
- 90% of functions are now binary identical to the 1.09b version
- Mute buttons now work correctly
April 15, 2019
- Code is once again compiled as C++ as some parts appear to require despite the indications in Rich header
0.8.0
April 12, 2019
- 80% of functions are now binary identical to the 1.09b version
- Fixes a few minor issues with generated items
0.7.0
April 9, 2019
- 70% of functions are now binary identical to the 1.09b version
April 9, 2019
- The last of the compiler flags are figured out
March 22, 2019
- Devilution appears on Phoronix
DevilutionX 0.3.0
March 20, 2019
- Fix dialog volume
- 32bit macOS build
- Fix crash in town during multiplayer
- Screenshot implemented
0.6.0
March 19, 2019
- 60% of functions are now binary identical to the 1.09b version
- Added a guide for people wanting to join in Cleaning the code
- File size is now only 968 bytes (0.13%) larger than the original Diablo 1.09b.
DevilutionX 0.2.0
March 17, 2019
- Fully implemented audio (all issues from 0.1.0 fixed)
- Fully implemented multiplayer
- Windows 32bit build
- Gameplay is fully featured and plays like the original
- Memory leaks fixed
- Most known crashes have been fixed
March 7, 2019
DevilutionX 0.1.0
February 27, 2019
- Linux 32bit build
- Basic audio
- Video playback
- Basic menus
- Graphics
- Gameplay
- Basic multiplayer over TCP/UDP
- Persistent settings
- Encrypted network connection with password protection
0.5.0
January 14, 2019
- 50% of functions are now binary identical to the 1.09b version
- #456 Assets can now be loaded directly form disk (no need for MPQ-files when modding)
- #528 Code ported to C (can still be compiled as C++)
- #111 Rich Header no longer contains incorrect sections
- #182 defined a Code Style with accompanying clang-format definition
Diabloui.dllis now also part of the source tree- Added Contribution Guide
- Added PDB build option for comparing with devilution-comparer
- CI now runs the original build chain
- Most magic numbers are now replaced by enums
- The code was reduced by 10,000 lines
- Fix a few issues, mostly relating to multiplayer
November 17, 2018
- An older and more original PSX symbol file is discovered
October 1, 2018
- Compiler version is confirmed to be correct by discovery of the Rich header
September 18, 2018
- Merge nightly back in to devilution
September 3, 2018
- Travis is configured to report the overall project delta to 1.09b on every change
September 1, 2018
- Devilution-comparer is developed for comparing binary diff in compiled functions
August 28, 2018
- The correct compiler combination is found by trial and error plus a bit of luck
0.4.0
September 16, 2018
- Fix crash
- Get the first functions bin exact
- Fix render issues
- Introduce debug functions from the 1.00 debug release
- Fix missiles
- More consts, sizeof and defines
- Fix several issues with dungeon generation code
- Fix multiplayer
- Fix error messages
- Correct names based on PSX symbols and DX SDK
August 20, 2018
- Created nightly fork where code clean up can take place until major bugs are fixed in the main project
July 6, 2018
- Setup a Discord channel
July 1, 2018
- Diablo 1.09b is determined to have been compiled with the /O1 flag
0.3.0
June 28, 2018
- Windows binary can now be compiled under Linux and Mac OS X
- Windows binary can now be compiled under VS 5.10
- Fix multiple crashes
- Remove cheesy copyright notice
- Set up continuous building via Travis and AppVeyor
- Icon added
- Fix Zhar quest, monster squelching and golems
- Use consts for various values
June 20, 2018
June 18, 2018
- Devilution gets posted on Y Combinator
0.1.0
June 6, 2018
- Devilution is unleashed upon the world! Version 0.1.0!
June 3, 2018
- Polishing things up for final release
- Added a cheesy fake copyright notice to dissuade monetary gain
- Properly integrated Storm and DiabloUI into the project
May 28, 2018
- Fixed bugs with save files
- You can now load Devilution saves in the vanilla game
May 25, 2018
- Finally! Figured it out and now monsters spawn correctly
- The game can be completed from start to finish with a few tricks
May 21, 2018
- Took a week break, begin working on monster code again
- Nearly all quests work now
- Fixed a bug with Adria
May 8, 2018
- Fix bugs with character drawing
- Fix bugs relating to item affix generation
- Towners no longer crash the game
May 7, 2018
- Port debugging functions from the debug release
- Still can't figure out the zombie problem
May 5, 2018
- Begin fixing quest code and testing completion
April 26, 2018
- Zombies are spawning in all dungeon types... sigh
April 20, 2018
- Split code from IDA's C file into separate CPP files
- All dungeon types can now be entered
- Objects are now mostly working
- Begin uncommenting monster code and fixing them
April 11, 2018
- Begin fixing up dungeon generation and objects
April 4, 2018
- Fixed many crashing bugs when in town and dungeon
- Items, missiles, and spells are now drawn
April 1, 2018
- Finally fixed the render bug, everything draws correctly!
- Character animation now draws correctly
- The cathedral is now mostly working
March 29, 2018
- Fixed tons of bugs
- You can now walk around in town
- Entering the dungeon almost always crashes
March 27, 2018
- Uncommented and fixed lots of broken code
- The game screen now appears, although very glitchy
March 22, 2018
- Control panel and inventory now work almost flawlessly
March 21, 2018
- Temporarily commented out tons of broken code
- You can now get past the loading screen and into town
- Music also works
- Control panel mostly works but game screen is black
March 18, 2018
- The title screen now works
- Freezes during the loading screen
March 16, 2018
- Fixed enough bugs that you can now launch binary
- Crashes during title screen
March 14, 2018
- Fix remaining errors in code
- Code now compiles and produces a non-working binary
March 13, 2018 -- ! SPECIAL DAY !
- Dump the database to C code via IDA
March 8, 2018
- Correct various function signatures
- Correct struct names and types
- Plug in enumerates
- Finish correcting and documenting data sections
February 26, 2018
- Finish documenting functions
- Begin correcting names to match PSX
February 18, 2018
- Begin adding enumerates
- Add more minor structs
- Clean up data sections
February 15, 2018
- Almost finished adding every function
- Begin working on major structs
February 8, 2018
- Add more functions
- Begin adding data from Sanctuary project
February 4, 2018
- IDA disassembly begin
- Start adding function names from Sanctuary project
January 15, 2018
- The concept of Devilution is born
- Research into Diablo's code and mechanics
- Research from Jarulf's guide