Archive of old changes

August 21, 2008, Implemented changes recommended on the Forum.
1)  Genociding Nasties will begin earlier (depth 25 instead
of depth 50).  Loosened the restrictions slightly.  2) Added
new borg command ‘C’ which will log the current Nasty Count.
Nasties are monsters that the borg would rather not fight.
He genocides them if they get too numerous on a level.  By
default, the nasties are monsters with the following tokens: ZAVULWD.
The borg keeps count of these monsters and when they reach a
certain number on the depth, he will use Genocide to thin them out.
Counts are 20, 20, and 10 for the others.  I dont think the
count is configured in Borg.txt but it could easily be made to do so.
By default, at the beginning of every level, he automatically
assumes there are 25 hounds, and will Genocide Z as soon as he can.
As mentioned above, he did not do this until depth 50 but will
now start earlier.  The borg has been genociding hounds at the
beginning of each level for years (he began doing it November 2002).

August 20, 2008, 1) Improvements to light handles.  The borg
incorrectly thought that Lanterns of Brightness caused him to glow
(being a permanent light source)  2) For years, the borg has been
able navigate the dungeon if he runs out of light.  He has been
able to cast Call Light if he found himself on a glowing grid, which
would help him illuminate the halls, every few steps, as he moved
through them.  Of course, he could not cast the Call Light spell
unless he were on a glowing grid.  I just added a feature which
will allow him to use his remaining few turns of light to Call Light so
he had a glowing grid to start on.  The major drag with this
Light-as-you-go technique is that it uses a lot of food due to all the
resting to regain mana.  So he will only do it if he has food to
spare.  Running out of light is still a very dangerous position
for the borg.  He might survive the ascent while dark, but its
really risky.

August 19, 2008, 1) The borg will be a bit more
flexible in following out-of-sight monsters which are moving and will
try to avoid creating a new monster index for the same monster.
2) Borg will attempt to rest on a single grid to avoid the
situation wherein the borg is two grids away from a monster and when
the borg moves 1 grid to close the distance, the monster gets a free
hit on the borg.  This is a bit tricky to do correctly; several
things are involved including the borg-monster speed differential.

August
18, 2008, 1) Repairs to the borg targetting PASS_WALL
monsters who sit in a wall.  2) The spell Detect Invis is no
longer a timed event.  The borg needed to be told so.  Was
this game change listed in any change log?  This type of spell
change is important for the borg and I am surprised I didn’t catch it
in a log. 3) Improvements to how the borg uses wands:  he will be
more careful about wasting charges and hold onto certain wands (MM,
Stinking Cloud).  4) Low level borgs tend to waste a lot of ?WoR
while on depth 1 avoiding Scaryguys.  The borg will be allowed to
use the borg_desperate functions to find stairs.

August 11, 2008, 1) The distribution files did not seem to
work on computers that did not have M$ Visual Studio 2008 installed.
There is a well known issue with VS2008, producing executable
files requiring a special non-default dll to be installed on the target
machine.  I have modified the solution to link directly to the
needed parts of the dll. 2) Borg will cast the Detection type spells a
bit less frequently.  This will help the low level guys save some
mana and keep him from the rest-regain mana-cast spell-rest again-loop.
3) borg wills reset their flow and movement goals after
strategically backing away from a monster.  This will force him to
reevaluate the danger and value of the grids.  4) The borg will be
less likely to rest to mana recoop right after casting certain
prepatory/defence spells.

August 8, 2008, 1) The problem with the borg not buying
torches to refuel his Torch is Brightness is solved.

August
7, 2008, 1) Some changes to the game code when upgrading from
A to B modified the store purchasing keys.  These
changes are
now addressed in this borg.  So that basically means that this
release will not work on 309a due to the shopping changes.  If
you
really want to, you can get this source code to work by editing borg1.c
at line 454.  It is commented for you.  If you
attempt to use
any prior borg on 309b, there will be some serious problems with
purchasing wares from the store and shops.  2) The borg is
having
some goofy issues relating to buying torches and running out of light.
This is a new weirdness.  I have only seen him do it
with
Torches of Brightness.  I strongly suspect he is not buying
normal
torches to refuel the Brightness torch due to a problem with him
thinking the new torch will replace the Brightness one, giving him less
power.  I will track it down and fix it in the next days.

August 6, 2008, 1) Updated a potential crash related to the
borg
being very near the edge of the dungeon border and having a large light
radius.  2) Corrected how the borg was calculating light
radius
from artifacts.  This did cause bad behavior related
to using
Light Beam to illuminate hallways for locating unseen monsters. 3)
Improved how the borg will illuminate hallways looking for
unseen
monsters.  Unseen monsters are those who hide in the dark and
use
ranged attacks.  The borg is aware of these attacks and
attempts
to light up the hallways to reveal the monster in order to ID it and
calculate an attack strategy.

August 5, 2008, Updated the webpage.  Updated the
Zborg.
It had been about 4 years since I looked at that code.
I
got it up and running under VS2008.  Fixed a crash error.

March 1, 2008, 1) The borg could miscalculate the benefit of
using Teleport Other if he were fighting only a single guy.

February 27, 2008, 1) Updated the 309 borg.  If the
option to
remember torch-lit grids was on, then the borg believed that those
grids were glowing grids and would get stuck  if he ran out of
torch/lantern light.   This lead to a few starvation deaths.
It’s now corrected, that option can be set either way.

February 20, 2008, Major fixes today.  1) When the
borg was
respawning (rerolling a
character after one dies) the startup equipment included torches with 0
turns.  Prior to 309, the Pval of the torch determined the
turns
of light remaining.  In 309, it is the Timeout.  This
is now
corrected.  2) Significantly improved how the borg calculates
damage to and fear of compromised (sleeping, confused, slow) monsters.
This will allow him to use the wands of slow/sleep, etc.
Previously, he would very rarely use those things eventhough
he
knew how.  3)  Removed some old 3.0.5 references to
clean the
code.  4)  Improved how the borg will use the defence
and
perma maneuvers for Bless.  This made a huge improvement for
his
mana in the very early game.  5)  Improved how very
low level
borgs will explore the dungeon and stay close to the stairs.
Previously, he would return to town after a short exploration
of
the dungeon (usually just one hallway).  The problem is the
town
is a very dangerous place with no exp reward for that risk exposure.
He will now return to town less frequently and explore the
dungeon a little more efficiently while still staying close to the
stairs.  Staying next to the stairs is a good idea so he can
make
a prompt escape from Grip/Fang/Jackals, etc.  Basically he
will
explore more than just one hall.  6)  The borg will
now clear
his flow codes when a monster changes his sleep state.  This
will
allow him to abort his flee attempts and attack a monster which has
just been put to sleep.

February 19th, 2008, 1) Because the General Store no longer
buys
torches or cloaks, the borg is filling his inventory with them.
The torches are useful, but the way he was sorting them, he
prefered higher pvalue torches (3000 turns) over used ones (~500 turns)
and would refuel his torch with the higher pval ones.  I
corrected
how he sorts for them and will now prefere the shorter stacks over
higher pval.  This will keep him from filling up his inventory
with a bunch of used torches.  2)  I will sell cloaks
to the
Black Market for the same reason as above.  3) added a
borg_verbose flag to borg.txt which will cut back on how many reports
are sent to the log. (Cuts back on all the parsing messages making the
log much easier for noobs to read.)

February 17th, 2008, 1) Slight tweak on strategic Backing Up,
which
will allow the borg to step back into a hall or other safe place to
avoid being surrounded and such.  The restrictions were
loosened
so the borg will be more likely to do this.

February 16th 2008, 1) Bless is more likely to be cast for low
level
guys.  2) If fleeing the level from a scaryguy and a monster
is
adjacent, he will attempt to attack that guy.  He keeps dying
to
bats and really easy guys.  3) Some improvements to the
critical
Phase Door attempts.  Borgs with several ?PD would rather
fight in
a suicide fight rather than even attempt the phase.

February 9th, 2008, 1) Slight correction to how the borg store
the
array of runes of protection.  2) the borg will no longer cast
Rune of Protection (Glyph) in anti-summon corridors.  He was
using
too much mana doing this.  3) Another slight fix to the 309
borg.
December 14, 2007, 1) Had to repair the 309 borg.  It
is still not perfect but it does run.  There was an issue with
Torches of Brightness and the borg thinking that he was glowing.

October 26, 2007 1) I have been working daily on the 3.0.9
version
borg.  There have been quite a few issues to address.
The
borg is running and is mostly stable.  I find little bugs
every
few days.  Today, I found that the message for failed glyph
creation changed.  So I had to make that correction.
Little
things like that pop up.  It is stable enough to send out for
beta
work.  I find some unhooks after shopping.  You can
find a
copy of the borg source code and the necessary game code changes here.
I am pretty sure I included all the game files that were
altered.
If the borg won’t compile, drop me a line so I can fix that
zip
file.    2) I added some better handling for *Heal*
and Life
potions.  He will be more careful about storing potions in the
home rather than carrying them around and running the risk of getting
them shattered by cold attacks.  3) Correction to how the borg
deals with a glyph creation in an anti-summoning corridor.  4)
Some work on getting the borg to run under a big screen (wider than 80
columns).

Sept 28, 2007, 1) Corrected a bug which could cause the game
to
crash while fighting Morgoth. 2)  The mage spell of Rift
needed to
be defined as a beam, had been a bolt. 3)  Shooting into grids
that contained the borg_invis feature need some corrections for
pass_wall ghosts.  4) Placing a possible wall under a
pass_wall
ghost if the borg shoots and misses a pain response.  5)
Leave_level() has some changes to make him want to stay on
level
100 longer.  6)  Minor repair to how the borg will
rest if he
is in a sea of runes waiting for Morgoth.  7)  The
borg’s
self-defined money scumming limit is now 85k.  I have a
machine
with him scumming to get $334,000.  He has been there for 2
weeks
already.  8) Rewrite to the banish nasties defence routine in
borg6.c.  This routine will count the number of certain
monsters
and bast Banishment on them if they get too numerous on a level.
I modified it to make it much easier to expand the list and
modify its usage. 9)  Mass Banishment scrolls are collected
and
stored in the home better.  10) Interestingly, the borg was
doing
some interesting behavior.  He would stay on depth
99,
collecting *Heal* potions, as expected, and storing some in his home.
As soon as his *Heal* potion goal is met (adding the personal
supply and home supply), he would dive to 100.  The problem
is, he
would dive right then, instead of returning to his home and gathering
up all his stored items.  He will now return home first, to
gather
his gear before driving.  There were a few changes to the
borg.txt, so its a good idea to replace yours (or set the Dynamic Calcs
off).

Sept 21, 2007, 1) There had been a very elusive bug were the
borg at
depth 99 would literally get naked in the dungeon, taking off all his
stuff and throwing it on the ground.  He would usually pick it
back up again, but not always.  He would sometimes trade out
his
nice gear (like Ringil) for an {excellent} weapon.  I have
seen
the borg after this event but never caught him in the act.  I
received a savefile with this behavior in full swing.  With
the
help of the savefile, I think I was able to identify and correct the
error.

Sept 20, 2007, 1) Repaired a potential  bug in how
the borg
tracks the glyphs.  It was causing crashes in some battles
with
Morgoth.  2)  Major improvement in anti equipment
loops.
There had been a persistant 3-way armor bug with Belegonnon,
Thalkettoth, and Isildur.  I now have the borg tracking the
artifacts he wears and will forbid him from rewearing an artifact which
had recently been removed.  This will not effect the swapping
of
armor or weapons from the Swap routine which is designed to help him
wear a backup item.  You will still see him swap a tiny bit
with
respect to the Best Combo routine.

Sept 19, 2007, 1) Repaired a swapping loop at the house.
This
one involved swapping staves.  He still loops a little but not
nearly as much.  I fear this change may adversely impact his
food
purchase ability.  Keep an eye out for an increase in
starvations.
This repair will significantly improve his turn count.
He
would previously flee town in a swap loop.  That flee would
take
him to depth 1 for a while then return to town and swap again.
This will help reduce the time on depth 1.  2)
Made a
major bug fix on the money scumming for the botg.  He kept
buying
stuff instead of saving all his money for the scum item.  This
should help reduce the number of rounds he spends scumming.

April 9, 2007, 1) Borg will no longer attempt those emergency
teleport spells if clevel >10.  2) Borg will have an
extra
check on using the EZ_Heal potions.  3) There is still one
more
3-way armor swap that needs to be fixed.  I have a save file
demonstrating the bug.  I will work on it over the next week.
4) A few winners were submitted.

April 8, 2007, 1) More improvements to the borg resting to
recover
his mana points.  2) Another repair to equipment swaps.
The
most likely 3-way armor swaps include Rohirrim.  3)
Improvement to
the use of Sanctuary spell.  4) Improvement to use of
missile/ball

attacks to Pass Wall monsters while they are in a wall (Dreads, etc) 5)
Offset attacks that only do 1 damage are less likely.
6)
Some monsters have immunities which, in the game, reduce the damage by
90%.  The borg would previously make this exact calculation
which
often permitted the borg to use an expensive spell and only do 10%
damage.  The damage is now reduced to zero which should save
him
some mana.  This was often seen as the borg using offset
attacks
(usually poison ball) on a never_move monster.  While the borg
rested to regain his mana, the monster would typically heal up.
If any of this behavior is seen following this update, send
me
the savefile while the borg is doing it.

Feb 23, 2007. 1) Borg will be slightly more likely to
rest to
recover his HP/SP. 2) Borg will reset his recall depth a
little
more often especially if he is slightly out of depth  (maximal
depth is about 5 deeper than what he is prepared to
handle). 3)
Borg will be slightly more likely to quaff his !Speed if fighting
certain annoying uniques (Wormtongue, Orc Uniques, Bullroarer)

Feb 11, 2007, 1) Repaired some of the Staff Buy-Sell loops.
These were introduced when staves stacked.  2) Money
Scumming seemed to double up some times.  Meaning, after he
scummed for the 20k to get the stat potion, he would purchase the
potion then continue to scum another 20k.  This is now
repaired.

October 7, 2006, 1) Borg was having problems counting charges
in his staff stacks.

July 15, 2006, 1) Sometimes the borg would cast Create Door in
town
which could leave him trapped in the ring of doors and he did not
understand how to open them.  That is now repaired.

July 11, 2006, 1) Found and corrected one source of
shop-loops. If
the borg was in rough shape upon returning from the dungeon, he might
decide to buy something and sell something in the same turn.

July 8, 2006, 1) Some fine tuning to the sea of runes
technique. 2)
Do not use Teleport Level Defence maneuver if Morgoth is on the level.
3) Log the reason why the borg is looking for up-stairs. 4) I used a
savefile of a mage at depth 100 to kill Morgoth about 10 times. There
were only a few instances were he was getting whipped. I will try to
resolve those this month.

July 6, 2006, 1) Some borgs (Paladins and Priests with < 650 HP
and valid Heal spells) were trying to Questor Combat Heal while in
town. 2) Borg Perma skills need not be cast in shallow depths, nor
should the high level borgs need to Lunal (stair) scum while shallow.
3) Borg.txt is updated to set the borg_self_lunal = FALSE. Self_lunal
mode was actually taking more turns to dive than looking for the stairs.

June 28, 2006, 1) I think I fixed that crash issue with low level borgs
in the dungeon.

April 24, 2006, 1) It was possible for the borg to unhook on
level
100 if he ran out of mana while making a sea of runes. 2) The borg
needed to not do his Restock() checks while in town.

February 17, 2006, 1) Seasoned borgs (clevel 10) were dying on
level
1 while trying to escape a ‘scary guy level.’ They would choose to not
fight on the race to the stairs, and take hits from faster monsters. So
now, if the borg is clevel >= depth*4, he will stand and fight.
2)
Borg needed to be more open to the idea of using the using the
Destruction staves.

February 12, 2006, 1) Borg needed a backup method to see if he
was
standing on stairs, so that he could use them to escape better. There
were some cases of ‘flowing to stairs 0’ which means stair was under
him, but he was not able to use. 2) ‘Desperate for Stairs 3’ allowed a
low level borg in danger to continue moving to stairs instead of
turning to fight. The borg was being too risky and dying. 3) Slight
tweak on danger-escape thresholds to make the borg a bit more timid.

Apr 7, 2004 1) Some borgs were being punished if they got ESP and had the
Detect Evil spell. This would have them avoid wearing anything with ESP power.
2) Apr 1, 1) Previously the borg would reset his goals when ever a monster or
object moved. This is identified by the message ‘Tracking a monster from
(y1,x1 to y2,x2)’ Once his goal was reset, he would choose another. It would
induce bouncing in some spots. I have told the borg not to reset his goals if a
monster moves unless he is flowing to a monster. Same for objects. This will
not cause problems with monsters that are LOS. Pretty much only those seen with
ESP. 2) Borgs with Regeneration without Slow Metabolism have a greater reward
for carrying food. Should help the 1/2 trolls. This reward has been in place
for a long time, but I doubled the value from what it used to be.

Mar 30, 1) Working copy of borg 304 is ready. Several changes needed to be
made to attack routines, and especially how staff/wands are treated. There had
been some crashes earlier when trying to buy Staff of Teleportation. Keep an
eye on stuff and report the errors.

Mar 28, 1) Borg will no longer inscribe food with cool names (until the
Quark issue is resolved). 2) The borg tries to conserve ammo and mana by not
using ranged attacks against certain types of weak monsters. There is a list of
monster attributes which will allow the borg to use ranged attacks. I added the
RBE_EAT_GOLD to that list. 3) Better protection against pickpockets including
checking DEX and using PFE.

