cookbook|||2001/10/10/Wed|||01:30:22|||aaLElMaIG.c5o|||戦闘|||kazu777|||kazu777@hestia.dricas.com|||あそびばっか!|||http://www12.big.or.jp/~kazu777|||10|||レベルによって攻撃、防御などに差をつける|||ebs_sub4.cgiのsub BATTLEのとこをこうかえます^^

$plbs=int ($PL_VALUES[20]+4) if $Pl_W[7] =~ m/4/;
$vsbs=int ($VS_VALUES[20]+4) if $Vs_W[7] =~ m/4/;
##### ここから
$Pl_AttPoint=int($Pl_W[1]*(($PL_WLV*0.0001)+1)*(($PL_VALUES[29]/1000)+1));
$Pl_SpPoint=$PL_VALUES[21];$Pl_DefPoint=($PL_VALUES[20]+$plbs+int($PL_VALUES[29]/10))*2-int($VS_VALUES[19]/3)-int($VS_VALUES[29]/10);$Pl_MisPoint=$PL_VALUES[22];
##### ここまでと・・・
$Pl_Kaikyu=&RANK($PL_VALUES[0],$PL_VALUES[5],$PL_VALUES[6]);
$pwl=int $PL_WLV/$WEAPON_LVUP;$Pl_WeaponNameA="$Pl_W[0](Level.$pwl)";
&ERROR('noEnergy','ENが足りません。') if $PL_VALUES[17] < $Pl_W[4];
##### ここから
$Vs_AttPoint=int($Vs_W[1]*(($VS_WLV*0.0001)+1)*(($VS_VALUES[29]/1000)+1));
$Vs_SpPoint=$VS_VALUES[21];$Vs_DefPoint=($VS_VALUES[20]+$vsbs+int($VS_VALUES[29]/10))*2-int($PL_VALUES[19]/3)-int($PL_VALUES[29]/10);$Vs_MisPoint=$VS_VALUES[22];
##### ここまでだな・・。
$Vs_Kaikyu=&RANK($VS_VALUES[0],$VS_VALUES[5],$VS_VALUES[6]);
$vwl=int $VS_WLV/$WEAPON_LVUP;$Vs_WeaponNameA="$Vs_W[0](Level.$vwl)";
$Pl_SpPoint=int ($Pl_SpPoint*1.2) if $Pl_W[7] =~ m/3/;
$Vs_SpPoint=int ($Vs_SpPoint*1.2) if $Vs_W[7] =~ m/3/;
if ($PL_VALUES[16] > 50000){$Pl_SpPoint-=int(($PL_VALUES[16]-50000)/5000);}
if ($VS_VALUES[16] > 50000){$Vs_SpPoint-=int(($VS_VALUES[16]-50000)/5000);}
&SYUSEI('m',"$FORM{'mode'}",'Pl');
$VsMsnNo=int(rand(12)+1);
&SYUSEI('m',"$VsMsnNo",'Vs');
&SYUSEI('s',"$PL_VALUES[12]",'Pl');
&SYUSEI('s',"$VS_VALUES[12]",'Vs');

