cookbook|||2001/09/10/Mon|||21:43:34|||aa5EM4rGklPVk|||バランス|||マシマロ||||||EB支援|||http://members.jcom.home.ne.jp/masimaro/eb.html|||10|||総統回復|||ebs_sub1.cgiを開き、以下のルーチンを差し替えてください。

sub REPAIR {

$KAIFUKU="2"; # 回復倍率

my $DatHp=$Result=0;
my $REPType = "$_[0]_VALUES";
my ($DatHp,$Result) = split(/\!/,$$REPType[1]); #戦闘履歴のコンバート
$$REPType[15]+=int(($DATE-$DatHp)*$HP_REPAIR);
if($PL_VALUES[6]!=0){$$REPType[15]+=int(($DATE-$DatHp)*$HP_REPAIR*($KAIFUKU-1));}
if($$REPType[15] >= $$REPType[16]){
$$REPType[15]=$$REPType[16];$$REPType[25]=0 if $$REPType[25] == 1;
}
$$REPType[17]+=int(($DATE-$DatHp)*$EN_REPAIR);
if($PL_VALUES[6]!=0){$$REPType[17]+=int(($DATE-$DatHp)*$EN_REPAIR*($KAIFUKU-1));}
if($$REPType[17] >= $$REPType[18]){$$REPType[17]=$$REPType[18];}
}
||||||ebs_sub1.cgi

総統は狙われやすいので、回復率を高くします。
回復倍率を設定してください。|||end||| cookbook|||2001/09/14/Fri|||21:21:13|||aa5EM4rGklPVk|||バグ|||マシマロ||||||さすらい部屋|||http://members.jcom.home.ne.jp/masimaro/|||10|||国名バグ対処|||ebs_sub3.cgiの

