BoA BUGS v6.0

Error message

Deprecated function: implode(): Passing glue string after array is deprecated. Swap the parameters in drupal_get_feeds() (line 394 of /var/www/pied-piper.ermarian.net/includes/common.inc).

Pages

AuthorTopic: BoA BUGS v6.0
Off With Their Heads
Member # 4045
Profile Homepage #0
The topic lives, despite flames and spamming on the previous incarnation! For anyone unfamiliar with the concept, here are the ground rules:

1. Bugs should be real bugs. That means you should be able to give precise instructions about how to reproduce them. They are not features that you wish were included but aren't. They must be things that don't work as described (or really ought to be described differently).

2. They should not already be listed either in this post or on Spidweb's bugs page. We want new bugs, if they exist.

3. If you have any further information about a bug (it's been fixed, for example), post and say so. I have notes in parentheses after many bugs.

Known undocumented bugs/problems in Mac-BoA v1.1.2 or Win-BoA v1.0.3:
Scripting problems
* Items don't stack when given via char_give_item (so if you give three potions of the same kind, the character ends up with three different potions). This doesn't happen with reward_give or other item management calls as far as I know.
* Sometimes searchable terrain breaks. For certain terrain with the searchable and container attribute, they are only searchable if there is something inside the container. This means that the call te_can_look_at doesn't do a lot. Additionally, sometimes terrain becomes searchable for reasons that are obscure to me (custom hills, for instance). I can provide a scenario demonstrating this if needed.
* The call put_stain_on_space sometimes does nothing when attempting to remove a stain. This is a bit unpredictable, but most of the time that I've tried it, it does nothing. It also works fine putting a stain down, just not removing it.
* As described here, in a dialog box, choosing the second dialog choice always returns the number 2, even if the dialog choice was added as the third option.
* Custom scripts for joined NPCs don't do much. Everything except the DEAD_STATE is ignored. (Is this still true? Do any other states work?)
* The call num_killed_in_town always returns 0. (I have not verified this.)
* The call create_text_bubble cannot be called from a terrain script, even though the docs say that it can. (I have not verified this.)
* Something odd and undocumented is going on with the clear_town call. The description of the problem is here.
* The calls set_terrain, set_floor, and set_height only inconsistently work outdoors. They most often do nothing.

Corescendata and default graphic errors
* In corescendata, Augmented Giant (creature 135) ought to have the line "cr_which_sheet_upper = 1618;"
* The default rakshasa image needs realignment -- it has a black line on it.
* The slith avatar, in order to match Avernum 1, should not have the graphic of a gorgon, which is what it has now. Two calls need to be added: cr_which_sheet = 1532 and cr_icon_adjust = 2, as Bahssikava does.
* In corescendata2.txt Terrains #172 and #173 (fences) have an incorrect name. The line te_name = "Fence"; needs to be added to them.
* In corescendata2.txt Terrain #331 and #332 (underground hillside cave entrances) import the incorrect terrain. This causes problems with the automatic hills functionality of the editor. It will also cause the party to be drawn incorrectly when upon these terrains.
* In corescendata2.txt Terrain #367 (ruined statue) is missing the upper half. The lines te_second_icon = 1; and te_second_icon_offset_y = -55; need to be added to correct this.
* Graphics sheet 680, icon 52, is incorrectly drawn. It needs to be flipped horizontally to be correct.
* Graphics sheet 768, icon 8, has 3 off-white pixels.
* The efreet (creature 174) has cr_natural_armor defined twice, the first time as 15 and the second time as 50.
* The default Eyebeast graphic (1552) has its icons in the wrong order. This means that the creature will appear to be facing south when it's actually facing north in the editor, east when west, west when south, and north when east.
* As far as I can tell, aranea (and elder aranea) default to carrying pots. I'm assuming that item 373 was aranea fangs, once upon a time.
* Floors 85 and 86 have fl_ed_which_icon reversed. Floor 85 should have icon 7, and floor 86 should have icon 6.
* The default Asp graphic (1551) has its icons in the wrong order. North and west are reversed.
* Graphic 1654 in Blades of Avernum Art (the swarthy gal with a green shirt and brown armor) has no sword-with-shield-and-armor graphic. The graphic of her armored with sword-and-shield is missing the shield.

Documentation problems
* The call move_to_new_town can't be called from an INIT_STATE, a START_STATE, a creature script, or a terrain script, even if you distance the call from the state with set_state_continue, run_town_script, or run_scenario_script. (I put this under documentation because apparently this would be hard to change.)
* The call it_bonus may be described inaccurately. It does not provide any protection for rings, necklaces, and bracelets, and instead of preventing the given amount of damage, it prevents a random amount of damage up to the given amount. (I have not verified this.)
* The call get_unlock_spell_strength is undocumented.
* The constants BASE_TRAP_XP (which is 50) and NUM_CHARS (which is 120) are not documented. In fact, it'd be nice to have a list of constants somewhere like the one that Khoth posted. Also, the other reserved variable names (like the Spidweb-bug-page-listed "shop") should be listed somewhere.
* As far as I can tell, the attitude of the party is 0, which should be mentioned under the get_attitude description.
* Arguably not a documentation problem, using force_start_day(-1) makes what_day_of_year always return 0, but what_day_of_scenario still works fine. This should at least be mentioned somewhere. Also, what_day_of_scenario starts at 0, despite the fact that the games in-game calendar starts at 1, which should at least be mentioned.

Miscellaneous engine issues
* Outdoors signs don't work sometimes. (Does this still not work? Jeff claims that he fixed it for v1.1.2.)
* If cursed items are placed on ground/in a container in the editor, they lose their cursed ability.
* Enter-combat-end-combat bug: you can get placed in totally nonsensical locations when ending combat. If you enter and then end combat immediately, you get placed one space forward. This allows you to skip special rectangles extremely easily unless specifically prevented from doing so by a designer.
* Beam projectors malfunction wildly in close quarters, next to walls, in varying heights, etc. I have a small utility scenario to demonstrate a number of ways in which this can occur.
* When a regular PC is next to a spot and you look at that spot, you search the spot. If only a joined NPC (and not a regular NPC) is next to a spot, however, you don't search the spot. (It just seemed odd to me. Not sure it's a "bug" bug, though.)
* Putting a town border right next to the edge of the town causes weird behavior: you can't exit the town, the town doesn't match the edge, etc.
* When a creature can't get to a location that it's trying to get to, the game slows to a crawl. For example, when a creature gets lured out of a building through an open door, the door gets closed, and then the creature tries to return_to_start, the game slows. (This has been reported on Windows, and I have not verified it personally.)
* Unlike the traditional Orb of Thralni, items with it_ability_1 = 213 can give the party extra rounds of flight while the party is still in the air.
* When a statistic gets very large (perhaps over 100 or 200), the game will eventually give a message saying, "Error: File corruption caused too-high skill. Skill being reset to 0. Can correct it manually with editor." This is a problem for very high-level parties, which should naturally have Health at these levels.

