Only about half of the variables for this command are actually read by the Fallout 1 engine
attack_complex(Who, [unused], [unused], +ToHit%, MinDamage, MaxDamage, [unused], VictimStatusEffect);
who (ObjectPtr) // Read properly. Who's gonna get mauled or shot?
called_shot (int) // NOT READ, HAS NO EFFECT - should be able to specify arms/eyes/etc
num_attacks (int) // NOT READ, HAS NO EFFECT. Should add extra combat turns. This one really sucks because it would be awesome to use. Lame.
bonus to-hit (int) // Read properly, although the game engine's upper limit of 95% Chance To Hit still applies
min_damage (int) // Read properly. However, will be overridden by Max Damage if it's higher than Max Damage (see below). Values from 0 to 30000 tested successfully.
max_damage (int) // Read properly. If lower than Min Damage above, this value will be used instead. Values from 0 to 30000 tested successfully.
** For example, if you enter MinDam of 99 and MaxDam of 0, when the critter calls this command they'll always do zero (0) damage for the attack because that's the "upper limit". It only affects THIS one combat turn's attack, no attacks before or after.
These may or may not process the armor DT/DR correctly, I haven't tested that yet.
attacker_results (int) // NOT READ, HAS NO EFFECT. In theory, it would allow you to have the attacker get crippled/blinded/knocked down
target_results (int) // Read properly -- these are status numbers, so 12 to cripple limbs, 64 to blind, etc. With this you can make a Cave Rat blind the player! Bwuahaha
EDIT: Looks like if you put 128 in the last field (target_results) what that does is inflict the damage even if the attacker misses. An example of this would be the code for Overseer and the guy that kills Jon Zimmerman -- their +Tohit is set to 100 and that field to 128, so they'll always do the damage listed in MinDam and MaxDam from the prior fields.
attack_complex(Who, [unused], [unused], +ToHit%, MinDamage, MaxDamage, [unused], VictimStatusEffect);
who (ObjectPtr) // Read properly. Who's gonna get mauled or shot?
called_shot (int) // NOT READ, HAS NO EFFECT - should be able to specify arms/eyes/etc
num_attacks (int) // NOT READ, HAS NO EFFECT. Should add extra combat turns. This one really sucks because it would be awesome to use. Lame.
bonus to-hit (int) // Read properly, although the game engine's upper limit of 95% Chance To Hit still applies
min_damage (int) // Read properly. However, will be overridden by Max Damage if it's higher than Max Damage (see below). Values from 0 to 30000 tested successfully.
max_damage (int) // Read properly. If lower than Min Damage above, this value will be used instead. Values from 0 to 30000 tested successfully.
** For example, if you enter MinDam of 99 and MaxDam of 0, when the critter calls this command they'll always do zero (0) damage for the attack because that's the "upper limit". It only affects THIS one combat turn's attack, no attacks before or after.
These may or may not process the armor DT/DR correctly, I haven't tested that yet.
attacker_results (int) // NOT READ, HAS NO EFFECT. In theory, it would allow you to have the attacker get crippled/blinded/knocked down
target_results (int) // Read properly -- these are status numbers, so 12 to cripple limbs, 64 to blind, etc. With this you can make a Cave Rat blind the player! Bwuahaha
Code:
Crippled LEFT LEG critter_injure(OBJ, 4);
Crippled RIGHT LEG critter_injure(OBJ, 8);
Crippled LEFT ARM critter_injure(OBJ, 16);
Crippled RIGHT ARM critter_injure(OBJ, 32);
Blindness (-5 Perception) critter_injure(OBJ, 64);
***Add them together to cause multiple at once, for example:***
Cripple BOTH Legs critter_injure(OBJ, 12);
EDIT: Looks like if you put 128 in the last field (target_results) what that does is inflict the damage even if the attacker misses. An example of this would be the code for Overseer and the guy that kills Jon Zimmerman -- their +Tohit is set to 100 and that field to 128, so they'll always do the damage listed in MinDam and MaxDam from the prior fields.