Greatest RPG Fans Forum

"Wizardry game code revealed"

Printer-friendly version of this topic
Bookmark this topic (Registered users only)
 
Previous Topic | Next Topic 
Conferences Wizardry(r) 1-7 Conferences Wiz 1 - The game that started it all (Protected)
Original message

Snafaru (35 posts) Click to EMail Snafaru Click to send private message to Snafaru Click to view user profile Click to check IP address of the poster
Sep-19-13, 07:58 PM (Pacific)
"Wizardry game code revealed"
LAST EDITED ON Sep-22-13 AT 12:29 PM (Pacific)

Hi, I've found a copy of the Wizardry game code on the Asimov site and spent several nights deciphering it. Back in the day memory space was scarce therefore the code has no comments and all variables only 8 characters max. This code is valid for Wizardry 1-2-3. I can say Robert Woodhead was a very good coder. Enjoy!

Snafaru


Fighter, Samurai, Lords get 1 extra attack for every 5 levels, the Ninja has one extra swing on top of that which means a Level 1 Ninja starts with 2 swings.

Fighter, Priest, Samurai, Lord, Ninja have a naturally higher hit probability than other classes. I can see how it is done in the code but it is too long for here.

If unarmed, the Ninja’s AC (Amour Class) = ( Ninja Level / 3 ) - 2. The -2 here is a good thing.

If a Ninja hits with damage, then the Ninja has ( 10 * Level ) % chance with a maximum of 50% chance to score a Critical Hit, then the monster has ((Monster Level + 10) / 35) % chance to avoid it, which means a monster over Level 25 cannot be Critically Hit.

The younger you are the more chances you will gain attributes when leveling up (ex: 86% at age 18).

Your characters’ Strength has effect on the hit chance probability and damage per swing:
Strength 3: -15% chance to hit, -3 damage per swing
Strength 4: -10% chance to hit, -2 damage per swing
Strength 5: -5% chance to hit, -1 damage per swing
Strength 16: +5% chance to hit, +1 damage per swing
Strength 17: +10% chance to hit, +2 damage per swing
Strength 18: +15% chance to hit, +3 damage per swing
So, for example, your Level 10 Ninja with a Strength of 18 can do up to 12 free damage points per attack with his 4 swings, all of it with 15% more chance to hit, this is significant.

The higher you I.Q. (Mage Spells) and Piety (Priest Spells), the faster you learn much needed spells. I can see how it works in the code but it is too long to put here.

Fighter, Lord gain 1 to 10 hit points per level on average.
Priest, Samurai gain 1 to 8 hit points per level on average.
Thief, Bishop, Ninja gain 1 to 6 hit points per level on average.
Mage gain 1 to 4 hit points per level on average.

Your characters’ Vitality has an effect on how many hit points are gained per level:
Vitality 3: -2 hit points per level
Vitality 4,5: -1 hit points per level
Vitality 16: +1 hit points per level
Vitality 17: +2 hit points per level
Vitality 18: +3 hit points per level
This is the most important stat of your character, no doubt. Also, the higher your Vitality the higher the chances you will survive a resurrection attempt.

Initiative, or if you prefer whom goes first in a battle, is a random number of 1 to 10 with 1 being first and is modified by your character’s Agility:
Agility 3: +3
Agility 4,5: +2
Agility 6,7: +1
Agility 15: -1
Agility 16: -2
Agility 17: -3
Agility 18: -4
By the way, the monsters’ initiative is a random number of ((1 to 8) + 2).

The Thief has 6 * Agility % chance to identify a trap, the Ninja 4 * Agility, Calfo has 95% chance. Agility also helps not setting off a trap (89.5% chance at Agility 18) if your disarm failed.

The higher your Luck the greater the chance (5% at 6, 10% at 12, 15% at 18) you will avoid being Poisoned, Stoned, Paralysed or Auto-Killed (Critically Hit), or reduce Breath attack damage by half, as well as escape Anti-Mage, Anti-Priest, and Poison Gas traps.

On top of Luck, you have a character’s ( Level * 2 ) % chance up to a maximum of 50 % to avoid being Critically Hit.

