If you appreciate the work done within the wiki, please consider supporting The Cutting Room Floor on Patreon. Thanks for all your support!

Proto:Ultima VII Part Two: Serpent Isle

From The Cutting Room Floor
Jump to navigation Jump to search

This page details one or more prototype versions of Ultima VII Part Two: Serpent Isle.

Ultima VII Part II - Serpent Isle ver 1.07 Beta: I eat Bugs for Breakfast

An internal test build, leaked by Razor 1911 in December of 1992. They, of course, tried to pass it off as the final game.

It's very unstable, the writing is pretty raw, and many events are not yet implemented. Also, at this point in development they had not yet started to cut down the back half of the game, so there's a lot of interesting stuff!

(Source: Point of Origin: Vol. III, No. 31, si.nfo)
To do:
There's an entirely excessive amount of text/scripting and map changes, plus more graphical and audio diffs.

General Differences

  • Just a plain black loading screen, rather than the blue glow. Always shows a "LowVoo main.c #171" message when it's finished. Press any key to continue.
  • No frame limiter.
  • None of the new hot keys.
  • Won't let you open more than two paperdolls at once or any containers when you have more than one paperdoll up.

Build Date

Created Dec 15 1992 17:54:11

Stored at 473CF in SI.EXE.

Graphical Differences

Title Screen

Prototype Final
UVII-SI-Proto mainmenu.png UVII-SI mainmenu.png

Blue menu text, and the title is a bit off center.

Portraits - FACES.VGA


Prototype Final
UVII-SI-Proto f45 wilfred.png UVII-SI f45 wilfred.png

So his tattoo used to be huge green slashes across his cheeks... seems a bit too hardcore for this blowhard.

Skyrise the Phoenix

Prototype Final
UVII-SI-Proto f272 skyrise.png UVII-SI f272 skyrise.gif

Looks like a bad drawing of a peacock.

Rotoluncia's Scroll

Prototype Final
UVII-SI-Proto f302 rotoscroll.gif UVII-SI f302 rotoscroll.gif

Literally half finished, shows up blank in game. Anyway, it's got a blue sparkly border rather than a red one.

Menu Graphics - GUMPS.VGA

Spellbook - Enchant

Prototype Final
UVII-SI-Proto g30 2 enchantbook.png UVII-SI g30 2 enchantmissilesbook.png

Still the same graphic as in Black Gate at this point.

Spellbook - Smoke Field

Prototype Final
UVII-SI-Proto g35 4 smokefield.png UVII-SI g35 4 erstamssurprise.png

Boring name, same spell.

Spellbook - Animate Automaton

Prototype Final
UVII-SI-Proto g35 5 animateautomaton.png UVII-SI g35 5 createautomaton.png


Magic Scroll - Enchant

Prototype Final
UVII-SI-Proto g68 2 enchantscroll.png UVII-SI g68 2 enchantmissilescroll.gif

Representing a missile enchanting spell with a picture of a harp... well, that's one possible reason to change the name.

Magic Scroll - Mist Breathing

Prototype Final
UVII-SI-Proto g71 6 mistbreathing.png UVII-SI g71 6 createammo.png

A graphic for an anti-poison mist spell? The spell for this slot is already Create Ammo.

The final Create Ammo graphic still has IHS (In Hur Sanct) written on it, meaning "Create Wind Protection".

Magic Scroll - Summon Defender

Prototype Final
UVII-SI-Proto g73 6 summondefender.png UVII-SI g73 6 firesnak.png

A graphic for some kind of summon spell. Has the same runes on it as Swordstrike. Casts Fire Snake.

Oddly, the final's Fire Snake graphic has what looks to be an appropriate incantation for Summon Defender written on it: KS (Kal Sanct), meaning "Summon Protection".

Removed Spells


Teleports you a short distance in a random direction. It can't get you in or out of a completely walled off area, but it can get you past locked doors.

Also script triggers.

Always does the spell failure animation in final.

Fire Snake

Choose a target to shoot out a trail of fire that ends in an explosion. Occasionally throws a sound effect error.

