トップ 差分 一覧 ソース 検索 ヘルプ PDF RSS ログイン

メルアド登録制度

  • 青色は、改造箇所を示します。ファイル名: ルーチン名: 行番号 を示します。
  • 黒色文字は、「改造前の状態」を示します。
  • テキストボックスの中のプログラムを、該当の場所に上書きして下さい。

メルアド登録制度 Ver 1.01 ★★★★★☆☆☆

メールアドレスの登録を義務付ける改造です。※サーバーに sendmail が必須です。
新規登録時にメルアドを入力し、パスワードは自動生成します。生成されたパスワードは登録されたメルアド宛てに送信されるので、偽のメルアドでは登録が出来ません。
※この 改造を取り入れる際には、併せて 【 改造者表示 】 の改造を取り入れて頂けると嬉しいです。(非強制)

履歴
2007/03/04 Wikiにて公開      
2003/08/19 Version 1.01 ゲーム再開の都度、再登録が必要となっていたバグを修正致しました。 
2003/08/14 Version 1.00 公開 


この改造について

● sendmail が使えるサーバーである事が必須条件です。 sendmail が使えなくてもエラーメッセージは出ませんのでご注意下さい。
  sendmail が使えるかどうかは、サーバーの説明書をご確認下さい。
● 登録時にメルアドを入力させ、それを元にメールを自動発信します。この為、荒らしによるイタヅラなどには十分ご注意下さい。
  特に、数日間管理が出来なくなる場合には、新規登録を一時停止する事が望ましいです。
  (※ 同一アドレスには1通しかメールを送らない仕様としています)
● パスワードの生成に メールアドレス上位8桁を利用し、また乱数の2桁を種とする crypt による暗号パスワードを生成しています。
   crypt は不可逆暗号化であり、また万一解読される事があってもメルアド上位8桁しか解読できません。
● メールアドレスは一つのファイルに記録しています。個人情報の漏洩を防ぐ為、 次の点を必ず厳守して下さい。
 ○  $maillistdat で指定するファイル名は必ず変更して下さい。
 ○ ファイルの拡張子は出来るだけ .cgi として下さい。
 ○ 外部から直接アクセス出来ないパスを指定できる場合には、そのパスを利用する様にして下さい。
 ○ 可能な場合には、データファイルのパーミッションを600として下さい。(通常666|606です)


当改造における追加利用規約

● この改造、又は改変した物を、下記に定める条件を逸脱して利用する事を禁止します。
 ○ Script of SAGA の運営の為にのみ利用する事。
 ○ (例えメールの一部分であっても)広告や宣伝文などを送信しない事。
 ○ 非営利目的に限定して利用する事。
● この改造を利用、又は改造した結果、収集したメールアドレスを、下記に定める条件を逸脱して利用する事を禁止します
 ○ Script of SAGA の運営の為にのみ利用する事。
 ○ 非営利目的に限定して利用する事。
 ○ 部外者にメールアドレスを提供しない事。
● この改造を利用、又は改造して、悪用することを禁止します。
● この改造を、改造の有無に関わらず再配布する行為を禁止します。

● 上記の規約に違反した場合、【送信したメール一通につき 金¥1,000- の送信機能利用料を支払う事に同意した物と致します。】
● 上記の規約に違反した場合、【この改造で収集したメールアドレス1アドレスにつき 金 \50,000- のアドレス収集機能利用料を支払うに同意した物と致します。
● この改造を利用する場合、上記の追加利用規約および他に定める利用規約の全てに同意が必要です。
  これより先に読み進めた時点で、これらに同意したものと致します。



本家版改造ポイント

◆改造ポイント01 メール送出ルーチンを追加します。