Mar 24, 1) Borg was not moving to depth 99 because Sauron was still alive.
As you might guess, that could seriously impair the borgs long term goals. 2)
Borg could deposit too many food items in the home. 3) Borg can still (rarely)
overflow when hallucinating. So he is taking steps to delete objects and
monsters while hallucinating. 4) Borg was walking around with 1 ring on loose
finger and none on the tight one. This setup would not allow him to consider
placing a ring on the tight hand.

Mar 18, 2004 1) Borg thought he was penalized for having light radius 4, so
he would not use Light Radius items (like Sting). That is now corrected, I
think. 2) Borg will now reset his recall depth if certain conditions are right.
This will help him if he has max-depth of 90 and loses his ESP item forcing his
prep depth to be about 55. And stuff like that.

Mar 11, 1) The recent problems with the lanterns were related to fuels and
not necessarily with the choice of lantern or torch. I got them worked over
again. Try this version.

Mar 8, 1) Still messed up. I should really work on the borg when I am awake.
The borg was not replacing torches with lanterns. Replace the borg.txt entries:

# Light bonuses

POWER_CLASS999_DEPTH000_RANGE000TO000_CURLITE=-3000

POWER_CLASS999_DEPTH000_RANGE001TO001_CURLITE=500000

POWER_CLASS999_DEPTH000_RANGE002TO002_CURLITE=550000

POWER_CLASS999_DEPTH000_RANGE003TO099_CURLITE=580000

Mar 6, 1) Typo in borg.txt kept the torch problem in the game. Replace the
borg.txt entries:

# Light bonuses

POWER_CLASS999_DEPTH000_RANGE000TO000_CURLITE=-3000

POWER_CLASS999_DEPTH000_RANGE001TO002_CURLITE=500000

POWER_CLASS999_DEPTH000_RANGE003TO099_CURLITE=550000

Mar 4, 1) Sorry I screwed up the Level 1 guys with the lights. I did not
test the changes from 2 weeks ago with the low level guys. Borgs will now use
torches and lanterns correctly.

Feb 17, 1) Smoothed out the problem with borgs swapping light radius stuff.

Feb 11, 1) Another modification to the borg_no_deeper: it uses
borg_prepared()

Feb 10, 1) Borg was unhooking, and I needed to implement a new borg.txt
variable (borg_no_deeper) which will allow the borg to continue to play but he
will not dive deeper than the depth listed. The default of this number is 127.
2) Fixed the problem with overvalueing the items that increase lite radius.

Feb 9, 1) Minor repairs update, no big deal.

Jan 29, 1) Another fix on that ring swap-loop. I think this will be fully
corrected now.

Jan 19, 1) The ring swap deal over the past few weeks was missing the unique
rings, so I had to add support for them. 2) Some very goofy equipment choice
were happening in deep (> 98) dungeon. Fixed them by removing the
‘SoandSoUnique is still alive’ checks. Since the borg was not keeping track of
>3 uniques after clevel 50, he does not need to check for living uniques
before diving to 100.

Jan 14, 1) Corrected a very old restock bug. The borg looks at restock needs
with a great degree of urgency. If he needs to restock on an item, he knows to
leave that level immediately and return to town. For a long time, the borg
triggered the rs_recall if the number of recall items was less than 1. See any
problems with that? How can he recall to town if he has < 1 recall item?
That rs_recall was moved to depth 10 and made < 2. The problem (and many
borg deaths) is when the borg has 1 recall scroll in the dungeon and he is hit
with a firebolt, burns the scroll, and he is left screwed.

Jan 13, 1) Mage borgs were doing some Defence maneuvers before doing the
Healing. He needed to Heal up first if poisoned, bleeding, or confused.

Jan 12, 1) Destruction allowed if fighting too many uniques at same time. 2)
Increased bravery a lot if the borg is out of food. 3) When considering the
landing zone on teleport, unknown grids were considered off limits but will now
be ok to land on.

Jan 11, 1) Sometimes the borg tried to take off cursed rings when they were
still cursed. Fixed it.

Jan 9, 1) Some swap loops were happening with rings. Made those fixes.

Jan 1, 2004, 1) Priest spell of Banishment needed some fixes. 2) If scaryguy
on level, borg will try to use a Speed item. 3) There was only place where the
borg was denied from taking downstairs if he was out of food. This needed to be
corrected to match the other checks.

Dec 30,2003, 1) Increased the penalty for using broken swords as weapons.

Dec 29, 1) The borg was getting credit for ateleportlvl if the spell was
_legal_fail() instead of _okay_fail(). This was having the borg believe that he
had a form of teleport and kept him from returning to town to restock.

Dec 27, 1) Defence use of elemental rings needed to be able target
something.

Dec 26, 1) Borgs with good HP and a Bless/Hero/Berserk engaged was not
resting to restore depleted Mana. The borg will now rest to restore that mana
if it is less that 1/3 the max Mana. Some control measures are in place to keep
him from casting-resting-casting while around clevel 20. 2) the borg_status
screen needed a fix. The slay dragon and exterminate demons was not showing up
correctly.

Dec 24, for some strange region, the rangers were unhooking if the Rfire
spell would leave his mana under 22 (reserve mana). The borg was incorrectly
passing the spell_okay_fail(). It may be related to a variable tromp. After a
couple quick checks and recompiling the error seems gone. Let me know if it
returns.

Dec 23, 1) Mages are more likely to teleport out of a mildly dangerous room
if getting low on mana. And along that same vein, the reserve mana for mages
was improved slightly. 2) The elemental rings will be included for attacks, and
defence manuevers.

Dec 19, 1) Repaired a potential bug with 3-way ring swapping. 2) Repaired
and improved the Banishment defence maneuver. The borg will scan the monsters
and if there is a race that contributes a lot of danger to the level, but not
necessarily immediate threat, he will consider nuking them.

Dec 18, 1) the borg_quaff_crit() needed a fix, as did the quaffing of cure
crits while confused.

Dec 16, 1) If the borg has perfect saves, rdark, and rlight, then it can
qualify for Rblindness. 2) Mage borgs will count and banish Wights if they get
too numerous.

Dec 14, 1) The artifacts which grant Teleport and Phase will give only 1
instead of 1000 like the other spells. 2) the curse Aggrevation will be feared
more except for Mages. 3) Repaired a typo in some flowing stuff relating food. This
might have contributed to some starvation deaths.

Dec 10, 1) In borg_escape(), Teleport Level scrolls will be used before the
risky staff of Teleportation. 2) The act_mana_bolt gloves are now considered in
the attack types.

Dec 8, 1) Borg shopping in the BM needed some fixes, including buying Rods
of Illumination if the borg does not have have source of Call Light. 2) Borg
needed a slight fix in the borg.txt formulas. 3) Mages will count Liches,
Demons, and Angels. If they get too numerous on a level, he will Genocide them.
Quite similar to what he does to hounds. 4) Some speed-up issues for the borg
in borg_defence().

Dec 7, Priests were not calculating the benefit of Banishment correctly (the
evil one, not genocide). 2) Slight modification to how a borg chooses and
scores his equipment choices. It may help to improve his choices. In
particular, there was a problem with him prefering the Numenor helm instead of
Dor-Lomin eventhough the Dor-Lomin granted much more power.

Dec 4, Fixed the problem which kept some borgs from diving d/t loss of ESP.
2) Several more artifact activations will be appreciated more and can qualify
as a good source of that spell (like WoR, Restoration, Teleport, Phase). It may
pose a tiny problem if a borg has only the artifact as a source of Teleport.
But he is also more careful to wait and recharge certain artifacts. In exchange
for this risk exposure, the borg will spend far less time scumming for teleport
and recall.

Dec 2, Borg will be allowed to buy Healing pots from the BM, even scum for
them.

Dec 1, 1) Borg will store Recharge items in the home. 2) Borg given a slight
reward for increasing his light radius.

Nov 30, 1) Borg was stuck never believing he was ready to fight Morgoth due
to one of the changes on Nov 19. 2) Borg was going spastic with dark-4, dark-5.
It may have been related to trying to dig rubble while hungry and weak. 3)
Teleport Level spell added to defence maneuvers. Used in extreme danger and
when landing grids from teleport are probably dangerous.

Nov 28, 1) Borg will try to use a Teleport Level scroll before use a staff
of Destruction. 2) He will be allowed to scum the BM for them as well. 3)
Slight correction to Genocide to make sure there was not too much danger after
the spell was cast. 4) No casting of attack spells in town while money
scumming, keeps mana up so starving is reduced. 5) Certain deaths from resting
with the game option disturb_move have been reduced. 6) Correction to the way
the ‘cackles evilly’ was handled. 7) Problems with diving while the ‘need to
refuel but can’t’ eventhough the borg has a perma lightsource has been fixed.
8) A few LOS changes to help the borg be more fearful if wounded. He thought
some unknown grids were walls when in fact they open and he was taking hits.

Nov 24, 1) Reinforced the rule on no casting emergency use of attack spells
if several monsters are near. 2) There was a strange problem with the borg
wanting to flow dark-4, dark-5 immediately. He is supposed to flow dark-4 or 5
but not both in the same turn. This is inducing some bounce behavior. Several
deaths and starvations resulted from this. I will keep an eye out for it.

Nov 22, 1) Borg will be allowed to scum town in order to buy the dungeon
spell books. 2) Earthquake is more likely to be cast if borg is fighting a
summoner. 3) Borg will genocide hounds if more than 20 are on a level
(previously was 30). 4) The priest spell of Banish Evil was not being
calculated correctly. And it will log who gets banished.

Nov 20, 1) The goal_ignoring flags will not need to be set for farming but
will continue to be set for breeder levels if recall == 0. 2) Borg will not
search spastic if near a monster. 3) Critical attempts to escape were resulting
in too many deaths. Now he will only do it, if his HP are 10% of his full HP. 4)
Borg will receive an extra bonus on number of blows from melee weapons if under
clevel 10. This will encourage the borg to use whips and daggers, which might
help out his fighting. 5) Teleport Other will not be cast unless the borg is
left in a far less dangerous position. 6) Borg will be allowed to stack Hero
and Berserk, where previously he was only interested in casting one or the
other. He will not rest to regain mana after casting these spells. So he will
be lower on mana but prepared for fights. It is too bad rangers do not get Hero
until they find book 7, otherwise that +12 tohit would be awsome. 7) I have
seen a lot of ‘frying-pan-fire’ deaths with teleport lately. Any suggestions
would be appreciated. I have considered and implemented a limited check on
possible landing zones with Teleport to check for possible damage. I have also
considered having the borg use Destruction more. But Destruction is a little
hard to get and keep. Other options could be more liberal use of Teleport
Other, Banishment, Mass Banishment.

Nov 19, 1) Risky borgs (and clevel 50) will not be required to kill uniques
before diving. I am seriously considering removing that requirement all
together. Risky Borg Behavior is not really a suicide trip, but he is slightly
more risky and not constrained by conservative guidelines. He dives faster and
escapes fights slightly less. I imagine if a risky borg won, he would do it in
about 25% of the time a non risky borg. For more information on risky borgs
read the borg.txt.

Nov 17, 1) Borg will be able to use Teleport Other on a unique if it is
inside of a vault. 2) Borg is encouraged explore vaults by flowing to monsters
inspite of some dangers.

Nov 15, 1) The borg needed to be able to flow to the house if he and the
general store were out of food.

Nov 14, 1) Borg was not fleeing downstairs if he was hungry. He would flee
‘to’ the stair, but not down them. That is now repaired. 2) Minor fix to the
See Invis changes yesterday; he needed to understand that the See Invis spell
would not be engaged in town. 3) I got what I needed out of the level advances
in borg map and log files. They will be cut.

Nov 13, 1) Willem S. gave two super recommendations which were implemented: If
the borg has perfect saves then the FA req. is covered. If the borg has a good
spell source of See Invis then it can cover the borg’s requirement.

Nov 11, 1) Borg was not detecting traps, walls or doors correctly. 2) Borg
was deleting objects from his memory as soon as they disappeared from view (if
a monster stepped onto it). This could induce bouncing behavior. Now the item
must be missing for 3 or more turns before it is deleted from memory. Nov 10,
Detect Evil (although important at low level) does not need to be cast so
frequently in town. 2) Borgs were allowed to flow over traps to escape scaryguy
levels. But it caused more problems that it solved. So hopefully he will not
bounce on traps.

Nov 9, After multiple hours and runs of GDB and about 5 Dr. Peppers, I got
the problem from yesterday fixed. Eric Peters submitted some very good clues on
where I might look.

Nov 8, Borg is having a problem with the borg_skill[] being overwritten. I
have used gdb to trap the event and it looks like the calc_player_bonus() is
involved somehow. I need some help tracking down the error. You can see the
error in progress if the borg is Searching while in town (must be clevel
<=3) or if he spastic searches in town. The borg_skill[CDEPTH]
(borg_skill[1257]) is getting massively pounded, as are a few other
borg_skill[] numbers. Included with the distribution is a savefile wherein you
can recreate the error. Just have the borg walk in town and you may see him
acting dumb. Please help track this down so we can get the borg up and running
again.

Nov 7, 1) Borg will not perform the ‘safe to phase’ checks if he does not
have a source of phase. 2) There have been some starving deaths in town which
are related to the borg_skill[] variable being overwritten. I am trying to
locate it. You may see this if the borg gets twitchy in town or tries to flow
spastic in town. 3) Borg is better able to flee the level via closest stair (up
or down) if fleeing the level from a scaryguy. 4) Some minor changes to using
stairs to help ensure a good exit from the level. 5) Borg needed to know if the
game option ‘dungeon_stair’ was on or not.

Nov 5, 1) Previously, the borg would not flow to certain grids if the danger
was greater than 1/3 his HP, but some other grids had varying danger thresholds
which would allow him to be more brave under certain circumstances. I have
equalized all the formula so that the borg can move more efficiently. 2) The
borg will no longer overflow on messages when paralyzed. 3) The borg will keep
track of closed doors while he is under clevel 5. If a door opens in the
dungeon from a monster, the borg will consider that a scaryguy is on the level
and will quickly flee. This will allow the borg to get advanced knowledge that
a monster is approaching. 4) Slight modifications to scaryguys. 5) Borg will
report in the .map file if it is daytime in town. (Will help with collecting
data on town deaths). 6) Borg will not back-up as a retreat if a scaryguy is on
the level. Hopefully, he will plow through monsters and head straight to the
stairs.

Oct 29, 1) Retreating and Backing-Up were modified to make sure it is a
clear reward for the borg. Too often as he would back up 4 or 5 steps, he would
take hits in the process and get his HP wittled down. 2) Flow patterns and icky
grids (scary grids due to monsters) will be re-evaluated each round if there is
a scary guy on the level (using the danger_wipe). Also, the borg will be
allowed to flow through dangerous grids in the process of finding an escape
route. This slows the borg down a tiny bit, but helps the borg to escape levels
with breeding worms and mice, and decreases the starvation deaths. 3) The perma
spell Bless has been changed to the Bless spell to allow low level priests and
paladins to use it (previously it was the Prayer spell from book. Having a
priest walk around the dungeon with a free +10 to hit might make a differece
for them. 4) Repaired a bug which could allow the borg to recall down into the
dungeon from town when leaving the town if he had nothing to sell.

Oct 27, 1) Starving borgs will be able to flow through dangerous grids and
will not flow to kills. Hopefully he will flow to stairs more instead of
starving.

Oct 25, 1) Repaired a spell address bug on defence spell of Destruction. 2)
Repaired a bug which was which causing the borgskill[] to be overwritten. The
bug was manifesting on my machine as the borg trying to not reset his recall
depth while recalling from town.

Oct 22, 1) Sometimes, if the borg is wielding the artifact diggers, he will
not want to buy or sell stuff in town.

Oct 20, 1) The borg will create a Sea of Runes to attack and kill Morgoth. I
have tested this routine about 35 times with Mages. It works great. I have not
fully tested it with Priests. 2) Borg will wait to enchant and brand bolts,
avoiding having 3 stacks of 5 bolts with varying enchants and brands. 3) Borg
will be careful when using Chaos spells which can polymorph almost dead
monsters, making new ones with perfect health. 4) Limited the use of
ShootNScoot on monsters easily killable. 5) Repaired a possible crash with
flowing spastic. 6) Reduced the amount of time a borg will spend in town if low
level. The BSV, SER, & MLM were kicking his trash. So the borg will no
longer be required to visit all shops (skips BM, Home, Magic Shop if not mage)
prior to doing his shopping. Also, if the borg has no money and only a few
things to sell, he will not be required to visit all shops before he can leave
town.

Oct 2, 1) Altered the way the borg will count up sellable items in inventory
so that he will stay in the dungeon longer. 2) Increased the radius that the
borg will search for monsters who generated a message. This will reduce the
number of ‘Unable to located monster’ messages.

Oct 1, 1) Repaired a spell address typo for num_ID. and Sanctuary. 2) Clevel
50 borgs have slightly more bravery when it comes to establishing flow
patterns. 3) Critical phase not done in town. 4) Borg will consider using
Destruction instead of Teleport on certain situations. He will attempt to avoid
the frying-pan-fire deaths by estimating the number of safe landing zones for
Teleport and not Teleporting if there are too many dangerous ones.

