Angband.oook.cz
Angband.oook.cz
AboutVariantsLadderForumCompetitionComicScreenshotsFunniesLinks

Go Back   Angband Forums > Angband > Vanilla

Reply
 
Thread Tools Display Modes
Old April 27, 2015, 05:31   #1
APWhite
Adept
 
APWhite's Avatar
 
Join Date: Jul 2007
Location: St George Utah, USA
Posts: 244
APWhite is on a distinguished road
Borg 3.4.1 updated

It has been a bit over a year since I updated the vanilla borg. I have been making weekly updates to the zangband borg but it was time for a V update.

There was an extensive upgrade to the V borg, so it would be nice if a few of you could test drive it and point out any problems. I compiled it as a 'release' instead of the usual 'debug' so I hope the dll's work.

I will try to get 341 to a really stable position then port it into a working copy of 351. Right now, I cannot get 351 to compile with VS2012. But I will keep trying.

The Z-borg is working really well and I can leave it for a few months while I help get the 351 borg up to speed.

You can find the V-borg at the borg's site. http://www.innovapain.com/borg/angband-341/

Here is a list of the recent V-341 upgrades:
  • Minor fix for resting as an attack mode.
  • Current knowledge requirement for attacking lifted if it is a never_move monster
  • Added support for all the branded arrows.
  • Sanctuary spell not used if clevel > 15 and in town.
  • Correction for how the borg calculate the as_position. The for-next loop was going to <=24 when it was supposed to be < 24.
  • Kill->summoner added in order to clean the code a bit.
  • borg_fighting_questor added to the list of other borg_fighting_<special type>. This allows the borg to select special equipment.
  • kill->questor flag is independent of kill->unique. This will allow for future game support for level-specific quest monsters like Z.
  • Replaced the borg_fighting_unique + 10 = questor with with borg_fighting_unique && borg_fighting_questor
  • unique_on_level == <hard coded number> were replaced with IDX_<MonsterName>. Just cleaning up hard-code numbers.
  • borg_wear_swap() created. It will consider a swap item in order to increase damage while fighting a particular type of monster.
  • Added the borg_position & (position_sea | position_summ | position_bore) bits.
  • Added the borg_depth & (DEPTH_BORER, etc) bits.
  • Added a borg_count_summoners which will keep count of the number of summoners on a level. If the level becomes overrun with summoners then the borg will leave that level.
  • Added borg_skill[BI_NSRANGED] which will count the number of non-spell ranged attacks. It is used in calculating the best time to use the teleport away spell.
  • Converted the old RACE_MORGOTH to IDX_MORGOTH
  • Mages will not be given points for carrying a swap weapon which gives a bonus to melee attacks. Previously, only mindcrafters did this.
  • The borg will not be allowed to crush his rod of recall to make space for an item he wants to pickup.
  • The use of the Shoot’N'Scoot will be limited if the borg is in a anti-summon corridor.
  • The borg was crushing scrolls of Acquirement (if he was at full inventory).
  • Reduced the tremendous bonus for spell casters reaching 0% fail rate. It was too high.
  • Added a couple more cases which will limit the borg’s intereptation of the monster’s expected flow pattern. RF1_FRIENDS like to ambush in rooms, etc.
  • Made sure that the borg was not going to swap out his inventory for non-id’d stuff that clearly wont improve his station. If he has a known unique, he should not trade out for a {good},{excellent}, or {terrible} item.
  • Removed the fear_regional[][] from borg_danger() if the borg is deeper than depth 70 (it had been 80).
  • Don’t sell wands of stone to mud if one does not have this spell. This will help with anti-summoning corridors.
  • NO_MELEE guys will no longer consider the damage of a weapon when calculating the benefits of a swap item or storing weapons in the home.
  • The NO_MELEE borgs were not calculating their damage correctly when fighting barehanded.
  • I added a ‘borg_fighting_tele_to’ flag for monsters who can teleport the player. It is mainly kept in the munchkin code. We don’t want the borg to be teleported off of the stairs.
  • Speed up the borg by adding a kill->dist so the borg does not have to keep calculating distance(c_y, c_x, kill->y, kill->x)
  • The borg learned some extra qualities to certain curing potions (removing confusion and blindness). Doing so enables him to be rewarded for carrying those items for that specific property.
  • The borg will have reduced fear of confusion and blindness attacks if he has at least two items which can cure him. Previously, he needed to have resistance to blindness or confusion to avoid the fear.
  • The borg might bounce on a few munchkin levels for several thousand turns waiting for a restock() item to show up (depth 5 & 6). I tied the climbing to the borg_leave_level() flag of goal rising, that way he is inclined to complete a journey.
  • I taught the borg to use Create Stairs while he is in munchkin mode.
  • To save computation time on the expensive borg_prepared(). I switched to using a borg_prepared[127] which stores the prep info.
  • Still tracking down some of the 'Illegal choice' tags.
  • borg_defend_lightbeam() was not considering 3-way intersections as a possibility.
  • borg will use Teleport Level to escape a level 1 danger if on a depth with >= 10 summoners.
  • I created a borg_surround_breeder() and an escape for when the borg is surrounded by breeders. He will use Teleport to get away from breeders.
  • The borg needed to lighten the requirement for RPois to include the resistance offered through reliable spells. This allows him to free up that equipment slot requirement.
  • Slight change to how the borg will ‘grab’ things:
  • Borg wont grab spell books from the shops to store in the house. He will still store extra books, but won’t by the books.
  • Borg won’t grab weapons from the shops to store in the home. He has plenty of those in the dungeon.
  • Borg won’t grab non-potion/scroll things after reaching clevel 50.
  • Borg wont set explosive runes/runes of protection when fighting a guy who can use Teleport-to. These guys can bampf the borg off the rune.
  • when considering which items to crush (slow/hole/junk), the borg will skip items which contain a high resist which the borg is currently lacking.
  • In an effort to dive deeper and play at his maximal safe-depth, he will use the munchkin mode and scum the stairs more.
  • Borg_crush_slow() will now not crush Rods of Teleport Other. The other two borg_crush_xxx() already saved these rods. Similarly, the borg will not sell a Rod of Teleport Other to the shop unless he has more than 5 of them.
  • A borg with no light and no cash could become twitchy in town. He will be allowed to sell some items (which he would not normally like to sell) in order to raise cash to buy torches/oil.
  • Reworked the ego ammo a bit to clean up the code.
  • Solved a Twitchy issue by adding a prep_check flag to the borg_flow_stair_more(). If false, it will ignore the basic preparation checks before taking a down stair.
  • Borg was looping a bit while flowing to a take. He would retreat one step then re-attempt the flow path. The retreat function from borg_caution wont be used if the goal == GOAL_TAKE
  • Slight change to the munchkin mode to help him dive better without being subject to the restock() restrictions.
  • Borg needed to not remove an empty lantern from the equipment. It interfered with him buying fuel. Additionally, he needed some support for buying fuel for the empty lantern. His inclination was to buy a new lantern. Since fuel is cheaper, its better for him to buy fuel for the empty lantern.
  • The borg will now quaff a potion while junking junk, if the potion wont harm him. He can gain any bonus effect or nourishment (albeit small on both accounts). A check was applied in borg_quaff_potion() to make sure he doesn’t drink something nasty.
  • Encumbered borgs will no longer unequip their gear. They tend to crush it.
  • Borg wont use the Recharge spell on rods while in munchkin mode. The rods tend to recharge faster than the mana spent on the spell.
  • Added a cascade reward for using the rods as weapons. He used to carry up to 10 rods, sometimes even up to 9 Rod of Light. Really, he doesn’t need more than 5 of them. So he will limit the number of rod quantities in order to make more efficient use of inventory space.
  • Borg was over confident in his ability to tunnel. There is a definition of BORG_DIG which is his digging skill. I moved it from 20 to 40 to make sure the borg didn’t waste too much time trying to dig improbable tunnels. Granite has a dig factor of skill_dig > 40 +rnd(1600). So even with a BORG_DIG of 40, and no digger, he is still likely to dig. This value might be adjusted higher (to 60)
  • The borg found a really nice artifact broken dagger. The bonuses of the randart attributes out-weighed the penalty of wielding one. So i boosted the penalties for melee type characters. The non-melee characters can still wield these items with the old penalty.
  • Borg_flow_vault() was missing a borg_flow_clear() object. This lack caused the borg to think that he could dig tunnels all day long.
  • Added a kill->cautious but it is not yet implemented. It will be used when flowing to certain monsters
  • Converted borg_ddy_ddd[24] to a [48]
  • Borg was slighting miscalculating the projected path of a monsters bolt attack with respect to the bolt passing through other monsters.
  • Borg needed to be able to crush_junk() which is now dropping it on the floor, while in muchkin mode. He tries to avoid dropping items onto non-floor grids since they fall near the borg. He will just pick them up again. But since he is in munchkin_mode, and will be leaving the level via stairs then its no problem to litter the floor with junk. But doing so requires that all floor grids be labeled at junk.
  • Slight easing of some cure requirements for level preparation. Since the cure potions now do a percent heal, the borg can use some substitution techniques to satisfy the requirements.

