auriga解体新書

Last-modified: 2021-06-19 (土) 00:31:54

ROエミュ鯖用プログラム aurigaを徹底分析

ルートディレクトリー

コンフィグ

/conf/

データベース

/db/

スクリプト

/script/

セーブデータ

/save/

ドキュメントとログ

/doc/
/log/

sqlとわからないやつ

/sql-files/
/src/
/vcproj-11/
/vcproj-14/

httpdとかツールとか

/httpd/
/tool/

ルートファイル

git系

.gitattributes
.gitignore

login-server

login-server.exe
login-server.ilk
login-server.map
login-server.pdb
login-server.pid

char-server

char-server.exe
char-server.ilk
char-server.map
char-server.pdb
char-server.pid

map-server

map-server.exe
map-server.ilk
map-server.map
map-server.pdb
map-server.pid

makeとcleanとstart

Makefile
start
auriga-start
bcc32_clean.bat
bcc32_make.bat
vc_clean.bat
vc_make.bat
vc_make_appveyor.bat
win32_start.bat

わからないやつ

appveyor.yml
Auriga-11.sln
Auriga-14.sln
auriga.dsp
auriga.dsw
auriga_sql.dsp
CHANGELOG.md

READMEとCOPYING

README.md
Athena-Readme
COPYING
COPYING_JA

 

各ディレクトリーファイルの説明

/doc/

ドキュメントファイルだよ。
初めに読むべきファイルではあるが、必要な物以外は読まなくて良い。

account_making.txt (アカウントの作成方法)
admin_packet.txt (管理用パケットリスト これはよくわからん。)
client_packet.txt (クライアントパケット これもよくわからん。)
commandline_parameter.txt (Auriga起動時に指定可能なパラメータに関する説明です。よくわからん、)
conf_ref.txt (Auriga設定ファイルの設定方法のリファレンスです。説明なげぇ…)
coredump_report.txt (サーバーが強制終了する場合のcoredumpによる詳細なバグ報告方法)
db_ref.txt (Aurigaのdbファイルの設定方法のリファレンスです。)
distribute_servers.txt (Auriga は負荷分散のためにサーバー分散機能をサポートしてます。その簡単な解説をするドキュメントです。これ悪用すると他人のmap鯖を自分の鯖として使えたりする。)
httpd.txt (HTTPD の使用方法)
instasv.txt (サーバのWindowsサービス化の方法)
inter_server_packet.txt (inter鯖のパケットリスト なんそれ?)
item_bonus.txt (AurigaItemBonusリファレンス hm…アイテム系?)
journal.txt (ジャーナリングについての説明 データベースが障害が発生した時に復元する機能?)
save_ref.txt (Aurigaのsaveファイルのリファレンスです。)
script_ref.txt (AurigaNPCScriptの説明書)
serverlink_packet.txt (サーバーリンクパケット?よくわからない、)
server_build.txt (Auriga の構築方法を解説するドキュメントです。)
sqllogin.txt (Windows版MySQL導入ガイド 2005年10月7日)

 

/conf/

config系ファイルが入っている。
直接下記のファイルを弄るってよりも、/import/の方のファイルに書き込んで上書きさせるって感じかな。
と言っても、全部入っているわけではないようだ。

/import/ (この中に記載した内容が、たぶん上書きされるぞ。auriga更新時とかに消えないようにこっちに書いた方が良いぽい。)

  • atcommand_conf.txt
  • battle_conf.txt
  • char_conf.txt
  • converter_conf.txt
  • httpd_conf.txt
  • inter_conf.txt
  • login_conf.txt
  • map_conf.txt
  • msg_conf.txt
  • script_conf.txt
  • socket_conf.txt

/import/の中に入ってないファイル

grf-files.txt (grf読込先を設定するファイル)
GM_account.txt (GMアカウント設定用のファイル)
help.txt (GMコマンドリストが乗っている。)
motd.txt (MAPにログインした時に、最初に表示されるメッセージが記載されている。)
water_height.txt (水場の高さを設定できるらしい。なんぞそれ?)
lua_auriga.conf (スクリプト関連設定ファイル わからん。)

GMアカウント系

GM_account.txt (GMアカウント設定用のファイル)
atcommand_auriga.conf (GMコマンドのレベルを設定する。)
help.txt (GMコマンドリストが乗っている。)

メッセージ系

motd.txt (MAPにログインした時に、最初に表示されるメッセージが記載されている。)
msg_auriga.conf (なんかした時に表示される色々なメッセージ)

