December 2019 V Borg

  • Hallucinating while stair scumming.
  • Attempting to tunnel while out of light will be forbidden in most cases.
Posted in Uncategorized | 4 Comments

August 2019

  • In borg_danger_aux() There was a check for borg_projectable() which was redundant, and reduced fear too much when opposing ball-breathers (like hounds)
  • Borg will no longer consider jammed doors as “interesting,” unless he is twitchy, brave, has sufficient strength to reasonably successfully bash the door, or possesses Stone to Mud type effects.
  • A twitchy borg will be allowed to excavate rubble with looser restrictions.
  • Shops wont buy Iron Crowns[0,0]. They were added as icky items and the borg will not attempt to sell them.  This is very odd.  I have never seen the borg run into troubles with the Iron Crowns before.  So I wonder if this crown was a fluke at [0,0] or if the shop just was not interested in crowns generally.
  • Borg may set value of Iron Crown to 0 if it is boring, this will allow him to junk it.
Posted in Uncategorized | Leave a comment

July 2019 VBorg Update

This is a non-critical update.

There was a redundant borg_projectable() check in borg_danger_aux().  The redundancy reduced the borg_fear by too much, allowing the borg to be too brave in the face of hounds and other packs of ball-effect breathers.

The borg will no longer consider jammed doors “interesting” unless he is has certain attributes.  This is keep him from bashing doors until he starves or runs out of light.

Posted in Angband (Vanillia) | Tagged , , | Leave a comment

May 2019 VBorg Updates

  • Some warrior borgs were spending way too much time in munchkin mode when their food levels dropped to 2.  They would stair scum to the surface instead of recalling.
  • Borg was not shooting the ego ammo as much as he should have been.
  • I needed to alter the borg_think() in borg9.c to move the borg_notice() to occurr before the borg_update() since some of the borg_update() calcs are based on information defined in borg_notice().  On the first turn of the borg, those borg_notice() variables would not be set and it can alter how the borg values loot and monsters.
  • The value of known and ID’d ammo on the ground will be greatly increased so the borg is more likely to retrieve the spent ammo.
  • Warrior borgs will have an increased quiver size, just like Rangers.  This will allow them to pick up more ammo in the dungeon.
  • Removing useless equipment will be allowed when encumbered.  Previously, he was not allowed to remove equipment if encumbered because he would crush the items.  But the downside is, he will continue to wear bad stuff.  In the example I saw, the borg was wearing a Ring of Escaping as a level 50 Warrior.  That is an extreme case of bad-choice of equipping.
  • The Fear Curse was given a greater penalty.  Rings of Escaping were being prefered because of their speed boost.
  • make sure the store always has rations to sell.
  • The borg has been reluctant to sell unID’d rings which were found deep in the dungeon.  That’s a good thing since most worthless rings are found more shallow.  But the borg was not buying ID scrolls for these rings.  Generally he sells rings to the shop since they are found in shallow depths and generally worthless.  I had to tell him to buy scrolls specifically for this type of ring.
  • A typo in the munchkin mode was preventing the borg was using recalls to return to town to sell off loot.
  • More aggressive borg_crush_junk.  He tends to spend way too much time collecting items to sell to town, even when at high clevel.
  • The borg will attempt to save some ammo when in munchkin mode.  Its ok for him to use ammo while leveling up, but its a bit of a waste of the resource to shoot arrows at depth 3 when he is clevel 49, especially when he is trying to dive deeper.
  • Improvements to how the borg will calculate the value of a swap weapons blows count.
  • The melee-centric borgs were mistakenly forbiddin from using Teleport Other on monsters immediately adjacent to them.  They should be allowed to do so.
  • Other improvements to how TP_Other targets are selected.
  • For some crazy reason, the borg was not setting Unique flags for the unique monsters.  I must have use a find->replace-all effect and wrote over the flag.  Its fixed now.
Posted in Angband (Vanillia) | 1 Comment

April 2019 V Borg Update

  • Borg will be penalized for carrying heavy equipment even after his strength is >15 (Previously it only penalzied < 15)
  • Borg will carry up to 10 !Speed, he used to carry up to 20.  They tend to just slow him down and he doesn’t need that many.
  • Minor correction to how the borg buys arrows and fills the quiver.
  • A blind borg could misattribute “Something moans” if an unseen creature attempts a mana drain spell.  The message “Something moans.”  Is also a pain message (in addition to being a spell message).  So the borg will treat it as a monster receiving pain and attempt to locate that monster.  This path will avoid adding regional danger and allow the borg to rest in the area, creating a long loop.  The borg can break the loop, but it will take some time.  So I have added a check for the “Something moans” to skip the pain messages and go to the spell messages.
  • Borg_wear_stuff() was missing a borg_notice(0,0) at the end of the “full ring check.”  Borg was also incorrectly reducing the inventory quantity when testing new equipment.  This resulted in him incorrectly calculating some values of borg_skill[].
  • Borg is keeping 80 flasks of oil.
  • A cursed artifact crush loop was found with Camlost.  The borg knows he can’t crush artifacts, but cursed artifacts slipped the checks.
  • Borg crashed due to checking an empty equipment slot.  Somehow it had an item->iqty set at 255 so it missed the empty checks.
  • The borg was incorrectly estimating how much heavy gloves were hurting his mana.  This caused a loop with him swapping gloves.
