提供: Minecraft Modding Wiki
移動先: 案内検索
(関連リンク: サイドバーから)
(パッケージで整理してみた。とりまFML部分だけ。)
1行目: 1行目:
 
{{Warning}}現在編集中であり、古い情報が多く含まれています。
 
{{Warning}}現在編集中であり、古い情報が多く含まれています。
 
==概要==
 
==概要==
<p>
+
Minecraft Forgeとは、Mod間の互換性を保ちつつMinecraftを拡張するために作られたAPIである。<br>
 Minecraft ForgeとはMod作成に作成において要求頻度の高い様々な拡張機能を総合的に補助する前提Mod(拡張API)である。
+
1.8以前はForgeModLoaderが基本部分を担っていたが、統合された。
</p>
 
  
 
===開発環境でのインストール方法===
 
===開発環境でのインストール方法===
<p>
+
[[MinecraftForge導入手順]]を参照。
 [[MinecraftForge導入手順]]を参照。
 
</p>
 
  
 
===関連リンク===
 
===関連リンク===
22行目: 19行目:
 
</div>
 
</div>
 
</div>
 
</div>
 
===ForgeModLoaderについて===
 
<p>
 
 ForgeModLoader(以下FML)はForge用に作られたModLoaderである。もともとは別のプロジェクトであったが、1.8以降は完全に統合された。
 
</p>
 
  
 
==ForgeModLoader API==
 
==ForgeModLoader API==
===基礎===
+
1.8の統合後は<code>net.minecraftforge.fml</code>下、統合前は<code>cpw.mods.fml</code>下に存在するAPI群。<br>
*;[[GameRegistry]]
+
ローダー部分や基本的なイベント、フックはこちらに含まれている。<br>
:ブロックの登録やレシピの追加などを行うAPI<br>
+
現在は統合されているため、特にMinecraft Forgeと区別する必要はない。
:;関連インタフェース
+
*net.minecraftforge.fml
:*<s>[[ICraftingHandler]]</s> <u>[[PlayerEvent]]</u> (1.3のUniversal化に伴いEventとなった)
+
**client
:*[[IFuelHandler]]
+
**:クライアントサイドのAPI群
:*<s>[[IPickupNotifier]]</s> <u>[[PlayerEvent]]</u> (1.3のUniversal化に伴いEventとなった)
+
**:*config
:*<s>[[IPlayerTracker]]</s> <u>[[PlayerEvent]]</u> (1.3のUniversal化に伴いEventとなった)
+
**:*:コンフィグGUI向けのコンポーネント群
:*[[IWorldGeneretor]]
+
**:*event
 
+
**:*:クライアントサイド基本イベント
*;<s>[[LanguageRegistry]]</s>
+
**:*:*[[ConfigChangedEvent]]
:表示名やローカライズを行うAPI
+
**:*registry
:'''1.7以降廃止された。同様の機能は適切な場所にLangファイルを配置するだけで実現できる。'''
+
**:*:クライアントサイドレジストリ
 
+
**:*:*[[ClientRegistry]]
*;[[EntityRegistry]]
+
**:*:*<s>[[KeyBindingRegistry]]</s> <u>[[ClientRegistry]]</u> (1.3のUniversal化に伴い移動された)
:Entityの登録を行うAPI
+
**:*:*[[RenderingRegistry]]
:;関連インタフェース
+
**:*[[FMLClientHandler]]
:*IEntityAdditonalSpawnData
+
**:*[[IModGuiFactory]]
:*IThorwableEntity
+
**common
 
+
**:クライアント/サーバー共通のAPI群
*;<s>[[TickRegistry]]</s> <u>[[TickEvent]]</u> (1.3のUniversal化に伴いEventとなった)
+
**:*asm
:Tick処理の登録を行うAPI
+
**:*:FML内部のASM利用クラス
 
+
**:*discovery
*;[[VillagerRegistry]]
+
**:*:Mod探知機能群
:村, 村人に関連した処理を担うAPI
+
**:*:*[[ASMDataTable]]
 
+
**:*event
*;[[ClientRegistry]]
+
**:*:EventHandlerアノテーションで購読できるイベント群
:TileEntitySpecialRendererなどのクライアント側のみでの登録を行うAPI。
+
**:*:*[[1.6の基本コーティング|FMLStateEvent]]
 
+
**:*eventhandler
*;<s>[[KeyBindingRegistry]]</s> <u>[[ClientRegistry]]</u> (1.3のUniversal化に伴い移動された)
+
**:*:Event関連の基本クラス
:キーバインドの登録を行うAPI, クライアント側のみ
+
**:*:*[[Event]]
 
+
**:*:*[[Event|SubscribeEvent]]
*;[[RenderingRegistry]]
+
**:*functions
:描画関連の登録を行うAPI, クライアント側のみ
+
**:*:UtilのFunction群
 
+
**:*gameevent
*;[[NetworkRegistry]]
+
**:*:基本的なゲーム内イベント群
:ネットワーク関連の登録を行うAPI
+
**:*:*[[InputEvent]]
:;関連インタフェース
+
**:*:*[[PlayerEvent]]
:*[[IGuiHandler]]
+
**:*:*[[TickEvent]]
 +
**:*launcher
 +
**:*:FML自体をMinecraftに仕込むためのクラス群
 +
**:*network
 +
**:*:サーバーとクライアントを橋渡しするためのクラス群
 +
**:*:*handshake
 +
**:*:*:橋渡しの内部処理
 +
**:*:*internal
 +
**:*:*:FML自体が用いているメッセージング処理
 +
**:*:*simpleimpl
 +
