Announcing:
*** Parsival, the spellcasting Paladin 'Borg ***
A brave knight fighting both Morgoth's dreadful creatures and
the complex lurking dangers of borg programming bugs :-)

Parsival version 2.01
(v 2.0 didn't contain borg-frits.c..  oops.sorry..)
27 June 1995
by Frits Daalmans

Obligatory Saying of the Week:
"If I could see far, 
    it was only because I was standing 
       on the shoulders of Ancient Multi-Hued Dragons."
              -- Anonymous (of course)

* warning: hacker's software, if you don't have programming as a hobby
  please let someone else do this for you! thank you. 

This version works (kind of) for angband v2.7.7 by Ben Harrison.
It is based heavily on Ben Harrison's borg.c code (2.7.5 beta), and was adapted
from David Boeren's borg-ew.c version 2.7.6 ( borg-ew.c was in its
turn adapted from Ben's Borg)

In case you got confused:
game version				   borgs
------------------------------------------------------------------------------
2.7.5					Ben's borg.c 
2.7.6                 Ben's borg-ben.c           David's borg-ew.c
idem                                                     Frits's borg-ew.c (1)
2.7.7                 Frits's borg-ben.c (2)
------------------------------------------------------------------------------

for (1) and (2) both, you need the files borg-frits.c and borg-frits.h included
in the patch, and the patches to borg.c and borg.h and Makefile.
for (1), a (quite good, if I may say so) borg based on borg-ew version 2.7.6,
 you also apply borg-ew.c.276.patch
for (2) you instead apply borg-ben.c.277.patch to get a borg based on
 borg-ben version 2.7.7.

The borg is tested best on Paladins, therefore the name Parsival.
Consider this beta software; don't use in a hospital or nuclear power plant :-)

This tar.gz file contains the following:
README.parsival2.0	this file
borg-frits.c		borg spellcasting routines; includes automatic gaining
			of spells, and figuring out which spells are known
			(this was TOUGH! (for me)). I consider this one file
			copyright Frits Daalmans, 1995. You (the user) are
			allowed to use/change/give away the source, provided 
			that you:
			- clearly state that I'm the original author
			- clearly state (if you alter the source) which part 
			  is original and which part is yours.
			- don't make money from it or its derivatives.
			If you cannot comply with these demands, don't use 
			borg-frits.c! If Ben agrees, I'll place this file
			under GNU copyleft. Read the GNU COPYRIGHT file or
			mail me for more info.

borg-frits.h		required header file for borg-frits.c

dumpspells.c		I was tired of reading tables.c's totally mangled
			spell tables, so made a (BAD!) little program to
			pretty-print the spell tables the borg uses.

Makefile.patch		self-explanatory patch; allows for compilation of all this crap.
borg.h.patch		self-explanatory (#includes borg-frits.h)
borg.c.patch		not really necessary; bell rings when borg_oops is
			called, and rings/amulets that are "kind" but not "able"
			are tested.

borg-ew.c.276.patch	spellcasting borg with lots of other little tinkerings
			in item_power for example (playing a spellcaster means,
			not having the STR for tactics that warriors use)

borg-ben.c.277.patch	(nearly) pure spellcasting patch; allows the borg to
			buy/sell spellbooks, and cast spells (see borg-frits.c)
			Hopefully this patch makes it also into other people's
			borg codes!


If you compile these files without #defining FRITS (e.g. in CFLAGS; -D"FRITS")
you should get the original source back. I haven't tested this though.

All patches have to be applied by typing (on a UNIX machine)
patch sourcefile < patchfile
where sourcefile and patchfile are the names of these files.

A final note on the performance of this borg:
I had to start using savefile cheats regularly around level 56; 
those Time Hounds and Plasma Hounds and Dreadlords are killing!
That is when I stopped playing; the results are boasted about below here.
NB: In borg-ew.c the borg dives so recklessly that starting the game in Preserve
mode is probably wise.
NB2: I played a Dunadan Paladin in maximize mode.

\begin{boast mode}
Parsival offed (amongst others) Ancalagon, Glaurung, Uriel, Muar, Baphomet,
Fundin Bluecloak, The Phoenix, Thuringwethil, 8 Ringwraiths 
(incl. Khamul the Easterling), and of the normal creatures:
2 Nightwalkers, 7 Nightcrawlers, 5 Nightwings, 19 undead beholders, 
2 skull drujs, 5 eye drujs, 3 hand drujs, 33 Master Lich(e?)s, 
8 Great Hell Wyrms, 10 Great Ice Wyrms, 16 Great Storm Wyrms, all unique D's,
32 Dracoliches, 36 Ethereal Dragons, and 48 AMHD's; to be honest, I had
to use the savefile cheat twice because of an AMHD when the borg wasn't ready
for them yet.
Furthermore:
14 Solars, 11 drolems, 38 dreadmasters, 18 dracolisks, 8 grand master mystics
(argh!), 18 Greater Titans, 31 Ethereal hounds, 25 Plasma hounds, 32 Time
hounds, 71 Nether hounds. Note: no Great Wyrms of Balance or Dreadlords or
Black Reavers yet... I don't think a borg can yet win.

Took about a week of playing for it to get this far.
Parsival didn't found Ringil or Cubragol or Feanor's boots, 
but Durin's Great-Axe, Belthronding, and boots of speed (+7) weren't bad.
\end{boast mode}

Thanks for reading all this,
have fun watching *your* borg,
Frits Daalmans
frits@rulglj.LeidenUniv.nl

