cookbook|||2001/10/01/Mon|||18:45:34|||aaQSqAReePlq6|||武器|||ポロポロ|||iet_hot@hotmail.com||||||http://|||10|||予備武器数変更改造用のスクリプトとヒントその1|||#!/usr/local/bin/perl
#------------------------------------------------------
# 予備武器移行用CGI
#------------------------------------------------------
require 'ebs_sub1.cgi';
print "Content-type: text/html\n\n";
print << "-----END-----";
<!DOCTYPE HTML PUBLIC -//IETF//DTD HTML//EN>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=x-sjis">
<title>\予\備武器移行用CGI</title>
</head>
<body>
-----END-----
&LOCK;
dbmopen (%PL,"$DBM_P",0666);
%PL_BUFF=%PL;
dbmclose %PL;
while (($name,$value) =each %PL_BUFF) {
@PL_VALUES = split(/\s/,$value);
$YOBIL_VALUES[0] = $PL_VALUES[10];
$YOBIL_VALUES[1] = $PL_VALUES[11];
$YOBIL_BUFF{"$name"} = "@YOBIL_VALUES";
}
dbmopen (%YOBIL,"$DBM_YOBI",0666);
%YOBIL = %YOBIL_BUFF;
dbmclose %YOBIL;
&UNLOCK;
print << "-----END-----";
\予\備武器の移行終了!\n
</body>
</html>
-----END-----
||||||改造の方に投稿した予備武器数変更の改造用の
データ移行スクリプトです。
予備武器の改造を行ったCGIをアップした直後に
下記のCGIを実行してください。
使用方法は下記の内容を全て新しいファイルにコピーして
保存してください。
そして、保存したファイルをEBSと同じディレクトリにアップして
ブラウザでアップしたCGIにアクセスすれば終了です。
ファイル名はなんでもいいのですが、必ず拡張子は
.cgiにしてください。
|||end|||
cookbook|||2001/10/02/Tue|||23:09:36|||aaqPiZY5xR5l.|||武器|||ポロポロ|||iet_hot@hotmail.com||||||http://|||10|||予備武器数変更改造用のスクリプトとヒントその2(10/17 修正)|||master.cgi(データ修正スクリプトVer4.3)の以下の場所を修正
29行目の下に下記を追加
$COLSPAN_COUNT=33+$WEAPON_MAX;
115行目の下に下記を追加
&DBM_INPORT(YOBI);
for($i = 0; $i < $WEAPON_MAX; $i++){
$YOBI_TITLE_STR.="<td>\予\備$i</td>";
}
139行目を下記と置き換え
<tr><td>NO.</td><td>$c </td><td>プレイヤーネーム</td><td>階級データ</td><td>戦歴</td><td>PASS</td><td>MSネーム</td><td>成長タイプ</td><td>所属国</td><td>国内ランク</td><td>コメント</td><td>資金</td><td>武器</td>$YOBI_TITLE_STR<td>性格</td><td>色</td><td>武器経験</td><td>HP</td><td>MAXHP</td><td>EN</td><td>MAXEN</td><td>AT</td><td>GU</td><td>SP</td><td>HIT</td><td>改造回数</td><td>熟練</td><td>修理状態</td><td>時間</td><td>画像</td><td>部隊</td><td>LV</td><td>EX</td><td>選択</td></tr>
144行目と下記を置き換え
@YOBI_VALS = split(/\s/,$YOBI{"$key"});
$YOBI_DATA_STR='';
for($i = 0; $i < $WEAPON_MAX; $i++){
$YOBI_DATA_STR.="<td>".$YOBI_VALS[$i]."</td>";
}
print "<tr><td>$ET</td><td>$c </td><td>$key</td><td>$VALS[0]</td><td>$VALS[1]</td><td>$VALS[2]</td><td>$VALS[3]</td><td>$VALS[4]</td><td>$VALS[5]</td><td>$VALS[6]</td><td>$VALS[7]</td><td>$VALS[8]</td><td>$VALS[9]</td>$YOBI_DATA_STR<td>$VALS[12]</td><td>$VALS[13]</td><td>$VALS[14]</td><td>$VALS[15]</td><td>$VALS[16]</td><td>$VALS[17]</td><td>$VALS[18]</td><td>$VALS[19]</td><td>$VALS[20]</td><td>$VALS[21]</td><td>$VALS[22]</td><td>$VALS[23]</td><td>$VALS[24]</td><td>$VALS[25]</td><td>$VALS[26]</td><td>$VALS[27]</td><td>$VALS[28]</td><td>$VALS[29]</td><td>$VALS[30]</td><td><a href=\"javascript:syusei('$key')\">修正</a></td></tr>";
166行目の下に下記を追加
&DBM_INPORT(YOBI);
@YOBI_VALS = split(/\s/,$YOBI{"$FORM{'plname'}"});
for($i = 0; $i < $WEAPON_MAX; $i++){
$YOBI_TITLE_STR.="<td>\予\備$i</td>";
$YOBI_DATA_STR.="<td>$YOBI_VALS[$i]</td>";
$YOBI_FORM_STR.="<td><input type=text name=\"yobipara$i\" value=\"$YOBI_VALS[$i]\"></td>";
}
188行目を下記と置き換え
<tr><td>NO.</td><td>$c </td><td>名前</td><td>階級データ</td><td>戦歴</td><td>PASS</td><td>MSネーム</td><td>成長タイプ</td><td>所属国</td><td>国内ランク</td><td>コメント</td><td>資金</td><td>武器</td>$YOBI_TITLE_STR<td>性格</td><td>色</td><td>武器経験</td><td>HP</td><td>MAXHP</td><td>EN</td><td>MAXEN</td><td>AT</td><td>GU</td><td>SP</td><td>HIT</td><td>改造回数</td><td>熟練</td><td>修理状態</td><td>時間</td><td>画像</td><td>部隊</td><td>LV</td><td>EX</td><td>修正</td></tr>
193,194行目の2行を下記と置き換え
<input type=text name="para0" value="$VALS[0]"></td><td><input type=text name="para1" value="$VALS[1]"></td><td><input type=text name="para2" value="$VALS[2]"></td><td><input type=text name="para3" value="$VALS[3]"></td><td><input type=text name="para4" value="$VALS[4]"></td><td><input type=text name="para5" value="$VALS[5]"></td><td><input type=text name="para6" value="$VALS[6]"></td><td><input type=text name="para7" value="$VALS[7]"></td><td><input type=text name="para8" value="$VALS[8]"></td><td><input type=text name="para9" value="$VALS[9]"></td>
< $YOBI_FORM_STR<td><input type=text name="para12" value="$VALS[12]"></td><td><input type=text name="para13" value="$VALS[13]"></td><td><input type=text name="para14" value="$VALS[14]"></td><td><input type=text name="para15" value="$VALS[15]"></td><td><input type=text name="para16" value="$VALS[16]"></td><td><input type=text name="para17" value="$VALS[17]"></td><td><input type=text name="para18" value="$VALS[18]"></td><td><input type=text name="para19" value="$VALS[19]"></td><td><input type=text name="para20" value="$VALS[20]"></td>
200行目を下記と置き換え
print "<tr><td>☆</td><td>$c </td><td>$FORM{'plname'}</td><td>$VALS[0]</td><td>$VALS[1]</td><td>$VALS[2]</td><td>$VALS[3]</td><td>$VALS[4]</td><td>$VALS[5]</td><td>$VALS[6]</td><td>$VALS[7]</td><td>$VALS[8]</td><td>$VALS[9]</td>$YOBI_DATA_STR<td>$VALS[12]</td><td>$VALS[13]</td><td>$VALS[14]</td><td>$VALS[15]</td><td>$VALS[16]</td><td>$VALS[17]</td><td>$VALS[18]</td><td>$VALS[19]</td><td>$VALS[20]</td><td>$VALS[21]</td><td>$VALS[22]</td><td>$VALS[23]</td><td>$VALS[24]</td><td>$VALS[25]</td><td>$VALS[26]</td><td>$VALS[27]</td><td>$VALS[28]</td><td>$VALS[29]</td><td>$VALS[30]</td><td><a href=javascript:tyousei(\"$FORM{plname}\")>決定</a></td></tr>";
251行目の下に下記を追加
dbmopen(%YOBI,"$DBM_YOBI",0666);
@YOBI_VALS = split(/\s/, $YOBI{"$FORM{'plname'}"});
for($i = 0; $i < $WEAPON_MAX; $i++){
$YOBI_VALS[$i]=$FORM{'yobipara'.$i};
}
$YOBI{"$FORM{'plname'}"} = "@YOBI_VALS";
dbmclose %YOBI;
257行目の下に下記を追加
&DBM_INPORT(YOBI);
267行目の下に下記を追加
@YOBI_VALS = split(/\s/,$YOBI{"$key"});
269行目の下に下記を追加
$YOBI_VALS = "$key<>";
for($i = 0; $i < $WEAPON_MAX; $i++){
$YOBI_VALS .= "$YOBI_VALS[$i]<>";
}
$YOBI_VALS .= "\n";
271行目の下に下記を追加
print OUT $YOBI_VALS;
480〜482行目を下記と置き換え
dbmopen (%P,"$DBM_P",0666);dbmopen (%YOBI,"$DBM_P",0666);
delete $P{"$FORM{'plname'}"};
delete $YOBI{"$FORM{'plname'}"};
dbmclose %YOBI;dbmclose %P;
colspan=35を全てcolspan=$COLSPAN_COUNTに置き換え
以上で改造終了です。
各行数は改造を追加していないときの行数なので上から順番に
改造すると行数はズレますので注意してください。
一番下の改造から行えばズレずにすむと思います。
||||||改造の方に投稿した予備武器数変更の改造後、
マシマロさんのデータ調整スクリプトを使用するための
改造です。
予備武器数変更の改造を行っていない方はこの改造を
行わないでください。予備武器の修正が出来なくなります。
なお、この改造はデータ調整スクリプトVer4.3専用です。
10/17 Ver4.3用に修正|||end|||
cookbook|||2001/10/03/Wed|||01:59:45|||aatlh6CkeuIzg|||その他|||くり|||||||||http://|||10|||国民の追放|||◆ebs.cgi
48行目に追加
sub DEL_UNIT {require 'ebs_sub5.cgi';&DEL_UNIT;}
◆ebs_sub3.cgi
363行目に追加
/^解雇$/ && $PL_VALUES[5] && $PL_VALUES[6] == 1 && do{&DBM_INPORT(P);
while (my($key,$value) = each %P){my@VS_VALUE = split(/\s/,$value);
if ($FORM{'delunit'} eq $key) {
$VS_VALUE[5]='';
$VS_VALUE[6]='0';
$VS_VALUE[28]='';
dbmopen (%PL,"$DBM_P",0666);$PL{"$FORM{'delunit'}"}="@VS_VALUE";dbmclose %PL;
}
}
last CUSTOM;};
◆ebs_sub5.cgi
189行目に追加
$sp.= "<input name=\"custom\" type=\"submit\" value=\"解雇\" $STYLE_B1 onClick=\"document.Ms.cmd.value='DEL_UNIT';\">" if $PL_VALUES[6] == 1 && $PL_VALUES[5];
367行目に追加
sub DEL_UNIT{
&LOCK;&DBM_CONVERT('P',"$FORM{pname}");&DBM_CONVERT('C',"$PL_VALUES[5]");&UNLOCK;
@pair = split(/\;/, $ENV{'HTTP_COOKIE'});
foreach (@pair) {my($key, $value) = split(/=/, $_);$DUMMY{$key} = $value;}
@pairs = split(/\,/, $DUMMY{'EB'});
foreach (@pairs) {my($key, $value) = split(/\:/, $_);$COOKIE{"$key"} = $value;}
&ERROR('COOKIEが無効になっています。') if !$COOKIE{'pname'};
&DBM_INPORT(P);
@PL_VALUES = split(/\s/,$P{"$COOKIE{'pname'}"});
&DBM_CONVERT('C',"$PL_VALUES[5]");
&CUSTOM_HEADER('Main');
if ($PL_VALUES[6] == 1 && $PL_VALUES[5]){
&JScfm(checkInteam,"解雇します。よろしいですか?");
print "<tr><td $BgColor><br> ユニット<br>\n";
print " <select name=delunit $STYLE_L>\n";
foreach $Key (sort {$P{$b} <=> $P{$a}} keys %P){
@VALUES = split(/\s/,$P{$Key});
if ($PL_VALUES[5] && $PL_VALUES[5] eq $VALUES[5] && $VALUES[6] ne 1)
{print "<option value=\"$Key\">$Key\n";}
}
print "</select>\n";
print "<input name=\"Cmode\" type=submit value=\"解雇\"";
print " $STYLE_B1 onClick=\"return checkInteam()\"></td></tr>\n";
print "</form></table>\n";
}else{print "<tr><td $BgColor><b>解雇コマンドは使用できません。</b></td></tr></table>";}
&FOOTER;
}
||||||総帥権限で国民を追放することが出来ます。
初めての改造でつたないソースですが、とりあえず動作します。
詳しい方に書き直して頂けると幸いです。
|||end|||
cookbook|||2001/10/04/Thu|||02:29:22|||aaqPiZY5xR5l.|||バランス|||ポロポロ|||iet_hot@hotmail.com||||||http://|||10|||能力の最大値を変更|||ebs_sub4.cgiの424,425行目を下記の2行に変更
$C=$PL_VALUES[23];$C=6 if $C > 6;
$StatusMax=('20','30','35','40','50','60','65')[$C];
ebs_sub1.cgiの115行目からの4行を下記に修正
my $c=int $_[0]/5;$c=0 if $c < 0;$c=13 if $c > 13;
my $C_C=('#5000CC','#8000ff','#a000e5','#bf00cc','#df00a6','#ff0080','#f7e957',
'#f7e957','#f7e957','#ff0080','#ff0080','#ff0080','#ff0080','#ff0080')[$c];
my $C_R=('F','E','D','C','B','A','S','SS','SSS','ACE','NT','NT1','NT2','NT3')[$c];
ebs_sub3.cgiの69〜72行目の「50」を4つとも
追加したステータスの最大値に変更。
最大値が65の場合、69行目は「$AT=int(($PL_VALUES[19]/65)*30);」。
ebs_sub6.cgiの424行目とebs_sub7.cgiの125,127,129,131,159〜162行目の「50」と記述
してあるところをすべてステータスの最大値に修正。
以上でOKだと思います。
カスタムの回数を一応増やしていますが、増やす必要がないなら
ebs_sub4.cgiの424、425行目の修正を行わず、
425行目の「'50'」を「'65'」にするだけでいいです。
||||||能力の最大値を変更する改造です。
この改造では最大値を65まで、ランクをNT1、NT2、NT3の3つ
増やしています。
この改造を行ったサイトから、他のサイトへのデータの移動は
しないでください。嫌がられます(^^;
他のサイトも同じ改造を行っていて了承が得られればいいと
思いますが。|||end|||
cookbook|||2001/10/04/Thu|||20:24:13|||aaQSqAReePlq6|||武器|||ケアヴェグ||||||ケアヴェグの燃える島|||http://isweb26.infoseek.co.jp/play/amsmsato/|||10|||特殊能力追加|||1.乱射
require "./$LOG_FOLDER/$HASH_DATA";
@Pl_W=split(/\,/,$WEAPON_LIST{"$PL_WN"});
@Vs_W=split(/\,/,$WEAPON_LIST{"$VS_WN"});
↑この辺りの下に
#乱射
$Pl_W[3] = int (rand ($Pl_W[3]))+1 if $Pl_W[7] =~ m/7/;
$Vs_W[3] = int (rand ($Vs_W[3]))+1 if $Vs_W[7] =~ m/7/;
を追加。(特殊能力記号を7にする場合)
2.リフレクト
上と同じ辺りに・・
#リフレクト
$Pl_W[1] = int ($Pl_W[1] + $Vs_W[1]) if $Pl_W[7] =~ m/5/;
$Vs_W[1] = int ($Vs_W[1] + $Pl_W[1]) if $Vs_W[7] =~ m/5/;
を追加。(特殊能力記号を5にする場合)
3.貫通
$plbs=int ($PL_VALUES[20]+7) if $Pl_W[7] =~ m/4/
$vsbs=int ($VS_VALUES[20]+7) if $Vs_W[7] =~ m/4/
これを・・・
$plbs=int ($PL_VALUES[20]+7) if ($Pl_W[7] =~ m/4/)&($Vs_W[7] !~ m/6/);
$vsbs=int ($VS_VALUES[20]+7) if ($Vs_W[7] =~ m/4/)&($Pl_W[7] !~ m/6/);
これに変更(注意:追加じゃないよ。これに変えて)
(特殊能力記号を6にする場合)
4.幸運
「経験値を獲得」と書いてあるあたりにある
$PL_VALUES[30]+=$PL_In[4];
の1行上に
$PL_Ln[4] *= 2 if $Pl_W[7] =~ m/8/;
$PL_In[2] *= 2 if $Pl_W[7] =~ m/8/;
$PL_In[0] *= 2 if $Pl_W[7] =~ m/8/;
を追加。
(特殊能力記号を8にする場合)
これでうちのサイトはちゃんと動いてます・・多分大丈夫です(ぉぃ||||||掲示板で要望のあった特殊能力の改造をば。
1.乱射
2.リフレクト
3.貫通
4.幸運
(特に注がないかぎりebs_sub4をいじります)|||end|||