Jump to content

Things that still don't work or are inconsistent


Recommended Posts

Posted (edited)

Feel free to add your own below. TBH I'm considering making a CBoE fork where some of these are dealt with, or at least have compatibility options for enabling/disabling them.

Acid

So in the final version of CBoE, as in original BoE

 

- Acid has no damage cap for PCs, and each attack (acid spit, touch or whatever) adds to the damage.

- Avatar is the only spell that can remove the acid status. Otherwise you have to use items or get onto the outdoor map.

- This makes acid pretty much the deadliest thing in the game for PCs.

 

OTOH, against monsters and NPCs
 

- Even very powerfully acid branded weapons do like... 1-5 damage per turn max

- The damage does not increase with repeated attacks

 

I'd suggest a cap of 15-20 for both PCs and NPCs. That's enough per turn to still be dangerous without being ridiculous. Also Cleanse and Major Cleansing should probably remove acid.

Dumbfounding

 

Dumbfounding PCs works as expected. Dumbfounding monsters/NPCs does literally nothing. Doesn't decrease spell frequency, doesn't decrease spellcasting level, nothing at all. Been a while since I looked at the code, but IIRC the game treats it as equivalent to a curse spell.
 

Bless

 

Stacks infinitely for PCs, but not for NPCs. I'm of mixed feelings about this TBH, since the exploitable nature of infinite bless stacking is kind of fun. OTOH this has enormous effects on game balance, especially in the late game.

Webbing

 

Does nothing to monsters/NPCs, but it's one of the most dangerous effects for PCs, because it can bring their AP down to zero. Again I'm of mixed feelings about this, because having giant spiders be "that one enemy" that even the most powerful parties have to watch out for is cool. But I'd be in favor of making webs have some effect on NPCs. As is, their only use is the Web spell blocking LoS.

Flame Arrows, Venom Arrows, and Smite

These spells do not do a useful amount of damage. Death Arrows works out to half the damage of a Kill spell most of the time, but the other arrows spells do like 5 damage with maxed Intelligence and level. That's more like 1/6 the damage of a Flame or Ice Bolt spell. With Venom Arrows, it's so weak that targets often aren't poisoned at all.

Ice Bolt

It's just... not powerful enough to be useful ever, especially given its relatively high cost. I assume some wonkiness with the damage calculation.

 

NPC Kill and Firestorm damage are reversed

PC Kill does up to 120 damage, Firestorm more like 70 max. The opposite is the case for NPCs.

[edit: I'm gonna start another thread for things that aren't broken or inconsistent, but that I consider misfeatures.]

Edited by Nephil Thief
Link to post
Share on other sites
Posted (edited)

Many scenarios are balanced with infinite Bless stacking in mind. Capping acid stacking on PCs would be useful though. No scenarios AFAIK utllize dissolving the party. If they want to do that they just use Kill Party nodes. I think webs do slow NPCs, but not Insect type NPCs.

 

Also, check this out: http://truesite.openboe.com/SWArchive/Geocities/blyceum/DForum/index.html

It has a few articles on broken stuff in BoE.

 

EDIT: Also, for OpenBoE and BladesOfExile.Com, Celtic Minstrel and I respectively try to emphasize legacy scenario compatibility. For any changes in OpenBoE that affect how legacy scenarios play, CM includes a legacy switch that turns off the changes in legacy scenarios. For my project, I'm making only changes that do not alter how legacy scenario designers expected their scenarios to play; as in, in BladesOfExile.com, gameplay is not exactly the same, but no existing legacy scenario features hinge on the original behavior (based on either my own experience or what other players and designers have said/conspicuously not said, in my memory. Motardo is taking notes on any changes he makes, so the changes can be very easily reversed if I'm wrong.)

 

EDIT 2: Come to think of it, I'm not sure about the acid. Someone could very well have used it as part of a battle's strategy. Until shown otherwise, I won't touch that in BladesOfExile.Com.

Edited by The Almighty Doer of Stuff
Link to post
Share on other sites

Archery and Thrown Missiles aren't the only more or less useless skills, if significantly rebalancing the game is your goal. Disarm Traps, Lockpicking, and Poison are basically useless too. Disarm Traps and Lockpicking are easily replaced with Dexterity, and Envenom is a level 2 mage spell so there's not really any excuse not to have access to it.

Link to post
Share on other sites
Posted (edited)

@The Almighty Doer of Stuff Mm yes, thanks for reminding me about those.

