With 3 lines being changed or added, this would be fully 100% run compliant...
Code:
location farm_location = vars[ "nemesis_farm_location" ].to_location();
familiar farm_familiar = vars[ "nemesis_farm_familiar" ].to_familiar();
if (to_familiar(vars["is_100_run"]) != $familiar[none]) farm_familiar = to_familiar(vars["is_100_run"]);
string farm_outfit = vars[ "nemesis_farm_outfit" ];
Added line is the 100% run one. If you have a 100% familiar set up, use that instead of the farm_familiar.
Code:
familiar choose_potato()
{
if (to_familiar(vars["is_100_run"]) != $familiar[none]) return to_familiar(vars["is_100_run"]);
foreach fam in $familiars[ Squamous Gibberer, Temporal Riftlet, Cotton Candy Carnie, Emo Squid, Levitating Potato, Untamed Turtle, Cuddlefish ]
If we're in a 100% run, instead of a potato, use your given familiar.
Code:
set_property( "autoSteal", "true" );
set_property( "battleAction","try to run away" );
if ( have_familiar( $familiar[ Frumious Bandersnatch ] ) && to_familiar(vars["is_100_run"]) != $familiar[none] && to_familiar(vars["is_100_run"]) != $familiar[Frumious Bandersnatch] ) use_familiar( $familiar[ Frumious Bandersnatch ] );
cli_execute( "conditions clear" );
If we're in a 100% run, even if we do have a frumious bandersnatch, if our 100% run isn't for a frumious bandersnatch, don't use it. We could cut out one side of this or the other, but if the user doesn't have a between battle script that reequips, they might end up familiar-less if this is the first step of their adventuring after training a different familiar in the arena or something. We don't protect any other familiar types there, but... hey, it's a chance to potentially save one familiar's 100% run.