APWhite
APWhite is offline   Reply With Quote
Old May 15, 2015, 00:33   #2
hjklyubn
Rookie
 
Join Date: Jan 2014
Posts: 19
hjklyubn is on a distinguished road
Glad to see the Borg is still "alive" (so to speak)!

I've been giving it a try and I'm encountering one situation where the Borg gets stuck, or actually, just exits back to the main game loop on its own for some reason. I'm not entirely sure what triggers it, but every time it's happened, the player had just ended its move on a pile (square with more than one item, & symbol on the map). If I then restart the borg with ctrl-z z, it continues normally. Have you ever observed this?

Other than that I've had no problems with the Borg so far, though I noticed that it likes to carry a truly huge amount of stuff on some of its early dungeon trips, slowing it down to Slow (-7) or so. That doesn't seem to affect its ability to clear 50' at character level 10 though
hjklyubn is offline   Reply With Quote
Old September 23, 2015, 12:48   #3
MattB
Veteran
 
Join Date: Mar 2013
Location: Berkshire, UK
Posts: 1,094
MattB is on a distinguished road
I've been trying to install the borg screensaver and I've followed the instructions in the README, but I keep on being told that libpng12.dll is missing every time it tries to start. Anyone else find this?

(Win7 btw)
MattB is offline   Reply With Quote
Old September 23, 2015, 15:11   #4
thapper
Adept
 
