URL:
<http://gna.org/bugs/?10876>
Summary: Assertion failure when AI calculates attacks for a
unit with more than max hp
Project: Battle for Wesnoth
Submitted by: soliton
Submitted on: Friday 01/25/2008 at 20:23
Category: Bug
Severity: 3 - Normal
Priority: 5 - Normal
Item Group: Artificial Intelligence
Status: None
Privacy: Public
Assigned to: None
Originator Email:
Open/Closed: Open
Discussion Lock: Any
Release: r23212
Operating System: debian testing
_______________________________________________________
Details:
The problem is that the Lich (formerly a Runemaster) has 75/60HP (and a
draining attack?). When I activate debug mode and give him 60/60HP it works
fine.
Savegames to reproduce are attached.
stderr:
wesnoth: attack_prediction.cpp:215:
double&<unnamed>::prob_matrix::val(unsigned int, unsigned int, unsigned int):
Assertion `row < rows' failed.
backtrace:
#0 0x00002b5a3fe1d025 in raise () from /lib/libc.so.6
#1 0x00002b5a3fe1ea80 in abort () from /lib/libc.so.6
#2 0x00002b5a3fe1642f in __assert_fail () from /lib/libc.so.6
#3 0x00000000004e1e8c in val (this=0x7fff6cba5930, p=0, row=75, col=0) at
attack_prediction.cpp:215
#4 0x00000000004e2e9d in prob_matrix (this=0x7fff6cba5930, a_max_hp=60,
b_max_hp=48, a_slows=false, b_slows=false, a_hp=75, b_hp=48,
a_summary=0x6ac4a00, b_summary=0x6f43300)
at attack_prediction.cpp:181
#5 0x00000000004e35d9 in combatant::complex_fight (this=0x6ac49b0,
[EMAIL PROTECTED], rounds=1) at attack_prediction.cpp:676
#6 0x00000000004e3bcc in combatant::fight (this=0x6ac49b0, [EMAIL PROTECTED])
at attack_prediction.cpp:768
#7 0x000000000046206e in battle_context::choose_attacker_weapon
(this=0x68eb500, [EMAIL PROTECTED], [EMAIL PROTECTED],
[EMAIL PROTECTED], [EMAIL PROTECTED], [EMAIL PROTECTED],
[EMAIL PROTECTED], [EMAIL PROTECTED],
[EMAIL PROTECTED], [EMAIL PROTECTED], harm_weight=0.5,
defender_weapon=0x7fff6cba5d78, prev_def=0x6f42720)
at actions.cpp:468
#8 0x000000000046298e in battle_context (this=0x68eb500,
[EMAIL PROTECTED], [EMAIL PROTECTED], [EMAIL PROTECTED],
[EMAIL PROTECTED], [EMAIL PROTECTED],
[EMAIL PROTECTED], [EMAIL PROTECTED],
attacker_weapon=-1, defender_weapon=-1, aggression=0.5, prev_def=0x6f42720)
at actions.cpp:261
#9 0x00000000004b3537 in ai::attack_analysis::analyze (this=0x7fff6cba6b50,
[EMAIL PROTECTED], [EMAIL PROTECTED], [EMAIL PROTECTED],
[EMAIL PROTECTED], [EMAIL PROTECTED],
[EMAIL PROTECTED], [EMAIL PROTECTED], [EMAIL PROTECTED],
[EMAIL PROTECTED], aggression=0.5) at ai_attack.cpp:358
#10 0x00000000004b4f88 in ai::do_attack_analysis (this=0x48bb6c0,
[EMAIL PROTECTED], [EMAIL PROTECTED], [EMAIL PROTECTED],
[EMAIL PROTECTED],
[EMAIL PROTECTED], [EMAIL PROTECTED],
[EMAIL PROTECTED], tiles=0x7fff6cba6bd0,
used_locations=0x7fff6cba6cb0, [EMAIL PROTECTED],
[EMAIL PROTECTED], [EMAIL PROTECTED]) at
ai_attack.cpp:243
#11 0x00000000004b5066 in ai::do_attack_analysis (this=0x48bb6c0,
[EMAIL PROTECTED], [EMAIL PROTECTED], [EMAIL PROTECTED],
[EMAIL PROTECTED],
[EMAIL PROTECTED], [EMAIL PROTECTED],
[EMAIL PROTECTED], tiles=0x7fff6cba6bd0,
used_locations=0x7fff6cba6cb0, [EMAIL PROTECTED],
[EMAIL PROTECTED], [EMAIL PROTECTED]) at
ai_attack.cpp:251
#12 0x00000000004b1f6b in ai::analyze_targets (this=0x48bb6c0,
[EMAIL PROTECTED], [EMAIL PROTECTED], [EMAIL PROTECTED],
[EMAIL PROTECTED]) at ai_attack.cpp:588
#13 0x0000000000491d18 in ai::do_combat (this=0x48bb6c0,
[EMAIL PROTECTED], [EMAIL PROTECTED],
[EMAIL PROTECTED], [EMAIL PROTECTED],
[EMAIL PROTECTED]) at ai.cpp:1013
#14 0x0000000000492be1 in ai::do_move (this=0x48bb6c0) at ai.cpp:935
#15 0x000000000048ada2 in ai::play_turn (this=0x48bb6c0) at ai.cpp:864
#16 0x000000000067b9cb in playsingle_controller::play_ai_turn
(this=0x7fff6cba85f0) at playsingle_controller.cpp:687
#17 0x000000000067cbd7 in playsingle_controller::play_side
(this=0x7fff6cba85f0, team_index=2, save=false) at
playsingle_controller.cpp:536
#18 0x000000000067d1f0 in playsingle_controller::play_turn
(this=0x7fff6cba85f0, save=false) at playsingle_controller.cpp:483
#19 0x000000000067e7d5 in playsingle_controller::play_scenario
(this=0x7fff6cba85f0, [EMAIL PROTECTED], [EMAIL PROTECTED],
skip_replay=false) at playsingle_controller.cpp:275
#20 0x0000000000663927 in playsingle_scenario ([EMAIL PROTECTED],
[EMAIL PROTECTED], level=0x7fff6cbaa700, [EMAIL PROTECTED],
[EMAIL PROTECTED], [EMAIL PROTECTED],
[EMAIL PROTECTED], skip_replay=false) at playcampaign.cpp:134
#21 0x0000000000666b35 in play_game ([EMAIL PROTECTED],
[EMAIL PROTECTED], [EMAIL PROTECTED],
[EMAIL PROTECTED], [EMAIL PROTECTED], io_type=IO_NONE,
skip_replay=false)
at playcampaign.cpp:377
#22 0x000000000041296c in play_game (this=0x7fff6cbaa330, reload=(anonymous
namespace)::game_controller::NO_RELOAD_DATA) at game.cpp:1899
#23 0x0000000000426962 in play_game (argc=3, argv=0x7fff6cbab678) at
game.cpp:2311
#24 0x0000000000426c51 in main (argc=3, argv=0x7fff6cbab678) at
game.cpp:2338
_______________________________________________________
File Attachments:
-------------------------------------------------------
Date: Friday 01/25/2008 at 20:23 Name: THoT-The_Court_of_Karrag_Turn_1.gz
Size: 43kB By: soliton
<http://gna.org/bugs/download.php?file_id=3673>
-------------------------------------------------------
Date: Friday 01/25/2008 at 20:23 Name: THoT-The_Court_of_Karrag.gz Size:
17kB By: soliton
<http://gna.org/bugs/download.php?file_id=3674>
_______________________________________________________
Reply to this item at:
<http://gna.org/bugs/?10876>
_______________________________________________
Message sent via/by Gna!
http://gna.org/
_______________________________________________
Wesnoth-bugs mailing list
[email protected]
https://mail.gna.org/listinfo/wesnoth-bugs