Unhandled Exceptions
Various things cause Unhandled Exception errors on Windows that cause BoA to quit entirely without giving a proper error message. These are extremely hard to debug for Mac designers, since they do not reproduce in the same way on a Mac, except for a few that are noted. Among them:
* Using a terrain or floor graphic that doesn't exist. This is a problem with wallsets that are not complete, for example: if you place a wall with a door from a wallset that doesn't include a door (ie, cave wall), this causes an unhandled exception.
* Setting a creature facing a direction greater than 7 -- ie, set_character_facing(6,8).
* Running the death animation of a creature with cr_small_or_large_template set wrong -- that is, if the creature's graphic is small but cr_small_or_large_template = 1 in the scenario's custom objects script, then BoA crashes without an error message and quits. This happens on Mac, too.
* Over-running the string limit. I got an unhandled exception in Vasskolis when I tried to display a message from the text buffer that was longer than 256 characters. I'm not sure if over-running the text buffer itself was the problem or if trying to display it was the problem, but either way, the over-long string didn't give the over-long string error like it does on a Mac.
* If you try to use a string variable while nothing's in it (i.e., you forgot the get_buffer_text call), BoA dies. On Mac-BoA v1.1.2, it crashes, gives no error message, and quits. I got this with a message_dialog call, but I imagine a print_str or text bubble would give the same response. Also, using a dialog string with nothing in it causes the same error.

[ Thursday, July 06, 2006 07:20: Message edited by: Kelandon ]

--------------------
Arancaytar: Every time you ask people to compare TM and Kel, you endanger the poor, fluffy kittens.
Smoo: Get ready to face the walls!
Ephesos: In conclusion, yarr.