Sept 23, 1) Borg will log when he gets to depth 100. 2) Applied a submitted
patch to repair the ^z$ crash. 3) Borg will not use ShootN’Scoot against
monsters who pass_wall or kill_wall.

Sept 22, 1) Borg will be allowed to buy more items from the black market
(certain rods like healing, speed, recall). I am trying allowing the borg to
money scum town in order to buy these special rods. Problem is, the warrior
borgs will run out of stored food and the town will run low on food if he
spends several thousand turns resting in town to mug drunks. But the warriors
will benefit most from having these rods. So I am thinking about having the
warrior borg store 500 rations in town in order to store. So report any
ineffecient behavior related to this.

Sept 21, 1) Applied a fix for reported level bouncing related to checking
for living uniques. I have not seen the bug myself. 2) Borg will not note money
scumming stuff in the log if he has more money than needed and does not
actually have to scum the town for more. He will also not note the advancement
to a level if he is gaining it back after being drained. 3) Teleport Other was
still acting goofy, another repair.

Sept 18, 1) Another correction to underestimating danger. 2) Before spastic
searching for secret doors, borg will attempt to cast Detection spells. 3) Borg
will log when he finds the Phial.

Sept 10, Minor fixes to the borg restock and depth preparedness relating to
healing potions.

Sept 5, The borg will try to head straight to the General Store to buy a
lantern (as opposed to having to check each shop first before making any
purchase). The borg will leave level one very quickly if he had to flee the
town level quickly. These two changes will help the borg to get a lantern early
on which help him greatly to avoid early monster death.

Sept 3, The borg will keep a short log of events. He will record the turn
number for level advancements and when he uses the money-scumming routines.

August 31, Repaired a bug that kept the borg from finalizing his town scum
purchase. A new borg cheat command was added (^zr) will restock the stores.
This is useful for debugging shop behavior.

August 29, Minor repair to the modifications in yesterdays twitchy fix.

August 28, 1) Previously, the borg would not return to town to restock if a
unique was on the level. That is now lifted. Restock means he is seriously low
on gear and must get back to town. 2) Storing food at home is now graded so
that a level 5 borg won’t spend all his money to get 99 food rations in the
home. Cut offs are at clevel 15, and 35. Fuel is also handled this way. 3)
Breeder levels will trigger the goal_fleeing now instead of goal_leaving. 4) If
the borg gets to the Level 3 Twitchy and Boosted Bravery, multiple factors of
the level are ‘forgotten’ which will have him relearn important things.

August 25, 1) Various improvements to how the borg will use Detect Evil.
Will greatly reduce the deaths from town scary guys. 2) The borg may use ranged
attacks against mice and worms even though they are scaryguys.

August 23, 1) Low level borgs (clevel < 10) will use some of the
borg_worship_gold behaviors to improve cash flow early in the game. 2) I made
the shootNscoot behavior smarter for Rogues and Warriors. 3) No flowing to
items if a scaryguy on level.

August 22, 1) The borg will not be allowed to swap out certain resistances
thinking it is an improvement. 2) The borg will not add the regional fear
induced from multiple monsters if he has been sitting on the panel for too
long. 3) With respect to using recall items, the borg has used certain
fail-rate checks to determine which will be the most successful type. I have
removed the fail-rate check for Rods of Recall used in the activation check.
But it will remain for counting spells. Meaning, the borg will not count the
Rod of Recall as a reliable type of recall unless he can reasonably succeed.
However, if he has one in inventory, he will try it when needing to recall. I
am hoping this change will fix the starvation-recall issues which crept in with
the 3.0.3 update.

August 21, Repaired a problem with the Lunal Mode not diving.

August 11, Repaired that bug which caused the borg to unhook after casting
certain defence manuevers.

July 29, Borg will store fuel in the house until he gets an artifact lite.
The town has run out of fuel a few times the borg has freeked out. He will be
needing an extra supply.

July 23, Borg will now recall to town quicker if he needs to restock. This
will slow the borg down as he burns his recall scrolls. The low level borgs
will not flow to dark-5 too far. This will keep him from pacing back and forth
while < clevel 5. Mage borgs will consider Teleport Other on a unique which
is adjacent to him. I had to fix some very stupid behavior involving the
ShootN’Scoot behavior. Lastly, the borg is still misIDing monsters as items
(thinks the monster is a wooden torch instead of a Drolem, etc). I have no idea
why it is happening. It started with 303. If anyone finds pattern to it, let me
know.

July 11, Completely reworked the Teleport Other spell. Previously the borg
would calculate the danger of each monster in the beam-path then add them all
up. Unfortunately, the way borg_danger() works, this made frequent mistakes and
he would cast TO and leave himself in danger. Now the borg will keep a list of
all the monsters in the beam path then calculate the danger once but it will
skip each of the monsters in that list.

July 4, Borg will assume traps are adjacent to him and will use Detect Trap
if any monster “cackles evilly.” The danger of the monster listed in
the Teleport Other spell path is displayed.

July 2, Teleport Other spell will create a log of the beam pathway to see
what monsters the borg thinks will be included. This will help me in debugging
and improving the use of this spell. Teleport Other has been modified: the borg
will consider it at a lower danger threshold than before, and will consider it
if he is fighting more than 2 uniques at one time. He will be allowed to
Teleport Away a unique if that unique is causing more danger than the borg has
HP (30% more) or if fighting more than one unique. Lastly the Teleport Other
spell has been turned back into a beam for the borg. He had been considering it
as a bolt so that only the most dangerous monster would be sent away. As a
beam, he can more correctly consider the best target to get multiple monsters
and the most dangerous line-up.

June 25 2003, Repaired a mistake which would result in the borg ignoring
regional fear from unseen monsters. Mage borgs will be allowed to melee in town
instead of always resting to restore mana. Improved the way in which the borg
will consider the use of Emergency Magic Missiles (he tends to faint and die
too much). Offset attacks that do only 1 point of damage are now forbidden.
Level 50 borgs have the regional fear induced from multiple monsters in a
confined area cut significantly, this will make them a bit more brave.

May 10, Fixed a targetting error which would keep the borg from using offset
targetting with bolts. (Aiming beyond the target.) Added a check to see that
the borg was not using mana expensive spells to do little damage. Greatly
improved the likelyhood that a borg would attempt a shot over an unknown grid
to hit a monster. Also, I made some repairs to how the borg can crush items
which slow him down.

May 8, Few details added to some borg comments in the log to make it easier
for others to see what the borg is thinking. Making sure that floor grids are
being placed under non-pass wall monsters (some never_move monsters kept there
feat_invis grid which kept the borg from using offset targetting).

May 7, Fixed the buggy behavior and spinning introduced by the Player Ghost
fix from two days ago.

May 5, Fixed the Player Ghost assumption when the borgs equipment was not
affected by an attack.

Improvements and modifications to how scary guys are handled.

Improved searching while walking functions (careful not to search if close to
monsters or scaryguys).

April 20, Fixed the bashing door problem. Tracking down the problem with the
Flasks of Oil not being tracked correctly which is leading to their recreation
each turn.

March 31, Borg will be rewarded more for storing WoR in the home. Warrior
borgs will not carry the resist heat/cold potions if they are immune.

March 18, Improvement on how the borg will collect Phase Door scrolls. Borg
will have increased rewared for getting CSW Potions if he can not find CCW. The
radius of the fear monsters is decreased from 7 grids to 6.

March 17, The borg will now hustle down if he is playing too shallow.
Example: If the borg is maxdepth set at 81 but prepared to 25 due to Teleport
restrictions, he will walk from town down to 25. But he takes his sweet time
and explores each level completely. Now the borg will dive very quickly until
he is within 5 dlevels of the prepared depth.

March 16, I fixed the ‘boy, I love to carry 300 pebbles around’ bug

March 13, Repair to a few typos in the most recent borg.txt.

ShootN’Scoot should not have been engaged if the borg approaches a never_move
monster.

Correction to the extremely long line in the.map file.

March 12, Yesterday’s archive was not uploaded correctly.

March 11, To help the borg not get slowed down by having to carry so much
stuff, the number of certain items required by the borg will be decreased until
the borg reaches strength 15. Those items include: ID scrolls, flasks of oil,
missiles, 2nd copy of spell books, recall scrolls, and teleports. I finally
noticed the reported bug with the Grey Mushroom Patch. The borg thinks it is a
wooden torch. I hope to fix this in a day or two. Are there any other types of
monsters that do this?

March 10, Reliable Phase Door spells and Blink spells count towards
amt_phase.

March 9, Jammed doors were not being ‘B’ashed correctly.

I increased the AUTO_TEMP_MAX to 9000 to match the AUTO_VIEW_MAX. There was a
bug report related to Big Screen and this may be the problem. I do not use Big Screen
so I have not seen any bugs.

Sometimes after reading an Unknown Scroll or Unknown Staff, he can get stuck in
a loop (if the unknown is an ID)

March 8, Repaired some reported crashes. I have not seen the crashes, but I
suspect they were related to the zone fear induced by monsters. I also altered
the ^z$ stuff. I hope I fixed that crash.

March 1, A new level a grid danger is added. The borg will add a little bit
of fear around each monster. The fear won’t scare the borg away but each
monster will contribute some fear. So if the borg is near 15 or 20 Orcs, he
will get very nervous. I hope this will keep the borg from getting killed by a
massive mob. It will also help him use his Teleport items more effectively. The
borg command of ^z_ will now show both the regional fear as before but also
this new regional fear. The never_move monsters do not induce this extra fear.
Borg will not ‘spastic search’ over traps.

Feb 26, The map file created at the death of the borg will now dump the
borg_skill[] information which will aid me in making improvements.

Feb 22, Borg will not target a PASS_WALL monster with a ranged attack unless
that monster is on a known floor grid.

Feb 21, I think I corrected the home-swap-loop with Staves of Teleport. I
fixed some bugs with Teleport Level scrolls. And I fixed a bug which was
causing the borg to miss his target when trying to shoot it with the Fingolfin
activation (spikes). I added/changed the ^z% to display the borgs projection
path. It will show the pathway the borg believes his projectile will follow
(red asterisk), then display the games projection path (purple beam of
asterisks, subject to game speed delay, increase to see the purple dots
better). This will aid in debugging issues with the borgs internal projection
code to see it is matches the rapidly changeing game code.

Feb 12, If the borg has a reasonably good chance to successfully use a Staff
of Teleportation then it can count towards the requirement of ATELEPORT (which
is generally considered scrolls of teleportation). Also, if the borg has
scrolls of teleport level, then it will count towards the ATELEPORT. This will
assist the deep borgs from getting held up at depth 46 waiting to ‘rs
ATELEPORT(1)’ (restock 1 teleport scroll before diving deeper). Monsters are
given some ‘minimal energy’ to equate the borg’s energy in borg_danger(). This
will help the borg better calculate danger of attacks when the borg is faster
than monsters. (I will closely monitor this for a few days. Report any buggy
fear behavior on this change.) Changes made to the way the borg monitors the
changes in his hitpoints from game turn. This will help if he gets hit from an
unseen monster or poison damage.

Feb 9, Borg is now rewarded for carrying a Wand of Teleport Other. And he
will try not destroy (crush) them unless he really needs to.

Feb 6, Repaired an issue where the defence spell Resist Cold was over valued
and cast too often. Borg is slightly more like to cast Teleport Other. There
was a hidden bug with the Glyph of Protection in the borg_danger(). It’s fixed
now. I hope the borg won’t feel that he is invulnerable while standing on a
glyph.

Jan 27, Updated for 303.

Jan 25, Fixed the corrupted zip files. The priest spell Teleport Level is
now included in the other methods of escape in danger level 1.

Jan 22, Fixed the problem with the 302 borg being omniscient with the items
that are non ID.

Jan 20, I updated the borg to work with Angband 3.0.2. There were some
problems with the new object_desc_spoil(). I think I fixed em up. There may
also be some issues with a Robe of Magi. I have not been able to get the game
to generate one randomly. If you find one, send me the savefile so I can mess
with it.

Jan 18, The borg will not cast the preparatory spells prior to stairs if he
is fleeing the level. Also, he is a bit more careful about resting to regain
mana just after he has cast one of these prep spells.

Jan 17, The distance the borg will spastic search (looking around for secret
doors because he is bored and all hallways have been fully explored) will be 25
steps if < clevel 30 and clevel 50 otherwise. This had been 250 so he would
spend many turns walking back and forth over the dungeon looking for secret doors
and finding none. This is done to help him reduce the number of turns he takes
in the whole game. It has no direct effect on his survivability. Also, the borg
was not using wands of wonder unless the danger was twice his hit points. I
reduced this to 80%. There are 17 nice attacks on the wand and 6 neutral/bad
ones. Seems like he can take a chance and use the wand more frequently. Use of
the wand is noted in the log so if there are lots of deaths following this use,
then we can modify it again. Lastly, the borg was not buying Teleport Scrolls
for some reason. The code is in place and the formula is in the borg.txt. So I
don’t know what is wrong. To solve this, I copied the formula into the section
of dynamic-calcs power that is not handled by the borg.txt file.

Jan 16, Borgs will be a little more timid when fighting uniques (at least
while under clevel 35). He used to stay in the fight until the danger was 120%
of his hit points; now its 100% at clevel 35 and 80% under clevel 10. Low level
borgs will not set the Searching flag if moving under boosted bravery. Clevel 5
is now the upper end of trap searching while moving (was at 3, too many level 4
borgs were stepping on traps and getting instadeath). I also repaired an
uncommon problem where the borg might try to flow over and thus be required to
disarm a trap when he should not be doing so.

Jan 12 2003, I saw some odd behavior with Teleport scrolls. I am trying to
reproduce the errors to track it down. Borgs will be allowed to buy Teleport
Scrolls from the BM.

Dec 10 2002, Repaired the Priest/Paladin enchantment of missile bug. Borg
will be much more concerned about carrying Scrolls of Teleport after depth 20,
instead of relying solely on his spells and staves. The WoR requirement for
depth 3 was moved to depth 5 and reduced to 2 scrolls.

Dec 2, Clevel 45 requirement for depth 39 was removed.

Dec 1, Improved some WoR requirements for the depth 24 area. Previously, if
the borg was playing too deep (twice his depth preparation), he liked to recall
to town then climb down stairs to his comfort level. Now, the borg will only do
this if the maximal depth is greater than 65.

Nov 30, Repaired that very serious issue with not refilling the lanterns and
torches. Sorry about that. Mass Genocide and Genocide scrolls are now needed
for level 100 not 98.

Nov 27, Attempted to repair the wide-screen issues. Please help test this to
see if the borg gets unsynched due to mis-parsing the extra long messages.

Nov 26, Fixed that problem with the borg carrying a glowing item and not wanting
to buy more fuel for the lantern or torches.

Nov 23, Fixed a modest error in the ^zo function to display item flags.
Borgs will now store Aman and Elvenkind items in the home even if they are not
yet *ID*’d. He will pull these items from the home if he has *ID* scrolls.

Nov 21, The borg was not correctly handling glowing items, like the Ammy of
Devotion while the lantern was out of light. He assumed he was in darkness,
even though the ammy was giving light. I also added the additive effects of
glowing items to the light radius. Having a glowing item will add one degree to
the light-source radius. Having multiple equipment (Ringil, and Ammy of
Devotion) items with light radius is not handled; they still give one degree of
increased radius. I added support for the branding of missiles spells,
previously, only Cubragol was doing this.

Nov 13, The money scumming for potions was modified slightly to make sure
the borg had a better chance to avoid the mugging (moved from 65% to 80%).

Nov 12, Remembrance spell is considered a source for Hold Life, so borgs
will not be bound to finding HLife before diving deeper.

Nov 11, Fixed the goofy behavior with shootNscoot. The bugs related to the
borg being out of sync and interacting with colors menu and other weirdness
have been tracked down to using a bigscreen. If the message line is greater
than 80 characters, the borg cannot parse the messages correctly. I will work
to correct this over the next few days. If anyone else wants to help, look at
borg9.c in borg_inkey_hack about line 4310 where the borg is reading the
messages and catching the “-more-” prompt. I’m pretty sure the
problem is related to borg_what_text(), and I suspect with the third element.

Nov 9, The borg was over-valueing the Staff of Holiness for it’s healing
powers.

Nov 8, Repaired the issues with boots and shields of Elvenkind not been
recognized as having high resists. I also fixed an interesting bug where the
borg would not cast a spell at a monster if there was an object in the flight
path between the borg and the monster, and the borg had never seen that floor
grid previously (as in coming down there stairs and finding a potion on the
ground between the stair and the monster). The borg was not seeing this as a
legitimate floor grid and would flow to the monster in order to melee attack
it. I also decreased the penalties for casting spells which will encourage the
mages and priests to use their spells instead of tanking around the dungeon. I
repaired the problem with the borg not wanting to use the Cloak of Luthien.

Nov 6, Made another major speed enhancement by further optimizing the way in
which the borg checks for living uniques while doing his level preparation
checks. I repaired a bug with the borg.txt from 301. There are some references
to formulas dealing with GOI. Those need to be removed. I think they are
formula 58-60, or pretty close to that. If you replace your borg.txt with the
most recent one, you will be fine.

Oct 31, Fail rate on enchanting moved from 40% to 65%. Penalty for using
slings with STR less than 14 was moved to STR 9. Borgs will store enchant
scrolls in the house and save them for at least a x3 shooter (long bow or light
xbow). Steps were taken to make sure the borg did not enchant the x2 shooter by
mistake when he should be enchanting the melee weapon. I had to repair a unhook
bug which crept in with the efficiency changes to item analyzing.

