Sfall sslc and critter_skill_level

Kamehameha

First time out of the vault
Hello!

I'm trying to compile a script with critter_skill_level using the sslc compiler on the Fallout Database (20150208) and it tells me "Undefined symbol critter_skill_level in factor". Is there something wrong with my math (like I need to assign values to variables or something) or will this not work?

It is supposed to compare the Throwing skill to the Melee skill, and if Throwing < Melee / 2, Throwing = Melee / 2.

It works when I change the skill checks/changes to stat check/changes, like making Agility = Int / 2.

Here's the uncompiled script:

procedure start;

procedure start begin


if(critter_skill_level(dude_obj, 05)<(critter_skill_level(dude_obj, 04)/2)) then begin
critter_mod_skill(dude_obj, 05, (critter_skill_level(dude_obj, 04)/2)-critter_skill_level(dude_obj,5));​
end​
end
Thanks!
 
Use "has_skill" instead, it does the same.

In the Mapper pdf file "critter_skill_level" is written in a grey box, which means something is wrong with it. So maybe it's been disabled?
 
AFAIK it's never used in FO2 UP & RP ssl scripts, only got defined in define.h:
Code:
#define CRITTER_SKILL_LEVEL(X,Y)  has_skill(X,Y)
#define critter_skill_level(X,Y)  has_skill(X,Y)
 
Last edited:
Excellent, that works.

procedure start;

procedure start begin


if(has_skill(dude_obj, 05)<(has_skill(dude_obj, 04)/2)) then begin
critter_mod_skill(dude_obj, 05, (has_skill(dude_obj, 04)/2)-has_skill(dude_obj,5));
end

if(has_skill(dude_obj, 04)<(has_skill(dude_obj, 05)/2)) then begin
critter_mod_skill(dude_obj, 04, (has_skill(dude_obj, 05)/2)-has_skill(dude_obj,4));
end
end

That way if you raise Throwing, you get a bit of Melee Weapons, and if you raise Melee Weapons you get some Throwing.
 
Back
Top