Re dumbfound, it actually does work, the problem is it wears off really fast - monsters lose one level of dumbfounding every 4 party turns. Since dumbfounding never wears off on its own for PCs, and magic immune monsters always resist anyway (and magic resistant ones have a chance of resisting), I don't feel too bad about doubling that... at least, once I figure out why my mingw-w64 build of CBoE is unpredictably crashing.

Edit: okay that last is an optimization issue. Works with -O0, crashes with any other optimization level. Predictable I guess given the archaic code.

Edit: ah, another issue with dumbfounding! It seems unable to actually reduce monster spellcasting level to zero.

Edited by Nephil Thief
Link to post
Share on other sites

Regarding webs, I believe only NPCs of the "bug" type are immune to their effects. This immunity applies to the barrier (they simply pass through without affecting it), so if something were to directly apply the status effect, I think they would be affected. There's most likely no way to actually do that though.

Link to post
Share on other sites
57 minutes ago, Celtic Minstrel said:

Regarding webs, I believe only NPCs of the "bug" type are immune to their effects. This immunity applies to the barrier (they simply pass through without affecting it), so if something were to directly apply the status effect, I think they would be affected. There's most likely no way to actually do that though.

 

That makes sense, I'm sure I've successfully webbed people.  Especially when replaying scenarios and I know a bunch of sliths are about to appear at the crack in the wall.

 

Also, in regards to Dumbfounding, I ended up assuming the problem wasn't so much that it didn't Dumbfound monsters, but that it shouldn't have been called Dumbfound, should have been some generic curse sounding thing.  Surprised that it actually affects spell levels.

Link to post
Share on other sites

https://spiderwebforums.ipbhost.com/topic/19634-rebalancing-boe/

 

Just found this. Is it also true that Edged/Bash/Pole don't do anything? Do I understand correctly? If so, that should be fixed too. I'd like to know in what specific ways they're broken too so maybe they can be corrected in BladesOfExile.Com.

Link to post
Share on other sites
  • 2 weeks later...
Posted (edited)

Implementing -Wall -Werror across the board, I found some interesting breakage in the monster casting code, in boe.combat.cpp:

 


  if ((caster->m_d.health * 4 < caster->m_d.m_health) &&
      (get_ran(1, 0, 10) < 9))
    spell = emer_spells[level][3];
  else if ((caster->m_d.status[STATUS_HASTE_SLOW] < 0) &&
           (get_ran(1, 0, 10) < 7) &&
           (emer_spells[level][0] != SPELL_MONST_PRIEST_NO_SPELL))
    spell = emer_spells[level][0];
  else if ((friend_levels_near <= -10) && (get_ran(1, 0, 10) < 7) &&
           (emer_spells[level][1] != SPELL_MONST_PRIEST_NO_SPELL))
    spell = emer_spells[level][1];
  else if ((target_levels > 50 < 0) && (get_ran(1, 0, 10) < 7) && // <- This does not do what it looks like!
           (emer_spells[level][2] != SPELL_MONST_PRIEST_NO_SPELL))
    spell = emer_spells[level][2];
  else {
    r1 = get_ran(1, 0, 9);
    spell = caster_array[level][r1];
  }

 

that logic on the commented line will never be invoked, because comparing a boolean expression with an integer is always false.

Edited by Nephil Thief
Link to post
Share on other sites
Posted (edited)

Just a note: As I've been crawling through the game text to fix errors and improve helpfulness, I found that, if you actually read the Dumbfound spell description, it tells you plainly that it causes curse symptoms and doesn't mention Dumbfounded status at all.

Edited by The Almighty Doer of Stuff
Link to post
Share on other sites
Posted (edited)

Huh. Maybe the GCC warning was spurious.

Edit: you're right, it's not the case in C so uh... weird. And I should have remembered that, TBH.

Edit 2: the warning was about that particular expression, I think. In any case it's not what I'd call good code style.

Edited by Nephil Thief
Link to post
Share on other sites
11 hours ago, Nephil Thief said:

that logic on the commented line will never be invoked, because comparing a boolean expression with an integer is always false.

It might be true that it'll never be invoked and is definitely true that it doesn't do what it's supposed to, but that's not the reason for it. Comparing a boolean to an integer will convert the boolean to an integer value of 0 for false or 1 for true, then do the comparison.

 

It looks like that error is already fixed in OpenBoE, by the way.

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...