dicechat for SwordWorld RPG v1.3 (dicechat v3.2) 2001/09/19 掛屋丈二 < ascallis@geocities.co.jp > =============================================================================== <使用上の注意> ・このスクリプトは、KENT WEBさんのPonny Chatに、ログ保存機能、ログ表示機能、及びダイスロール(サイコロ)、レーティング処理を追加した物です。 ・このスクリプトはフリーウェアですが、Ponny ChatはKENT WEBさんに、改変部分は掛屋丈二に著作権があります。著作権は放棄していませんので、ご注意下さい。 ・使用する際の規定に関しては、基本的にKENT WEBさんの規定に準じます。をご確認の上、使用なさってください。 ・『ソード・ワールドRPG』のゲームシステム部分に関しては、グループSNEもしくは富士見書房に著作権があります。設置に関しては、ルールブック、マスタースクリーンなど、レーティング表を記載してある富士見書房の出版物を所持していることが条件となります。所持していない方は、上記を購入してからご利用下さるようお願いします。 ・このスクリプトを使用して生じた損害に対して、掛屋は一切の責任を負いません。  なお、基本的な設置法などは、KENT WEBさんのウェブページを参考にしてください。  また、に設置してある掲示板に書き込んでいただければ、ある程度のサポートはいたします。 =============================================================================== <DiceChatの基本的な特徴> ・Ponny Chatの全ての特徴を兼ね備えます。 ・オンラインゲームなどに使用する目的で、サイコロを振る機能を追加したチャットです。1D2から10D100の間の任意のサイコロを振ることが出来ます。 ・ログ取り機能が付いています。流れてしまったログも、自動的にしっかり記録します。 <DiceChat v3.2について> ・秘話機能をつけました。 ・色例表示CGIをつけました。 ・ログ表示部分で、NPC発言を示すマークが表示されるようになりました。 <DiceChat for SwordWorld RPG v1.3について> ・レーティング処理を行うことが出来ます。 ・クリティカル値と、クリティカル機能のON / OFFを設定することができます。 ・レーティングボタンを2つに増やし、簡単に切り換えてレーティング処理を行うことを可能にしました。 ・レーティングの結果に修正値を追加できるようにしました。 ・GMchat.cgiをLite typeに変更しました。 =============================================================================== <設置> ・基本的な設置法などは、KENT WEBさんのウェブページを参考にしてください。 ・ZIP形式で圧縮されたファイルの中には、以下のファイルが入っています。その中で、readme.txtと本ファイルを除いた全てのファイルをpublic_html以下の任意のディレクトリへFTP転送します。全体のディレクトリ構成とファイル位置は以下のとおりです。  パーミッションは、ファイル名の後ろにあるかっこ内の数値に指定してください。 ただし、パーミッションの設定はプロバイダで規定されている場合もありますので、プロバイダのページで確認もしくは問い合わせを行ってから設定を行うようにして下さい。  なお、dicelog.txtは放っておくと1MBを超えるような巨大なファイルになりますので、適当な時期にバックアップを取るなどしてください。 ・ディレクトリ構成 public_html / index.html (トップページ) | +-- chat / index.html --> ダイスチャット入口 dicechat.cgi [755] GMchat.html --> GM用ダイスチャット入口 GMchat.cgi [755] dicechat.log [666] --> チャット用ログ(共通) log_view.cgi [755] --> ログビュアー dicelog.txt [666] --> ログビュアー用バックアップログ color_sample.cgi[755] --> 色例表示CGI config.pl [644] --> 共通設定ファイル jcode.pl [644] --> クイックモード仕様の場合は不要 rate.txt [644] --> レーティング表 =============================================================================== <ダイスチャットの使用法> ・ダイスチャットを使用する場合はindex.htmlを開いて下さい。名前を記入して入室ボタンを押すと、上フレームが発言ウィンドウへと切り替わります。戻るボタンを押した場合は、あらかじめ設定されたURLのページへと移動します。 ・通常の発言を行う場合は、発言欄に文字を記入して発言/更新と書かれたボタンを押します。なお、発言自動消去と書かれている前のチェックボックスをオンにしていると、発言後に欄内の文字を自動的に消去します。ただし、ブラウザによってはこの機能が使えない場合もあります。 ・消去ボタンを押した場合、発言欄に書かれている文字の消去と、全ての設定のクリアが行われます。設定というのは、名前色、リロード時間、使用するサイコロの種類、修正値、捕捉記入欄などになります。 ・サイコロを振りたい場合は、発言/更新ボタンのかわりにサイコロボタンを押して下さい。発言欄に記入があった場合は、サイコロの結果の前に発言が表示されます。 ・発言ウィンドウの中では、サイコロは2D6という具合に表示されます。Dの前の数字はサイコロを振る数を、後の方の数値はサイコロの種類をあらわしています。 ・修正値の追加  サイコロを振った結果に特定の数値を追加したい場合は、修正値を選択した後にサイコロボタンを押さなければなりません。  まず、ラジオボタンで修正値の入力方式を「プルダウンから選択」、「手動記入」、「修正値無し」から選択します。次に、プルダウンから加えたい場合はその数値を選択、手動で記入したい場合は半角英数で記号と数値を記入してください。  修正値は 2D6 → 5 + 1 + (-1) = 5 という具合に( )の中に表示されます。等号の後の数値は修正値を加えた後の合計となります。 ・補足項目の表示  補足と書かれている前にあるチェックボックスをオンにすると、発言およびサイコロの後に、欄内に書いた文字を記入することができます。発言とは別個に何かを書き込みたい場合は、この機能を利用して下さい。なお、この機能は単独では利用することができません。必ず、発言あるいはサイコロの結果と同時でなければログに記入されません。  チェックボックスをオフにしている時は、補足項目の記入欄内に何か書かれていても、その内容がログに書き込まれることはありません。 ・秘話機能の使用  秘話機能を使う場合には、秘話相手の発言がログ表示部分にある必要があります。このときに「秘話機能」ボタンを押すと、発言フォーム部分に「秘密のお話」と書かれたチェックボックスと相手の記されたプルダウンメニューが表示されます。あとは、チェックボックスにチェックを入れ、相手を選んで発言すれば、その発言(サイコロ含む)は秘話として発言されます。  サイコロを隠して振りたい場合などに、自分を相手に選んでサイコロを振る、などと言った使用方法もできるでしょう。  新たに参加した人を秘話相手に選びたい場合は、もう一度、「秘話機能」ボタンを押してください。ただし、このとき、ログ表示部分に発言がなかった参加者は、「お相手」プルダウンメニューから消えてしまうので、ご注意下さい。  また、秘話機能ボタンを押した際、名前色、リロード時間は入室時の値へと戻ります。入室後にこれらの値を変更していた場合は、お手数ですがもう一度設定し直してください。 ・過去ログの表示  入室ウィンドウの下の方には、過去ログというボタンがあります。過去ログのボタンを押した場合は、別のフレームにこれまでの全ての発言記録が表示されます。  入室後の発言ウィンドウの内部にも過去ログボタンがあります。これを押した場合も同様に、新しいウィンドウで過去ログが表示されます。 ・設定のCookieへの保存  「cookieに保存」と書かれたボタンを押すことによって、名前、パスワード、名前色、リロード時間、補足をCookieに保存することが出来ます。設定をCookieに保存することによって、次回入室時、各設定を再記入する必要がなくなります。  設定を保存、反映するためには、Cookie及びJavaScriptを使えるようブラウザを設定していなければなりません。  また、Internet Explorerを使用している場合、最初の一回は上手くCookieが保存されない場合もあります。その場合、一度Internet Explorerを終了し、再度立ち上げることにより、保存されるようになります。 <GM用チャットの使用法>  GM用チャットを使用する場合はGMchat.htmlを開いて下さい。基本的な使用法はダイスチャットと同じです。 ・発言名の変更  GM用チャットでは、名前を切り替えて発言することができます。1つは入室時に記入した名称で固定されますが、残りは入室後に自由に設定することができます。発言名はラジオボタンで切り替えます。名前の後にあるプルダウンから名前色を選択することも可能です。 <レーティング処理の使用法/dicechat、GMchat共通> ・レーティング処理  レーティング処理を行う場合は、キーナンバー、修正値をプルダウンで決定し、「rating 1/rating 2」と書かれたボタンを押してください。キーナンバーの初期値、修正値の初期値はそれぞれ0となっています。 ・クリティカル処理  クリティカル処理を行う場合は、「クリティカル値」と書かれた部分の左側にあるチェックボックスにチェックを入れ、クリティカル値をプルダウンの中から決定した後、「rating」と書かれたボタンを押してください。クリティカル値の初期値は0となっています。  また、クリティカル処理には回数制限があります。10回以上クリティカルした場合、そこでクリティカル処理は終了します。もし、10回以上クリティカルした場合、もう一度レーティング処理を行ってください。 <色例表示CGIの使用法> ・「色の例」と書かれたボタンを押すことによって別ウィンドウが開き、名前色として選択可能な色の表示例を見ることが出来ます。 <過去ログ>  過去ログを個別に表示したい場合は、log_view.cgiを開いて下さい。上下に分かれたフレームで、過去の全ての発言が表示されます。 ・秘話当事者が過去ログ内の秘話部分を参照したい場合は、「お名前」に秘話を行った際の名前を、「パスワード」にも同様にパスワードを記入し、実行ボタンを押してください。見ることが出来る秘話は、1.自分が発言した秘話、2.自分に向けて発言された秘話、だけです。  サーバー管理者が秘話部分も含んだhtmlファイルを作成する場合は、「パスワード」にマスターパスワードを記入して実行ボタンを押してください。全参加者の秘話が表示されます。 ・上のフレームにはその他にも、「発言時間を表示する」および「補足発言を表示する」、「NPCマークを表示する」というチェックボックスと、実行ボタンが表示されます。それぞれをチェック/チェック無しにして実行ボタンを押すことにより、ダイスチャット記入時の発言時間の表示/非表示、及び補足項目の表示/非表示、NPCマークの表示/非表示を切り替えることができます。 ・ログのバックアップ  dicelog.txtは放っておくと1MBを超えるような巨大なファイルになりますので、適当な時期にバックアップを取るなどしてください。 内容を削除したい場合は、FTPアプリケーションでdicelog.txtを一度削除してからアップロードするか、空のdicelog.txtを上書きでアップロードして下さい。  dicelog.txtが設置されていなければ、過去ログは保存されません。パーミッションの設定を間違っていた場合も同様です。特に、バックアップを取った際に忘れることが多いのでお気をつけ下さい  過去ログの内容を保存したい場合は、dicelog.txtを保存するか、Web上で表示されているファイルをブラウザから保存して下さい。Web上で見えているのと同じ状態で保存しておきたい場合は、dicelog.txtではなくブラウザからhtml形式(ソース)で保存しなければなりません。 =============================================================================== <プログラムの修正> ・プログラムの修正は全て自己責任で行って下さい。これによって不都合な事態が生じたとしても、当方では一切の責任を取ることはございませんので、あらかじめご了承下さい。 ・ダイス数を増やしすぎると、サーバーに過剰な負担をかけることになります。最悪の場合はサーバーダウンという事態を引き起こすことになりかねませんので、必要以上のダイス数を設定しないことをお奨めします。ダイスの種類についても同様です。 ・数値やアルファベットを変更する場合は、全て半角文字をご使用下さい。 ・表示する文字の変更を行った場合、文字コードの都合上、特定の文字がきちんと表示されない可能性があります。文字がおかしくなった場合は、その文字の前後に \ 記号を入れてみて下さい。それで問題が改善される場合があります。 <サイコロ部分の設定変更/config.pl> ・このチャットは、1D2から10D100のサイコロが設定されています。しかし、プログラムの一部を変更することで、この数値を自由に変えることができます。   1.ダイス数の変更   # ダイスの数   @dquan = (1,2,3,4,5,6,7,8,9,10);  と書かれている箇所は、振るダイスの数を示しています。  この部分の数値を変更・追加することで、異なるダイス数を設定することができます。   2.ダイスの種類の変更  このチャットでは、2,3,4,5,6,8,10,12,20,30,100面のダイスが設定されています。しかし、これ以外のダイスを使用したい場合は、以下の変更を行って下さい。   # ダイスの面数   @dface = (2,3,4,5,6,8,10,12,20,30,50,100);  と書かれている部分は、使用するダイスの種類を示しています。  この部分の数値を変更・追加することで、異なる種類のダイスを振るよう設定することができます。   3.基準ダイスの変更  基準とするダイスの数を変更したい場合は、   # 初期ダイス数   $d_dquan = 2;  という箇所を、  基準とするダイスの種類を変更したい場合は、   # 初期ダイス面数   $d_dface = 6;  の部分の数値を変更して下さい。 <修正値の設定変更/config.pl> ・修正値とはサイコロの結果に加える数値のことです。config.plの中にある、   # 修正値の最大値   $ds_max = "10";  を変更することにより、プルダウンで表示される数値を変更することが可能となっています。また、   # 修正値の初期値   $ds_ini = "0";  を変更することにより、プルダウンで表示される初期値、およびテキストエリアに表示される初期値を変更することが可能です。  なお、初期設定では$ds_maxが10、$ds_iniが0となっています。 <補足項目の設定変更/config.pl> ・補足項目の記入欄に最初から何かを書き込んでおきたい場合は、   # 補足項目の初期表示   $n_supl = "(HP: MP:)";  と書かれている箇所を変更して下さい。  最初の状態では、(HP: MP:)という文字がテキストエリア内に表示されます。 <レーティング結果表示色の変更/dicechat.cgi、GMchat.cgi、log_view.cgi> ・サイコロ結果とレーティング結果が同色だと紛らわしいため、レーティング結果表示色とサイコロ結果表示色を分離しました。   # レーティング結果表示色   $r_color = "#990000";  と書かれている箇所を変更することにより、任意の色に変えることができます。 <秘話機能の設定変更/config.pl、log_view.cgi> ・参加者が秘話していることを第三者にも知らせたい場合には、   # 第三者秘話通知(0=no 1=yes)   $w_mark = 0; を0から1へと変更してください。ちなみに、初期値は0となっています。1とした場合、秘話とは関係ない第三者には「(天使達が囁いています)」と言う一文が表記されることになります。 ・秘話に関する表示を変更したい場合には、秘話通知フォント以下の各項目を修正してください。 ・log_view.cgiで全秘話を表示させるには、「パスワード」の欄にマスターパスワードを入力することによってできます。この際、名前を入力する必要はありません(名前が入力されても無視されます)。マスターパスワードの初期値は「0123」となっておりますが、実際に設置する場合には必ず任意の値に変更してから設置してください。 <発言名称の設定変更/GMchat.cgi> ・発言名称の数は、初期値で6人となっています(GM1人とNPC5人)。GMchat.cgi中の$npc_noの数を変更することにより、増減することが可能です。$npc_noを1増やすごとに、発言名の数は2人ずつ増えていきます(1列ずつ増えていくため)。  ただし、人数をあまり多く増やしすぎると、サーバーに大きな負荷をかける危険性がありますので、ご注意下さい。 (一応、$npc_noが50でも動作することは確認しています。ただし、Cookieの制限上、名前、名前色等をCookieに保存することは出来ませんので、ご了承下さい) ・デフォルトで表示される発言名称は、基本的にNPCと数字の組み合わせになっています。これは入力ウインドウからでも変更できますが、スクリプト(GMchat.cgi)の一部を変更することにより、デフォルトの名称や名前色を変更することができます。 1.デフォルト発言名の変更  # NPC名称設定以下の変数$f_npcを変更して下さい。これにより、テキストエリア内にデフォルトで表示される名称(NPCの部分)を指定することができます(ただし、数字の部分を変更することは仕様上できません)。 2.NPC名の個別設定  # NPC名の個別設定以下にある配列@npc_nameに名前を記入することにより、発言名を(NPC+数字)以外に設定することが可能です。$npc_noで指定された以上のNPC名を記入しても、入力ウィンドウでは表示されませんので、ご注意下さい。 3.名前色の変更  # NPC色の個別設定以下の配列@npc_colorに色指定を記入することにより、名前色を変更することが可能です(デフォルトでは@COLORS中の色指定が順番に割り振られます)。 ただし、@COLORSで設定した色しか受け付けないので注意して下さい。それ以外の色を設定した場合は、初期値は@COLORSで一番最初に設定されている色(デフォルトではブラック)となります。 <共通設定項目をdicechat.cgiとGMchat.cgiで個別に設定したい場合> ・共通設定ファイル(config.pl)の中で設定されている項目を、dicechatとGMchatで別々に設定したい場合は、config.plの設定項目をdicechat.cgi、GMchat.cgi、log_view.cgiにコピーし、その後config.pl中からその項目を消去してください。これにより、title等を個別に設定することが可能となります。 =============================================================================== <更新情報> 01/09/19 秘話機能時の個人認識をhost情報からパスワードに変更(v1.3)      色例表示CGIを実装。      NPCで発言した際、NPC発言を示すマークが表示されるように変更。      バグを二つ修正。        ・入退室時名が有効になっていなかった。        ・GMchatで入室時、半角空白を含んでいると名前が表示されない 01/07/04 秘話機能を実装(v1.2beta) 01/05/16 レーティング表に間違いがあったのを修正(v1.11) 01/05/15 レーティング結果に修正値を追加できるように機能追加(v1.1) 01/04/20 レーティング結果表示色を追加(v1.01) 01/04/18 DiceChat for SwordWorld v1.0完成。 01/03/07 補足がCookieに保存できなくなっていた点を含め、複数点を修正(v3.01) 01/02/17 正式に公開(v3.0) 01/01/16 GMchat.cgiでJavaScript Errorが発生していたバグを修正(v3.0b1.03) 01/01/10 補足をCookieに保存できるよう変更(v3.0b1.03) 00/12/25 Ponny Chat v3.4に対応。      Log Viewerを修正(v3.0b1.02) 00/12/23 GMchatを更新。      修正値部を変更(v3.0b1.01) 00/12/20 β版の公開開始(v3.0b) 00/12/17 GMchatを新規作成。これにより、以前のGMchatとは互換性が無くなる。 00/11/30 参加者のホスト取得方式を変更(v3.0a2) 00/11/28 v3.0a1完成。      ログ記録方式を変更、以前のVersionとログの互換性が無くなる。      ログビュアーを全面的に変更。 00/11/02 Cookie保存に関する仕様を変更(v2.4b4) 00/10/07 Cookie保存に関するバグを修正      GMchatでリロードタイムに関するバグを修正(v2.4b3) 00/09/29 Cookieに関する仕様を変更(v2.4b2) 00/05/12 設定をCookieに保存できるようにした(v2.4) 00/04/29 補足タグ表示の修正(v2.3) 00/03/03 補足項目の記入欄、ダイスの符号の選択などの機能を追加。      全ファイルをワンパッケージにしたdicechat2.2として公開。 00/02/15 テキストエリアから修正値を入力できるよう改造。 00/02/14 Ponny ChatのVer. Upに合わせて、dicechatもVer. Up。      修正値を加算できるように改造。 00/01/15 公開用に体裁を調整。 99/02/13 初版完成。