A remake of the classic Wizardry video games
Copyright Eric Pietrocupo
E-Mail: ericp@lariennalibrary.com
Wizardry Legacy
WL Adventures
Filed in: Development.DVrelease · Modified on : February 25, 2021, at 06:34 PM - Visits 1732
This section contains all the release notes since the beginning of the project (which include the old version from 8 years ago). Each time a new release is made, the milestones in the Road Map section will be transcribed here. To get a more accurate view of the current status of the project, look at the issue list on gitlab.
This version is a massive refactoring of the old game. Almost the whole project will have been revised or retouched. There will be almost no stone left unturned. The major upgrade will be the new user interface that will be easier to handle making the development of new features in the future much more convenient. many of the stuff below has been extracted from Gitlab, or is just a cleanup of the old backlog.
Status | Category | Name |
---|---|---|
Done | Adventures | Adventures will not have any assets anymore. Each adventure will be composed of only 2 files, the database and the maze. Making them easier to manipulate without the archiving tool |
Partial | Assets | Massive reduction of the assets to the bare minimum. No more portrait, class pictures, Hexen/heretic textures are removed. Many texture still requires validation and I will be seeking replacements for the audio and eventually the monsters. |
Done | Assets | Datafile system has been remade to make it easier to access the assets. Now assets can be accessed with their names which reduces the possibility of error if the assets change position in the datafile. |
Done | Configuration | The number of option parameters has been masively reduced as many game feature has been removed. The difficulty settings will be stored separately in the save game which will also be massively reduced. |
Done | General | Try to make the code compilable with Cmake or supply a makefile for easy building by the user (currently distribute project files, easier for me). It works but there could still be adjustments to make. |
Partial | Internal | There could be ways to simplify the dependency of header structure by making all .h file have duplicate protection, remove the group header files and put more stuff private to modules (Plain C refactoring indirectly does that) |
Partial | Interface | I simplified and recoded the title screen and the main(). many features like the artgallery has been removed. Certain feature remains to code like the option screen |
Partial | Interface | The Wizardry User Interface (WUI) has been created and redesigned as a text only system. So everything including borders has been only implemented as text. I had to design my own fonts. I am using a Entity Component System for the first time. There are other neat features like colored characters, text wrapping, etc. |
Partial | Interface | The WUI is composed of dialogs like menu, list , questions, etc. A portion of the dialogs are available, but some are missing like options and distributors. |
Done | Interface | An important upgra for me in the WUI is that the instructions are now part of the window frames which removes the need to manually position instruction on the screen all the time and have tons of inconsistencies. |
Done | Internal | I have rebuilt the initialisation routines to clean up the start up process and make it easier to understand and to avoid segfault. The results is almost the same as the original but easier to maintain. |
Done | Maze | Not sure, could be a bit too late, but maybe encapsulate some mazetile operations into a series of C methods to make it more convenient to read ans modify the maze |
In Progress | System | Massive refractorisation: There is a lot of code duplication and optimization that could be done. I could even un-c-plus-plus-ify the code and make it only ansi C. |
Done | System | Use the Allegro configuration system to save any game option parameter required by the game. This allow the options to be stored in a human readable file. |
Done | Design | I seperated the difficulty settings in another configuration that will be saved in game. There will still be difficulty adjustment, but there will be much less options and will be stored in the save game. The goal is not to disable "features" (A.K.A Annoyances) of Wizardry to break the game experience but just make progress faster/slower. Also because city upgrades would allow mitigating those negative effects, so they must remain in the game. |
Done | Textures | The texture palette has been simplified. There is not any more patches that can be combined to create maze textures. The textures comes as they are. |
Done | Video | I have simplified the video resolution and screen system. There will be only 1 screen layout and it's 640x480. Not only it's the most standard video mode making it very compatible, but it's also eaiser to manage as there is no more subbuffers anymore with floating windows. |
This version update does not add much besides fixing bugs and preparing the code to be uploaded on gitlab to make the distribution and compilation easier. Making easier for other programmers to contribute. I think I should try next to focus on creating an adventure. This way, if I stop working of ther project, at least it will be playable.
Status | Category | Name |
---|---|---|
Done | General | A few fix in the editor, made wrappers for allegro depreciated textout methods and fixed bugs after enabling warnings. (don't ask me why they were disabled) |
This update focus more on the rules of the game. The major addition is the use of spells, active effects and monster special attacks which are disguised spells. There is now a new set of 12 weapons and items can now have elements and another modifications. Some upgrade has been made to the SQL system by using a table of variables instead of class variables, and with the new StringField which makes Human readable bitfield (Or non-computer geek readable).
Status | Category | Name |
---|---|---|
Done | Database | Make a no variable SQL object where varables are contained within the SQL object. Will allow hybrid system in same program. |
Done | Effects | Add spells to the database (the spell selection is done) |
Done | Database | Convert bitfields as StringFields in EnhancedSQLObject. |
Done | Effects | Implement the resolution and display of the various active status effects (still trying to define status, thinking to use non generic status for more flexibility ) |
Done | Weapons | Redesign weapon templates with a 12 template and special abilities for each of them. Reallocate weapon profiencies and PCS and MCS to classes. |
Done | Interface | Enhance add query to at least menu and lists by using query variables. |
Done | Database | Try to remove the need of an SQL reading loop. Maybe would need callback to completely remove. |
Done | Spells | Attack, heal and active effects. |
Done | Combat | Defense system for spells and weapons, give target various defense types |
Done | Class | Removed initiative, now applied to actions, and change some stats for the new Melee and Range Combat skills. Spell and Combat progression now use the level of the character. |
Done | City | Cure and revival at the temple now working |
Done | Items | Added effect tables to have a set of stats bonus and elemental effect or resistance that Items can have. |
Done | Party | Updated the party bar to include more info and conditions with kaomoji. |
Done | Effects | Implement spells |
Done | Effects | Status condition that changes the rules of the game for a character (ex: sleep -> cannot attack) |
Done | Monsters | Monster Special attack. They are actually spells with new effects. |
Done | Monsters | Redesign monster tables with new data |
Done | Monsters | Integrate Character monsters in the game. |
I want to update the maze engine and make it load itself from the adventure. I might be working on the maze editor to get the minimum needed to create a maze. It will also change my mind from the rule stuff and might make me program longer. After this update it could be possible to design simple maze, adventures and be able to finish the game and see the ending.
Status | Category | Name |
---|---|---|
Done | Interface | Make a picture browser to select textures and character pictures (if the texture palette editor is made) |
Done | Maze | Enhance the maze engine by redefining the data structure by using Maze palettes for textures. |
Done | Adventure | Redefine the adventure file structure, make a script to create the adventure and load maze from the adventure. Allow saving maze and adventure too. |
Done | Camp | Search function to enable events trigered by search |
Done | Maze | Design commonly used Maze events to allow creation of basic adventures (only a small portion will be done) |
Done | Editor | Work on the map editor to be able to easily create mazes |
Done | Editor | Texture palette editor for the maze |
Done | Editor | Finish Sidebar Info and add other functionalities to the editor which are essential for basic editing. |
Done | Maze-Editor | Make a texture loading system and make the appropriate transition for the maze and the editor when loading the palette. |
Done | Event | Implement demo event to be used in the editor with a fake party. |
Done | Encounter | Use the maze area information to make the monster selection for battles. (was waiting for the new maze structure) |
Done | Encounter | Define the encounter system to determine how monsters are selected and how event battles are setup |
Done | Maze | Support multiple entrances with the possibility to unlock entrances during the game. |
Done | Interface | Allow partial support for Widescreen type display by using a floating party bar (There are no floating party bar, bur rather a party frame. |
Done | Characters | Add pictures to characters. See for portrait in RPG maker sites. (Using wiz 8 portraits, for party frame) |
Done | Interface | Design a party bar on the side to be used in with widescreen resolutions. |
Done | Maze-Editor | Maybe try to have a map display during the game. Need a mapping system that uncover the map while playing to prevent the player to manually map the level. (See Dark Spire method ) Map exploration memorised in game during progress as a non-walled display |
Done | Datafile | Convert all data files into script generated datafiles |
Done | Combat | Add support for unidentified creatures |
Done | Interface | Add a picture smoothing library to unpixelize monsters and maze objects when zoomed in the game |
Done | Gallery | Remake the gallery when the new datafiles are ready |
Done | Maze | Redefine Texture and object database. Allow to use pictures which are smaller than 256x256 (this cannot be avoided by redesigning the maze structure) |
Done | Datafile | Remake all the datafile with a more complete texture and object list |
Done | Adventure | Revise story text system for new structure. Using the database entries and a text file for the credits. |
Done | Adventure | Support the loading of subdatafile in the advententure for custom content. Currently only loading story picture subdatafile. |
Done | Music | Make a random music table to have different song in various areas from a game to another to avoid monotony. |
Done | Sound | Reimplement sound samples and make a new selection in the datafile |
Done | System | Makes a zero configuration system, when everything runs by default without a setup tool allow to change a few things in the game. This is done by using standard 640x480 resolution and digimid for music. |
Status | Category | Descriptions |
---|---|---|
Done | Datafiles | Made a data file reference system that simplifies referencing an load script created datafiles |
Done | Monsters | Create Monster and template tables and add classes to support the data |
Done | Actions | Create an action table and class to manage the data |
Done | Interface | Implement a memory log system that will be mostly used in battle and also the window to display the info |
Done | Actions | Create an generic action system for camp and combats |
Done | Rewards | Battles now gives exp and gold reward |
Done | City | Characters can now be leveled up at the city |
Done | System | Added a system log to mainly manage message in battles. |
Done | Effects | Implement data structure and corresponding classes to manage spells and active effects (But won't really be used and tested) |
Done | Monsters | Add the first set of monsters in the database excluding special attacks |
Done | Combat | Opponent class should manage the compilation and stacking of stats to be used in battle |
Done | Actions | Implement AI actions routines and test them in battle |
Done | Actions | Implement attack action |
Done | Character | Manage character death in and party annihilation |
Done | Window | Translucent windows and party bar during the maze |
This is the start of the new remake of the game after the project has been abandoned for 8 years. There is not much new features regarding game play since I had to deconstruct the game and reprogram some stuff. Here are the main features.
<< Road Map | Table of contents | Discussion Threads >>
Powered by PmWiki and the Green skin