Resistances bonuses:
- vs. Poison & Paralysis: Fighter 15%, Samurai 10%, Lord 10%, Ninja 15%, and if race is Human 5%.
- vs. Stoning: Priest 15%, Bishop 10%, Lord 10%, Ninja 10%, and if race is Gnome 10%.
- vs. Breath Attacks: Thief 15%, Ninja 15%, and if race is Dwarf 20% to reduce the Breath damage by half.
- vs. Poison Gas chest trap: Thief 15%, Ninja 15%, and if race is Dwarf 20%.
- vs. Anti-Mage and Anti-Priest chest trap: Mage 15%, Bishop 10%, Samurai 10%, Ninja 10%, Hobbit 15%
- vs. all of the above: 5% for every 5 Levels of your character.

You will encounter a maximum of 2 monster groups on level 1, a maximum of 3 on level 2, and up to 4 beyond.

You will encounter a maximum of 5 monsters per monster group on level 1, 6 on level 2, 7 on level 3, 8 on level 4, and 9 beyond.

Each party member has ( IQ + Piety + Level ) % chance to correctly identify monsters.

The way the monster’s magic resistance works is in 2 main steps:
- First, a % saving thrown against their natural Magic Resistance, which is for most a low number.
- Second, all other magic calculations depend on your and their: Level, resistances (Fire, Cold, Etc.), properties (Stone, Paralyse, Etc.), class (Fighter, Dragon, Undead, Etc.), Luck, condition (Asleep, Held, Silenced, etc.), and base, minimum, and maximum chances.

Use the Katino spell a lot in the beginning to put the monsters to sleep in order to prevent them from attacking you. Also, when you hit a sleeping monster you do double damage!

Your character’s chance to recuperate from Katino is ( 10 * Character Level ) % up to a maximum of 50%.

Monsters of Level 6 or lower have less chance to recuperate from Manifo than from Katino, after Level 6 it is the same.

Montino has a 10% better chance to work than Manifo.

A monster has ( 6 * monster Level ) % chance to resist Lakanito.

There is a minimum 5% chance to resist Katino, Manifo, Montino.

There is a minimum 25% chance to resist Badi.

The Priest has the ability to dispel undead creatures back to their plane! The Bishop ( beginning at level 4 but with 20% less chance) and Lord (beginning at level 9 but with 40% less chance) have the same dispel ability. Although you don’t get experience points for dispelling undead, it may save your life!

  Alert Edit | Reply | Reply With Quote | Top

  Table of Contents

 
 
Lobby | Topics | Previous Topic | Next Topic

Messages in this topic

Llevram (5380 posts) Click to EMail Llevram Click to send private message to Llevram Click to view user profile Click to check IP address of the poster
Sep-20-13, 04:24 PM (Pacific)
1. "RE: Wizardry game code revealed"
Cool stuff ... thanks for posting that. I recall many hours (i.e. days) just looking at the data from Wiz 7, just trying to decipher what was what. Oh, how having some code would have helped there ...

Tools for Wizardry(r) 7

  Remove | Alert Edit | Reply | Reply With Quote | Top

Snafaru (35 posts) Click to EMail Snafaru Click to send private message to Snafaru Click to view user profile Click to check IP address of the poster
Sep-20-13, 05:15 PM (Pacific)
2. "RE: Wizardry game code revealed"
LAST EDITED ON Sep-20-13 AT 06:40 PM (Pacific)

LAST EDITED ON Sep-20-13 AT 06:04 PM (Pacific)

To resurrect with Di or Kadorto, the % chance is 4 x Vitality of the recipient, the recipient loses 1 Vitality.

With the Temple of Cant which is much more reliable, the % chance is 50 + 3 x Vitality if dead or 40 + 3 x Vitality if ashes, the character Ages by 1 to 52 weeks.

Haman and Mahaman. The caster must be 13th level or higher,
and loses 1 level of experience after casting it. There’s a small chance casting it will make you unlearn some
spells with the following message displayed “But his spell books are mangled!"