Join Date: Aug 2008
Location: Sweden
Posts: 166
thapper is on a distinguished road
Quote:
Originally Posted by MattB View Post
I've been trying to install the borg screensaver and I've followed the instructions in the README, but I keep on being told that libpng12.dll is missing every time it tries to start. Anyone else find this?

(Win7 btw)
Yes, I remember getting this (already a year, or more, ago), and I think I solved it by googling and downloading the dll from somewhere. I'm not sure that's the safest approach but it worked...
thapper is offline   Reply With Quote
Old September 23, 2015, 15:52   #5
MattB
Veteran
 
Join Date: Mar 2013
Location: Berkshire, UK
Posts: 1,094
MattB is on a distinguished road
Thanks Thapper - I'll give it a go.
Where did you stick it?
MattB is offline   Reply With Quote
Old September 23, 2015, 16:39   #6
Carnivean
Swordsman
 
Join Date: Sep 2013
Posts: 476
Carnivean is on a distinguished road
Quote:
Originally Posted by MattB View Post
Thanks Thapper - I'll give it a go.
Where did you stick it?
Chuck it in /windows/system32.
Carnivean is offline   Reply With Quote
Old September 23, 2015, 22:07   #7
Nick
Vanilla maintainer
 
Nick's Avatar
 
Join Date: Apr 2007
Location: Canberra, Australia
Age: 52
Posts: 6,570
Donated: $60
Nick is on a distinguished road
Quote:
Originally Posted by thapper View Post
Yes, I remember getting this (already a year, or more, ago), and I think I solved it by googling and downloading the dll from somewhere. I'm not sure that's the safest approach but it worked...
I believe you don't need to download it - it should be already in the angband folder, and I think the problem is just that the system can't see it there.
__________________
One Ring to rule them all, One Ring to find them,
One Ring to bring them all and in the darkness bind them.
Nick is offline   Reply With Quote
Old September 23, 2015, 23:12   #8
APWhite
Adept
 