Oct 28, A few optimizing routines added from Mr. Anderson. Matthew Anstey
requested that borgs be more critical of keeping junk in the inventory while
deep in the dungeon. Borgs had been filling up with some good stuff to sell
then returning to town to sell it instead of scumming for more potions. This is
probably a waste of time since at depth 95 he already has more money then Bill
Gates (well, almost). I repaired an unhook bug which could result if the borg
had two artifacts with the same activation and the first one in line was
charging, but the second one was not.

Oct 17, Mikeal Anderson provided some very useful computations on how much
CPU time is spent in various borg functions. Using this information, he and I
have made the worst bottle neck more effecient. The largest user of CPU time
was the borg_prepared() function, with about 30% of all the CPU going to this
routine with it’s two daughter routines. We have made that code more efficient
and greatly reduced the number of times which it is called. I also tinkered on
the way the borg will buy stat potions from the BM. There had been some cases
of him scumming to get the cash then not buying them.

Oct 16, Added the Shoot’N’Scoot to the 301 code.

Oct 14, Fixed a problem which could keep the borg from using Phase Door
spells correctly if he did not have a scroll of PD on him. Corrected some
problems with choice of missile attacks on certain types of monsters. This
should really help mages with magic missile use. I told the 293 borg how to use
Shoot’N’Scoot maneuvers. I will test this out for a few days before sticking it
into the 301 borg.

Oct 11, Fixed the problem with the artifact shield of Haradrim.

Oct 7, The borg has tried to not damage items on ground with certain types
of spells (fireball on scrolls, electric ball on rings, etc). But sadly the
borg will not use the most effective and damaging spell for fear of damaging
the treasure on the ground. I have reduced the penalty for damaging the
treasure on the ground. This will allow the borg to have more flexibility in
spell choice. Also, I added some routines to allow the borg to scum town for
certain items found in the Black Market, namely Stat Pots, *Heal*, Life, and
Heals. He will stay in town, mugging drunks and saving his money. This can have
him sitting in town a long time, so the option is set in Borg.txt under
borg_self_scum. Default is TRUE. The borg won’t do this unless he is at least
clevel 15, has a perma light source, Satisfy Hunger spell, and at least a 65%
chance to avoid getting mugged by townspeople. 65% is not very easy to get to.
A clevel 30 borg would need a dexterity of 18/70. A clevel 45 borg would need a
dexterity of 18/40. This routine will help the borg get his stats maxed without
all the risk of being in the dungeon. But it will stay in town a lot. If that
upsets you, then turn the option off in borg.txt. Along this line, the borg has
a slightly improved method for spending time in town waiting for the
townspeople to breed. The borg_status window is also updated to indicate that
it is scumming for cash and that cash goal amount. Lastly, The borg has
improved crushing of ‘Junk’ (with respect to being under the influence of
borg_worship_gold or borg_self_scum flags). (And some Zborg fixes.)

Oct 4, (301) Repaired the bug which was causing some unusual keypress loops.
The bug was related enchanting weapons. Modified the lunal mode a bit so that
the borg is a bit smarter about doing it, and he will leave the stairs to
collect gold and potions. Again, lunal_mode is not at a point where it works
correctly. It’s more of a test to see how deep the borg can get doing it. So
unhooks are common.

Oct 2, (301) Began working on a cheat called borg_lunal_mode which can be
set in the borg.txt. Basically the borg will scum stairs for other stairs,
trying to dive as fast as he can. He tries to be careful while doing this since
at low clevel he is subject to instadeath. Note: you need to have connecting
stairways on in order to make full use of this. Again, I just started this so
there may be some bugs in this. Oct 1, Repaired the bug with the Elfstones and
Jewel artifacts. For the record, it was not a borg bug but an omission of the
INSTA_ART flag for these two items in the artifact.txt file (they do have the
flag in objects.txt). Repaired some ID loop problems induced by the mistaken
omission of the EASY_KNOW flag to the Amulet of Resistance. Amulets should get
either EASY_KNOW or HIDE_TYPE flags. The Amulet of Resistance did not get
either one. This is a mistake and needs to be corrected. Fixed the bouncing
problem that low level borgs had if two stairs are on the screen. Borg is
allowed to buy Stat Pots from the BM. Shrieking creatures are added to scaryguy
list because they cast Haste on to monsters. Borg will do less spastic
searching while under clevel 3.

Sep 30, Removed the forced slow-down for delay factors. 301:Removed the
work-around for the quartz-amulet problem, and added RR’s macro for correct
interpretation of flavors. Repaired the very annoying artifact activation bug.

Sep 25, Added some protection against segfaults relation to borg_slot().
Borg will be more careful to keep the Resistance spell up, and to refresh it
when he thinks it is about to expire.

Sep 24, Fixed some potential problems with the borg desperate (moving to
stairs under stress). (for 301) Repaired the Stone to Mud on amulet problem and
removed the left over borg notations used for debugging artifacts.

Sep 23, Work on the 301 borg is now complete and ready for release. There
were some interesting game play issues and needed to be dealt with. The borg
was not reading mineral veins (*) correctly. He was seeing them as quote marks,
and tried to walk through them. I had to redo the magic system a bit. So please
report bugs and odd behavior to me so I can fix it. The 301 screen saver seems
to be working ok. I had to modify the main-win.c file. If you plan on compiling
your own screensaver, use my main-win.c.

Sep 21, Better use of Teleport Level to escape danger. Borg will now carry a
few Teleport Level on him. The borg is now a lot less likely to be stuck at
dlevel 26 searching for a few teleport scrolls in order to continue. Seems silly
that a clevel 30-40 borg has a maximal depth of 26 because of teleport scroll
limitations. Zang and Drang borgs also updated.

Sep 18, Fixed a problem in borg.txt (the line that is ateleport = 7 should
be 2). Better handling of how the borg stores and collects scrolls of teleport
and staves of teleportation. Fixed a major problem with consuming ez_heal
potions in extreme danger (even when not badly damaged).

Sep 16, Borg_check_rest() will now check the Regional Fear (fear from
non-seen monsters). Danger from non-seen monster attacks increased a bit. Borg
will report if he is ‘searching’ while walking. Borg will be more careful about
retreating to safer grids; the first step must be relatively safe.

Sep 13, Borg will be more likely to cast the good Resistance spell over the
smaller ones if he is clevel 45 or higher. Repaired a spell address problem
with casting spells before taking stairs.

Sep 6, Repaired some more mishandling of the One Ring. Added Respawing Borg
command and a command to examine what flags the borg believes an item has.
Borgs will collect a few more EZHeal potions (*Heal* and Life) prior to that
final fight. Repaired some potential crash problems with array bounds.

Jul 10, Began looking at the vanilla 3.0 code. I’ll start to upgrade the
vborg to function in 3.0. It won’t be ready soon. But I’ll tinker on it.

Jun 26, Slight improvement on when Holy Word is cast while in Questor
Combat.

Jun 7, Borgs needed some help reseting his shop goals after consuming his
last type of item (thus moving the address of his goal_item).

May 23, Low level borgs will not attempt to walk into NEVER_MOVE monsters.

Apr 23, Scaryguy fixed for Light and Dark hounds. If the borg resists that
form of attack (or blindness) then the hound won’t be a scary guy. Added a
special hack to further influence borg defence manuevers: if the borg is
fighting a particular unique, RFire, RCold benefits are enhanced. Mainly
designed for Tarresque but it can be applied to other types of defence setups
and other uniques.

Apr 21, Repair to a mistake with ‘ifndef bablos.’ If the borg is not
respawning correctly, let me know. Borg will not try to open doors if under
clevel 15 and there is a monster adjacent to him. (He gets stuck trying to pick
the lock while some whimpy monsters beats him to death). Final healing check
modified slightly to allow for more use of *heal* while fighting uniques.

Apr 16, Too many borgs dying while moving ‘desperate for stairs’. To avoid
certain types of death, the borg will not retreat to a stair is a monster is sitting
on that stair. Rarely, some borgs need to be able to escape up the stairs even
if waiting for recall. This is now allowed.

Apr 15, Winning borgs who have ‘respawn winners’ on will log into the
borg.dat.

Apr 13, Borg will try to use a Teleport Staff before trying to phase door.

Apr 5, Better handling of Anti-magic effect. Borg was wearing pseudoID’d
boots with that effect, but was not understanding that the effect was on. If
the boots had been *ID*’d then he would have understood the effect. The borg is
now cheating to know if he is afflicted by this effect but not which item is
causing this. So he will not be able to dump that item until it is *ID*’d.

Apr 4, Added better control over when the borg uses *Destruction*.

Apr 2, Fixed a spell address problem when casting a spell prior to taking a
stairs/recall; borg was casting Remove Fear instead of Bless. Fixed an
equipment choice problem which caused the borg to think his stats were higher
and subsequently he would not choose equipment to boost stats (priests running
around with 18/170 Wis, instead of 18/220). The routine to return to town to
scum for objects (mainly CCW) was altered to have him check more frequently.
Repaired the spamming fprint function that I forgot to remove from borg3.c.
Willem S suggested (mainly for zborg) that borgs get power for using Rod of
Illumination if they don’t have Call Light ability. This was added to vborg and
zborg. Winners list updated. Improved handling of monsters while
hallucincating. I moved all borg files over to my laptop so some of the batch
files used to create the zipfiles may have been goofed up. Let me know if the
archives seem off.

Mar 26, Several little patches over the month. One in particular is better
handling of fear of non seen monsters.

1-8-2002, Fixed a bug relating to using Format() twice in the same call.

12-31, Zborg is officially released. I would appreciate specific bug
reports.

12-26, Still working on the Zborg. It is at a fairly stable point now. The
zborg source is released. I have still not tracked down that bug which is
causing the borg to bounce between two flow grids. I have been spending about
20 hrs a week working on the Zborg. I will get to back to bug fixes in time.

12-5, 1) Borg running around with no weapon is fixed. 2) The borg status
screen updated to show Immunity flags (white) over magical resistance flags
(green). 3) Made an attempt to fix that bug where the borg will bounce on the
level while trying to choose his new flow pattern, then forgetting the objects
and monsters, then finally fleeing the level. 4) Low level borgs who do not
have slow digestion are now allowed to carry more than five food, up to the
amount specified in borg.txt.

11-29, Borgs who are scumming for the *heal* pots at depth 99, will now
store all the extra crap they are carrying for the end fight, namely the 15
Restoration mushrooms and the >15 Restore Mana potions. You will need to
replace your borg.txt file
if you are down at depth 99 or so.

11-28, Ok, I got the borg working again. The changes on 11-16 were the cause
of the problem. Working good now. I also added a new borg command control-z ^.
The ‘%’ displays Flow information. This new one, ‘^’ will display the probable
pathway the borg will take. I also added the name of the unique who is on the
level to the borg_status window. Finally, the borg may use the *heal* potions
to fix confusion if he is really low on HP, and that annoying
waiting-on-the-shop-door-step-while-waiting-for-recall has been fixed.

11-21, I undid many of the changes from 11-13. I hope the buggy behavior is
fixed. There still seem to be some very unusual borg_powers, and equipment
choices. Please report any weird stuff. Also for the next few days I will be
reworking the borg_best_stuff(). That routine is supposed to test every combination
of equipment and select the best package. It does not work right. I have a plan
to rewrite it so that is will explore every possible equipment combination. I’m
certain it will be a slower routine, but it should make a difference in borg
equipment selection.

11-19, Wife is away this week, just me and the four kids at home. Borg
updates might be slow. Fixed the problem where borgs would not recall into
dungeon if the failrate was over 40%. Still patching up problems relating to
the borg now correctly handling his stats. The borg will now receive a
graduating penalty based on his maximal mana. So if he wears heavy armour at
clevel 10 lowering his mana 10 pts which represents about 1/2 his mana, he will
receive a greater penalty than if he suffered a 10 mana point loss when his
mana is over 300. This may induce equipment swapping if his maximal mana is
near one of the threshold values.

11-16, Replaced the cheat where the borg was getting the acual HP of each
monster. Now he will ‘read’ the health bar and estimate the number of HP
remaining based on the maximal possible for that monster. Desire for dragon
scale armour based solely on its activation is decreased. I repaired some
errors that were making the borg like to have massive primary stats (like 18/320
INT). I think I got that fixed now. I fixed the formulas which granted extra
points for having an item with multiple high resist. Previously the borg was
only considering RNeth, RChaos, RDisen on any single item. For formula was
changed to: value += 30000 * (item->flags2 & TR2_RES_POIS +
item->flags2 & TR2_RES_LITE + item->flags2 & TR2_RES_DARK +
item->flags2 & TR2_RES_BLIND + item->flags2 & TR2_RES_CONFU +
item->flags2 & TR2_RES_SOUND + item->flags2 & TR2_RES_SHARD +
item->flags2 & TR2_RES_NEXUS + item->flags2 & TR2_RES_NETHR +
item->flags2 & TR2_RES_CHAOS + item->flags2 & TR2_RES_DISEN).
Thus granting 30k pts for each of the high resists. Fixed that bug where the
borg would cast tons of prep spells before using stairs only to rest to regain
his mana, then cast the spells again. DragonAngband borg fixed on a few minor
things.

11-15, Fixed a Genocide ‘ ‘ issue. Fixed the money scum bug which allowed
the borg to sell your gear.

11-14, A few minor changes to how the borg retreats from danger and backing
up one grid.

11-13, Replace your Borg.txt. Borgs will cast a few more preparatory
spells (Bless, Berserk, Hero, Speed, Resistance) before Recall hits, and also
before taking stairs down. Also I made a significant revision in borg
variables. The borg will now cheat more variables instead of reading them from
the screen. This will help speed him up a bit. I have renamed many of the
variables and moved some into Adam Goodman’s borg_skill[] array. This will aid
in porting the borg to other variants. With these new changes, there may be
some odd bugs creep in. I found one related to the borg not liking speed rings.
I found another one with the borg not wanting to carry food. Adam was kind
enough to debug for me, for which I am grateful. There may be more hiding. I hope
to be able to convert and cheat in a few more variables which will allow
portability and speed to the borg. Cheating game variables goes against the
Prime Directive of the Borg, which was “to read the screen and make
decisions based on that information.” But the information being cheated is
not privilaged, the borg ‘could’ be made to read that information, I am just
skipping the read to speed up the borg. Anything the borg is cheating to know,
the player has access to. So if you have a significant philosophical hangup
with some of these new changes, better stick with November 9 borg. (Confession:
the borg does cheat privilaged information when it tracks monster health.
Instead of reading the **** bar at the bottom and guessing the monsters
remaining HP, it steals the actual number of HP from the game. Getting rid of
this cheat is on my to-do list. I think RML will let me borrow this from his
borg.)

11-9, Borgs who are waiting to recall back into the dungeon will try to cast
PFE, or GOI just before the Recall hits. The borg will cast the spell 20 game
turns after the recall is cast. Note this is game turns not borg turns, incase
the borg is hastened or slowed. The recall will occurr somewhere between 16 and
35 turns after the recall spell is cast. So there is a chance that the GOI/PFE
won’t be on if the recall is activated from 16-19 turns. Resting to regain mana
will now take place until clevel 25, instead of 15. The perma-spells won’t be
used until clevel 30 to avoid certain types of low mana loops. Lastly, the borg
won’t use Genocide if he has less than 75 HP. (Which was a very sad death when
he Genocided ‘D’s with only 9 HP).

11-8, Tried to reduce the behavior of swapping in and out junky bows and
slings. I also updated the HAS_LITE patch for 293. Lastly, borgs will crush the
whole stack of items instead of one at a time.

11-7, Confused borgs would cure confusion at just about any cost. Even
surrounded by 100 Chaos Bugs and with only 1 HP, he would drink a CCW to cure
confusion then attempt the teleport staff on the next round. I have corrected
this so if the borg is in pretty tough circumstances (danger >= HP * 15/10)
then he will risk the fail attempt and try that Teleport Staff. He has nothing
to lose, there would be very little chance of him surviving a second round.

11-5, Clevel <= 5 borgs will flee level 1 & 2 if they hear a door
being bashed open. Grip and Fang do this. It may help the borg. Some snakes
also bust down doors. Snakes are not generally a problem for the borg, but the
dogs are. 2) When trying to gain speed spell, borg will now choose artifacts
and other recharging things before consumables (staves, potions). 3) Borg is
now aware that GOI does not protect against the annoying effect of some attack
types (disenchanting of equipment, blindess, etc) .

11-2, Added a new function which has been called Mynstral Scumming or Money
Scumming. The borg will stay in town killing townspeople until a monetary goal
is reached. The goal can be set in borg.txt called borg_money_scum_amount. Read
the note in borg.txt for more information on this. This routine is more for
pple playing the game than for the borg itself. It is set up to help you
purchase that gotsta-get-me-one-a-dem Black Market items.

10-25, Corrected a miscalc error induced by the borg_danger changes made a
few days ago. This is a big deal here. The mistake forced the Averaging of
Monster Danger. So you could encounter a Dracolisk (w/o any RNeth) and have it
only return a danger of 150 or so, since the Nether attack was averaged.
Actually the danger should be close to 500.

10-14, Borg will conserve arrows a bit more by not shooting at non-melee
guys guys lower than his level. A few scary guy changes: 1. Borg is now allowed
to flow through traps (even if they are dangerous) if a scary guy is on the
level. 2. Borg will walk over a trap instead of disarming it if fleeing. 3. No
resting to recover HP/SP.