各種設定系

inter_auriga.conf (各種設定 見といた方が良いかも。)
battle_auriga.conf (戦闘関係設定ファイル)
water_height.txt (水場の高さを設定できるらしい。なんぞそれ?)

スクリプト系

script_auriga.conf (スクリプト関連設定ファイル これもよくわからん。)
lua_auriga.conf (スクリプト関連設定ファイル わからん。)

コンバータ系

converter_auriga.conf (なにかわからん。コンバーター? なにをコンバートするんだ?)

鯖設定

grf-files.txt (grf読込先を設定するファイル)
login_auriga.conf (ログイン鯖の設定)
char_auriga.conf (キャラセレ鯖の設定ファイル)
map_auriga.conf (map鯖の設定)
socket.conf (ソケット関連の設定 IPブロックとかもここに書き込むらしい。)

httpd設定

httpd.conf (WEBサーバーの設定ファイル アカウント作るCGIとかで使ってる。)

 

/db/

データベース系ファイルだよ。

/addon/ (ここに書いた内容がDBにオーバーライドされるので、直でDBを弄るのではなくこっちに記載するぽい。)
/pre/ (R化以前のデータ)
abra_db.txt (アブラカダブラの発動スキルデータベース)
achievement_db.lua (実績のデータを設定)
achievement_level_db.lua (実績ランクレベルの必要経験値データを設定)
atcommand_go_db.txt (@goコマンドの行き先を設定)
attr_fix.txt (属性モンスター相性表)
booking_job_db.txt (パーティーブッキングで使用するJOBを設定)
booking_map_db.txt (パーティーブッキングで使用するMAPを設定)
castle_db.txt (ギルド城データ)
changematerial_db.txt (チェンジマテリアル用のDB)
const.txt (職業定義値・Class定義値・Upper定義値・マップフラグ・PCステータス・PCグローバル変数・bonus系命令用・bonus系命令の状態異常・種族・属性・敵タイプ・サイズ・sc_start, sc_end系用の状態異常・sc_end専用・bonus系命令の発動条件・ランダム系アイテムのID [item_random.txt]・ランダム召喚系のID [mob_random.txt]・HATEFFECT関連)
create_arrow_db.txt (クリエイトアロー 恐らく矢作成用のDB)
elem_db.txt (精霊のデータを設定)
elem_skill_tree.txt (精霊のスキルツリー)
embryo_db.txt (作成できるホムのDB)
exp.txt (経験値テーブルなのかなぁ?)
exp_guild.txt (ギルド経験値テーブル)
exp_homun.txt (ホムの経験値テーブル)
guild_skill_tree.txt (ギルドスキルDB)
homun_db.txt (ホムンクルスのデータを設定)
homun_db2.txt (ホムンクルスの成長データを設定)
homun_skill_tree.txt (ホムンクルスのスキルツリーを設定)
item_arrowtype.txt (矢の種類を設定)
item_avail.txt (独自に作ったアイテムの見た目をすり替えるやつ)
item_cardtype.txt (カードの種類を設定)
item_db.txt (アイテムのデータを設定)
item_db2.txt (アイテムの追加情報を設定 転生職限定アイテムとかはこっちに書く。)
item_group_db.txt (回復系アイテムのデータベース)
item_random.txt (ランダム取得系のアイテムを設定)
item_randopt_db.lua (ランダム取得系のアイテムのスクリプト)
item_value_db.txt (アイテム価格のオーバーライド)
job_db1.txt (JOB毎の補正値を設定)
job_db2.txt (JOB関係のDB?)
job_db2-2.txt (JOB関係のDB?)
job_hp_db.txt (JOBの基本HPのDB?)
job_sp_db.txt (JOBの基本SPのDB?)
memorial_db.txt (メモリアルダンジョンのデータを設定)
merc_db.txt (傭兵のデータを設定)
merc_skill_tree.txt (傭兵が使用するスキルを設定)
mob_avail.txt (独自mobの見た目をすり替えるやつ)
mob_db.txt (モンスターのデータを設定)
mob_group_db.txt (モブグループデータベース?わからん)
mob_mode_db.txt (特殊MobAIの設定)
mob_random.txt (ランダム召喚系のモンスターを設定)
mob_skill_db.txt (モンスターの使用するスキルを設定)
mob_talk_db.txt (モンスターの発言内容を設定)
packet_db.lua (パケット関係のなにかかな?)
packet_db.txt (map-server clif.cで使うパケット定義)
pet_db.txt (ペットのデータを設定)
produce_db.txt (製造に関連するデータを設定)
quest_db.txt (クエストのデータを設定)
refine_db.txt (精錬成功確率テーブル)
scdata_db.txt (ステータス異常のデータを設定)
size_fix.txt (通常時サイズ補正)
skill_cast_db.txt (スキルのキャスティング時間とディレイ、維持時間等を設定)
skill_db.txt (スキルのデータを設定)
skill_db2.txt (スキルのデータを設定2)
skill_random.txt (ランダム使用系のスキルを設定)
skill_require_db.txt (スキル使用条件を設定)
skill_require_db2.txt (スキル使用条件を設定2)
skill_tree.txt (スキルツリーを設定)
skill_unit_db.txt (スキルユニットに関する設定)

 

