From 85279c1a4397ccafa4097ea28a33da36ac969b9c Mon Sep 17 00:00:00 2001 From: Anders Jenbo Date: Fri, 19 Jul 2019 23:49:28 +0200 Subject: [PATCH] Update CHANGELOG.md - Change format to match [Keep a Changelog](http://keepachangelog.com/en/1.0.0/) - Added major events from June 6th up to now --- docs/CHANGELOG.md | 287 +++++++++++++++++++++++++++++++--------------- 1 file changed, 195 insertions(+), 92 deletions(-) diff --git a/docs/CHANGELOG.md b/docs/CHANGELOG.md index d83fa9035..8cb090b4b 100644 --- a/docs/CHANGELOG.md +++ b/docs/CHANGELOG.md @@ -1,123 +1,226 @@ -# Devilution Changelog - -### January 15, 2018 -- The concept of Devilution is born -- Research into Diablo's code and mechanics -- Research from Jarulf's guide - -### February 4, 2018 -- IDA disassembly begin -- Start adding function names from sanctuary project +# Changelog +All notable changes to this project will be documented in this file. + +The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/) +and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.html). + +### June 16, 2019 +- All functions except one are now binery identical to Diablo 1.09b + +## 0.9.6 +### May 19, 2019 +- [96% of functions are now binary identical](https://github.com/diasurgical/devilution/milestone/3) 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](https://github.com/diasurgical/devilution/milestone/3) 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 + +## 0.8.0 +### April 12, 2019 +- [80% of functions are now binary identical](https://github.com/diasurgical/devilution/milestone/3) 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](https://github.com/diasurgical/devilution/milestone/3) to the 1.09b version +- The last of the compiler flags are figgured out + +### April 9, 2019 +- The last of the compiler flags are figgured out + +## 0.6.0 +### March 19, 2019 +- [60% of functions are now binary identical](https://github.com/diasurgical/devilution/milestone/3) to the 1.09b version +- Added a guide for people wanting to join in [Cleaning the code](https://github.com/diasurgical/devilution/wiki/Cleaning-Code) +- File size is now only 968 bytes (0.13%) larger than the original Diablo 1.09b. + +## 0.5.0 +### January 14, 2019 +- [50% of functions are now binary identical](https://github.com/diasurgical/devilution/milestone/3) 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](https://github.com/diasurgical/devilution/wiki/Code-style-guide) with accompanying clang-format definition +- `Diabloui.dll` is now also part of the source tree +- Added [Contribution Guide](https://github.com/diasurgical/devilution/blob/master/docs/CONTRIBUTING.md) +- Added PDB build option for comparing with [devilution-comparer](https://github.com/diasurgical/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 binery 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 deubg release +- Fix missiles +- More consts, sizeof and defines +- Fix several issues with dungion generation code +- Fix multiplayer +- Fix error messages +- Corect names based on PSX symbols and DX SDK + +### August 20, 2018 +- Created nightly fork where code clean up can take place untill 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 wtih 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 continious building via Travis and AppVeyor +- Icon added +- Fix Zhar quest, monster squelching and golems +- Use consts for various values + +## 0.1.0 +### June 6, 2018 +- Devilution is unleashed upon the world! Version 0.1.0! -### February 8, 2018 -- Add more functions -- Begin adding data from sanctuary project +### 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 -### February 15, 2018 -- Almost finished adding every function -- Begin working on major structs +### May 28, 2018 +- Fixed bugs with save files +- You can now load Devilution saves in the vanilla game -### February 18, 2018 -- Begin adding enumerates -- Add more minor structs -- Clean up data sections +### 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 -### February 26, 2018 -- Finish documenting functions -- Begin correcting names to match PSX +### May 21, 2018 +- Took a week break, begin working on monster code again +- Nearly all quests work now +- Fixed a bug with Adria -### March 8, 2018 -- Correct various function signatures -- Correct struct names and types -- Plug in enumerates -- Finish correcting and documenting data sections +### May 8, 2018 +- Fix bugs with character drawing +- Fix bugs relating to item affix generation +- Towners no longer crash the game -### March 13, 2018 -- *! SPECIAL DAY !* -- Dump the database to C code via IDA +### May 7, 2018 +- Port debugging functions from the debug release +- Still can't figure out the zombie problem -### March 14, 2018 -- Fix remaining errors in code -- Code now compiles and produces a non-working binary +### May 5, 2018 +- Begin fixing quest code and testing completion -### March 16, 2018 -- Fixed enough bugs that you can now launch binary -- Crashes during title screen +### April 26, 2018 +- Zombies are spawning in all dungeon types... sigh -### March 18, 2018 -- The title screen now works -- Freezes during the loading screen +### 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 -### 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 +### April 11, 2018 +- Begin fixing up dungeon generation and objects -### March 22, 2018 -- Control panel and inventory now work almost flawlessly +### April 4, 2018 +- Fixed many crashing bugs when in town and dungeon +- Items, missiles, and spells are now drawn -### March 27, 2018 -- Uncommented and fixed lots of broken code -- The game screen now appears, although very glitchy +### 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 -### April 1, 2018 -- Finally fixed the render bug, everything draws correctly! -- Character animation now draws correctly -- The cathedral is now mostly working +### March 27, 2018 +- Uncommented and fixed lots of broken code +- The game screen now appears, although very glitchy -### April 4, 2018 -- Fixed many crashing bugs when in town and dungeon -- Items, missiles, and spells are now drawn +### March 22, 2018 +- Control panel and inventory now work almost flawlessly -### April 11, 2018 -- Begin fixing up dungeon generation and objects +### 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 -### 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 +### March 18, 2018 +- The title screen now works +- Freezes during the loading screen -### April 26, 2018 -- Zombies are spawning in all dungeon types... sigh +### March 16, 2018 +- Fixed enough bugs that you can now launch binary +- Crashes during title screen -### May 5, 2018 -- Begin fixing quest code and testing completion +### March 14, 2018 +- Fix remaining errors in code +- Code now compiles and produces a non-working binary -### May 7, 2018 -- Port debugging functions from the debug release -- Still can't figure out the zombie problem +### March 13, 2018 -- *! SPECIAL DAY !* +- Dump the database to C code via IDA -### May 8, 2018 -- Fix bugs with character drawing -- Fix bugs relating to item affix generation -- Towners no longer crash the game +### March 8, 2018 +- Correct various function signatures +- Correct struct names and types +- Plug in enumerates +- Finish correcting and documenting data sections -### May 21, 2018 -- Took a week break, begin working on monster code again -- Nearly all quests work now -- Fixed a bug with Adria +### February 26, 2018 +- Finish documenting functions +- Begin correcting names to match PSX -### 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 +### February 18, 2018 +- Begin adding enumerates +- Add more minor structs +- Clean up data sections -### May 28, 2018 -- Fixed bugs with save files -- You can now load Devilution saves in the vanilla game +### February 15, 2018 +- Almost finished adding every function +- Begin working on major structs -### 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 +### February 8, 2018 +- Add more functions +- Begin adding data from Sanctuary project -### June 4, 2018 -- It's my birthday! Wine, cake, and ice cream... yummy! +### February 4, 2018 +- IDA disassembly begin +- Start adding function names from [Sanctuary project](https://github.com/sanctuary/notes) -### June 6, 2018 -- Devilution is unleashed upon the world! Version 0.1! +### January 15, 2018 +- The concept of Devilution is born +- Research into Diablo's code and mechanics +- Research from [Jarulf's guide](http://www.bigd-online.com/JG/JGFrame.html)