10-23, Borg rebrowses store more frequently to reduce the store loops.

10-22, The borg has been able to genocide monsters which immediately threaten
him, Mass Genocide, and genocides Hounds at the start of a level. But I have
added a new routine which will genocide a race which is very threatening to the
level, though not on him directly. This will allow him to genocide escorts even
though they are not posing immediate danger. It will also allow the borg to
genocide a race if a summoner went happy and filled the level with a particular
type. The criteria may need some tweaking. Currently the borg will genocide a
race if that race’s combined danger is at least 10x the borg’s maximal
hitpoints. I suspect that would be about 8 Dracoliches or Black Reavers on a
level, or maybe 6 Chaos Beetles. Safegards have been added to make sure the
borg does not kill himself in the process.

10-19, Added a safegaurd to the genocide spells, incase there were monsters
which were not known to the borg.

10-18, Mages are encouraged not to melee (while low level) attack if
possible they tend to swing and miss too much when they should be using Magic
Missile. The reduced danger of scared monsters with ranged attacks is removed,
they are still dangerous and still cast spells. (Stupid borg got killed by a
Nightwing with only 35 HP. It cast Nether Ball, and the borg had about 150HP.
The borg did not fear the NW since it was fleeing and was about 5 grids away.
One arrow would have finished it up.) I increased the likelihood of the borg
using his perma spells. ( Perma spells are things like, Haste Self is cheap so
have it on all the time).

10-17, Sometimes (albeit rarely) the borg may think that it is on a glyph
and assume that he is safe from danger. I added a routine to remove the glyph
from under the borg if he is struck in melee combat. I also allowed borgs to
use their *heal* and life pots as part of their healing check. But they are
restricted to combat with uniques. This will save some borgs but the borg will
have a tough time collecting these potions since he will be consuming them more
frequently. Dark and Light hounds will be ‘scary-guys’ even if the borg has a
supply of CCW. Too many were drinking and getting blinded the next turn. So
now, unless the borg has RBlind, these guys will be feared. The borg will now
rest to recharge a rod of recall (he already does this for healing rods).

10-16, Rework of how full vs probable danger (damage) is calculated by the
borg. He had been miscalculating the danger of breath attacks partly due to his
increased speed and some arbitrary formulas. ie. If a Wyrm only breathes 1 out
of 10 turns but breaths for 500 damage. The borg would consider the danger to
be 50. But if the borg had 500 or fewer HP then the danger was recognized as
500 (Since it could kill him in one turn). However, if the borg was hastened to
twice the wyrm speed then the 50 danger was reduced even more. Basically, it
was messing up at calculating the true danger of breath attacks especially if
the borg was greater than +10 speed. I also added a 6th check in borg_escape().
This will allow mage and priest borgs to escape if he is getting low on mana
and in a moderately dangerous position (danger is about 60% of his HP).

10-15, 1) Desperate borgs will now not flow through unknown grids to get to
the stairs. It is better for them to take the known route. 2) Chaos breather
types are added to the scary guy list. 3) Minor fix on buying equipment from
the home and having to rebrowse the store. 4) Minor tweak on the mana-use
penalties associated with use of Magic Missile by low level mages. 5) Tweak to
the Level 4 Healing test.

10-12, Genocide will now make a count and estimate the amount of strain
damage to be recieved. (Mass Gen already did this, I must have forgotten it for
Geno). Some rework on the danger of an unseen monster done. Also, the borg may
use the Teleport Level scroll to flee a dangerous place. I made a change to the
borg_danger() routine also. For some time now, the borg would average the
damage of the various ranged attacks of the monster. This helped his bravery
considerably. Especially if he had two immunities. However, if there was an
attack that had significantly more damage than the others, then no average was
made and the most dangerous attack was returned. There is a problem when
dealing with defence manuevers. If the borg is considering casting a spell like
Resistance and the monster also has a non resistable attack (like Disenchant
for the Tarresque) then the damage returned will be for that spell, since the
danger of the others (like fire, cold) will be greatly reduced by the proposed
defence spell. The result will be the borg will not cast the resistance spell eventhough
it may be a very good idea. To fix this, the flag ‘average’ is added to the
borg_danger() to skip this check and return the average damage. This will allow
the borg to more carefully consider the double resist defence manuevers.

10-11, I improved the ‘short leash’ routines for low level borgs. They will
now stay in the dungeon longer but still remain fairly close to the stairs.

10-4, I improved the ‘Desperate for Stairs’ routine, it does help the borg
but many die being desperate for stairs. I also improved how the borg will
fight when there is a scary guy on the level.

10-3, Borgs had been very careful when exploring traps; only doing so if
dexterous enough or with enough HP to survive setting it off. However borgs
were allowed to flow through a trap on its way to some other interesting grid.
This allowed the borg to disarm the trap as it passed by. This is resulted in a
several trap deaths. This is now repaired. A borg will be forbidden to flow
through a trap if it does not meet certain criteria based on Disarming Skill
and HP. In addition to this, the low level borgs will activate the search
command while exploring the dungeon. Hopefully this cut down down on some trap
deaths. 2) Borgs had been ‘resting on town stairs to gain mana’ with a scrawny cat
scratching him for 1 pt each round, eventually leading to a very embarrassing
death.

10-2, Borgs had been penalized for shooting monsters who stood one square
away. That restriction is now lifted if the monster is a unique. Minor fix to
how Warriors and Rogues ID {good} items.

10-1, Repaired a bug relating to the recent ring fixes; the recently removed
ring may take the inventory slot of the desired ring and the borg was putting
on the old ring again, creating a loop. It is now repaired.

9-27, The bug relating to having a +14 Ring of Speed in the home and a +7 on
the hand has been repaired. With this I also made the ring selecting routine a
bit smarter. I also fixed the bug that let a borg wield a digger while trying
to fight monsters. If I get a chance later today, I will take a closer look at
ammo use for rangers: making sure they don’t waste it, pick it up after
shooting, and possibly return to town if low on ammo. Finally, I’d like to make
sure the borg is not using weak damage spells on tough monsters when he should
run up on them and beat them with a weapon. Too often the borg has launched
Magic Missiles at Tiamat because she was not within melee range and the borg
had no other ranged attack. Personally, I’d run up on her or hide around a
corner and let her come to me.

8-30, Borg upgraded to run in 293. I added a new borg.txt variable
(borg_delay_factor) for those folks who can’t seem to figure out how to slow
the borg down. I corrected some errors pointed out by David Grabiner relating
to some borg_restock, borg_prep functions.

7-25, I fixed some errors pointed out by Mika V. They related to
inconsistencies in Dynamic vs non-Dynamic Calcs, and a few minor others. Borg
updates are slow this Summer. Several house projects going on, and work has
been pretty busy (I might need to hire more staff).

7-19, I increased the value of the Detect Evil/Monster for borgs so that
they will learn it faster, and increased the frequency of its use for low level
borgs. This greatly helped clevel 2 mages and clevel 1 priests avoid Kobolds
and other scary guys. Immediately upon entering a level they detected the scary
guys and fled back to town. Secondly, if a spell caster loses his spell book
which grants Sat.Hunger he will flee to town instantly (let me know if this
does not happen). If a starving player has a full inventory he cannot buy food.
So a starving player will crush inventory items to make room for food. Thirdly,
I made sure the borg had enough money to make group puchases (5 food for $20).
Lastly, I repaired the problem with the 74-75 AC problem; that curve is
smoothed out (I hope).

7-16, The borg was told to not flow to a summoner through a perma rock.
There are a bunch of winners that were emailed to my home computer that need to
be forwarded to my work computer. I will try to get those winners in the next
day or so.

7-13, The spell book dump (^zd) did not list the 9th spells. That is now
repaired. Light and Dark hounds are now considered scaryguys if the borg does
not have at least 3 CCW. Rerolling of stats upon respawn was redone. It is now
Primary 17, Str 14, Dex 16, Con 13. This should help those poor mages who end
up with 6 Str and get slowed by equipment. The ‘desperate for stairs’ was
modified slightly to make it smarter. The borg will still consider Grip and
Fang scaryguys and try to run from them. But if they are adjacent to the borg
then he will (or should) fight them. These two guys have extra speed so the
borg tries to run to the stairs (distance of n spaces) and the dog get one move
and one hit each round, leading to the borg death. I think if a borg had about
15 HP he ought to be able to take out the dogs.

6-28, The fix that correction for the inscription problem may be causing
crashes so I removed it.

6-18, The borg will now correctly handle chests that are not trapped.

6-13, Fixed that bug that made the borg crash when starting on depth 127.

6-12, Ez_heals are more likely to be used if Morgoth is dead. Some more
information is displayed in Borg_status window when deeper than level 97.
Another alteration to formula111 of borg.txt. I boosted the reward for melee
damage if deeper than depth 75 while decreasing AC bonus if AC is greater than
75. I am hoping that a borg will choose a ring of damage over a ring of
protection. There is still a problem with the borg inscribing objects and the
game not accepting the inscription. To work around this, the borg will only
inscribe in town.

6-8, Fixed the sanctuary-chaos bettle thing.

6-5, Stat draining monsters are feared more if the borg does not Sustain.
Altered slightly the formula111 for borg.txt. I added some code to handle the
One Ring better.

6-4, Borgs will now be more likely to consume a ez_heal if he has several of
them in inventory or if he is fighting a unique deep in the dungeon. A minor
oversight involving a “more confused” monster was repaired

6-1, Borgs will now Search, Disarm and Open chests. I tried to influence the
borg to dive quicker to 100 if on 99 and prepped to dive.

5-30, 1) I fixed it so that borgs won’t prefere Hard Biscuits over Food
Rations when low on food. 2) Borgs may store a few more food items in the home.
3) I corrected for a potential problem where the borg may take too many slots
in the house storing foods of different types. I hope these cut down on the
surge in starvation deaths.

5-29, Added a bonus to borgs to carry more food if they Regenerate but do
not have Slow Digestion. Fixed a few bugs in the the dragon borg.

5-25, Slime Molds will now be eaten as food if the borg is hungry.
DragonAngband Borg is ready.

5-24, Repaired a bug which had risky borgs crashing the game.

5-17, I allowed the borg_worship variables to work when the dynamic calc
option is on, previously the worship variables only effected the borg if
dynamic calcs were off. Also fixed it so that the borg_plays_risky will work if
dynamic calcs are on.

5-15, Vaevictus is providing scripts for more up to date borg stats. Check
out the stat page. Borgs set on continual play mode (auto respawning) will now
make high score entries.

5-14, Repaired a possible bug with shop-swaps (buying-selling same item).
Shovels will not be carried if the player has crappy digging skills. Stat
reducing attacks are now feared much more. Holy Word is a bit more likely to be
cast when in Questor Combat.

5-11, I attempted to fix a possible reason why some preists get their stats
drained to zilch (by increasing the skill amount required before attempting to
disarm traps). Repaired a bug relating to Maggot and mages dancing in town. I
altered the ‘reason for not diving’ from “Uniques >=3” to the name
of the most shallow unique which must be killed. Now it is not entirely true
that that particular unique must die (one of the other two could die and that
would satisfy the borg enough to dive). But having th e name looks cool. I also
added the name to the depth 99 reason “Uniques still alive.” I also
fixed a rare miscalc in which borgs would die to Chaos Beetles. Digging has
been altered so that the borg is less likely to dig (requiring greater digging
skills).

5-10, I fixed an error on the borg txt relating to maximizing spell points
once GOI is legal. I added the recall depth to the borg status window. Vaevictus is putting together cgi scripts for
the borg stats. I made an attempt to fix the problem that kept mages from
diving to depth 100 even though they had potions. If you have a borg stuck on
dlevel 99, I’d like a copy of the save file so I can test the various fixes.

5-7, I fixed the bug that kept the winners from dumping their maps. I added
a new borg.txt variable ‘auto_respawn_winners’ which will have the borg respawn
a new borg right after killing Morgoth. Personally, I like seeing winner screen
with all the earthquake destruction and the crown laying on the ground. But
some folks in the newsgroup would like it so they won’t have to mess with
renaming saver files after a win. By default this variable will be off.

5-3, Aggrevation curse now has a higher penalty. I corrected the way in
which maximal weapon damage is calculated with respect to adding the +to_dam
then calculating the slay factor. I made some modifications to the weapon
choice and reward system. The borg was not really considering overlaping slays
and was given great rewards for ‘slay everything’ weapons. I have altered the
borg with the following:

1. Slay Animal is only rewarded if Brand Electric is not possesed.

2. Slay Orc and Slay Troll are rewarded less if Slay Evil is possesed.

3. Brand Electric has an increased reward.

These changes will significantly impact how the borg worships Zarcuthra.
Although it is a nice weapon, it was receiving too great a reward based solely
on the slays. One problem with the altering of SAnimal and BElec will be
lightning breathing hounds and vortices. But I would not worry about that too
much.

5-1, I repaired a bug which had mages acting goofy when maggot was around.
15 food rations and light fuels are no longer required since they are so heavy
for low level characters. The borg who is scumming town will return after about
3500 turns instead of 10,000. I repaired a bug which had borgs planting glyphs
while digging out vaults with summoners therein. I also implemented a very good
suggestion concerning disturb_move. The spell casters will rest to regain mana,
but resting with ESP will only res t one turn. Now disturb_move will be altered
based on the danger of near by monsters. This will allow borgs to fully rest
instead of resting a few turns.

4-25, I lowered the ‘out-of-sync’ threshold to 10,000 turns. So the borg will
realize that something is wrong sooner. I lowered the number of times that the
borg will park and try to enchant his equipment. It was at 500 turns in town,
now to 350. I also added some time variables to the borg status term window.
This might help in some debugging of loops.

4-17, I fixed that bug that kept the borg resting to recharge an item that
had already recharged.

4-16, Bablos and RyanW reported home-purchasing problems with the borg. I
tracked the bug to a faulty check to see if items were cursed. It is now
repaired. I also improved the borg_restock() function by reducing the need for
CCW if the borg resists blindness and confusion.

4-15, I noticed that the borg was turning auto_scum on when he was <
clevl 5 and on depth1-5. This is pretty insane. So I altered it so the borg
will not turn on auto_scumming until he is at a safer clevel (35).

4-13, I repaired a potential bug in the borg defence code, the borg may have
tried to read a scroll of Detect Inviso when it was dark and he was out of
light. I also modified the respawn stats and removed them from borg.txt. Now
the primary and secondary stats will be rolled at 17, and CON will be 16. These
are values before any race/class bonuses are added. Secondary stat is usually
DEX except for Priests, they have STR as their secondary.

4-12, Added two more “scary guys”: Filthy street urchins, and
Farmer Maggot. Neither one was bad individually but they caused the borg to
race around town waking up too many towns ppl and that lead to deaths. I
repaired a potential bug with Azriel’s listing as a scary guy, since Mages
won’t need RNethr Azriel may have been classified as Scary. I made a few minor
improvements to the digging routines to keep weakling from trying to dig for
treasure. I also made borgs more likely to rest to regain mana and HP.

4-11, (late in the afternoon) I greatly modified how the mages and priests
treat their equipment and mana. Once the mage has the GOI spell the borg will
turn on a super mana-worship in order to get the INT up to 18/200. Priests do a
similar thing once they have the Holy Word spell. Again, this is done through
borg.txt. My goal is to get as close to 0% fail on GOI and HW.

4-11, There must have been some problems with my updates. I had patched the
borg to fix the cursed shovel business but something must have gotten messed up
with the upload. I have repatched those areas so that the borg will better
handle cursed equipment. I implemented a suggestion from Riivo not to force
mages to have RNethr or RChaos if they have good HP and reliable GOI. This will
allow your mage borgs to dive faster since they do not have to wait for these
two resists at depth 60. What “reliable” means is this: If a mage has
greater than 650 HP and RBlind and RConf and ESP and
GOI is at least 4% fail. Thankfully I was able to code this into the BORG.TXT.
So if you do not want to have this implemented then you can modify those two
lines of borg.txt (all send a warm-fuzzy to Adam). Please update your
borg.txt

4-10, Borgs are now more likely to purchase *Enchant* scrolls. Borgs are now
less likely to waste their CCW on annoyances (Blind Warrior with ESP, Cuts when
HP are high). The cursed shovel thing is (I hope) repaired.

4-4, Lowered the amount of time that priests and paladins will spend
enchanting their stuff (cut in half). Riivo submittted a patch to repair some
bugs in the swap code which may have been causing errors and crashes on Win2k
machines. Several winners in the past couple of weeks.

3-19, Lowered the threshold for the ‘out-of-sync’ borg to attempt to
resynchronize with the game. I updated the has_lite
patch for 292
and enabled it for the binaries here.

3-15, Repaired the bug which made certain classes (mostly rogues) store
several hundred speed pots in the house. This error was a big deal because he
would junk more important items to make room for more speed pots. I also tried
to speed the borg up some by eliminating two monster race scans that occur
after depth 75. They were related to looking for the Tarrasque instead of
pointing to the index (539). It now looks directly at the index. This is only a
concern for people who use the JLE patch and move The Tarraseque from its
location (monster 539). The borg will now return to his home if he has been
away ofr longer than 10,000 turns (regardless if fighting a unique, or a vault
on the level).