/httpd/

index.html (アカウント作る時に表示されるhtml)

 

/log/

ログファイルだよ。

char.log (キャラ作成ログだよ。)
httpd_login.log (アカウント作成ページのアクセスログだよ。IPアドレスも見れるよ。)
login.log (ログインユーザーのログだよ。IPアドレスも見れるよ。)

 

/save/

セーブファイルだよ。

/mail_data/ (メール関係のデータフォルダ?)
account.txt (アカウントデータ)
accreg.txt (白紙…なんだろな?)
achieve.txt (白紙だけど、たぶんアーチブの情報をセーブするやつだと思う。)
auriga.txt (キャラデータを保存するやつじゃね?)
castle.txt (攻城戦の砦に関するデータ)
elemental.txt (エレメンタル…精霊関係のデータを保存するやつかな?)
guild.txt (たぶん、ギルド関連のセーブデータ)
g_storage.txt (これは、ギルド倉庫のセーブデータだろう。)
homun.txt (ホムン…ホムンクルスのセーブデータかな?)
mail.txt (メール、メールのセーブデータかな?mail_dataってフォルダもあるし、どーいう事だろうか?)
map_extra.txt (管理者がゲームにログインすることなく、ユーザーにZenyやアイテムをあげたり奪ったりできるらしい。)
mapreg.txt (マップレグ レグってなに?レジストリ?登録?マップ登録データ?わからん。)
mercenary.txt (傭兵のセーブデータかな?そういえば、思い出したけど傭兵システムってあったよな。)
party.txt (たぶん、パーティー関連のセーブデータ)
pet.txt (ペット関連のセーブデータ)
quest.txt (クエスト関連のセーブデータ)
scdata.txt (SCデータ SCってなに?ショートカット?スキルキャスト?ステータス異常?SCが何かわからん。)
storage.txt (倉庫のセーブデータ)

 

/script/

スクリプト系ファイル

/function/ 全体関数系

  • function_global.sc (グローバルファンクション)
  • function_itemdb.sc (アイテム関連のファンクション)
  • function_jobgroup.sc (ジョブグループファンクション)
     

/mapflag/ マップフラグ系ファイル(メモ禁止とかテレポ禁止とかを設定する。)

  • mapflag.sc (全体マップ)
  • mapflag_academy.sc (アカデミー内)
  • mapflag_arena.sc (アリーナ内)
  • mapflag_gvg.sc (gvgの砦内)
  • mapflag_memorial.sc (エンドレスタワー内)
  • mapflag_pvp.sc (PvP内)
  • mapflag_turbo.sc (ターボトラック内)
     

/monster/ モンスターの沸き設定

  • /field/ 各フィールドのモンスターの沸き設定
  • /dungeon/ 各ダンジョンのモンスターの沸き設定
  • /event/ イベント関連のモンスターの沸き設定
    • npc_monster_crystal.sc (クリスタルの沸き設定 クリスタルって何だっけ?)
    • npc_monster_future.sc (フューチャー?未来?なに?わからない… 未来の沸き設定?なんだろ?)
    • npc_monster_xmas.sc (クリスマスイベントの時のモンスターの沸き設定)
  • /misc/ その他のモンスターの沸き設定
    • npc_monster_academy.sc (アカデミーの沸き設定)
    • npc_monster_brasilis.sc (ブラジリスの変なヒドラの沸き設定)
    • npc_monster_jawaii.sc (ジャワイの沸き設定)
    • npc_monster_job.sc (初心者修練場とか転職試験とかの沸き設定)
    • npc_monster_morovol.sc (フレイムヴァレーの沸き設定)
    • npc_monster_niflheim.sc (死者の街ニブルヘイムの沸き設定)
    • npc_monster_pvp.sc (PvPマップの沸き設定)
    • npc_monster_town.sc (各街の沸き設定)
    • npc_monster_yggdrasil.sc (フベルゲルミルの泉[イグドラシルの幹]の沸き設定)
 