sionmail.cgi downloadしてお使い下さい。
1行目に、利用者のメールアドレスを設定して下さい(必須)。
2行目に、SOSを利用する為のURL(http://〜)を設定して下さい。(必須)
3行目に、sendmail のパスを設定して下さい。(サーバーの説明を調べてください)

ダウンロードしたファイルは、適当な名前をつけてアップロードします。
本体から require で読み出して動作させる為、パーミッションは(644|604)になります。

◆改造ポイント02 ファイルパスを設定します。


sos2.cgi # ---------- FILE PATH Line:31
$bitdat = './bit.dat'; # bit.datのパス 666(606)

※ sionmail,cgi のファイル名は改造ポイント1で設定したファイル名です。
※ 必ず maillist,cgi のファイル名を任意のファイル名に変更する事。

◆改造ポイント03 新規登録時、メールチェック/パスワード送出する様にします。


sos2.cgi # Sub New Game # Line:465-466
print qq|<tr><td>パスワード</td><td><input type=password name=pass></td></tr>\n|;
print qq|<tr><td>確認のためもう一度</td><td><input type=password name=pass2></td></tr>\n|;




sos2.cgi # Sub Make New # Line:501-503
if ($Fm{'pass'} eq "") { &error("パスワードを入力してください") }
if ($Fm{'pass'} ne $Fm{'pass2'}) { &error("2つのパスワードが一致しません") }
if ($def_pa && $Fm{'job'} eq $def_pb && $Fm{'pass'} !~ /$def_pp/) {




sos2.cgi # Sub Make New # Line:509
$Fm{'ps'} = $Fm{'pass'};



sos2.cgi # Sub Make New # Line:524
$Fm{'id'} = $id; &cookie_set; &play_form;

◆改造ポイント04 キャラ削除時のメールアドレスリストの修正を追加します。


sos2.cgi # Sub Delete After # Line:1833
unlink("$usrdir$id\.dat");



sos2.cgi # Sub Find to Delete # Line:1985 Ver1.01修正
if ($now > $tm && $ps ne $admpas) { unlink("$usrdir$id\.dat") }

◆改造ポイント05 既存キャラにもメールアドレス登録を義務付ける場合の改造。

{{FONT color="#FF00FF",○ 既存キャラにはメルアド登録免除の場合は不要。}}
{{FONT color="#FF00FF",○ 既存キャラが存在しない場合は不要。}}

sos2.cgi # Sub Continue Game # Line:490
print qq|<tr><td>4桁のID</td><td><input type=password name=id value="$c_id"></td></tr>\n|;



sos2.cgi # Sub Make Continue # Line:536
$Fm{'ps'} = $Fm{'pass'};

◆改造ポイント06 UFS用の改造。


ufs2.cgi # ---------- FILE PATH Line:32
$bitdat = './bit.dat'; # bit.datのパス 666(606)

※ 改造ポイント2 sos2.cgi に合わせてください。


ufs2.cgi # Sub Recover Player # Line:766
&admin;



ufs2.cgi # Sub Delete # Line:776
&admin;

dollEx版改造ポイント

◆改造ポイント01 メール送出ルーチンを追加します。


sionmail.cgi downloadしてお使い下さい。
1行目に、利用者のメールアドレスを設定して下さい(必須)。
2行目に、SOSを利用する為のURL(http://〜)を設定して下さい。(必須)
3行目に、sendmail のパスを設定して下さい。(サーバーの説明を調べてください)

ダウンロードしたファイルは、適当な名前をつけてアップロードします。
本体から require で読み出して動作させる為、パーミッションは(644|604)になります。

◆改造ポイント02 ファイルパスを設定します。


ini/perl.cgi # ------------ PERL PATH Line:25
$usepl = './perl/use.cgi'; # use.plのパス 644

※ sionmail,cgi のファイル名は改造ポイント1で設定したファイル名です。


ini/filepath.cgi # ---------- SOS FILE PATH Line:13
$sosikidat = './dat/sosiki.cgi'; # sosiki.datのパス 666(606)

※ 必ず maillist,cgi のファイル名を任意のファイル名に変更する事。

◆改造ポイント03 新規登録時、メールチェック/パスワード送出する様にします。


login.cgi # Sub New Game # Line:36-37
print qq|<tr><td>パスワード</td><td><input type=password name=pass></td></tr>\n|;
print qq|<tr><td>確認のためもう一度</td><td><input type=password name=pass2></td></tr>\n|;




perl/option.cgi # Sub Make New # Line:120-122
if ($Fm{'pass'} eq "") { &error("パスワードを入力してください") }
if ($Fm{'pass'} ne $Fm{'pass2'}) { &error("2つのパスワードが一致しません") }
if ($def_pa && $Fm{'job'} eq $def_pb && $Fm{'pass'} !~ /$def_pp/) {




perl/option.cgi # Sub Make New # Line:131
$Fm{'ps'} = $Fm{'pass'};



perl/option.cgi # Sub Make New # Line:144
$Fm{'id'} = $id; &cookie_set; require $formpl; &play_form;

◆改造ポイント04 キャラ削除時のメールアドレスリストの修正を追加します。


perl/motion.cgi # Sub Delete After # Line:143
unlink("$usrdir$id\.dat");



perl/any.cgi # Sub Find to Delete # Line:93
if ($now > $tm && $ps ne $admpas) { unlink("$usrdir$id\.dat") }

◆改造ポイント05 既存キャラにもメールアドレス登録を義務付ける場合の改造。

{{FONT color="#FF00FF",○ 既存キャラにはメルアド登録免除の場合は不要。}}
{{FONT color="#FF00FF",○ 既存キャラが存在しない場合は不要。}}

login.cgi # Sub Continue Game # Line:59
print qq|<tr><td>4桁のID</td><td><input type=password name=id value="$c_id"></td></tr>\n|;



perl/option.cgi # Sub Make Continue # Line:154
$Fm{'ps'} = $Fm{'pass'};

◆改造ポイント06 UFS用の改造。


ufs/other.cgi # Sub Recover Player # Line:90
&admin;



ufs/other.cgi # Sub Delete # Line:102
&admin;