3-14, The game option of auto_more will now be set FALSE by the borg. I also
modified the borg stat roller to use primary and secondary stats. Jesper Nelson
submitted a patch which will allow randomly generated borgs to have higher
starting (but still legal) stats. For example a Warrior would roll for 17 STR
and 17 DEX and 16 CON, while Mage would want INT to be maxed instead of STR.
These values are called upon when the auto_respawn_class is -1 (for random)
otherwise the starting stats from borg.txt are used. Also, a note is made in
the message log about how many turns it took the stat roller to meet the
minimal requirements. Several folks have submitted
winners
, so the list is growing.

3-9, I attempted to repair a bug which kept the priest borgs from diving to
depth 100 if they had Life potions instead of *Healing* as their emergency
heals. If you have a priest at depth 99 and it has more than 25 *Healing* and
Life potions and it won’t dive, then please let
me know
and send me the file. Also, I very minor bug fix to
borg_home_power() related to the priest Restoration spell. You will need to
replace your borg.txt

3-8, Fixed a bug which could make the borg collect ego weapons if he was
wielding a randart digging weapon.

3-7, Fixed an error which kept borgs fighting in dangerous situations if
there maximal hitpoints were greater than 550. It should have been the current
HP instead. Also fixed several things related to wearing cursed items. 1)
cursed shovels won’t be selected and the borg will not try to swap out a cursed
weapon to wield his shovel. 2) buying scroll of *remove curse* (he already knew
to use them, just not buy them). 3) Improvements on identifying what items are
cursed.

3-5, Fixed a bug that kept priests from diving to depth 100. Fixed a minor
issue relating to the purchasing-selling loops. You will need to update your
borg.txt file.

2-28, Fixed a bug that allowed the borg to crush really nice ego items if
they suffered some acid damage. Borgs will now not dig if they are in danger,
but will use the Stone to Mud spell.

2-27, Encouraged the borg to carry more missiles, and to carry less food (to
avoid being slow while low STR) This (most likely) will not impact the rate at
which borgs die of starvation.

2-26, Minor repair to the shoveling code (again). Minor alteration to
improve the Banishment spell. Minor fix to keep the borg from trying to pick up
and item when all his inventory slots are full.

2-24, Minor but possibly sgnificant change in how the borg calcuates the
effectiveness of the Banishment spell. Also swap weapons as diggers improved:
Randarts with tunnelling counted, and if the Stone to Mud spell is legal, then
no diggers are carried.

2-22, Forbade the borg from crushing Speed potions (Although mages might do
it later), Applied some patches from Markus L. to smooth out a couple of rough
edges. Also, borgs are more likely to back into a corridor if surrounded, even
if the first few steps are dangerous.

2-21, Teleport Level is now used to escape a very dangerous level if the
borg has no Teleports or Phase. The borg will no longer Bash doors if he is
weak from hunger.

2-20, A few more purchase restrictions, this time paladins and rangers
buying that 2nd spell book before clevel 8. Removed the dlevel 25 ‘teleport7’
requirement for mage and priests if they have 0% fail on the teleport spell and
RBlind and RConf.

2-19, I restricted the low level borgs ability to buy things in order to
conserve money for more imortant items. For example a brand new borg would buy
5 more Food items, and 5 more Torches. Spending about $40 on these. A mage
might by the next spell book for $125, even though he can not read a spell
until clevel 5. So I have restricted his ability to buy these items if he
already has enough. I also made a few minor enhancements to DVE’s Borg Status
Window. I repaired a bug which had the borg acting twitchy in town and bouncing
off and on the stairs until he died. I reduced the number of Heal Pots required
for Mages and Priests. Update your borg.txt.2-18, Several changes 1) altered
and improved the way the borg collects and uses Speed Potions for the end game.
2) reduced the fear of uniques who summon other monsters. 3) repaired a bug in
the borg_ready_morgoth calculations 4) borg will remove the borg_on_level flag
if he kills a unique on that level (otherwise he would stay on that level for
about 8000 turns) 5) Monstes to teleport or blink, or polymorpth are no longer
considered dead but are deleted from the monster list. 6) improved how the borg
will fear the final uniques at the deep levels as he prepares for Sauron and
Morgoth. 7) repaired an error in the borg_heal() routine that could creep in
while fighting Questors. 8) borg is more likely to use Mana Storm on uniques.
9) the fear of collateral damage from spells reduced (ice shatters potions,
borg penalized the spell by 2000 pts). Collateral damage fear removed entirely
for Mana Storm spell. 10) use of Banishment improved. 11) use of perma spells
while holding the immunity made smarter. 12) borg a little braver about chasing
down a unique and picking a fight with it. 13) resting to recharge an item now
checks for nearby monsters. 14) added the weapon slays to the borg status
window. 15) I think I fixed that junk at the end of the line in the .map
file

1-31, A few fine tuning of the shovel code, including the bug that had him
crushing his main weapon as soon as he swapped in the shovel.

1-27, The borg will now carry and use Diggers (shovels, picks). He will swap
them in right before digging, then wield his weapon as soon as the dig is
complete. I fixed a bug with borgs being out of light and wanting to the
stairs.

1-25, Repair to the Azriel scary_guy code. Some repairs and changes to how
the borg fears uniques at low levels. Also some changes and improvements to the
“leash” on the low level borgs.

1-24, I made some improvements to how the borg refreshes the GOI spell. I
also improved the way the borg handles his preparedness for the final two
questors and their levels.

1-23, 1) Tinkered with a few of the borg_defense() maneuvers. 2) Tinkered
with the upper end borg_heal() stuff. 3) Borg will not dig a-s corridor into a
perma-wall (“Dayam, this rock is tough”) 4) Borg will not drop to
dlevel 99 until non-Questor uniques are dead (most of the time). 5) added a new
borg.txt option borg_scums_uniques. When TRUE it will turn on the autoscumming
if the borg is waiting to kill a unique in order to dive. 6) The borg is now
allowed to dive to 99, under special conditions, even if uniques are still
alive. 7) The borg will immediately cast Teleport Level to rise to 99 if he
recalls to dlevel 100 and he is not ready to fight Morgoth.

1-22, I fixed the crash bug that crept in on the 1-19 release. I repaired a
bug in the way the borg collects Res Mana pots for the final fight. I also
modified the low mana threshold for when the borg will rest to regain mana. I
patched a hole in borg_heal().

1-19, A couple of fine tunes to the anti-summoning routine. He will not
tunnel if confused, out of light, or too weak (or no stone to mud spell). He
will not tunnel if the summoner is further than 8 grids away.

1-18, The borg will now dig anti-summoning corridors. He will do this in a
limited way. The summoner must be adjacent to a wall, and that wall grid must
not have more than 4 floor grids touching it. Please report any abnormal
behavior with this behavior. I also added some changes so that the TK borg can
be updated without too much effort from Tim B.

1-16, 1) Repaired a bug relating to the borg exploiting offset-target ball
spells and Orb of Draining. 2) The borg will try to avoid carrying staves down
to fight Morgoth, since he drains them to heal himself. 3) Tweaked the use of
Banishment for Priests. 4) Mushrooms of Restoring are stored in the house for
use against Morgoth.

1-12, Altered the RFire and RCold perma spells so that the borg will (more
likely) cast them if fighting a unique. Borg now reports if he is standing on a
stair (used in debugging certain types of twitchy town deaths)

1-11, Repaired how the borg sees and averages the danger of spell attacks
from monsters. I also modified the ‘short leash’ on borgs to keep them close to
the stairs.

1-9, Repaired a minor error on low level borgs exploring the dungeon far
from stairs.

1-2, Added the auto_stop_clevel, _dlevel and _king to the borg.txt file.

1-1, 2001 I repaired some bugs that crept in when I messed up my downloads the
other day. Priests have a slightly different way of handling this Glyph arrays,
including then glyphs are destroyed. It sure would be nice if the glyph spell
had a launch message like the scroll. RR- think you can put that back in for
292?

12-30, Fixed a bug in the borg_perma_spells(); the priests were not casting
RFire or RCold.

12-29, A few minor fixes. 1) how the borg uses Holy Word, 2) tried to fix a
bug that caused the borg to be twitchy in town instead of taking stairs. 11-24,
Added two more winners. Made changes and corrections to the way the borg uses
Detect Invisible spell. I fixed some errors in borg_power pointed out from Adam
G. Lastly, made a few modifications to how items are sold if the
borg_worships_gold.

11-21, Made a correction to the use to Teleport Away; I think I finally got
it right 🙂 I repaired a hack for fighitng the Tarrasque. Oh and I went deer
hunting this morning and got a really nice doe.

11-20, Made some clean ups to the code. Altered: 1) added a
borg_worships_gold to the borg.txt; you can read about it in the borg.txt. 2)
Slight improvement to how the borg uses LIfe potions when fighting Morgoth.

11-17, Repaired the inscription routines which could result in a very minor
bug. Added another Winner to the list.

11-16, Cleaned the code a bit. I was asked to move all the borg related
files to \lib\user\ which I did. I now ask you to move your borg.txt file to
\lib\user\. This helps to clean the directories up a bit and when Angband 2.9.2
comes out, it will be important to have the directory structure clean. If you
do not have your borg.txt file in the user directory, then your borg will run
with the default values on. Grahame White had another winner. Nice job. Keep those Winners and
Almosts in the email. And plz include the number of turns your borg had. You
can read the final battle in the borg diary called battle.log.

11-14, 1) Borg will takeoff items which grant regeneration if starving and
in town. 2) Made some repairs to the food and slime mold inscriptions; caused
problems on unix machines. 3) Slight change to how the borg heals when fighting
Questor monsters; he uses potions and won’t risk the fail of a rod or staff. 4)
Increased his bravery while fighting Sauron. 5) Borg conserves his arrows alot
more now. 5) The retreat code was modified to make him more likely to retreat
when surrounded by monsters, 6) He may rest on a stair if recooping his mana.

11-13, 1) Made a repair and re-instated the Refreshing of GOI for mages. 2)
Changes to borg_escape() and borg_heal() to reduce risks of spell failures. 3)
I modified how the Tank Mage uses swaps; he had trouble diving. 4) Cleaned up
the borg_log_battle() code for unix users. 5) Borgs will inscribe food and
Slime Molds (he keeps a few as pets)

11-8. Several tweaks. 1) Rods of Ident now have a fail check. 2) Increased
the borg auto roller to 500,000 instead of the 64,000. 3) Increased the penalty
for using Broken Weapons. 4) Increased the penalty for carrying heavy stuff. 5)
Modified the anti-clock overflow checks slightly. 6) Added a fail check to the
amt_recall for spells. Some low intelligence borgs could not cast it. 7)
Modified the cure blindness check in borg_heal() to avoid fixing blindness in
extreme danger when the borg has a teleport staff (and can successfully use
it). 8) Increased the urgency of restocking items in inventory. 9) Added a few
more forms of phase to the “buying time for recall” section of
borg_caution(). 10) I added a special check and cure for confusion in borg_heal();
it relates to being confused and not being able to use a teleport staff with
success. 11) Modified borg_flow_kill() so that he would not flow to ‘FRIENDS’
monsters unless he and the monster are in hallways. This should cut down on
Cave Spider deaths and other types where he gets whoopped by a gang.

11-7, 1) Modified the penalty to Rangers and Rogues for wearing gloves; I
made it less severe than mages. So they may wear gloves but at a penalty of
15000 pts, that translates to gloves of +8 AC will be worn. But if the
borg_worships_ac then he will be more likely to wear gloves of lesser AC (maybe
+5). 2) I attempted to repair a crash problem related to the borg_log_battle().
Let me know if you have problems with this routine in Linux.

11-6, 1) I had to make a tiny fix to the back_swap() routine; it was looping
with GOI on. 2) I also moved the auto stop variables to the borg.txt file.
These three variables, when set, can tell the borg to stop at certain clevels,
dlevels, or when he wins the game. 3) Tiny fix on when the borg can retreat.

11-3, Actually I had two winners yesterday. The other was a High Elf Mage.
You can read about him above. I made a tiny change to borg_wear_stuff() so that
he would not exchange items if he were in danger (unless that slot was empty).
I also set up collection and use of Potions of Beserk Strength. They are saved
by non-mage and non-priests, kept in the house until late in the game. He will
use them when fighting uniques. I added a check for {indestructible} items.
{special} and {terrible} were already considered.

11-2, Had a Winner today. A dwarf priest. Some repairs to the overhaul. A
complete detail may come in a day or two. I had the borg keep a diary of his
fight with Sauron, and Morgoth. It will be in Battle.log. I added a Tank Mage
play style to high level mages. Basically, they try to conserve mana to keep
the GOI up and use a massive damage weapon on monsters. I also had to fix the
defence maneuver of Earthquake, it was miscalculating the benefit and so was
using it too much. Other changes include: 1) don’t crush spell books to make
room for items, 2) altered the collection of restore mana for fighting unique,
3) recalc of danger if PFE is on, 4) encourge borg to stay in the fight with
Morgoth even if very dangerous, 5) Do not use Word of Destruction on Morgoth.

10-31, Major overhaul completed. Adam Goodman submitted a massive patch with
numerous tweaks and some fine new code. The list of changes is extensive and
much of it relates to better handling of his equipment/inventory. You will find
that he dives faster and has greater life expectancy. Also, he and I worked on
a Borg Configuration. Where you, the player/observer, can configure and
customize the borg through a borg.txt. The borg.txt file should be placed in your
\bone\ directory. Then modify the variables to how you want the borg to play.
More variables will be added as time goes on. The borg.txt has nice
documentation so read it for specifics. Send
some feedback
.

10-26, I increased the reward for Warriors, Paladins, and Rogues to carry
Colluin (for the activation). I added Colluin to the list of BP_activations but
only if a unique is on the level. I modified the BP_ spells to increase their
usage if uniques are on the level and especially if a unique is near the
player. I added the anti-buy-sell code to one other place where it could happen
(Best Fit). Boosted the Magic Missile damage for low level mages; too many were
going melee with and dying to Kobolds and they still had 2 or 3 mana pts. I
added a varied AC bonus, so AC is worth less as you gain in clevels. I
increased the danger from Nether attacks and lowered it’s requirement to dlevel
55 instead of 60. I increased the message buffer dump if the player dies on
dlevel 100; this might help us get a better feel of what happened if they die
to Morgoth.

10-24, Repair to DragonBorg: Dragon Mages did not like to wear rings in one
particular slot. I also added some requested code for Bablos.

10-23, I made repairs to the DragonBorg. No changes to the Vanilla borg.

10-19, Had a ***WINNER*** today. Human Mage. I had to make multiple changes
scattered throughout the code relating to how a borg deals with GOI, as well as
many other changes. Here is a brief description. Increased the bonus for
carrying Ringil, modifed the section in borg4.c relating to preparations for
the big fight, encouraged the borg to drink his Potions of Life is his stats
are drained and fighting Morgoth.

10-18, Minor tweaks how he borg deals with resists at deeper levels. I
installed the “genocide hounds.” So now he will kill hounds when he
enters a deep level so long as it is safe and he is in full health (and health
is at least 400). Resting to recharge Rod of Healing will not occurr is the big
Recharge Spell is legal. I modified the way the borg calculates danger while
GOI is up.

10-17, I modified the way the borg handles weakness from hunger so that he
will also consume potions for their nutritional value. I also tinkered with the
Mass Genocide spell to see if I can get it to work better, including rewarding
the borg for carrying Mass Genocide Scrolls.

10-16, Fixed a potential bug in the Speed spell. Modified the Slay and Kill
Dragon to be less desirable. Fixed a potential bug in the way the borg tracks
and forgets some types of monsters. I now have all the *.map files dump to the
‘save’ directory. I also reworked the Panel Shift code to shift the panel with
approaching the edge of the screen. He does this after dlevel 70.

10-13, Fixed a potential bug in the re-worked Genocide Spell. It was
possible for him to a non -existant monster. It was highly unlikely that it
would occurr, but you never know.

10-12, I am still trying to pin down some common overflow bugs. One relates
to ID’ing a previously ID’d randart phial. Another involves reading a recall
scroll. And to my great disappointment my very promising mage died on level 71
to starvation. He was stuck bouncing on an item wanting to pick it up but his
invenotry was full. I have no idea what he was thinking. There are several
control measures that should stop that. Also, I repaired a bug in the new
Genocide calculations.

10-10, I improved the way Genocide is calculated. I altered the way Heal
Potions are used when fighting Morgoth. And that required a slight increase in
the number of ez-heal potions required for the final fight.

10-9, Fixed a bug in the calculation of Mass Genocide. The borg thought it
worked on Uniques too. Fixed a hidden bug relating to waiting for the Recall to
kick in; sometimes the borg would rest too close to monsters. Modified the Prep
values for preparedness. Now instead of the ambigious “level” or ‘hp’
response, it will give the exact reason. ex: ’50 hp’ or ’25 clevel’. I also
fixed a bug that only occurred in the old tiles graphics. The borg would try to
disarm Glyphs. This is because on the tile for traps and glyphs is the same in
the Old Tiles. This bug did not occurr in ASCII or AB Tile mode.

10-5, Fixed a bug in the priest defence spell Banishment (non evil critters
were included and they should not be). I modifed the danger of melee fights
with monster who HAVE_FRIENDS or ESCORTS or BREEDERS. I Added the WoR
count-down to the death dump. This way you can see how many turns the borg
needed before he would have returned to town. I know, I will cry too if the
count is only 1. I modified the penalty for Mages who encumber themselves with
heavy armour (again). I made a few changes to strongly discourage the borg from
being a Tank Mage. Mages are now far more less likely to melee. Finally, I
allowed the borg to throw his last few oils at Grip and Fang. Before, he would
throw TV_FLASKs but he would always keep his last 5. If he is fighting Grip and
Fang, he is now allowed to throw them and hopefully dispatch the two muts, and
avenge the deaths of 50-60 ancestors.