**:*:*:単純実装群
 +
**:*:*:関連チュートリアル: [[1.7のパケットについて]]
 +
**:*:*[[FMLNetworkEvent]]
 +
**:*:*[[IGuiHandler]]
 +
**:*:*[[NetworkCheckHandler]]
 +
**:*:*[[NetworkRegistry]]
 +
**:*patcher
 +
**:*:MinecraftにFML変更部分をパッチするためのクラス群
 +
**:*registry
 +
**:*:基本レジストリ群
 +
**:*:*[[EntityRegistry]]
 +
**:*:*[[GameRegistry]]
 +
**:*:**<s>[[ICraftingHandler]]</s> <u>[[FMLPlayerEvent|PlayerEvent]]</u> (1.3のUniversal化に伴いEventとなった)
 +
**:*:**[[IFuelHandler]]
 +
**:*:**<s>[[IPickupNotifier]]</s> <u>[[FMLPlayerEvent|PlayerEvent]]</u> (1.3のUniversal化に伴いEventとなった)
 +
**:*:**<s>[[IPlayerTracker]]</s> <u>[[FMLPlayerEvent|PlayerEvent]]</u> (1.3のUniversal化に伴いEventとなった)
 +
**:*:**[[IWorldGeneretor]]
 +
**:*:*[[IEntityAdditionalSpawnData]]
 +
**:*:*[[IThrowableEntity]]
 +
**:*:*<s>[[LanguageRegistry]]</s> <u>[[TickEvent]]</u> (1.3のUniversal化に伴いEventとなった)
 +
**:*:*[[RegistryBuilder]]
 +
**:*:*<s>[[TickRegistry]]</s> <u>[[ClientRegistry]]</u> (1.3のUniversal化に伴い移動された)
 +
**:*:*[[VillagerRegistry]]
 +
**:*toposort
 +
**:*:Modのソートに使用されるTopologicalSortの実装
 +
**:*versioning
 +
**:*:バージョン表記のパーサー群
 +
**relancher
 +
**:ローダー周りのUtil、API群
 +
**:*[[IFMLCallHook]]
 +
**:*[[Coremodsの基礎|IFMLLoadingPlugin]]
 +
**:*[[SideOnly]]
 +
**repackage
 +
**:FML内部で使われているサードパーティー製Util群
 +
**server
 +
**:サーバーサイドのAPI群
 +
**:*[[FMLServerHandler]]
  
 
==Minecraft Forge API==
 
==Minecraft Forge API==
114行目: 152行目:
 
:ORE_GEN_BUSに登録するイベント
 
:ORE_GEN_BUSに登録するイベント
 
==== 一覧 ====
 
==== 一覧 ====
*Event (net.minecraftforge.fml.common.eventhandler)
+
整備中。
 +
<!--*Event (net.minecraftforge.fml.common.eventhandler)
 
**AnvilUpdateEvent (net.minecraftforge.event)
 
**AnvilUpdateEvent (net.minecraftforge.event)
 
**BabyEntitySpawnEvent (net.minecraftforge.event.entity.living)
 
**BabyEntitySpawnEvent (net.minecraftforge.event.entity.living)
385行目: 424行目:
 
**WorldTypeEvent (net.minecraftforge.event.terraingen)
 
**WorldTypeEvent (net.minecraftforge.event.terraingen)
 
***BiomeSize in WorldTypeEvent (net.minecraftforge.event.terraingen)
 
***BiomeSize in WorldTypeEvent (net.minecraftforge.event.terraingen)
***InitBiomeGens in WorldTypeEvent (net.minecraftforge.event.terraingen)
+
***InitBiomeGens in WorldTypeEvent (net.minecraftforge.event.terraingen)-->
  
 
===流体API===
 
===流体API===

2017年3月25日 (土) 04:43時点における版

Attention.pngWarning:現在編集中であり、古い情報が多く含まれています。

概要

Minecraft Forgeとは、Mod間の互換性を保ちつつMinecraftを拡張するために作られたAPIである。
1.8以前はForgeModLoaderが基本部分を担っていたが、統合された。

開発環境でのインストール方法

MinecraftForge導入手順を参照。

関連リンク

ForgeModLoader API

1.8の統合後はnet.minecraftforge.fml下、統合前はcpw.mods.fml下に存在するAPI群。
ローダー部分や基本的なイベント、フックはこちらに含まれている。
現在は統合されているため、特にMinecraft Forgeと区別する必要はない。

Minecraft Forge API

追加メソッド

基礎

実績ページの追加を担うAPI
村や遺跡などが生成されるバイオームを管理するAPI
ダンジョンや遺跡, 廃坑などに生成されるチェストの中身へのフックを担うAPI
1.9でLootTableが実装されたため廃止された。
Forge式コンフィグファイルの生成を担うユーティリティ
Dimension関連のAPI
動的にEnum定数を追加するユーティリティ
イベントの登録や様々なフックを担うAPI
植物に関するEnum定数
方向に関するEnum定数
1.8以降バニラにEnumDirectionができたので廃止された。
植物インタフェース
ハサミインタフェース
特殊な防具用のインタフェース
関連クラス

イベント

イベント概略
EVENT_BUSに登録するイベント
TERRAIN_GEN_BUSに登録するイベント
ORE_GEN_BUSに登録するイベント

一覧

整備中。

流体API

流体の容器の登録API

鉱石辞書

鉱石辞書本体, 鉱石辞書への登録, 参照を担うAPI
鉱石辞書を利用した定形レシピを追加するためのクラス
鉱石辞書を利用した不定形レシピを追加するためのクラス