Kelandon's Pink and Pretty Page!!: the authorized location for all things by me
The Archive of all released BoE scenarios ever
Posts: 7968 | Registered: Saturday, February 28 2004 08:00
Off With Their Heads
Member # 4045
Profile Homepage #1
New bug, causing the need to revive the topic: as far as I can tell, the attitude of the party is 0. One might expect it to be 3 (party-friendly), but I don't think that it is. I don't think that the docs mention this (although I may have missed it), and they should.

Also, I've pared down the list very slightly, getting rid of the more ridiculous bugs ("sometimes I see crashes").

EDIT: When a statistic gets very large (typically over 100 for normal stats, 200 for Useful Skills, although I can't say for sure that it's consistent), the game will eventually (when the stat gets checked, perhaps?) give a message saying, "Error: File corruption caused too-high skill. Skill being reset to 0. Can correct it manually with editor." This is a problem for very high-level parties (say, 50 or above), which should naturally have Health above 500. This doesn't seem to have any in-game effect (except a weird 0 on the stat sheet), but it's annoying to get these error messages.

[ Friday, June 23, 2006 13:11: Message edited by: Kelandon ]

--------------------
Arancaytar: Every time you ask people to compare TM and Kel, you endanger the poor, fluffy kittens.
Smoo: Get ready to face the walls!
Ephesos: In conclusion, yarr.

Kelandon's Pink and Pretty Page!!: the authorized location for all things by me
The Archive of all released BoE scenarios ever
Posts: 7968 | Registered: Saturday, February 28 2004 08:00
Agent
Member # 2820
Profile #2
I believe that if a secondary skill other than health is set to 0, it really is treated as 0. However, I have only seen this happen with god parties so I do not think it is a terrible problem. Personally, I think that if debug mode were expanded upon so that, for instance, one could change stats in game or enter some invincible god mode, there would not be a need for god parties for scenario testing.

--------------------
Thuryl: I mean, most of us don't go around consuming our own bodily fluids, no matter how delicious they are.
====
Alorael: War and violence would end if we all had each other's babies!
====
Drakefyre: Those are hideous mangos.
Posts: 1415 | Registered: Thursday, March 27 2003 08:00
BANNED
Member # 4
Profile Homepage #3
Another constant to watch out for is "shop". I don't know if this has a VALUE or not, but if you use it as a variable, your script will crash.

--------------------
*
Posts: 6936 | Registered: Tuesday, September 18 2001 07:00
...b10010b...
Member # 869
Profile Homepage #4
Yes, there really does need to be full documentation of the reserved variable names somewhere. "shop" is already mentioned in SW's tech support page, but there are definitely others.

--------------------
The Empire Always Loses: This Time For Sure!
Posts: 9973 | Registered: Saturday, March 30 2002 08:00
Warrior
Member # 6682
Profile #5
It is worth noting that what_day_of_year() always returns a value of 0 if used with force_start_day(). In other words, the value for what_day_of_year fails to increment with each passing day.

The way around it is by using the what_day_of_scenario() call which works correctly in conjunction with force_start_day().

--------------------
Lancer
Posts: 73 | Registered: Friday, January 13 2006 08:00
Apprentice
Member # 7216
Profile #6
It's true that cursed items uncurse if placed in a container/on the ground. Strange.

--------------------
Apple.elqqA
Posts: 18 | Registered: Monday, June 12 2006 07:00
Off With Their Heads
Member # 4045
Profile Homepage #7
Three small additions in light of recent posts: additional reserved variable names, the mixed time calls issue, and verification of the cursed item bug.

--------------------
Arancaytar: Every time you ask people to compare TM and Kel, you endanger the poor, fluffy kittens.
Smoo: Get ready to face the walls!
Ephesos: In conclusion, yarr.

Kelandon's Pink and Pretty Page!!: the authorized location for all things by me
The Archive of all released BoE scenarios ever
Posts: 7968 | Registered: Saturday, February 28 2004 08:00
BANNED
Member # 4
Profile Homepage #8
Either there is no get_max_energy(); call, or there is no such call in the docs.

Either way, this should be fixed.

--------------------
*
Posts: 6936 | Registered: Tuesday, September 18 2001 07:00
Master
Member # 5977
Profile Homepage #9
I didn't see that this was mentioned somewhere, so I thought to just say it:

The documentation says that the calls set_terrain, set_floor and set-height can be used outdoors. However, every time when I tried it, nothing happened to the outdoor terrian.

--------------------
Play and rate my scenarios:

Where the rivers meet
View my upcoming scenario: The Nephil Search: Escape.