10-4, I rewrote and renamed the borg_takeoff_stuff(). It works a little
better now. It is supposed to remove items that are considered useless. I fixed
the circular queu for remembering previous borg steps. I also modified the way
Armour Class is rewarded (yet again). I think I like it like this. I also
increased the penalty for wearing heavy armour which decreases mana. I put a
“area-clear-of-monsters” restriction in place for when the borg casts
detection spells.

10-3, I made a few minor changes and 1 huge one. 1. Priests just starting
out will sell the Potion of Healing and use the money to buy equipment and cure
crits. 2. Borg will buy and store cure serious if low clevel. 3.
“Freedom” grids now include up-stairs and will be chased from the
dungeon. 4. Added an array to track where the borg has stepped. Like a trail of
bread crumbs. He will consider these grids when trying to retreat to a safer
place. The theory being that where he just stepped from will have less monsters
than retreating down an unexplored corridor which may have more monsters yet
undiscovered. “Happy” grids now include these grids where the borg
has stepped. I would prefere to have the borg only store the last 50-75 steps.
But I am not that familiar with CMAKE() and how it works. I set up the array to
store 255 grids. I fear that the borg may get screwy when the array reaches
over 255. If anyone knows how to delete the 1st step from memory when the 75th
step is reached, and then shift all values down one position, I’d appreciate knowing it. Also if your
borg crashes the game, and it generally does not do that, then let me now. It may be related to this
array overflowing

10-2, I spent a lot of time this weekend working on human mages. I was
tinkering with the value of increased armour class. The mages increased their
average clevel considerably. But they tended to wear so much armour that their
mana was reduced to virtually nothing. I still don’t have them getting over
clevel 25 with any consistency. Warriors, however,.seem to have very little
trouble getting to clevel 25.

9-29, Repaired the stat roller for the continual play borgs. Modified the
slight bonus given to using melee weapons for low level spell casters. I
reduded the random nature to some spells: Various methods of attacks would
return 0 10% of the time. This had been done to provide random spell use and
prevent some loops. Loops have been reduced so this can be removed. I also had
to fix an error introduced by using the Magic Missile in emergency situations.

9-28, I made some huge hacks to keep mages alive. Including: 1. Modifying
the Flow_kill. 2. Emergency use of Magic Missile. 3. Decreased the flee
threshold for breederlevels. 4. Removed the restrictions which kept the borg on
the level for a minimal amount of time. 5. Kept low level mages close to the
stairs-not allowing them to wander too far off. 6. Reduced the amount of food
that the player will carry, in an attempt to keep him from becoming slow. 7.
Removed the my_speed variable and replaced it with auto_speed. my_speed was an
apporoximate, while auto_speed is the actual extracted speed. (At the end of
the day, I had to fix a bug I introduced by messing with the my_speed and
auto_speed)

9-27, I had to modify the attack for Wands of Wonder, for some reason, the
borg was locking up on this. Previously, he used them without any problems. I
modified how the borg uses the ez_heal potions to encourage their usage if he
is low on teleport ability. Same change to use of Staff of Destruction. I saw
such a favorable response in the borg to the increase in AC from 10 to 20, that
I increased it to 50.

9-26, I fixed an error in how the borg calculates danger from mana storms
and that water storm spell. He had been underestimating the damage. Also, I had
some problems with my ftp program not over-writing my zip files on the webpage,
so some of the recent changes may not have been uploaded correctly. I have
corrected the error and, hopefully, the files should all be updated with the
most recent fixes. I also increased the reward for the first 20 pts of armour
class instead of 10. I also restricted the purchase of items from the BM a bit.
It caught the borg buying elvish waybread from the BM when he was only clevel
1, those funds would be better spent elsewhere.

9-25, I fixed a bug that kept the borg from selling certain items to the
shops. Modified the use of Holy Word in borg_heal. Increased the reward for
carrying Scrolls of Teleportation deeper in the dungeon. Forced the
Seed_Randart and do_randart() with the continual play borgs. Smoothed out the
borg_escape a bit more to make him more cautious. Made Nether more scary. I
also had the borg Bash locked doors down if he is too clumsy to Open (Pick)
them. Told the borg to save his arrows when fighting whimps. He would waste
them on easy guys then have none left for the real hard guys. Please give me some
feed back on how well this works.

9-21, Modified several things: 1. borg_emergency_phase() to avoid a nasty
habbit of teleporting in town when poisoned or bleeding. 2. how the borg
handles fail rates on teleport staffs (again). 3. teleport away, can now be
used on uniques. 4. added more clevel dependance to dlevels in borg_prep(). 5.
added more information to the character map dump. 6. borg_escape() to make him
a bit more cautious at lower clevels.

