Script of Saga III b2.2のバグの修正方法

戻る



library/base.cgi: sub item_class_check
薬がパックできず闇市にストックされなかった不具合を修正。
修正前
    return 'M' if $Si->{cl} =~ /(Fd|Mt|Ig|Pi|Wd|Lt|Ct|Gm|Op|Tp|Bc)/;
修正後
    return 'M' if $Si->{cl} =~ /(Fd|Mt|Ig|Pi|Wd|Lt|Ct|Md|Gm|Op|Tp|Bc)/;



library/fishing.cgi: sub fishing
釣りをすると「Fishing File Error」となり釣りができなくなる不具合を修正。
修正前
    &error('Fishing File Error') if !$F{fl} || $F{fl} =~ /[^a-z_]/ || ! -e "$set::dat_dir/$F{fl}.cgi";
修正後
    &error('Fishing File Error') if !$F{fl} || $F{fl} =~ /[^a-z_]/ || ! -e "$set::dat_dir/$F{fl}_fish_catalog.cgi";
    &error('未実装') unless -e "$set::itm_dir/$F{fl}_fish.cgi";



library/fight.cgi: sub defense
戦闘中、時にマイナスのダメージ値が出てしまう不具合を修正。
修正前
    $A->{F1}{AT} = 1 if $ADM < 1;
修正後
    if ($ADM < 1) {
        $ADM = 0;
        $A->{F1}{AT} = 1;
    }




定期船の出航時刻にログインするプレイヤーがいないと定期船が出航しない不具合を修正。
library/base.cgi: sub schedule_monitor

修正前
my  @L;
修正後
my (@L,@V);

修正前
        return 0 if $hr % $X;
        return 0 if $hr == $L[$V];
        return 0 if $L[$V] < $Y;
        $L[$V] = $hr;
修正後
        @V = split(/:/,$L[$V]);
        return 0 if $dy == $V[0] && $V[1] + $X > $hr;
        $L[$V] = join(':',$dy,$hr - $hr % $X);

library/date.cgi: sub departure_time

修正前
        $V = (split(/,/,(&open_dat("$set::dat_dir/schedule.cgi"))[0]))[2] + $set::olt;
修正後
        $V = (split(/,/,(&open_dat("$set::dat_dir/schedule.cgi"))[0]))[2];
        $V = (split(/:/,$V))[1] + $set::olt;

* 修正後、最初の一回だけ誰かがログインした時に定期船が出航します。



item/accessories.cgi
宝石職人が投擲武器を作成できない不具合を修正。
全置換
    「Wire」 → 「Ironwire」




「骨折」と「恐怖」に同じ略字を使っていた不具合を修正。
set.cgi

修正前
    'Fr', => ['怖','恐怖'],
修正後
    'Tr', => ['怖','恐怖'],

library/compose.cgi: sub creativity_check

修正前
        $V++ if $S->{Cd}{Fr} && $K eq 'tc';
修正後
        $V++ if $S->{Cd}{Tr} && $K eq 'tc';

library/compose.cgi: sub abnormal_condition

修正前
    $V = ('Wk','Pz','Bl','Dk','Ab','Pn','Fr')[$V];
    $M = $V =~ /(Dk|Fr)/ ? 'に襲われました' : '状態になりました';
修正後
    $V = ('Wk','Pz','Bl','Dk','Ab','Pn','Tr')[$V];
    $M = $V =~ /(Dk|Tr)/ ? 'に襲われました' : '状態になりました';

library/fight.cgi: sub concrete_battle

修正前
    if (!$A->{MF} && !$A->{Cd}{Fr} && !$D->{F1}{sk} && &roll_dice(100 + $S->{Hy}) <= $A->{in} * 3 * $V) {
修正後
    if (!$A->{MF} && !$A->{Cd}{Tr} && !$D->{F1}{sk} && &roll_dice(100 + $S->{Hy}) <= $A->{in} * 3 * $V) {

library/fight.cgi: sub abnormal_atack

修正前
    $M = $A->{aa} =~ /(Dk|Fr)/ ? 'に襲われた' : '状態になった';
修正後
    $M = $A->{aa} =~ /(Dk|Tr)/ ? 'に襲われた' : '状態になった';

library/use.cgi: sub medicine

修正前
            next if $K !~ /(Fp|Wk|Pz|Bl|Dk|Ab|Pn|Fr)/;
修正後
            next if $K !~ /(Fp|Wk|Pz|Bl|Dk|Ab|Pn|Tr)/;



library/fight.cgi: sub concrete_battle
酔拳の仕様変更。
追加
    # 我流 #
    if (&skill_roll($A,'Ow',3,$D->{lv},$D->{sx}) && !&skill_roll($D,'Be',2)) {
        $ADM = int($D->{lf} / 3);
        &M("$A->{Nm}は見た事も無い技を繰り出した!");
    }
    # 酔拳 #
    if (&skill_roll($A,'Zq',2)) {
        $A->{F1}{PZ} = 1;
        &M("$A->{Nm}は酔拳を使った!");
    }



Copyright 2000-2007 Missing Link All Rights Reserved.