/npc/ NPC関連のスクリプト

  • /town/ (街に居る標準のNPCたちが入ってる。)
  • /gvg/ (ギルド砦関係のNPCでしょ。)
  • /job/ (転職NPCとかじゃない?)
  • /memorial/ (MD系のNPCっしょ。)
  • /event/ (イベント関連NPCっしょ。)
  • /quest/ (クエスト関連NPCっしょ。)
  • /misc/ (その他の標準NPCっぽいけど、色々入ってる。)
     

/sample/ サンプルスクリプト

自作NPCは、ここに置いたらいいのかな?

  • npc_custom_adoption.sc (養子コンパニオン)
  • npc_custom_bank.sc (カプラ銀行サービス)
  • npc_custom_branch.sc (モンスター召還屋)
  • npc_custom_cardremover.sc (カード剥がし)
  • npc_custom_gldcheck.sc (砦管理委員会員)
  • npc_custom_jobchange.sc (転職カプラ)
  • npc_custom_produce.sc (属性武器の作成)
  • npc_debug_arrow.sc (矢販売)
  • npc_debug_convertvars.sc (変数名補償NPC)
  • npc_debug_pota.sc (ダンジョンに転送)
  • npc_debug_questskill.sc (スキル屋)
  • npc_debug_reset.sc (リセット職員)
  • npc_debug_revive.sc (バグりましたか?)
  • npc_debug_shop.sc (色んなお店やさん)
  • npc_test_array.sc (配列テスト)
  • npc_test_chat.sc (chatテスト)
  • npc_test_chkoption.sc (check option)
  • npc_test_csv.sc (ペット図鑑)
  • npc_test_ev.sc (eventのテストと解説)
  • npc_test_func.sc (function関連のテスト)
  • npc_test_getequip.sc (GetEquipID Sample)
  • npc_test_gettime.sc (Time Sample)
  • npc_test_gstorage.sc (ギルド倉庫カプラ)
  • npc_test_hanoi.sc (ハノイの塔)
  • npc_test_library.sc (汎用文字列処理ユーザー定義関数スクリプトライブラリ)
  • npc_test_npctimer.sc (NPCtimerテスト)
  • npc_test_pcevent.sc (OnPCイベントラベル テストスクリプト)
  • npc_test_petskill.sc (ペットスキル用)
  • npc_test_seller.sc (委託販売員)
  • npc_test_sqlquery.sc (SQLクエリ発行テスト)
  • npc_test_str.sc (文字列変数のテスト)
     

/warp/ 各ワープの設定

  • npc_warp_academy.sc (アカデミー内)
  • npc_warp_alpha.sc (アルファ これ何処だろ?)
  • npc_warp_dun.sc (ダンジョン内ワープかな?)
  • npc_warp_fild.sc (フィールドのワープかな?)
  • npc_warp_town.sc (初心者修練場とか転職ギルドとか街とかのワープが色々書かれてる。)
  • npc_warp_vs.sc (PvPのワープと砦のワープとノービスキャッスルのワープ ノービスキャッスルってなんぞ?)
     

/sql-files/

たぶんデータベース系のファイル
mysqlとかのデータベース使う時に使うやつかなぁ?

/utils/
Auriga1053_changetable.sql
Auriga1166_changetable.sql
Auriga1254_changetable.sql
Auriga1326_changetable.sql
Auriga1369_changetable.sql
Auriga1380_changetable.sql
Auriga1391_changetable.sql
Auriga888_changetable.sql
Auriga902_changetable.sql
Auriga904_changetable.sql
Auriga908_changetable.sql
Auriga909_changetable.sql
Auriga945_changetable.sql
Auriga951_changetable.sql
Auriga995_changetable.sql
main.sql

 

/src/

C++用のファイルが入っている?何かは、ちょっとわからない。

/char/ (キャラセレ鯖がらみのなにか?)
/common/ (コモン…なんやろ?)
/converter/ (コンバーターがらみのなにか?)
/login/ (ログイン鯖がらみのなにか?)
/map/ (マップ鯖がらみのなにか?)

 

/tool/

