Wizardry Proving Grounds Restored v2.2 26-JAN-23 ================================================ In the past few years, a lot has been discovered about Wizardry and fixes have been produced. This Wizardry "Restored" project includes those fixes as well as several newer fixes all wrapped up in this release. Here are a few of the of the fixes, many more below --------------------------------------------------- - 40-Column for Apple IIe fixed. - Write-protect check on boot removed. - CFFA card support. - Easter egg enabled. - Special encounters enabled. - Fixed misspellings. - Items and monsters. - Level 4 south west now accessible. - Fixed walls/doors and encounters. - Fixed rewards tables (treasures). The starting point for the scenario databases is the pristine version 2.1 of 22-JAN-82 from the A-Woz-a-Day on the Internet Archives. The starting point for the disk images is the ones with Serial Number ?????? since those are the only ones that are pragmatically workable to apply fixes, and write back to floppies if desired, without too much hassle. Boot side fixes - details ========================= Changes by Chris Torrence ------------------------- - A bug was fixed where on an Apple //e with an 80-column card in the aux slot, Wizardry would incorrectly switch to 80-column mode and have spaces between each character. To fix this, memory location $B91D was changed from a JMP instruction ($6C) to a RTS ($60). This prevents Wizardry from attempting to switch out of 80-column mode, which was actually causing it to switch into 80-columns on an Apple //e. Sector Editing Method: Start your favorite sector editor Insert the Wizardry Boot disk Search for Hex 6C F6 00 Replace Hex 6C to 60 Note: This can be reversed if you wish or as needed. - The disk image was also changed to remove the write-protect check. Following the technique of TommyGoog on the comp.sys.apple2 newsgroup, the Pascal p-code was changed by 1 byte on Track $22 Sector $0B at address $1E from $F6 to $00 (this is at byte 142110 in the disk image). According to Tommy, the code checking for write protection is just before the Copyright (C) notice. The change from $F6 to $00 changes the infinite loop to jump to the next instruction instead of to the previous instruction. This allows the disk image to work properly in emulators without needing to set the file permissions to locked. Changes by John Brooks ---------------------- - For the Apple IIGS with a CFFA card (Slot 6 Disk II emu), need to enable IRQ to allow GS control panel access for CFFA disk image swapping. The first patch is a 1-byte change to UCSD BIOS init which will enable interrupts (SEI -> CLI). Trk:$14, Sec:$01 Offset $9F = $58 The 2nd patch fixes a bug in Apple Pascal 1.0 so it properly saves/restores the interrupt state across disk calls. Trk:$14, Sec:$8 Offset $A4 = $08 $68 $29 $04 $8D $00 $AF $78 ... $20 $E8 $AF $2A $28 $6A $AE $AD ... $03 $B0 $2A $90 $01 $EA Changes by Eric Labelle ----------------------- - Updated the boot splash screen text to show that you are running the version with the 40-Column, write-protect, and CFFA support fixes. - Updated the version to 2.2 and date to 26-JAN-23. - Boot Pascal disk name changed from WBV2.1: to WBV2.2: Scenario side fixes - details ============================= Changes by Eric Labelle ----------------------- - Scenario Pascal disk name changed from WSV2.1: to WSV2.2: Maze fixes ---------- Maze level 2 fix: - At North 13, East 1, there is a one-way door to the east. Changed it to a wall. Otherwise, it lets the player grab the gold key free by bypassing other required quest items. - The elevator was misplaced at North 9, East 10. It has been moved one square South to North 8, East 10. Maze level 4 fixes: - At North 10, East 3, enabled the requirement for having the Gold Key to pass. The Gold Key was already set to be used on this level but never enabled. This matches the way another quest item is required to pass in those same corridors. - At North N7, East 3, changed the south wall to a door. Finally, after 40 years, the player has access to that area. This incidentally fixes a game-breaker issue where if the party gets teleported there, they would have been stuck and would have had to disband the party if they had no means to teleport out. At least now they have a fighting chance to make it out. - The one-time special encounter in the room starting at North 14, East 12 of level 4, gives you the Deadly Ring in the treasure chest upon winning the fight against the monsters. A game play issue is fixed pertaining to the case where if you fail to disarm and therefore set off either of the "Alarm" traps, your party gets no treasure at all, thus defeating the point of your party getting the Deadly Ring. That trap have been disabled. Maze level 6 fix: - Enable and always show easter egg at North 7, East 19: Special 6 SP Feature 1 159 0 > Special 6 SP Feature 1 159 -1 Maze level 7 fixes: - Enabled three special messages (tied to the special encounter following on the same floor) to appear 4 times each instead of never: Special 11 SP Feature 1 166 0 > Special 11 SP Feature 1 166 4 Special 12 SP Feature 1 167 0 > Special 11 SP Feature 1 166 4 Special 13 SP Feature 1 168 0 > Special 11 SP Feature 1 166 4 - At coordinates North 09, East 02, changed the attribute from "Corridor" to "Room" for the special encounter with Fire Dragons to trigger when entering the room instead of never happening. Maze level 8 fixes: - At coordinates North 4, East 19, there is a one-way door that is completely impossible to use because the entrance side is solid rock (Information from DDG Ahab). Changed it to a regular wall. - Monster table 3 had two entries reversed by mistake (Information from DDG Ahab). That made encountering some monsters extremely unlikely. The corrections make the encounters happen as intended. Here is how this is shown in different tools. The Big M WizardryApp Wizardry Entries Entries Coding Before After --------- ----------- -------- ------- ------- PTR Minimum MINENEMY 50 50 CLASSIZE Range Offset MULTWORS 3 10 CLASSMAX Extra Ranges WORS01 10 3 ELEMENT Range Size RANGE01 10 10 PROB Extra Range Odds PERCWORS 35% 35% Maze level 9 fixes: - At North 0, East 7 and East 9, are two very small enclosed areas. This was a game-breaker. If you got teleported there and did not have any teleport spells left, you were stuck and had to disband the party. Changed the two walls north of these to doors instead. General misspelling fixes ------------------------- - While in the maze, you can cast the Kandi spell to find where a character is. If the character you are looking for is dead but has been brought back to the castle, you get the following message - "The soul of Werdna is.. in the mourge". Corrected "mourge" to "morgue". - The word "Dispel" was misspelled "Dispell" throughout the game, they are corrected here: Track Sector Byte Old Spelling New Spelling $08 $00 $BB D)ISPELL D)ISPEL $08 $0E $03 DISPELL WHICH GROUP# ? DISPEL WHICH GROUP# ? $0B $0A/$09 $FF/$00 DISPELLS! DISPELS! Monster fixes ------------- - Maelific - Number of appearances changed from 1d0+1 to 1d1+0. A zero sided die does not exist. - WERDNA - Turned on resistance to befriending. WERDNA is not your friend. It was silly to encounter a friendly WERDNA. This works in Wizardry PG v3.0 where a code fix has been done to take in account that resistance. Items fixes - Short list (Complete list in Appendix I) ------------------------------------------------------ - Corrected misspelling, the other corrections are for the sake of consistency with all of the other items. # Old True Name New True Name 21 Scroll/Kantino Scroll/Katino > Corrected misspelling 36 Chain -1 Chain Mail -1 49 Chain + 2 Chain Mail +2 52 Helm +2 (Evil) Evil Helm +2 59 Blade Cusinart' Blade Cuisinart > This is a reference to the kitchen appliance 75 Chain -2 Chain Mail -2 82 Evil Ssword + 3 Evil S-Sword +3 > Changed alignment from UNALIGN to EVIL 85 Lords Garb Lord's Garb 86 Murasama Blade Muramasa Blade > Corrected misspelling - Cursed items in Boltac's store do not show for sale, which is normal, therefore corrected this oversight to quantity 0 (Information from DDG Ahab): Item 30, Short Sword -1, quantity in store changed from 1 to 0. Items fixes - Weapon amount of swings ------------------------------------- Wizardry does not take in account an amount of swings of 1 on a weapon since that is the minimum anyway. For the sake of consistency with other items, changed the amount of swings from 1 to 0 for the following items: # True Name 30 Short Sword -1 31 Mace -1 32 Staff +2 33 Dragon Slayer 58 Staff/Montino 68 Short Sword -2 71 Staff -2 Item fix - Lord's Garb ---------------------- The Lord's Garb was flagged to grant critical hits and 2x damage towards weres, undead, and demons, but it wouldn't since the game code only checks weapons for these flags. These attributes have been removed from the Lord's Garb. Rewards tables (treasures) analysis and changes by DDG Ahab ----------------------------------------------------------- - Note: A fix for this in the Pascal source code will be implemented in Wizardry Proving Grounds v3.0 so that the database entries will work as intended without modifications. - Analysis of the rewards tables (treasures) and the game coding revealed that the items dropped by the monsters did not match what was intended. Since the compiled game code cannot yet be fixed, the rewards tables are adjusted instead to compensate for the game coding mechanics. Here is a table showing each reward type and corresponding ranges, with what the items' drops were meant to be, compared with what they actually are prior to fixes: Rewards Tables Min Range Intended Intended Actual Actual Index Minimum Maximum Minimum Maximum (10-15)A 1 15 1 16 3 17 (16-17)A, (11-15)B 17 15 17 32 19 33 (18-19)A, (16-17)B, (14-15)C 33 18 33 51 35 52 (18-19)B, (16-17)C 52 27 52 79 54 80 18C 79 13 80 92 81 93 19C 78 13 80 92 80 92 20A 94 0 94 94 94 94 21A 16 0 16 16 16 16 21B 93 0 93 93 93 93 21C 61 0 61 61 61 61 Correcting the rewards tables with the following values produces the intended results: Rewards Tables Min Range Intended Intended Index Minimum Maximum (10-15)A -1 16 1 16 (16-17)A, (11-15)B 15 16 17 32 (18-19)A, (16-17)B, (14-15)C 31 19 33 51 (18-19)B, (16-17)C 50 28 52 79 18C 78 13 80 92 19C 78 13 80 92 20A 94 0 94 94 21A 16 0 16 16 21B 93 0 93 93 21C 61 0 61 61 Conclusion ---------- The fixes to the rewards tables prevents the accidental drop of a Deadly Ring which was meant to be a one-time event only. This "Restored" project started with a discussion about the "Deadly Ring" between me and DDG Ahab and ends nearly the same way. Funny how things turn out. Wizardry probably has more secrets to uncover. Look out for Wizardry PG v3.0 where we do fixes in the game code itself. If you have more fixes for Wizardry, please let me know. Thank you. Eric Labelle (Snafaru) Email: snafaru@zimlab.com Web Site: https://www.zimlab.com/wizardry/ APPENDIX I - Complete Items Spelling Corrections ================================================ # Old True Name New True Name 17 Long Sword+1 Long Sword +1 18 Short Sword+1 Short Sword +1 19 Mace+1 Mace +1 21 Scroll/Kantino Scroll/Katino > Corrected misspelling 22 Leather + 1 Leather +1 23 Chain Mail + 1 Chain Mail +1 24 Plate Mail + 1 Plate Mail +1 25 Shield + 1 Shield +1 34 Helm + 1 Helm +1 37 Breast Plate-1 Breast Plate -1 42 Long Sword + 2 Long Sword +2 44 Mace + 2 Mace +2 48 Leather + 2 Leather +2 49 Chain + 2 Chain Mail +2 50 Plate Mail + 2 Plate Mail +2 51 Shield + 2 Shield +2 52 Helm +2 (Evil) Evil Helm +2 59 Blade Cusinart' Blade Cuisinart > This is a reference to the kitchen appliance 62 Evil Chain + 2 Evil Chain +2 63 Neut P-Mail + 2 Neut P-Mail +2 69 Dagger + 2 Dagger +2 77 Shield - 2 Shield -2 81 Evil Sword + 3 Evil Sword +3 82 Evil Ssword + 3 Evil S-Sword +3 > Changed alignment from UNALIGN to EVIL 85 Lords Garb Lord's Garb 86 Murasama Blade Muramasa Blade > Corrected misspelling 89 Evil Plate + 3 Evil Plate +3 90 Shield + 3 Shield +3 APPENDIX II - Complete Monsters Spelling Corrections ==================================================== # Name New Name Plural New Plural Generic Name New Generic Old Generic Plural New Generic Plural 20 Lvl 3 Ninja Lvl 3 Ninja Lvl 3 Ninjas Kimonoed Man Kimonoed Men 21 Were Bear Werebear Were Bears Werebears Bear Animal Bears Animals 26 Wererat Wererats Wererat Animal Wererats Animals 29 Priestess Priestess Priestesses Priest Priest Priests 34 Grave Mist Grave Mists Unseen Entity Unseen Entity Unseen Entities 36 Werewolf Werewolves Wolf Animal Wolves Animals 37 Shade Shades Unseen Entity Unseen Entity Unseen Entities 39 Minor Daimyo Minor Daimyos Minor Daimyo Man in Armor Man in Armor Men in Armor 43 Spirit Spirits Unseen Entity Unseen Entity Unseen Entities 51 Major Daimyo Major Daimyos Major Daimyo Man in Armor Man in Armor Men in Armor 70 Fire Giant Fire Giants Giant Giant Giants 81 Fire Dragon Fire Dragon Fire Dragons Dragon Dragon Dragons 82 High Priest High Priest High Priests Priest Priest Priests 85 Hatamoto Hatamotos Hatamoto Man in Robe Men in Robes 86 Vampires Vampires Unseen Entity Unseen Entity Unseen Entities 95 Vampire Lord Vampire Lords Unseen Entity Unseen Entitys Unseen Entities 96 W E R D N A W E R D N A Man in Robes Man in Robes Men in Robes