/^建国$/ && do{&DBM_INPORT(P);の次の2行を

while (my($key,$value) = each %P){my@VS_VALUE = split(/\s/,$value);
if($FORM{'cname'} eq "$VS_VALUE[5]"){&ERROR('同名の国が既に存在します。');}
if($FORM{'cname'} eq "$NONE_NATIONALITY"){&ERROR('その国名は使えません');}
if($FORM{'cname'} eq "$PL_VALUES[5]"){&ERROR('その国名は使えません');}}


↑と、変更してください。||||||「無国籍」という国名をつくると不具合がおきることに対処する。
|||end||| cookbook|||2001/09/14/Fri|||23:21:24|||aa5EM4rGklPVk|||サイト|||マシマロ||||||さすらい部屋|||http://members.jcom.home.ne.jp/masimaro/|||10|||管理モード|||ebs.cgiの変更

sub MAINTE {require 'ebs_sub7.cgi';&MAINTENANCE;}

sub MAINTE {require 'ebs_sub3.cgi';&FRAME;} #ダミー処理

mainte.cgi(名前は任意)を追加

#!/usr/local/bin/perl

require 'ebs_sub1.cgi';

&ERROR('直リンクは禁止です','入り口からのアクセスお願いします。') if $ENV{'HTTP_REFERER'} !~ m/^$THIS_DIR/ && $DIRECT_LINK && $SUB ne 'MY_LIST' && $SUB ne 'C_LIST';

!$SUB && ($SUB='MAINTE');
&$SUB;

sub MAINTE {require 'ebs_sub7.cgi';&MAINTENANCE;}
||||||セキュリティのため、管理モードを独立させることをお勧めします。
|||end||| cookbook|||2001/09/15/Sat|||20:27:52|||aaLElMaIG.c5o|||戦闘|||kazu777|||kazu777@hestia.dricas.com|||あそびばっか!|||http://www12.big.or.jp/~kazu777|||10|||無国籍と国所属で経験値に差&階級により経験値UP|||ebs_sub4.cgiの・・・

$PL_In[4]=$PL_In[0]*($VS_VALUES[0]+1);
$PL_VALUES[30]+=$PL_In[4];
print "$FORM{'pname'} は $PL_In[4] の経験値を獲得";

if (($PL_VALUES[29]+1)*200 $FORM{'pname'} は レベルが上がった";
$PL_VALUES[30]=0;
$PL_VALUES[29]++;
sub BONUS{"   $_[0]がわずかにアップ。";}

のあたりの
$PL_In[4]=$PL_In[0]*($VS_VALUES[0]+1);
これを
if($PL_VALUES[5] ne ""){$PL_In[4]=$PL_In[0]*($VS_VALUES[0]+1)+($PL_VALUES[0]*2+1);
}else{$PL_In[4]=$PL_In[0]*($VS_VALUES[0]+1);}
こう書き換えるだけです。
$PL_VALUES[0]*2+1←「*2」これは各自で調節してください。
これで総帥だと440ほど経験値がプラスされます。||||||国に所属して階級上げても狙われる一方で損です^^;
なのでみんな狙われない無国籍に逃げてしまいます。

で、国所属で経験値が+αされるメリットをつけてみました。|||end||| cookbook|||2001/09/15/Sat|||20:38:27|||aaLElMaIG.c5o|||戦闘|||kazu777|||kazu777@hestia.dricas.com|||あそびばっか!|||http://www12.big.or.jp/~kazu777|||10|||破壊系武器の制限と敵が破壊系武器を使ってきた時も効果をつける|||ebs_sub4.cgiの
if ($Pl_W[7] =~ m/1/){
if (rand(255) > 250){print "敵機攻撃系統を破壊\n";$VS_VALUES[19]--;}
if (rand(255) > 250){print "敵機防御系統を破壊\n";$VS_VALUES[20]--;}
if (rand(255) > 250){print "敵機回避系統を破壊\n";$VS_VALUES[21]--;}
if (rand(255) > 250){print "敵機命中系統を破壊\n";$VS_VALUES[22]--;}
}
これを削除し、変わりにこれを挿入します。
if ($Pl_W[7] =~ m/1/){
if ($VS_VALUES[19] >= 35){
if (rand(255) > 252){print "敵機攻撃系統を破壊\n";$VS_VALUES[19]--;}
}
if ($VS_VALUES[20] >= 35){
if (rand(255) > 252){print "敵機防御系統を破壊\n";$VS_VALUES[20]--;}
}
if ($VS_VALUES[21] >= 35){
if (rand(255) > 252){print "敵機回避系統を破壊\n";$VS_VALUES[21]--;}
}
if ($VS_VALUES[22] >= 35){
if (rand(255) > 252){print "敵機命中系統を破壊\n";$VS_VALUES[22]--;}
}
if ($VS_VALUES[16] >= 5000){
if (rand(255) > 250){print "敵機最大HPを破壊\n";$VS_VALUES[16]=int($VS_VALUES[16]*0.985);}
}
if ($VS_VALUES[18] >= 200){
if (rand(255) > 251){print "敵機最大ENを破壊\n";$VS_VALUES[18]=int($VS_VALUES[18]*0.99);}
}
if ($VS_VALUES[29] >= 50){
if (rand(255) > 253){print "敵機レベルダウン!\n";$VS_VALUES[29]--;
$sagaru=int(rand(10)+1);
if ($sagaru==1){
if ($VS_VALUES[19] >= 35){print "レベルダウンにより敵機攻撃系統を破壊\n";$VS_VALUES[19]--;}
}
if ($sagaru==2){
if ($VS_VALUES[20] >= 35){print "レベルダウンにより敵機防御系統を破壊\n";$VS_VALUES[20]--;}
}
if ($sagaru==3){
if ($VS_VALUES[21] >= 35){print "レベルダウンにより敵機回避系統を破壊\n";$VS_VALUES[21]--;}
}
if ($sagaru==4){
if ($VS_VALUES[22] >= 35){print "レベルダウンにより敵機命中系統を破壊\n";$VS_VALUES[22]--;}
}
if ($sagaru==5){
if ($VS_VALUES[16] >= 5000){print "レベルダウンにより敵機最大HPを破壊\n";$VS_VALUES[16]=int($VS_VALUES[16]*0.985);}
}
if ($sagaru==6){
if ($VS_VALUES[18] >= 200){print "レベルダウンにより敵機最大ENを破壊\n";$VS_VALUES[18]=int($VS_VALUES[18]*0.99);}
}
}
}
}
if ($Vs_W[7] =~ m/1/){
if ($PL_VALUES[19] >= 35){
if (rand(255) > 252){print "自機攻撃系統を損傷!\n";$PL_VALUES[19]--;}
}
if ($PL_VALUES[20] >= 35){
if (rand(255) > 252){print "自機防御系統を損傷!\n";$PL_VALUES[20]--;}
}
if ($PL_VALUES[21] >= 35){
if (rand(255) > 252){print "自機回避系統を損傷!\n";$PL_VALUES[21]--;}
}
if ($PL_VALUES[22] >= 35){
if (rand(255) > 252){print "自機命中系統を損傷!\n";$PL_VALUES[22]--;}
}
if ($PL_VALUES[16] >= 5000){
if (rand(255) > 251){print "自機最大HPを損傷!\n";$PL_VALUES[16]=int($PL_VALUES[16]*0.985);}
}
if ($PL_VALUES[18] >= 200){
if (rand(255) > 252){print "自機最大ENを損傷!\n";$PL_VALUES[18]=int($PL_VALUES[18]*0.99);}
}
if ($PL_VALUES[29] >= 50){
if (rand(255) > 253){print "自機レベルダウン!\n";$PL_VALUES[29]--;
$sagaru=int(rand(10)+1);
if ($sagaru==1){
if ($PL_VALUES[19] >= 35){print "レベルダウンにより自機攻撃系統を損傷\n";$PL_VALUES[19]--;}
}
if ($sagaru==2){
if ($PL_VALUES[20] >= 35){print "レベルダウンにより自機防御系統を損傷\n";$PL_VALUES[20]--;}
}
if ($sagaru==3){
if ($PL_VALUES[21] >= 35){print "レベルダウンにより自機回避系統を損傷\n";$PL_VALUES[21]--;}
}
if ($sagaru==4){
if ($PL_VALUES[22] >= 35){print "レベルダウンにより自機命中系統を損傷\n";$PL_VALUES[22]--;}
}
if ($sagaru==5){
if ($PL_VALUES[16] >= 5000){print "レベルダウンにより自機最大HPを損傷\n";$PL_VALUES[16]=int($PL_VALUES[16]*0.985);}
}
if ($sagaru==6){
if ($PL_VALUES[18] >= 200){print "レベルダウンにより自機最大ENを損傷\n";$PL_VALUES[18]=int($PL_VALUES[18]*0.99);}
}
}
}
}
||||||自分が破壊系武器使った時は敵のパラメーターを下げることが出来ますが、敵が使ってきても平気でした。
それをどちらも破損するように。
そしてS以上じゃないとパラメーターは落ちないようにします。
ついでにレベルダウン、最大HP削減、最大EN削減もつけてみました(爆|||end|||