ここからここまでと書いてあるところをこのように変えます。
あとは各自でバランス調整してください←この人もあわてて作ったので、今バランスとってます(笑)
あと($PL_VALUES[29]/1000)とか$VS_VALUES[29]/10とかの「/1000」や「/10」を変えると調整できると思います。
どのくらいで丁度いいんでしょうね??(笑)||||||レベルが低い方が有利だったりするのを
これによって改善♪(多分

しかしバランスはとってないです。2〜3度しか(笑)
バランスとってるうちにENきれちゃって(笑)|||end||| cookbook|||2001/10/12/Fri|||09:15:39|||aaLXxiCncAXzk|||バランス|||くじら|||whale@geocities.co.jp|||えーくんの別荘1|||http://www.geocities.co.jp/Playtown/2349/|||10|||要塞のステータスに上限|||一ヶ所追加<1.
一ヶ所入れ替え<2.

1.config.cgi 62・63行目

$YOUSAI_HP = '100000'; #建国時の初期要塞HP
$WEAPON_RANKUP = '5'; #武器のランクアップレベル

この間に下記の4行を加えます

$YOUSAI_MAXHP = '2000000'; #要塞の最大HP
$YOUSAI_MAXAT = '50'; #要塞の最大攻撃力
$YOUSAI_MAXGU = '50'; #要塞の最大防御力
$YOUSAI_MAXWM = '50'; #要塞の最大命中率
         ↑↑
***それぞれの数字は任意に変更してください 50ならNT+50***

この様にしてください。
$YOUSAI_HP = '100000'; #建国時の初期要塞HP
$YOUSAI_MAXHP = '2000000'; #要塞の最大HP
$YOUSAI_MAXAT = '50'; #要塞の最大攻撃力
$YOUSAI_MAXGU = '50'; #要塞の最大防御力
$YOUSAI_MAXWM = '50'; #要塞の最大命中率
$WEAPON_RANKUP = '5'; #武器のランクアップレベル


−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
2.ebs_sub5.cgi 257行目〜277行までを

↓↓↓ここから↓↓↓
if ($PL_VALUES[6] == 1){
print "<input name=\"Cmode\" type=\"submit\" value=\"HP強化\" $STYLE_B1";
print " onClick=\"return ChMn('HPを強化','50000')\"><br><b>攻撃力</b>  ";
print "<b style=\"color:#ff0080;\">NT</b>+$Y_ST[0]";
print "<input name=\"Cmode\" type=\"submit\" value=\"攻撃力強化\" $STYLE_B1";
print " onClick=\"return ChMn('攻撃力を強化','10000')\"><br><b>防御力</b>  ";
print "<b style=\"color:#ff0080;\">NT</b>+$Y_ST[1]";
print "<input name=\"Cmode\" type=\"submit\" value=\"防御力強化\" $STYLE_B1";
print " onClick=\"return ChMn('防御力を強化','10000')\"><br><b>命中力</b>  ";
print "<b style=\"color:#ff0080;\">NT</b>+$Y_ST[2]";
print "<input name=\"Cmode\" type=\"submit\" value=\"命中力強化\" $STYLE_B1";
print " onClick=\"return ChMn('命中力を強化','10000')\"><br>";
}
print << " -----END-----";
<script language="JavaScript">
function ChMn(msg,mny){
if (mny > $CL_VALUES[1]){alert('資金が足りません。');return false;}
if (confirm(msg+'します。\\n費用(\$'+mny+')\\nよろしいですか?') == true){
return true;}else{return false;}
}
</script>
↑↑↑ここまで↑↑↑

下記に入れ替えてください。

if ($PL_VALUES[6] == 1){
print "<input name=\"Cmode\" type=\"submit\" value=\"HP強化\" $STYLE_B1";
if ($Y_HP[1] < $YOUSAI_MAXHP){
print " onClick=\"return ChMn('HPを強化','50000')\">";
}else{print " onClick=\"return MAX()\">";}
print "<br><b>攻撃力</b>  <b style=\"color:#ff0080;\">NT</b>+$Y_ST[0]  ";
print "<input name=\"Cmode\" type=\"submit\" value=\"攻撃力強化\" $STYLE_B1";
if ($Y_ST[0] < $YOUSAI_MAXAT){
print " onClick=\"return ChMn('攻撃力を強化','2000')\">";
}else{print " onClick=\"return MAX()\">";}
print "<br><b>防御力</b>  <b style=\"color:#ff0080;\">NT</b>+$Y_ST[1]  ";
print "<input name=\"Cmode\" type=\"submit\" value=\"防御力強化\" $STYLE_B1";
if ($Y_ST[1] < $YOUSAI_MAXGU){
print " onClick=\"return ChMn('防御力を強化','2000')\">";
}else{print " onClick=\"return MAX()\">";}
print "<br><b>命中力</b>  <b style=\"color:#ff0080;\">NT</b>+$Y_ST[2]  ";
print "<input name=\"Cmode\" type=\"submit\" value=\"命中力強化\" $STYLE_B1";
if ($Y_ST[2] < $YOUSAI_MAXWM){
print " onClick=\"return ChMn('命中力を強化','2000')\"><br>";
}else{print " onClick=\"return MAX()\">";}
}
print << "-----END-----";
<script language="JavaScript">
function ChMn(msg,mny){
if (mny > $CL_VALUES[1]){alert('資金が足りません。');return false;}
if (confirm(msg+'します。\\n費用(\$'+mny+')\\nよろしいですか?') == true){
return true;}else{return false;}
}
function MAX(){alert('これ以上強化出来ません。');return false;
}
</script>

−−−−−−−−−−−−−
注意:タブが消えちゃってるのでちゃんと加えてないとエラーになっていましますのでご注意下さい。

     ↓ここにタブを挿入。「”」の後です。
print << "-----END-----";
||||||要塞ステータスに上限をつけたいという方はどうぞ(笑)

訂正(2001.11.27):数カ所「”」が不要なのにいれていましたm(__)m|||end||| cookbook|||2001/10/13/Sat|||14:17:52|||aaNeaACP21Hfw|||その他|||GÅ∫α|||gasa@geocities.co.jp|||GÅ∫α's EBS|||http://www2.inforyoma.or.jp/~gasa/EB/bbs2_cgi.txt|||10|||国別BBSの改造で、個人宛、別国家宛にメッセージを。Ver2.1|||なんだか、入らないので、本体は、URL指定します。
http://www2.inforyoma.or.jp/~gasa/EB/bbs2_cgi.txt

それと、Ver2.0でメインのSTATUS画面に新着確認機能を追加。
ver2.1では、色指定、ログファイル名の設定を簡単にしました。バグも改修しています。(^^;

config.cgiの最後くらいに
###############################################################################################
#●国別掲示板ログデータファイル名(ebs_bbs.cgiの設定と合わせてください)
$BBSDATANM = 'ebs_bbs.dat';
###############################################################################################

ebs_sub3.cgiのsub STATUSの中で、 $CL_VALUES[0]='#808080' if !$PL_VALUES[5]; の行の後に
###############################################################################################

# MailCheck 2001/10/12
@pair = split(/; /, $ENV{'HTTP_COOKIE'});
foreach (@pair) {my($key, $value) = split(/=/, $_);$DUMMY{$key} = $value; }
@pairs = split(/,/, $DUMMY{'EBBBS'});
foreach (@pairs) {my($key, $value) = split(/:/, $_);$COOKIEBBS{$key} = $value; }
&LOCK;
open(IN,$BBSDATANM);
@bbslines = <IN>;
close(IN);
&UNLOCK;
$bb=0;
$mailari=0;
foreach (@bbslines) {
($pname,$pcountry,$pcomment,$pdate,$picon,$pto) = split(/<>/);
if(1 <= $bb) { last; }
if( ($PL_VALUES[5] eq $pcountry) || ($FORM{'pname'} eq $pto) || ($FORM{'pname'} eq $pname) ) {
$mailari=1 if ($pdate ge $COOKIEBBS{'lastcheck'} );
$bb++;
}
}
# MailCheck 2001/10/12
###############################################################################################

そして、 print "$PL_VALUES[28]</font></td></tr>"; の行を分解して
###############################################################################################

print "$PL_VALUES[28]</font>";
print "<img src=$IMG_FOLDER1/mail.gif><font color=red>新着発言有り</font>" if $mailari==1;
print "</td></tr>";

###############################################################################################
こうします。

すると、国名の右にmail.gifの画像がでます。
このデータは、config.cgiの$IMG_FOLDER1のフォルダーの中に入れてください。
ま、ほかの場所にする場合は、適当に変えればいいかと。

mail.gifは、適当な画像をどこかからとってきてください。
ポストの口から手紙が出てくるようなアニメーションGIFとかがいいですね。

では。

||||||マシマロさんの国別掲示板を元に個人宛、国家宛のメッセージを送れるように改造しました。
元のスクリプトからは、かなり、変わってます(^^;
クッキーを利用した、新着表示もVer2.0から対応。
|||end||| cookbook|||2001/10/13/Sat|||23:11:24|||aaMjJHXGBV44I|||バグ|||Hiromichi|||hiromichi_f@yahoo.co.jp||||||http://|||10|||アイコンが表示されないなどのバグキャラ消去プログラム|||#!/usr/local/bin/perl
#_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
#
# The Endless Battle sub program.
# Copyright Hiromichi All Rights reserved
# バグキャラ削除スクリプト V0.8
#
# 当方での動作確認は済んでいますが全ての方が正常動作を
# しない可能性があります。
#免責事項:このプログラムを使用しての全ての不具合に付いては責任を負いかねます。
#
#_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
#設定
$LOG_FOLDER = 'log'; #必ずEB-Sの$LOG_FOLDERと同じにしてください。
#_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/

require 'ebs_sub1.cgi';

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

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

sub BUG_DEL {&PL_IKOU2;}

sub PL_IKOU2{
&HEADER;&LOCK;&DBM_INPORT(P);$Uname="$FORM{'plname'}";
print << "-----END-----";
<table width=100% height=100%><tr><td align=center>
<table class=font9 cellspacing=3 cellpadding=3 bgcolor="#909090">
<tr><td bgcolor=#404040 colspan=3><b>バグキャラ削除</b></td></tr>
-----END-----
while (my($uname,$val) = each %P){
@VALS = split(/\s/,$val);

print << "-----END-----";
<form>
<tr><td>
UserName/$uname
</td></tr>
</form>
-----END-----
#現在、アイコンなし($VALS[27])&最終行動時間($VALS[26])が
#ない者を削除対象としています。状態に応じて変更してください。
if ($VALS[27] ne '' && $VALS[26] ne ''){
dbmopen (%PL,'./$LOG_FOLDER/tmpfiles',0666);
$PL{"$uname"} = "@VALS";
dbmclose (%PL);next;}else{next;}

print "</td></tr></table></body>";}
rename ("./$LOG_FOLDER/logdata","./$LOG_FOLDER/logdata.bak");
rename ("./$LOG_FOLDER/tmpfiles","./$LOG_FOLDER/logdata");
&UNLOCK;
}
||||||タイトルの通りです。バグキャラ消去プログラムです。|||end||| cookbook|||2001/10/16/Tue|||00:08:41|||aaiE5Mb1T3F9Y|||戦闘|||どんちゃん||||||||||||10|||国家の戦略発動時間の変更|||ebs_sub5.cgiの210行目付近の(もちろんいじってないスクリプトのですよ)
print "戦略期間:<select name=kikan $STYLE_L onChange=\"YOSAN()\"><option value=1>6時間<option value=2>12時間<option value=4>24時間</select><br>";
print "<input name=\"Cmode\" type=\"submit\" value=\"発動\" $STYLE_B1 onClick=\"return ChMn()\">";

の部位の記述。option value=の数値を設定したい単位の倍数にします。
1,3,6,12,24時間にするなら、

print "戦略期間:<select name=kikan $STYLE_L onChange=\"YOSAN()\"><option value=1>1時間<option value=3>3時間<option value=6>6時間<option value=12>12時間<option value=24>24時間</select><br>";

こう書き換えます。

さらに、ebs_sub3.cgiの330行前後の

$CL_VALUES[7]=time+21600*$FORM{'kikan'};$CL_VALUES[1]-=$FORM{'dmmy'};

の部位の21600を設定した時間の単位にします。
デフォルトでは一番短い時間は6時間です。秒数で表すと21600です。
つまり、一番短かく設定する時間を書き込みます。
1時間から作るなら1*60*60=3600なので3600に変更します。

以上で戦略発動時間が変更されます||||||簡単にいじれそうな戦略発動時間。
ところがちょいと複雑だったりします。
私もHiromichiさんに教えてもらった事なのですが、過去ログ流れてしまっているようなので
Hiromichiさんに変わっての投稿です^^|||end|||