APWhite's Avatar
 
Join Date: Jul 2007
Location: St George Utah, USA
Posts: 244
APWhite is on a distinguished road
Quote:
Originally Posted by Nick View Post
I believe you don't need to download it - it should be already in the angband folder, and I think the problem is just that the system can't see it there.

I put mine in the game root directory. But just in case some people don't have it. I have included it in the archive and updated the borg's webpage.
APWhite is offline   Reply With Quote
Old September 24, 2015, 16:53   #9
MattB
Veteran
 
Join Date: Mar 2013
Location: Berkshire, UK
Posts: 1,094
MattB is on a distinguished road
Thanks for your help everyone!

I did in fact copy the first missing dll from the Angband folder into System32. That went well enough that it then asked for another dll, which was also in the angband folder. No problem - copied that into System32 too.
This led it to ask for another dll (something like MSVCR110.dll) which wasn't in the Angband folder or, in fact, anywhere else on my PC.
So I downloaded that dll from Microsoft's website, stuffed it in System32 and...hallelujah...that enabled the screensaver to launch and promptly crash!

It's just the usual "Angband.scr has stopped working" error message and I can't get round this. This happens if the PC tries to launch the screensaver itself or if I click directly onto Angband.scr.

Any ideas? Maybe I'm just being daft and missing something obvious?
MattB is offline   Reply With Quote
Old September 24, 2015, 23:11   #10
APWhite
Adept
 
APWhite's Avatar
 
Join Date: Jul 2007
Location: St George Utah, USA
Posts: 244
APWhite is on a distinguished road
Quote:
Originally Posted by MattB View Post
...that enabled the screensaver to launch and promptly crash!

It's just the usual "Angband.scr has stopped working" error message and I can't get round this. This happens if the PC tries to launch the screensaver itself or if I click directly onto Angband.scr.

Any ideas? Maybe I'm just being daft and missing something obvious?
Can you tell me where in the Angband loading process it crashed? What game info was on the screen? Did the scr get to the splash screen? did it load or create the character? The the borg take a few steps? Any information would be helpful.

Additionally, did you make the necessary changes to your angband.ini file? You will need to point to your savefile name. It might look something like this:
Code:
[Angband]
AngbandPath="c:\games\angband-3.0.9\"
SaverFile="Saver"
Check your save subdirectory and see if a savefile was created.

You can email me for a faster response as well.

Andrew
APWhite is offline   Reply With Quote
Reply

Tags
341, borg, borg apwhite


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
Variants updated with vanilla 3.5 changes jasric Variants 2 November 17, 2015 10:21
Angband tileset - updated version Shockbolt Development 7 April 20, 2014 15:21
Recently Updated Roguelikes (Roguebasin) PaulBlay Idle chatter 12 April 5, 2009 15:44
Spoilers updated for Vanilla 3.0.8! Hugo Vanilla 23 July 21, 2007 08:12
The Download page needs to be updated CJNyfalt Oook! 3 May 15, 2007 09:21


All times are GMT +1. The time now is 13:16.


Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2017, vBulletin Solutions, Inc.