9-20, Borg told to escape breeder levels a little more quickly if he is low
level. Version Date inserted now at the time of compile. Told the borg not to
chase down town monsters until clevel 5. He will still attack them if he has a
clean shot, but he won’t persue them now. This is an attempt to lower the incidence
of death by Battle Scarred Vets (the #2 borg killer).

9-19, Jurrian reported that a very promising borg died on dlevel 86 from a
fatal wound, even though he had 2 Potions of Life. Darn. The borg will now
include the ez_heal potions in his “critical attempts” to cure poison
and cuts. I encouraged the borg to wear items of FeatherFalling if he is low
level. This might cut down on some trap deaths.

9-18, Updated the DrAngband borg with recent changes (from before my trip to
Idaho) and finally got the Windows version working correctly.

9-15, Adjusted how the borg reacts to poison. Adjusted how the borg deals
with Farmer Maggot; he won’t attack him until clevel 5. The borg tends to chase
Maggot all around waking up town monsters and then he is left to deal with
them. Hopefully by clevel 5, the borg can dispatch Maggot a little quicker or
at least be in a better position to deal with the awake monsters. I also had to
modify the borg_surrounded() incase the borg is ignoring breeders. He got stuck
in a dead end and kept retreating further into the dead-end. Eventually he
would have starved to death.

9-14, Fixed several things: 1. An error and some tweaks in
borg_danger_aux(). 2. Modified the Retreat and Backing Up routines from
borg_caution(). 3. Added an extra danger level for borg_escape(). 4. Increased
the restrictions for low clevel diving in borg_prepared(). 5. Fixed a bug in
the continual play mode. The borg’s recall depth was not reset to zero after
the new borg started. 6. Borg would already ignore sleeping town monsters with
ranged attacks. He now ignores them with physical attacks as well. Two of the
top five borg killers are town monsters. Perhaps they should be avoided more.

9-13, Increased the danger of Gravity Breathers. Added a danger check before
borg will ‘crush’ items. Too often he would boost bravery then crush an item
instead of fighting. Changes to the web page. Added some Data
Tables
to illustrate the borg deaths and see his weaknesses. It was
surprising for me to see just how low the average borg level was. I thought he
did much better than this.

9-11, Minor code changes, just a few housekeeping issues.

9-8, Adjusted when the borg will use his cure_crits versus star_heals when
fixing his life threatening do_confused and do_blind. Adjusted the fail rate to
give the borg some “desparation” in attempting to use a staff of
teleportation. There were a few deaths when he should have tried to use the
teleport staff but thought he would fail so he did not even try. His inaction resulted
in death. He should at least attempt it on a teleport staff. After all, they
are used in a desparate situation.

9-7, Tiny fix on the has_lite.zip to make sure monster memory is updated
correctly. Minor fix on a potential overflow bug related to targetting the
outside perma-walls.

9-6, Tiny fix on the has_lite.zip to fix some extra stuff which had been
stuck into the .dif.

9-5, Just a few minor tweaks to help the borg if he runs out of light; to
refuel_torch() & _lanter(), danger of light draining attacks (silver
jelly), potential for overflows addressed in borg danger(). I reconsidered RR’s
suggestion to remove the amt_ident requirements for borg_prep(), they are now
removed. I made an accomodation for the borg if he is fighting monsters who
have the HAS_LITE flag.

9-1, Added a sweet routine to get the borg to back into hallways to avoid
being surrounded by monsters. JWBlack mentioned how borgs get surrouned by
orcs, and have no way to escape. I have considered this several times before
and I always thought to approach this via bord_danger(). As I thought about it
last night, I came up with the borg_surrounded() in borg6.c Basically, he
counts the number of monsters within 3 grids of him (skipping certain types),
and the number of free grids (open floors, open doors- something to which he
could walk). If the number of monsters is greater than the number of free grids
then he will consider a strategic retreat. It seems to work really well. I saw
him back away from several monster groups and save himself with the routine
several times. I believe this will greatly assist low clevel borgs.

8-30, minor tweaks to a couple things, not worth mentioning.

8-29, I added the ability to select certain races for the continual play
borgs and screen saver. In the angband.ini file you can indicate the race and
or class you want all the borgs to be or you can select minimal stats for the
borg to use when it is rolling up a new character. See the documentation in
angband.ini. For those of you who do not use windows and therefore not using
the angband.ini file, you can make those changes to the variable.c file then
recompile. Just search for the word borg in variable.c and you will find it.
It’s near the top. This function was adapted from Dennis’ Borgband which as
this option. I also made a slight modification to how borgs locate broken doors
vs open doors.

8-25, Fixed one of the possible store loops. Accomodated for a possible game
bug. The game forbids the targetting of perimeter walls. So now the borg must
also not allow himself to target these walls. Also, I adapted the borg to work
with extra races or modifications of the races. I know some people have
mentioned adding Kobolds and such, each with intrinsic abilities. Now the borg
will accept those new races and know it’s abilities (RPois for Kobolds, etc).
The borg pulls this info from the _info.raw so you can modify the _info.txt
without having to modify the borg or recompile.

8-21, Increased the msg buffer so the borg would not overflow the messages
while paralyzed. Tinkered on the continual play mode to reduce the risk of
getting stuck in walls prior to restarting in the town. Increased the level at
which the borg will dump a map of the dungeon to clevel 45. Fixed a bug wherein
the borg would disarm a trap under a monster leading to a clock overflow.

8-18, [V] I attempted to fix the memory leak on continual play borgs by
avoiding the certain re-init process. But I don’t know how to test for a memory
leak. I also patched a problem that resulted in clockoverflows when wielding
torches right after a borg respawns. The borg will create a borg.dat file which
I would like pple to send to me
periodically. It contains death information about the borgs. I will import this
into a data base and track race-class combination success rates. With this
information I will be able to determine weakness in the borg then correct them.

8-14, [V] I had a chance to look at RR9’s suggestions for the apwborg. I
will work some of them in. Mainly the table look-up, legal race-class
combination for continual play borgs, creating a borg-death-log in \user, and
conversion of x,y to y,x in the reports. I considered his suggestion for the
amt_ident for borg_prepared(). I decided to lighten the amt_ident but not remove
them entirely. I have rarely seen the borg fail to dive due to amt_ident. The
bug with the rods was already fixed. Thx for the suggestions RR.

8-12, [V+D] I worked on the code for the borg flowing when he is out of
light. Previously he would flow to a lighted room and attempt a recall spell.
He would also attempt to flow to the upstairs. However, there had been a flaw.
If he was on dlevel two or deeper he would flow upstairs then stop on the next
level. Now I have him exploring the next dlevel. So he can explore in the
dungeon testing every grid for an up staircase. So now he can run out of light
at any depths and still find his way to the town. I also fixed a very rare bug
associated with activation of certain rods on low level warriors. The borg had
been unhooking performing denfence type 1. This was related to the borg failing
to activate a rod properly. This is now fixed.

8-2, [V] Fixed a bug where the borg would sometimes try to refuel his
torches with oil. Fixed the bugs which kept the continual-play borg from
restarting on certain types of death. And also those terrible clock overflows.
I think I got most of them hammered out now. I have not added this to the
Drangband borg yet. I am leaving for a 2 week vacation tomorrow, so I doubt I
will get it uploaded. I plan on taking my laptop with me so I will be able to
check email and bug reports.

7-31, [V] Fixed a bug which encouraged a starting borg to flow to a shop
without first equiping a torch. I fixed a few bugs related to continued-play
borgs. It does not run perfectly. But it is pretty good. It may have trouble
starting up after certain types of death (those involving Stun, Poison,
Paralysis, etc). It may rarely get confused on its equipment, and try to sell
stuff to the store which the store won’t buy. If this occurrs to you, just
reload Angband and restart the borg. He will be just fine after that.

7-29, [V] Fixed a bug which would make the borg unhook when on
continued-play mode. There might be some more lurking so let me know

7-28, [V+D] Finished working on a continuous play mode. Similar to Borgband.
Upon death of the borg, he will respawn as a random character and play. To
activate this option, turn on the game cheat “Cheat Death.” It is
listed under the Cheat Options in the Game Options Menu, (using = to activate
it. This code is entirely within the borg, you don’t need to modify the game
source at all. This should allow some portability to the Borgband style of
continuous play. I also found another swap loop bug and sqaushed it. I was
really surprised. I haven’t seen one in several months.

7-25, [V+D] Replaced borg_los() with borg_projectable(). los() was making
too many mistakes and the borg kept dying when he thought it was safe
“backing up to [grid].” Reviewed and altered the borg_restock() so
that he will be more aware of his needs at deeper levels. Increased the urgency
of fleeing to restock. [V] I found that inventory is cramped so I modified how
the borg uses inventory items: ez_heal potions, cool_staff. And I am thinking
about altering which books a rogue will carry. Seems like he carries worthless
ones around.

7-21, [V+D] He will attempt to keep a reserve of mana incase he needs to
teleport out in the very near future. ie, He will not cast Identify and drop
his mana down to 5 when he needs at least 8 for a teleport. He will wait until
the ID spell can be cast without dropping his mana into reserves.

7-19, [V+D] Added a “dump map on death” command, code copied from
Dennis’ borgband. I also included the last 50 messages to be dumped as well.
Borg will attack if he becomes blinded and he has ESP

7-18, [V+D] Fixed a bug I created when I dinked with safe_spot the other
day. Now it should be fixed. (no, really). Slightly modified the Level 4
borg_escape().

7-17, [V] Fixed a few sloppy programming errors pointed out by Bablos. It
won’t really affect the game play.

7-11, [D+V] Fixed a bug with how safe_spot is calculated in borg_danger().
It was possible to encounter a divide by zero problem.

7-1, [D] Fixed a spell address bug. Magic Mapping was addressed instead of
Slow Monster.

6-30, [D] Fixed a bug where the borg would not swap out his 6th ring.
Modfied the rewards for having multiple resists.

6-28, [V+D] Removed the separate borg_offset_target() code and added it into
the borg_target() code. He still performs the offset attacks. But he performs
them more liberally now. Previously he was restricted to using them on
summoners and uniques. Since borgs are more likely to rest in the dungeon
(recharging rods, and burning through mana) slightly increased the amt_food
that he will take.

6-27, [V+D] Borgs no longer carry *Enchant* scrolls unless they need
something to be enchanted. Borg will restore mana a bit more liberally now, but
still conservatively.

6-26, [V+D] Added Staff of Holiness to borg_heal(), previously it was only
used in borg_attack(). Included it as amt_heal. He tries not to sell them even
if they are empty. He will sell them if he has several in his inventory. Added
scrolls of recharging to the list of things which the borg will purchase from
the store. He already uses them to recharge, but he did not actively purchase
them, he only used them in they happened t be in the inventory.

6-23, [V+D] Reworked the borg_perma_spells() a bit, made him more likely to
cast them if a unique is on the level. Fixed a formula bug in
borg_danger_aux2() relating to Protection From Evil and summoned monsters. [D]
Added the other resist foo spells to the list of borg_perma_spells(). As it
turns out a Rogue can have a 5% fail rate on the basic resists but a 95% fail
on Resistance (all 5 in one spell). I asked Tom about this. No word yet on if
this is a bug for rogues. These lower spells will only be cast if a unique is
on the level. Otherwise they would drain mana.

6-21, [V+D] Increased the penalty for casting spells into reserve mana. He
keeps draining his mana too far and then can’t teleport out. If he does
teleport, he uses the Critical Teleport then runs the risk of getting
paralyzed. Added a check to make sure the borg does not perform the “Light
Beam” defence spell in a dangerous location. *ID* now done for Amulets of
the Magi. He still has trouble with Shadow Cloaks. Fixed the address of some
spells from Offset Targeting.

6-20, [V+D] Minor fix to when the borg will cast Hero/Bless. Added Seeker
Ammo to the attack types, discouraged the use of seekers on non-uniques.

6-19, [V+D] Added another anti-loop check. I saw the borg looping while in
the house trying to get his “Best Combo.” Fixed that. Tiny change to
borg_check_rest() to make sure he does not rest near monsters. Added another
borg command ‘@’ It will display the borg’s LOS. Edited the borg_recharging()
to exclude some upper end staves from being recharged at 2 charges, they tend
to blow up.

6-18, [D+V] Modified the amt_heal and amt_ez_heal requirements for the
dlevel preparation code. The borg will now consider the ez_heals as part of the
amt_heal. But he is still only going to use them in an emergency. The rods of
healing are activated before potions are quaffed. This will allow him to keep
the quantity of heal pots up.

6-14, [D+V] Tweaked how a borg faster than speed 130 calculates danger.
Fixed the threshold for penalty for casting spells which put the borg into
reserve man. Previously the threshold was 6. But only mages needed 6 pts for
the teleport. I made the threshold class dependent. [D] Players who carry rods
of healing tend to have them drained all the time, and run around the dungeon
with out any heals. Dangerous, if not stupid. The borg will now rest to
recharge at least one of the rods of healing. The resting is done in
borg_recover(), a good location for this check to occurr. If the borg is in
town, he will rest to recharge all rods of healing. This is great for rogues,
less great for warriors. The borg will spend a lot of time Resting and burning
through rations. So the warrior has a increased concern for carrying food. But
this concern is outweighed by not having a “heal on demand” ready. I
am testing this function on the Vanilla borg, but Vanilla does not use a rod
stacking code. So the code is much more complicated and may not work as
smoothly as it does in DrAngband.

6-9, [D] Fixed a bug in on dragons. They tended to carry certain ego cloaks
and ego crowns instead of selling them.

6-8, [V+D] Minor tweak to borg_defend_aux_hero() and _berserk() so that borg
will cast these if fighting a unique. I also added these to the Perma-spell
list. So as long as they are not too expensive the borg will run around with
these on regardless of his current combat status.

5-15, [D+V] Minor tweak on borg_check_rest(), borg is less likely rest near
a monster, and more so if near a bad guy. [D] Had to accomidate for a feature
of the stacking rods in Drangband. The borg was trying to activate 4 rods of
foo (4 charging).

5-1, [D+V] Just some minor tinkering on borg_danger(). Not many changes for
the past few weeks. The wife has me pretty busy with some household projects.

4-18, [D+V] Lightened the requirement for the 2heal for dlevel 45 to 1heal
and moved 2heal to dlevel 56.

4-14, [D+V] Bablos pointed out a very serious bug related to activation of
rod and their fail rates. Fixed that. [D] borg_crush_junk() & _crush_slow()
& _crush_hole() modified a bit for the dragon players. They had a tendency
to carry stuff for a long time. The stores would fill up with sold wares then
they would be left carrying the heavy stuff. Now, after the borg reaches clevel
30, he will crush stuff which he cannot wear. Prior to clevel 30 he will sell
it for cash.

4-12, [D] Fixed a bug where Phase Door was listed with the Teleport spells
in borg_escape(). This should be spell 2,6 not 1,4. Modified the reward of
multiple resists (lowered poison a bit). Now the borg won’t prefere 3 layers of
resist_poison and only one of resist_(F/E/C/A).

4-11, [V+D] Fixed a problem for linux machines when the borg would not
recognize that his stats were drained. sfuerst[sp] provided the fix. Lowered
the CCW requirment for diving from clevel 35 to 30. Allowed the borg to count
his CSW in with the CCW in order to reach his minimal amount. [D] Discovered
Tom’s nasty_poison. Had to teach the borg to avoid this like the plague that it
is. Also had to figure out a way to get the borg to recognize the difference
between nasty_poison and regular poison. In the end I just cheated the
p_ptr->nasty_poison.

4-8, [V+D] Made some changes to allow the borg to handle “bizarre
monsters” (like Trappers, Mimic, Darksword in Dr.). Repaired the
_staff_fail() stuff. Turns out I messed up the previous fail rate calcuations. It
should be ok now.

4-5, [V+D] Fixed a bug induced when I was messing around with
borg_item_icky(). Tweaked how the borg considers amt_recall and amt_heal from
rods–added a fail check on them. [D] Fixed a spell address problem. I think it
was Phase Door, and Poison Cloud that had wrong addresses.

4-4, [V+D] Reinstated a reason to recall “I miss my home.” It had
been commented out some time ago. This will help out with town scumming. I
added a borg command ‘d’ which will dump the spell counter. Like Borgband, this
borg will keep track of the number of times each spell was attempted.

3-31, [V] Gave the borg the ability to Detect Monsters and Evil. This will
greatly help low level guys. Altered the swap routines so that the borg will
begin to carry swap items after dlevel 50. He does not really need them until
this depth, and they are pretty heavy for low level guys to carry around.

3-30, [V] Added a version stamp to the borg functions ‘V’. Tweaked the
rewards for upgrading artifact lites. Altered the way borgs calculate the
damage from Dispel type attacks. [D] Fixed a bug that caused loops identifying
the name3 random artifacts. Fixed the calculation of damage from pseudodragon
breath attack (the bigger one).

3-29, [V+D] Altered the reward for borgs carrying multiple copies of spell
books–borgs had a tendency to get encumbered by them. Borgs wont crush their
spell books in order to make room for treasures. [D] Fixed an equipment
selection bug for dragons getting stored stuff from the home. They had no trouble
storing things in the home, but they had trouble getting equipment (not
inventory items) from the home. Upgraded the resist flags to more accurately
reflect the drangband progressive resistance. RFire is no longer a boolean but
an integer. Borg will alter his equipment to try to get multiple coverage of
the same resistances.

3-28, [V+D] Had to fix an emergency use of the ez-heals in borg_caution().
[D] Borgs don’t use breath attacks when poisoned. An effort to conserve their
hp.

3-27, [D] Borgs makes offers to the RNG. Interestingly, there is a RNG which
responds “You die. -more-” The borg may unhook, thinking this is his
real death message. But we will see.

3-26, [V+D] Borg will cast some perma-spells. ex: He will cast speed
eventhough he does not need it for the situation. Perma spells are speed,
prayer, resistance, shield, PFE. He casts the spells when they are cheap to
call. (about 1/20 of his current spell points).

3-23, [V+D] Fixed that bug when the borg would shoot missiles down the hall
into a room and the missile would get hung up on a wall. So now the borg will
attempt the shot and antipicate a pain message out of the monster. If the pain
message does not arrive, then the borg will not shoot from that spot. He will
move then reattempt the shop. This is really cool.

3-21, [V+D] Modified borg_item_icky() so that ID scrolls are not wasted on
{good} items when we have {excellent} ones, and when we have enough cash.
ID’ing {good} items is important when you need money but after about $10k, the
ID scrolls/staves/rods are more important. Elvish wheybread listed with cure
poisons. [D] Dragons dont *id* items which they cant equip. They will also sell
these items. Fixed several spell bugs related to poison (I wonder if that is
why they keep dying.

3-20, [V+D] Several tweaks to poison handling. Borgs store cure poison in
the house sometimes. Many more tweaks to the Drangband since poison is so much
more dangerous.

3-16, [V+D] Modified heal potion requirements for the end-game. Life and
*Healing* stored in the home and saved for the end-game. Warrior winner this
morning. [D] Borgs carry cure poison potions now (TOM!), and a few slow potions
just in case.

3-14, [D] Worked on borg295. Added graphics support to the dragon borg. But
you must add #define ALLOW_BORG_GRAPHICS to the config.h. Continuing to squash
spell errors.

3-13, [V+D] Added a borg function ‘q’ which will allow the user to stop the
borg when it reaches a determined dlevel or clevel. I think Chem requested this
last week in the news group.

3-12, [D] Corrected a few errors in the spell address (teleport II).
Increased fear of Poison a bit. Will flee to town sooner if he can’t cure
poison.

3-9, [V+D] Fixed a bug with noting the grid where crappy artifacts are
dropped. I forgot to “break” the loop so all 50 members of the array
were filled with the same grid.

3-8, [V+D] Added the prayer Holy Word to borg_heal() (called if fighting
fighting a unique, to save mana). It also is found in borg_attack() (called
when HP are down a bit). Unbarring Ways used to remove traps as well as
‘D’isarming. Numerous changes in order to specify a Morgoth combat sequence.
Changes to borg_fighting_unique, borg_near_unique(), borg_heal(),
borg_escape(). Also changes to defence codes: create_doors(), earthquake(),
banishment(). Priests don’t need 7EZHeals to dive (they get Holy Word). Changes
to Annililation and Orb of Draining to conserve mana.

3-7, [V] Characters now carry more heal pots on dlevel 99 to take out
Sauron. Added a amt_pot_heal so that actual potions are carried for Morgoth, as
opposed to heal spells or staves. Borg was not calculating dispel damage
correctly. Modified borg_launch_aux() a bit to correct for this.

[D] Fixed a bug in Dragon borgs and their breath attacks; I forgot to make
them race specific.

3-6, [V] Lowered danger threshold for certain defence spells.

[D] Dragon borgs in wide screen mode, had some problems reading the second
page of a store. Fixed it. Also fixed an error in damage calculation with the
new drangband spell type fire_sphere().

3-4, [V] Minor tweak on food requirements for using dnstairs.

[D] Dragon borgs now breathe, Pixies use dust, Yeeks flee. Tweaked DrBorg so
that he does not need to *ID* artifact lites before wielding them.

3-2, Put some bandaids over areas where borg could loop.

[D] Fixed the bug that allowed dragons to store non-usable crap in the
house.

3-1, A borg blinded from Word of Destruction does not know that monsters
near him were killed, he might continue to activate the staff. Fixed this by
deleting all nearby monsters. He can simply add them back into his kill array.

2-29, [V] Fixed it so that the borg can decurse equipment that he currently
wearing. Triggered by “Oops, it feels deathly cold!”

[D] Been working heavily on the Dragon borg. It works pretty good now. It
could be released anytime now.

2-24, Borg could unhook if reading a Bless scroll if blind. Fixed that.

2-23, Borg had trouble diving because he could not get enough cure_crits, so
I moved the cures spells to be used before potions. Updated the screen parsing
for non-inven, non-equip cheats.

2-21, Sustains added to home_power. Increased the value of having sustains
in the end fight. Changed the winner flag from **KING** to ***WINNER***.

2-17, Buy time with Cure Lights if he can’t cure poison, cuts. Added some
scrolls and potions (hero, berserk, holy chant, holy prayer) to the already
existing borg_defence() (which previously only used the spells and prayers).

2-16, Priests don’t cast Enchant for as long a period (used to be 2000 turns,
now 750). Check_rest() checks for scary monsters within 3 grids of the borg.
(Previously only LOS monsters). Light Beam implemented to illuminate hallways
if borg is moving with boosted bravery. I added this code to illuminate a
hallway if the borg is being shot by an unseen monster lurking in the dark
hallway (a borg_defence maneuver). I only tested this for an hour or so. So
report any bugs with this function plz.

2-14, Borg told to quaff a ResMana potion if his mana is too low to cast
Satisfy Hunger/WoR. Borg told to place a greater value on lighter weapons which
tend to give more attacks per round. Fixed a typo that had the priests casting
Blink instead of Prayer.

2-13, Preferences for XBows removed. Borg may store artifact lites in the
home for later use. Minor tweak to slightly reduce the number of weapons stored
in the home. Fail rate check added to cure poison in borg_heal().

2-12, played Broodwars all night. I was Zerg 🙂

2-11, Request from Crimson: Borgs quaff stat pots immediately to save inventory
and they don’t really need the cash when these pots come around. Heavy Pseudo
ID borgs with lots of cash will save their ID scrolls for {excellent} items and
not waste them on {good} items. {Good} items can be sold or crushed. Fixed a
cleric bug with heal pots and heal spells. Restrictions on Heal and EZHeal
loosened up a bit, and fixed a bug that made borg carry 7EZHeal pots after
dlevel 86. This should have been dlevel 99. You can now get to dlevel 86-99
with 2 heal pots. The 15 heal and 7EZHeals are for the fight with Morgy on
dlevel 100. This will GREATLY speed the borg dive from 85-99.

2-10, Moved the requirement of RConf from level 56 to 46. Since RChaos no
longer gives RConf, special attention needs to be given to it. Clerics need to
carry a few heal pots and ez-heal pots. HoHo, Imagine my surprise to see that
Ben added two new summoning flags. S_KIN and S_HI_DEMON. I wish he’d make a
file detailing the game changes. Anyways, I added this new summon routines to
the borg stuff.

2-9, Added a fail-rate check to staves used in borg_defence().

2-8, Got the borg to shut doors on breeder levels to seal them off. At least
4 awake breeders trip the flag. I have been watching but I have not seen him
loop. This should really help neonates. Added a fail-rate check to enchant
spells for priests.

2-7, Attempting to fix the ring swapping problem by removing INVEN_RIGHT and
INVEN_LEFT from the best_stuff(). I’ve tested this with Willem’s rogue who was
experiencing the ring-swap-loop. It worked ok. But then he got into a buy-sell
a ring loop. Fixed a rare cure confusion thing. When he is confused and the
danger is great, he may try to cure confusion with a cure crit pot and then die
the next round.

2-6, My mage at dlevel 41 keeps getting trashed after being hit from confusion.
So I boosted the reward for mages to get RConf and I also have them carry some
cure crits and use them when confused. I made some changes to borg_projectable
a bit. When wounded he will assume fewer grids are walls, this makes him a bit
more cautious. Also a bug fix: borg would no light a room prior to resting if
confused. This is a mistake, he should activate the phial, so the check on
do_conf was removed. And the funny looking twitchy behavior in town was fixed.
The borg would twitch in town if he could not buy rations from the store. Now,
he will buy low calorie items if high calorie items are not available.

2-5, Ben removed the message that went with the creation of a Rune of
Protection (“You inscribe a mystic symbol…”). Now a priest borg will
not know if he was successful. He will cast it, think it was successful, then
believe that he is protected then reduce his danger as if he were protected.
This is a big deal! Ben, put the message back in!! And dont forget the scroll
too. Time_this_panel is reset if enchanting stuff. Seems I was retarted when
messing around with oppose_xxx and I kept reseting them to zero, the mage would
loop casting the defence spells. So sorry, I fixed that. Expaned inscribes to
include Immunities. Mages told to cast Cure Light Wounds when do_cut.
Borg_check_rest() also checks for monsters with pass_wall.

2-4, Sleep, Slow, and Confusion dont work on uniques. I had to tell the borg
not to use these on uniques. This is important–mages will die trying to put
Kavlax to sleep.

2-3, Borg was not *ID*ing Holy Avengers, fixed it (borg_test_stuff()). Fixed
a bug when the borg became twitchy in town when he did not have enough food to
recall down into the dungeon.

2-2, Ignoring breeders when not having any recall was altered to ignore more
than 4 or 5 breeders. The old way was to ignore even 1 worm and allow it to
multiply and get out of hand. Now he will at least make an attempt to wax the
worm and keep them from exploding. This has greatly helped neonates. Breeders
is one of the most common deaths for neonates. ( 3 out of 5 at least, in
characters under clevel 15). Fleeing when unable to teleport altered just a
bit.

1-31, Although Word of Destruction was used as a defence, I forgot to add
the staff. I added it today and included in the the list of cool_staff so that
he will carry one if he finds it. He does not carry or read the scroll though.
I altered borg_danger a bit. I decrease the amount of fear from summoners with
the number of occupied spaces. ie: If I am trapped in a hall and surrounded by
bad guys, Summon Ancient Dragons is not scary since no dragons can land.

1-30, Modified armour swap to include rings and amulets. Changed the
crush_slow routine a bit to have him crush more stuff. Applied rr9’s graphics
patch-graphics now work (cross your fingers). Fixed the death-reincarnation
thing.

1-28, Spent 12 hrs tracking down the crash that occurs in dos mode with
rr9’s graphics patch. It is caused when a group of multi-hued monsters appears
on the screen and the borg has to parse messages about them. So for now the
graphics patch is removed until I can trace the problem. If you want the patch,
go to the Thangorodrim and dnload
it. Improved survivability of neonates by increasing fear of multipliers, and
monsters with friends or escorts.<– This helped alot on mages taking on
jackel packs.

1-27, Told borg to carry rod of magic mapping, and not to crush or junk
them. Robert Ruehlmann made a patch to allow this borg to use graphics, and any
tile sets. Very cool, thanks rr9.

1-26, Encouraged warriors and rogues to carry more rods of healing since
heal pots run low. Fixed a teleport staff problem after level 95 in the game.
Investigated a borg for Dragband. People had trouble understanding how to load
up pref files so I had to move all the d_char to x_char and forceably turn off
the graphics.

1-25, Fixed a gap in the borg_heal(). Borg was hesitant to heal if hp_down
was greater than 650hp. Fixed an alter(+) bug with “Walking into a
[kill]”. Sped up the borg by restricting his ability to search for
permagrids. No he will only search for a vault after he sees a (non-edge)
permagrid.

1-24, RChaos no longer gives RConf. Bummer. Modified the way spell danger is
calculated. Fixed the {empty,empty} inscription from borg9.c Borgs wont
danger-flee from a level if a vault is on it, or if a unique is near by. Let
him wear the unique down a bit! Guerrila warfare!

1-23, Fixed a bug where the borg would try to walk into a monster in a wall
instead of alter (; vs+).

1-22, Got the borg to cheat the screen items and monsters better, simulating
the look command. Converted the bool ’emergency’ to an integer in
borg_escape_phase(). Now pple can customize their phase thresholds. Meaning how
many dangerous spots is too many/risky for this phase attempt.

1-21, Upgraded the Inscriptions sections to work on random artifacts.
Tweaked ‘greed’ in _crush_slow, now he is less greedy the slower he is. Adam
fixed the store bugs where page 2 is m-x not a-l, the borg was not reading page
2 correctly. Told the borg not to shoot at ghosts in walls. Fixed a few alter +
commands and ; commands while walking.

1-20, Got the borg to read the map correctly (actually Adam did)

1-19-2000, Working on getting 285 to work.

Leave a Reply

Your email address will not be published. Required fields are marked *