For Wizardry 1:
===============
Haman has 3 possible effects:
1. “Dialko’s Party 3 Times”- cures paralysis, stoning, and wakes up sleeping characters
2. “Zaps Monster Magic Resistance!” - the first 3 groups of monsters become non-resistant against magic
(0% chance saving throw against magic) and they are thereafter treated as being Level 1 for other calculations
regarding the effects of spells.
3. “Heals Party!” - restores all Hit Points and cures Paralysis, Stoning, Asleep, except those that are Dead
or in Ashes

Mahaman has 3 possible effects:

1. “Dialko’s Party 3 Times”- cures paralysis, stoning, and wakes up sleeping characters
2. “Silences Monsters!” - silences the first 3 groups of monsters without fail
3. “Destroys Monsters!” - all monsters’ Status=Dead and Hit Points=0


For Wizardry 3:
===============
Haman has 5 possible effects:
1. 'CURE THE PARTY' - cures paralysis, stoning, and wakes up sleeping characters
2. 'SILENCE THE MONSTERS' - silences the first 3 groups of monsters without fail
3. 'MAKE MAGIC MORE EFFECTIVE' - the first 3 groups of monsters become non-resistant against magic
(0% chance saving throw against magic) and they are thereafter treated as being Level 1 for other calculations
regarding the effects of spells.
4. 'TELEPORT THE MONSTERS' - all monsters’ Status=Dead and Hit Points=0
5. 'HEAL THE PARTY' - restores all Hit Points

Mahaman is like Haman above plus 2 new possible effects:
6. 'PROTECT THE PARTY' - each character's AC=-10 unless it is even lower
7. 'REANIMATE CORPSES!' - cures Paralysis, Stoning, Asleep, revives the Dead or in Ashes

  Remove | Alert Edit | Reply | Reply With Quote | Top

Snafaru (35 posts) Click to EMail Snafaru Click to send private message to Snafaru Click to view user profile Click to check IP address of the poster
Mar-24-17, 04:38 PM (Pacific)
3. "RE: Wizardry game code revealed"
I have made major updates to the game codes and calculations page.

Check it out here: http://www.zimlab.com/wizardry/

Snafaru

  Remove | Alert Edit | Reply | Reply With Quote | Top

cj (6 posts) Click to EMail cj Click to send private message to cj Click to view user profile Click to check IP address of the poster
Apr-03-17, 08:04 PM (Pacific)
4. "RE: Wizardry game code revealed"
Can you give some indication of what sections were updated? I glanced at it and didn't notice anything that seemed new or modified.
  Remove | Alert Edit | Reply | Reply With Quote | Top

Snafaru (35 posts) Click to EMail Snafaru Click to send private message to Snafaru Click to view user profile Click to check IP address of the poster
Apr-15-17, 10:03 AM (Pacific)
5. "RE: Wizardry game code revealed"
LAST EDITED ON Apr-15-17 AT 10:07 AM (Pacific)

I did not keep track of the changes but I did a word count of the original and the update and it went from 1381 words to 2953 words so I can safely say there is a least 50% new stuff on there. I've separated stuff in sections, you probably did not see too much changes at the beginning but the further you go the more new stuff you'll see and section 5 is almost entirely new stuff. Also many lines were updated with more details. I did the original using the Wiz 3 source code, once I got my hands on the Wiz 1 source code, and digging deeper into it, I could pull quite a bit more formulas and details.

Snafaru

p. s. I took a look and even section 1 has new stuff, like the formulas for ability increases upon level up and starting hit points for example.

  Remove | Alert Edit | Reply | Reply With Quote | Top

cj (6 posts) Click to EMail cj Click to send private message to cj Click to view user profile Click to check IP address of the poster
Apr-19-17, 09:59 PM (Pacific)
6. "RE: Wizardry game code revealed"
LAST EDITED ON Apr-20-17 AT 08:55 AM (Pacific)

You must have posted the update message a while after you actually did the update. Section 5 looks like all stuff I've seen before, I'm pretty sure on that page. I first read it early March.

  Remove | Alert Edit | Reply | Reply With Quote | Top


Lock | Archive | Remove

Lobby | Topics | Previous Topic | Next Topic
Rate this topic (1=skip it, 10=must read)? [ 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 ]
Powered by DCF2000 ©1997-2000 by DCScripts. All rights reserved.