テレポーター
------------
概要:
GMだけ自由にテレポートできてずるい!
そこで、GMテレポをそっくりそのままプレイヤーに開放いたします。
(ただし、一部の地域は除きます)
動作環境:
言語 日本語
サーバ L2J_JP T1+
内容物:
custom_teleporter_GK.pl
ゲートキーパーの htm をすべて書き換えるスクリプトです。
custom_teleporter_README.html
この説明ファイルです。
custom_teleporter_SETUP.bat
インストール用のバッチファイルです。
UNIX 用は用意してません、ごめんなさい。手作業でやってください。
sql をデータベースに読み込んでるだけですから。
sql\custom_telepoter\teleport.sql
teleport テーブルに飛び先を登録します。
id が 29001 から始まります。
自分で改造している人は、id が衝突しないか確認してください。
sql\custom_telepoter\makeTeleporerSqlHtm.pl
sql と htm はこのスクリプトで自動作成しました。
好みで作り変えたい方はご自由にどうぞ。
gameserver\data\html\teleporter\tele\*.htm
テレポート行き先のメニューの htm が入っています。
gameserver\data\html\teleporter\teleports.htm
テレポートの共通メニューの入り口です。
ここから tele\*.htm に枝分かれしていきます。
gameserver\data\html\teleporter\31859.htm
テレポートキューブ用の htm です。
テレポートキューブの id は 31859 なので 31859.htm となります。
中身は teleports.htm をコピーしただけです。
GM コマンド //spawn 31859 でテレポートキューブを
好きな位置に配置してください。
gameserver\data\html\teleporter\30006.htm
gameserver\data\html\teleporter\30059.htm
gameserver\data\html\teleporter\30080.htm
gameserver\data\html\teleporter\30134.htm
gameserver\data\html\teleporter\30146.htm
gameserver\data\html\teleporter\30177.htm
gameserver\data\html\teleporter\30233.htm
gameserver\data\html\teleporter\30237.htm
gameserver\data\html\teleporter\30256.htm
gameserver\data\html\teleporter\30320.htm
gameserver\data\html\teleporter\30540.htm
gameserver\data\html\teleporter\30727.htm
gameserver\data\html\teleporter\30836.htm
gameserver\data\html\teleporter\30848.htm
gameserver\data\html\teleporter\30878.htm
gameserver\data\html\teleporter\30899.htm
gameserver\data\html\teleporter\31275.htm
gameserver\data\html\teleporter\31320.htm
gameserver\data\html\teleporter\31698.htm
gameserver\data\html\teleporter\31699.htm
gameserver\data\html\teleporter\31964.htm
gameserver\data\html\teleporter\32163.htm
ゲートキーパーの htm です。
custom_teleporter_GK.pl を使用して
「テレポートする」の部分だけ書き換えたものです。
配置方法:
壱.内容物を解凍する。
内容物は、自鯖に不都合が無いか確認すること。
また、好みに応じて改造するも良し。
下記補足も読んでください。補足1・2は必須。補足3・4は好みで適用してください。
弐.内容物をサーバにコピーする。(ディレクトリ構造はそのままで)
参.gameserver\data\jscript\custom\__init__.py に次の1行を追加する。
'5802_Christmas',
四.gameserver\sql\event_christmas\OnEventBegin.sql をNaviCATやphpMyAdmin等で実行する。
Go.サーバをリスタートする。
撤収方法:
gameserver\sql\event_christmas\OnEventEnd.sql をNaviCATやphpMyAdmin等で実行する。
補足1(必須):
gameserver\data\script\Christmas.zip
解凍するとxmlファイルが出て来ます。
最初の1行にイベント開始日-終了日が記述されています。
来年は書き換えてください。
書き換えたら、zipに戻してください。
補足2(必須):
見習いサンタさんからの補助魔法は、新規プレイヤーの補助魔法を利用して実現しています。
イベント期間中のみ全てのプレイヤーを初心者扱いにしてしまうという処理が必要です。
まず、helper_buff_list テーブルにクリスマス補助魔法を追加します。
(SQLバッチファイル gameserver\sql\event_christmas\OnEventBegin.sql で)
あと、
gameserver\config\altsettings.properties
で
AltNewCharAlwaysIsNewbie = True
と設定しなければならないのですが、バグってるような気がするのでjavaソースも
改変してください。
-----------------------------
ファイル名:java/net/sf/l2j/gameserver/handler/itemhandlers/ChristmasTree.java
場所:わりと最初の方 isNewbie() 関数
変更前:
public boolean isNewbie()
{
return _newbie;
}
変更後:
public boolean isNewbie()
{
return Config.ALT_GAME_NEW_CHAR_ALWAYS_IS_NEWBIE | _newbie;
}
補足3(任意):
召還したクリスマスツリーは、鯖が落ちると消えてしまいます。
消えないように、spawnlist テーブルに強引に登録してしまいましょう。
重くなるかもしれませんが、どうせイベント期間中だけです。
終わったら spawnlist から削除すればいいんです。
-----------------------------
ファイル名:java/net/sf/l2j/gameserver/handler/itemhandlers/SummonItems.java
場所:useItem()関数 の case 0: // static summons (like christmas tree) の終わりのほう
変更前:
case 0: // static summons (like christmas tree)
(中略)
activeChar.sendMessage("Created " + npcTemplate.name + " at x: " + spawn.getLocx() + " y: " + spawn.getLocy() + " z: " + spawn.getLocz());
}
変更後:
case 0: // static summons (like christmas tree)
(中略)
activeChar.sendMessage("Created " + npcTemplate.name + " at x: " + spawn.getLocx() + " y: " + spawn.getLocy() + " z: " + spawn.getLocz());
SpawnTable.getInstance().addNewSpawn(spawn, true);
}
蛇足:
java ソースを改変したら、当然、ビルドしなおしてサーバにアップロードし
サーバをリブートすんですよ。
変更履歴:
2007.08.14 ver1.3
クエストAPIの仕様変更に伴い、__init__.py を修正。
スキルxmlファイル名をcustom.xmlとした。
2006.12.27 ver 1.2b
クリスマス ツリーを召還する方法が変わってしまい
ChristmasTree.java はゴミになったので
javaソース改造箇所の説明文を変更。
2006.12.21 ver 1.2a
OnEventBegin.sql を修正。
初心者補助魔法を受けられるレベル制限をなくします。
これでサンタさんから初心者補助魔法ももらえます。
2006.12.20 ver 1.2
見習いサンタから補助魔法を受けられるようにした。
高級クリスマス ツリーかサンタ帽子か選べるようにした。
2006.12.05 ver 1.1
とりあえず作成
参考:
ポモナイベントスクリプトを参考にさせていただきました。
http://svn.tslroom.net/forum/viewtopic.php?t=268