The base script for the spell in the prototype calls the external script "FIRESNAK 0x829", which seems to have something to do with targeting. The final spell script does not call any externs, even though the targeting script still exists.

Casting the spell in the final just plays the basic spellcasting animation and nothing else happens.

Time Stop

Same as in Black Gate.

Stops all animations and NPCs for a short time. Can also prevent scripts from firing.

Always does the spell failure animation in final.

NONSHIP folder

The prototype has an extra folder for stuff that, well, wasn't intended to be shipped.


An accurate to this build world map. Used by the F3 teleport cheat.


A C++ header file for converting object names into numbers. Some interesting names:

#define Serp_Bracers                     486

The item number corresponds with the Usecode Container, an invisible, weightless chest in the Avatar's inventory, full of Path Eggs used by some scripts as horrible hacky data storage method.

Certainly, like the serpent artifacts it's a necessary item to complete the game...

#define Zot_Wand                         629

The nonexistent "Zot Wand" is listed in the official hint book as a weapon that "shoots poison missiles".

The item number corresponds with the Lightning Wand.


A list of names for all of the flags in this build (many more were added later). Used by the Game Flag editor in the F2 cheat menu.

A good few of them are never set or checked in any version of the game.

Unused Flags

Dec Hex Name Note
2 02 $lichetrapped
14 0E $entrytariffpaid (there's a script that sets the equivalent flag in the final, but doesn't seem to have anything to do with this name)
17 11 $marstensaidpomdirgun
19 13 $marstensaidgoblins
20 14 $timeforfuneral
23 17 $talkedmarstenpost
28 1C $foundspektorpotion
29 1D $spektorsaidharnna
35 23 $postbrendannmet
44 2C $ceremonyfirsthalf (near Knight's Test flags)
46 2E $invitedtoinductin (near Knight's Test flags)
48 30 $lucillasaidargus
50 32 $lydiasaidselina
51 33 $pickedbearcommand
52 34 $pickedwolfcommand
53 35 $pickedleopardcommand
63 3F $toldharnnamonks
64 40 $metpostshazzana
65 41 $dupreatwolves
69 45 $duprefights
72 48 $wolf9dead
73 49 $wolf10dead
74 4A $wolf11dead
75 4B $wolf12dead
86 56 $lutherdead
90 5A $senttomarsten
100 64 $shownshmedevidence
141 8D $askluthercommonshield
202 CA $filgavetooth
211 D3 $goblgavescroll (Frigadazzi's goblin servant)
217 D9 $knowseleniafriend
219 DB $startfedatimer
248 F8 $frelispell
254 FE $boughtwormheart
362 16A $hawkfree
377 179 $knowswardrobe (near Sleeping Bull flags)
448 1C0 $metlorthondo
467 1D3 $seendallas (next to Vasculio $opencoffin flag, he does look like Dallas Snell...)
479 1DF $monkstookcantra
488 1E8 $xenkasaidashes
563 233 $metpomdirgun
577 241 $badavatar
581 245 $mstormactive
582 246 $armageddoncast
583 247 $newherospeech
591 24F $timeshortspeech
600 258 $lookeyespeech

Cheat Mode Differences

Use the PASS or PASS S arguments, same as in 1.02 Final.

F1 - Help Menu

UVII-SI-Proto CheatKeys.png Helpful. Disabled in final.

F2 - Super Cheat Mode

[G]ame Flags

UVII-SI-Proto GameFlags.png

  • [I]nspect Flag - Enter the flag name you wish to check, returns the decimal flag number and the current value.
  • [S]et Flag - Enter the flag name you wish to set, then pick (t)rue or (f)alse.

Disabled in final.

F3 - Goto Map Location

Prototype Final
UVII-SI-Proto GotoMapLocation.png UVII-SI GotoMapLocation.png


F9 - Target Report

UVII-SI-Proto TargetReport.png Displays object info like in Black Gate, as well as the Egg info.

Alt-2 - Frame Counter

UVII-SI-Proto FrameCounter.png Displays current framerate. Disabled in final.

Alt-3 - Sprite Effects

UVII-SI-Proto SpriteEffects.png Hey, it actually shows the text!