ツール類が入っているのかな?
ladmin以外は、あまり良くわからない。

/cgi/

  • addaccount.cgi (アカウント追加用cgi?)
  • serverstatus.cgi (サーバーステータスcgi?)

/php/

  • auriga.php
  • chgpasswd.php (パスワード変更php?)
  • createaccount.php (アカウント作成php?)

backup
bench.bat
bench.c
castcheck
checkversion
crashdump.pl
delasv.bat (サーバのWindowsサービス化したやつを止めるやつ)
getlogincount
instasv.bat (サーバのWindowsサービス化するやつ)
ladmin (アカウント作る時に使うやつ。)
mapcheck.sh
patchup

 

/vcproj-11/

Visual C++ プロジェクト11用のなにか?
全てxml形式のファイル 謎

char-server.vcxproj
char-server.vcxproj.filters
login-server.vcxproj
login-server.vcxproj.filters
map-server.vcxproj
map-server.vcxproj.filters

 

/vcproj-14/

Visual C++ プロジェクト14用のなにか?
全てxml形式のファイル 謎

char-server.vcxproj
char-server.vcxproj.filters
login-server.vcxproj
login-server.vcxproj.filters
lua.vcxproj
lua.vcxproj.filters
map-server.vcxproj
map-server.vcxproj.filters

 

各ファイルの説明

.gitattributes

gitのなんかじゃね?よくわからん。エンコードが、どーのこーの、

 

.gitignore

gitのなんかじゃね?

 

appveyor.yml

これもなんやろね。VSがどーとか、よくわからん。

 

Athena-Readme

Athenaの時代の開発履歴だろう!

 

Auriga-11.sln

Visual Studio 2012が、なんちゃらほい?

 

Auriga-14.sln

Visual Studio 2014が、なんちゃらほい?

 

auriga-start

たぶん、aurigaスタートするやつじゃね?

 

auriga.dsp

「編集しないでください」って書いてある。なんやろね?

 

auriga.dsw

「警告: このワークスペース ファイル を編集または削除しないでください!」って書いてある。これもわからんね。

 

auriga_sql.dsp

「編集しないでください」って書いてある。なんやろね?
名前的にデータベース関係かも?わからんね。

 

bcc32_clean.bat

たぶん、bcc32_makeで作ったファイルを消すやつ!

 

bcc32_make.bat

Borland C++ (以下 bcc)でコンパイルする時に使うやつぽい。

 

CHANGELOG.md

aurigaの開発履歴だと思う!

 

char-server.exe

キャラセレ鯖の実行ファイル

 

char-server.ilk

キャラセレ鯖のなにか、

 

char-server.map

キャラセレのなにか、なにかはわからない。

 

char-server.pdb

キャラセレ鯖のなにか、

 

char-server.pid

キャラセレ鯖のなにか、pid? 9504? プレーヤーID? 謎

 

COPYING

著作権表記 内容は英語
GNU GENERAL PUBLIC LICENSE
https://ja.wikipedia.org/wiki/GNU_General_Public_License

 

COPYING_JA

著作権表記 内容は日本語
GNU 一般公衆利用許諾契約書
https://ja.wikipedia.org/wiki/GNU_General_Public_License

 

login-server.exe

ログイン鯖の実行ファイル

 

login-server.ilk

ログイン鯖のなにか、

 

login-server.map

ログイン鯖のなにか、

 

login-server.pdb

ログイン鯖のなにか、

 

login-server.pid

ログイン鯖のなにか、8704と書いてある。謎

 

Makefile

これが、gcc用のmakeファイル Cygwin使う時はこれでコンパイルするのかな?
Cygwinでエラー出てたのはmakeファイル間違えてただけかも

 

map-server.exe

map鯖の実行ファイル

 

map-server.ilk

map鯖のなにか、

 

map-server.map

map鯖のなにか、

 

map-server.pdb

map鯖のなにか、

 

map-server.pid

map鯖のなにか、5272と書いてある。謎

 

README.md

説明書らしいが…内容はよくわからん。

 

vc_make.bat

Visual C++用のmakeファイル

 

vc_clean.bat

Visual C++でmakeして出来たやつを削除するやつ。

 

vc_make_appveyor.bat

これなんだろね?Visual C++用の…
中身はvc_make.batに似ている。

 

win32_start.bat

win32用のスタート?よくわからん。

 

start

スタート

 

最後に

説明書くの疲れたよ…。
このページを参考に、少しでも作業効率アップに繋がれば良いかな。