公式のType IDsをCSV形式にする方法

EVE Onlineでは全てのモノに固有のIDが割り振られている。例えば”Omochin”というキャラのCharacter IDは"96790690"である。これは誰からでも参照することができ、かつ変更することは不可能である。

もしバイオマス処理をして削除をし、新たに同じ名前のキャラクターを作った場合は別のCharacter IDが割り振られる。

IDの基本的な話はこのぐらいにして、今回はType IDの話である。

例えば"アンチマター弾S"というアイテムに対して処理を行う場合、内部では”Antimatter Charge S”や、まして"アンチマター弾S"として認識しているわけではない。コンピューターにとって、このアイテムはType IDの"222"なのだ。

 

「んで、これを知らないと何か困るの?」

 

と疑問もあるかもしれない。大体の場合は「知らなくても特に困らない」

ただ、IDから情報をひっぱってくるサービスやツール等もあるので、こういう風になっているんだな~ぐらいは知っておくといいかもしれない。

APIから参照できるデータは全てIDのみであるが、ツール側がゲーム内の用語に変換してくれているのでユーザーが直接IDを目にすることはあまりない。

Resources - EVE: Developers

このType IDのデータというのは公式が用意してくれている。リンク先の"sde-xxxxxxxx-TRANQUILITY.zip"からダウンロード可能だ。xxxxxxxxxの部分はデータがアップデートされた日時が表示されている。

ダウンロードしたデータを解凍し"sde > fsd > typeIDs.yaml"というファイルにType IDの一覧が列挙されている。メモ帳などのテキストエディタで開くと中身がみれる。

しかし、このファイルは62MBもあり行数にいたっては110万行もある。しかもYAML形式なんぞ一般ユーザーには馴染みがない(エンジニアはよく使いますが)

そこで、みんな大好きなExcelGoogleスプレッドシートで開けるように変換スクリプトを書いてみた。

https://developers.eveonline.com/resource/resource ...

ダウンロードしてきたtypeIDs.yamlを同じフォルダに置いて実行。英語や日本語以外でも出力したい場合はconfig.yamlのlocales下の言語コードの先頭の#を消す。

 

f:id:omochin4eve:20170227194548j:plain

TypeIDs.csv - Google スプレッドシート

 

 こんな感じになる。↑のスプレッドシートはご自由にお使いください。