Give us your drek!
Posts: 3029 | Registered: Saturday, June 18 2005 07:00
Apprentice
Member # 7216
Profile #10
I've gotten set_terrain to work in an outdoor script as part of a special encounter with dialog box choices, but it won't work in any of the other states.
(It's very annoying too..)
Posts: 18 | Registered: Monday, June 12 2006 07:00
Apprentice
Member # 7275
Profile #11
I have found an issue:

When importing any of the wallset terrains into a later spot, the walls no longer draw correctly on the automap in the game under certain circumstances.

For example: I imported the four doors from the first wallset into spots 404, 405, 406 & 407 in order to remove their default scripts.

However, they no longer draw on the automap when the party is viewing them from beyond their blocked side.

In terms of the logic of the automap coding, you can see why this might be the case, but nevertheless it should be noted and (perhaps?) dealt with.

EDIT: I have just found a way around the problem cited in the example. To delete a terrain script from a terrain space which has one by default, just use the "Delete Object" tool. However, the issue remains. It may no longer be relevent, though.

[ Monday, July 03, 2006 14:07: Message edited by: Nicholas Bellerophon ]
Posts: 1 | Registered: Monday, July 3 2006 07:00
BANNED
Member # 4
Profile Homepage #12
Graphic 1654 in Blades of Avernum Art (the swarthy gal with a green shirt and brown armor) has no sword-with-shield-and-armor graphic. The graphic of her armored with sword-and-shield is missing the shield.

--------------------
*
Posts: 6936 | Registered: Tuesday, September 18 2001 07:00
Off With Their Heads
Member # 4045
Profile Homepage #13
Adding the what_day_of_scenario starting at day 0 thing under documentation issues.

quote:
Originally written by Nicholas Bellerophon:

I have just found a way around the problem cited in the example. To delete a terrain script from a terrain space which has one by default, just use the "Delete Object" tool. However, the issue remains. It may no longer be relevent, though.
Does anyone know to what problem he is referring? The "example"?

I'm going to look closer at a couple of other problems before adding them.

[ Thursday, July 06, 2006 07:26: Message edited by: Kelandon ]

--------------------
Arancaytar: Every time you ask people to compare TM and Kel, you endanger the poor, fluffy kittens.
Smoo: Get ready to face the walls!
Ephesos: In conclusion, yarr.

Kelandon's Pink and Pretty Page!!: the authorized location for all things by me
The Archive of all released BoE scenarios ever
Posts: 7968 | Registered: Saturday, February 28 2004 08:00
Master
Member # 5977
Profile Homepage #14
the call what_day_of_scenario() appears to always return the number of days - 1. This appears to be normal...

So, if its day 3, what_day_of_scenario will return 2.

--------------------
Play and rate my scenarios:

Where the rivers meet
View my upcoming scenario: The Nephil Search: Escape.

Give us your drek!
Posts: 3029 | Registered: Saturday, June 18 2005 07:00
...b10010b...
Member # 869
Profile Homepage #15
quote:
Originally written by Kelandon:

quote:
Originally written by Nicholas Bellerophon:

I have just found a way around the problem cited in the example. To delete a terrain script from a terrain space which has one by default, just use the "Delete Object" tool. However, the issue remains. It may no longer be relevent, though.
Does anyone know to what problem he is referring? The "example"?

The problem he had was that he created a duplicate of the door terrain which didn't have a default terrain script, but the door terrain he created didn't appear as a door on the automap.

--------------------
The Empire Always Loses: This Time For Sure!
Posts: 9973 | Registered: Saturday, March 30 2002 08:00
? Man, ? Amazing
Member # 5755
Profile #16
A person could also just change to terrain script to something other than door.txt by first clicking on the door, and then clicking on the word "script" as it displays under the map.

--------------------
quote:
Originally written by Kelandon:

Well, I'm at least pretty sure that Salmon is losing.


Posts: 4114 | Registered: Monday, April 25 2005 07:00
Off With Their Heads
Member # 4045
Profile Homepage #17
As far as I can tell, terrains 172 and 173 (in addition to being mis-named) default to not showing up on the automap. I tried to add the line

te_draw_on_automap = 1;

but this did not seem to help. Their graphics are properly set. Can anyone figure out what the problem with these terrains is?

--------------------
Arancaytar: Every time you ask people to compare TM and Kel, you endanger the poor, fluffy kittens.
Smoo: Get ready to face the walls!
Ephesos: In conclusion, yarr.

Kelandon's Pink and Pretty Page!!: the authorized location for all things by me
The Archive of all released BoE scenarios ever
Posts: 7968 | Registered: Saturday, February 28 2004 08:00
BANNED
Member # 4
Profile Homepage #18
It may well be that since the graphics are so overwhelmingly white that when the graphic is truncated, none of the actual pixels appear since there's not enough of them.

--------------------
*
Posts: 6936 | Registered: Tuesday, September 18 2001 07:00
Shake Before Using
Member # 75
Profile #19
From TM:

Terrain 393 apparently always makes a crunch noise when you step on it, regardless of what you set the terrain's sound to, as shown here:

begindefineterrain 390;
import = 293;
te_icon_adjust = 148;
te_step_sound = -1;
begindefineterrain 391;
import = 294;
te_icon_adjust = 148;
te_step_sound = -1;
begindefineterrain 392;
import = 295;
te_icon_adjust = 148;
te_step_sound = -1;
begindefineterrain 393;
import = 296;
te_icon_adjust = 14;
te_step_sound = -1;

Posts: 3234 | Registered: Thursday, October 4 2001 07:00
Shock Trooper
Member # 5459
Profile Homepage #20
Ooh! Ooh! I got one! I noticed this back in 2005, I think... Anyways, the restore_pc(which_char) call acts funny. In stead of really returning the which_char back to full health, it gives it the maximum health of the currently selected character. I hope that made sense. I'm going to bed.

--------------------
These are my scenarios. I may have too much free time but I really don't care.
Backwater Calls, Magus of Cattalon, Rats Aplenty
Get them here
Visit The Lyceum for all your rating needs.
Posts: 211 | Registered: Sunday, January 30 2005 08:00
Warrior
Member # 6846
Profile #21
I have a couple.

I can't seem to get the beam projectors to work in any of my scenarios at all. So far I have placed the projectors (terrains 380-383) next to the 'energy source' (terrain 384), at point the energy source shimmers, but nothing more happens. This may not be a bug, although I can't figure what I've missed, so I thought I'd include it anyway.

The door terrain script seems to cease working after the call flip_terrain is used on the square of the door. For example, when I close a door in a cutscene using flip_terrain, the door will not open afterwards when normal play is resumed.

[ Monday, August 28, 2006 12:26: Message edited by: Pyrulen ]

--------------------
"Build a man a fire, and he´ll be warm for a day; set a man on fire, and he´ll be warm for the rest of his life."
Posts: 65 | Registered: Thursday, March 2 2006 08:00
Lifecrafter
Member # 6193
Profile Homepage #22
A few ideas for why your beams might not be working, remember that you need to set the "Beam Type" field in Town Details to either 1 or 2, depending on what you want.

If not that, then I'd point out that in my experience, beams don't fire if there is an object in its path and one square away. For example,
Where (-) is a beam projector shooting east, and (x) is a blocked spot (0) is empty spot.
0-00X will fire
0-X00 Will not fire.

I feel obligated to report a bug here as well, but none come to mind. Does complaigning about the limit on dialog choices count? :D

--------------------
Guaranteed to blow your mind.

Frostbite: Get It While It's...... Hot?
Posts: 900 | Registered: Monday, August 8 2005 07:00
Warrior
Member # 6846
Profile #23
Oops, I forgot to mention that I set the 'beam type' field to '1' as a matter of course, yet still nothing. Having experienced slightly too many annoying beam puzzles through past scenarios (The Za-Khazi Run, Bahssikava, A Perfect Forest), I hadn't felt obliged to include one in my scenario, although it will be a problem should I ever try to create one in the future.

--------------------
"Build a man a fire, and he´ll be warm for a day; set a man on fire, and he´ll be warm for the rest of his life."
Posts: 65 | Registered: Thursday, March 2 2006 08:00
Off With Their Heads
Member # 4045
Profile Homepage #24
Do special rectangles work on the outermost edges of towns and outdoor sections? I tried placing a special at the edge of an outdoor section from (0,17) to (0,20), and it did not actually call the appropriate state. I shifted the rectangle to (1,17) and did nothing else to it, and it functioned just fine.

[ Monday, September 04, 2006 13:45: Message edited by: Kelandon ]

--------------------
Arancaytar: Every time you ask people to compare TM and Kel, you endanger the poor, fluffy kittens.
Smoo: Get ready to face the walls!
Ephesos: In conclusion, yarr.

Kelandon's Pink and Pretty Page!!: the authorized location for all things by me
The Archive of all released BoE scenarios ever
Posts: 7968 | Registered: Saturday, February 28 2004 08:00

Pages