Posted in Angband (Vanillia) | Tagged , , | Leave a comment

V Borg Update

  • Borgs with lots of arrows were still buying arrows at the shops, then dumping them upon exiting the shops. He will no longer buy mundane arrows if he has more than MAX_STACK_SIZE
  • Added a path report on where the borg was looking for his borg.txt file, if he couldn’t find it.
Posted in Uncategorized | Leave a comment

V and Z Borg Updates

I’ve been working on the vanilla 341 borg as well as the Z240 borg for several months.  Here are the fixes and upgrades:

Vanilla 341 borg:

  • A hallucinating borg does not create new monsters.  This can be a problem if the game starts with him having hallucination.  He could actually start in a crowd of monsters but create no monster entries and subsequently assign no danger to the grids.
  •  Observe_kill_diff() was modified to that the borg can create monster entries if he is just starting out the game.
  • Borg will not crush an equipment item if he has an empty slot which could be filled by that item.
  • Borg was not wanting to equip a bow item into an empty slot if he was empty of ammo since the my_good_ammo was tval=0, and the new equipment as a real my_ammo_tval.
  • There are new pain messages, death messages.
  • Plural names are supported (mouse/mice, etc).
  • Offset targeting will be skipped if the attack has the same result as a direct hit.
  • Borg will prefer to shoot a closer monster if the rewards are the same.
  • Flask of oil counts for double fuel for borg_prep purposes.
  • Borg_sawp_ring() was missing a final borg_notice() after restoring all the original equipment.  This omission lead the borg to miss certain flags of one of the rings.
    Also fixed the borg_swap_ring() so that he can actually select which finger.  In older versions of Angband, only the left finger was the target of a ring if both hands were full.
  • Borg will not borg_flow_kill() to a monster with distance <=3 if he has Fear or Curse Afraid.
  • Couple of improvements to the munchkin mode related to the borg diving when encumbered.
  • Borg_think_dungeon_brave() needed to be able to flow to any stairs, even down-stairs while not prepared. Not doing so, could induce twitchy behavior which is usually fatal.
  • No ShootN’Scoot for rogues.
  • Rogues need to be penalized for using bolt spells.  He drains his mana which is needed for Phase and Teleport.

Zangband 240

  • The zborg has certain routines to create a sea of runes.  To save computation, he should not continue considering the routines if he does not have any way to cast the glyphs.
  • The borg could fill up with items while in munchkin mode and forget to crush junk if he were off of a stair.  The ‘be on a stair’ check was removed.  He can now crush junk as long as it is a safe place.
  • The might sometimes over estimate how far he could throw an item, thus leading to loops of ineffectual attack attempts.
  • The borg_crush__() routines needed a fix related to the borg_wield_slot() calls.
  • Borg_notice_aux1() had a typo related to monk speed calculations.

 

Posted in Angband (Vanillia), Zangband 240 | Tagged , , , , | Leave a comment

VBorg update for the Kobold Paladin

The vanilla borg was having issues with creating kobold paladins for every character.  This actually wasn’t a borg issue, but a “feature” in the birth.c file for the game.  So I made some edits to allow the normal classes to be generated as defined by the borg.txt file.

 

Posted in Angband (Vanillia) | Tagged , | Leave a comment

March 2017 Zborg Update

  •  Starving vamp borgs are now allowed to eat a pet.
  •  Starving Vamp who can summon a pet to eat, should do so.
  •  Starving borgs will skip the borg_defend(), since it might teleport away a meal.  At a minimum it is consuming a round of energy.
  •  Borg will disengage the munchkin mode and not stair scum if he is on a quest level.  He can’t power dive past it, and he wouldn’t remain on the level long enough to kill the quest monsters.
  •  A borg with DimDoor, and in munchkin mode, will  jump to a stair.  This saves him several game turns since he is jumping to stairs which might be out of leash range.
  •  Trump Activation (teleport) was calling on inventory slots instead of equipment slots.
  •  The game will sometimes not show the inscription on an item with a long name.  Consequently, the borg may not find the inscription and may loop trying to create one.  So the inscription will be cheated into items.
Posted in Zangband 240 | Tagged , , , , | Leave a comment

September 2016 Zborg

Update for the Zangband borg.  I’ve been running Vampire Mindcrafters and they seem very capable within the borg’s limited dynamics.  There were some fixes to how the borg handles, radius-0 ball spells

  • Borg was still (rarely) missing the target using the offset technique.  The borg will now skip the offset attacks if it yields the same damage as a direct hit.
  • The Mindcrafter Pulverise spell has a radius 0 effect at low level and should not be offset.  It had been calculated as a beam/bolt.
  • While in Munchkin Mode, the borg might find himself off the stairs by 4 or 5 grids.  If he encounters a monster so far from the stairs, he tends to stand his ground and fight instead of racing for the safety of the stairs.  Usually he is encumbered and slow while in this situation.  But if he is not encumbered, he might do better to race for the stairs, so I added an encumbrance check.  (borg_think_dungeon_munchkin())
  • Psychic Drain is a radius 0 ball effect.  Borg kept thinking it was a bolt.
Posted in Zangband 240 | Leave a comment