約 1,102,974 件
https://w.atwiki.jp/disno/pages/103.html
禁止MOD ASIA鯖禁止MOD フォーラム 故意に使用した場合、アカウント停止は免れない。 禁止MODを間違って導入してしまわないように、禁止機能の内容を掲載しておきます。 ※日本語訳が、間違っている場合があります。(加筆修正もしくはRilianまで修正依頼ください。) ●戦闘中の車両を、半自動化・完全自動化するようなもの(bot・マクロ・またはそれを行使するIEの利用) ●木、葉、ブッシュ、葉のテクスチャを削除する、またはそれらの透明度を変更する行為。 ●レーザーポインターの導入(砲身から照準するもの) ●内部モジュールと乗組員の位置を表示するような3Dリモデル。(2Dは可能) ●透明テクスチャの導入。車体・貫通可能なオブジェクト。 ●画面上で、トレースする行為。(非表示車両の位置トレース/表示車両の位置トレース/非表示車両の履帯表示など。) ●調整自動照準システム エイムアシスト システム(モジュールまたは弱点に、自動で照準するもの) 車両の中央以外に、自動的に照準するもの。 照準中、障害物の後ろのターゲットの輪郭を強調するもの。 ●自走砲以外の車両の、俯瞰視点を可能にするもの。 ●カメラのズームアウトで、全体が表示できるようになるもの。(フリーカメラ) ●拡張パーツ・搭乗員スキル・消耗品を含めた装填時間を表示するもの。(デフォルトの装填時間は可) ●手動で使用するように設計された消耗品の使用を自動化。(手動消火器/修理キット) ●敵戦車の輪郭を常に表示状態にするMOD ●スキルがなくても、第六感と同等の機能が得られるMOD ●被弾したときに、見えていない敵車輌の車輌名やプレーヤー名を表示するMOD *注Aslains WOTのModパックを使用する場合は、「制限付きNA版」を使用 ●最後に敵が居た位置を3Dマップ上に表示する機能(ミニマップは問題ありません) ●チャットなどのチーム内情報交換以外で、MODが受動的に情報を取得しミニマップ上へ表示するMOD ミニマップ上に破壊オブジェクトの表示/地形/樹木/建物/など 発射位置表示マーク(自走砲カウンターMOD) 敵の進行方向/ターレット方向、ミニマップ上に表示 敵の視界範囲の表示
https://w.atwiki.jp/gomigomi/pages/27.html
server\server\modeal\classes server\server\modeal\gametime server\server\modeal\Instance server\server\modeal\item server\server\modeal\map server\server\modeal\monitor server\server\modeal\npc server\server\modeal\poison server\server\modeal\shop server\server\modeal\skill server\server\modeal\trap server\server\model 内容 備考 AcceleratorChecker.java Beginner.java Dungeon.java DungeonRandom.java ElementalStoneGenerator.java Getback.java HpRegeneration.java HPRの処理など L1ArmorSet.java セット装備での変身・ステータス・メイプルなど L1Attack.java 攻撃系全般・サモン.ペットなどの攻撃も含む L1BossCycle.java L1BossSpawn.java L1Buddy.java 友達リスト L1CastleLocation.java L1Character.java キャラクターの初期の状態などを変更するときに L1Clan.java L1Cooking.java 料理の効果や時間など L1CurseParalysis.java L1DeleteItemOnGround.java L1DwarfForClanInventory.java L1DwarfInventory.java L1EffectSpawn.java L1EquipmentSlot.java 装備で魔法を使えるようになる L1GroundInventory.java L1HateList.java L1HouseLocation.java L1Inventory.java 所持アイテムの処理? L1ItemDelay.java L1Karma.java L1Location.java L1Magic.java 魔法全般・確率やダメージ量 L1MapArea.java L1MobSkillUse.java L1NpcDeleteTimer.java L1NpcRegenerationTimer.java L1NpcTalkData.java L1Object.java L1ObjectAmount.java L1Paralysis.java L1Party.java L1PcInventory.java L1PinkName.java L1PolyMorph.java L1Quest.java L1Spawn.java L1TaxCalculator.java L1Teleport.java L1TownLocation.java L1Trade.java L1UbPattern.java L1UbSpawn.java L1UltimateBattle.java L1War.java 戦争の処理全般 L1WarSpawn.java L1WeaponSkill.java L1World.java MpRegeneration.java メディ・青pなどのMP回復処理 MpRegenerationByDoll.java マジックドールの効果など
https://w.atwiki.jp/kobapan/pages/188.html
MODX/エクスポートしたHTMLとスタイルシートを一括ダウンロードするモジュール
https://w.atwiki.jp/fallout4_mod/pages/14.html
このページは、銃器Mod製作 チュートリアルを終えている事を前提に進めていきます。 このページでは、新規のアタッチメントをワークベンチから利用出来るようにする為の解説をします。 ・作業内容 44マグナムに10mmピストルのサプレッサーを装着出来るようにします。 既定の設定では、44マグナムにマズルを装着する事は出来ません。 それでは、Creation KitからMaster FileにFallout4.espを選択し、Active Fileは前回セーブしたModTutorial.espに設定してロードして下さい。 次に、Item- Object Modからmod_10mm_Muzzle_Suppressorを選択して下さい。 フィルター機能を利用する事で、入力した文字列があるものだけを表示する事が出来ます。 そうすると、Object Modウィンドウが新規に開かれました。 現在の設定ですと、10mmピストルのものになっていますので、これから44マグナム専用の武器アタッチメントに変更していきましょう。 最初に、IDを変更する必要があります。 mod_10mm_Muzzle_Suppressorとなっている部分をmod_44_Muzzle_Suppressorに変更して下さい。 こうする事で、別IDとしてこのアタッチメントを利用する事が出来るようになりましたが、まだ10mmピストル専用です。 任意に、Nameを変えても構いません。 今回は、Suppressorのままで進めたいと思います。 Descは、説明文の事なので説明を追加しても構いませんが2バイト文字は使用する事が出来ませんので気をつけて下さい。 日本語として表示したい場合は、FO4Translatorなどで翻訳してUTF-8で出力する必要があります。 Loose Modは、アタッチメントをMiscアイテムとして取得する為に設定する項目です。 アタッチメントを追加するにあたって必要な項目ですので、後に設定していきます。 Target Object Mod Association Keyworldsの囲い内で右クリックを押して下さい。 Addを選択し、Filterでma_44と入力してリスト内からma_44を選択します。 正しければリスト内に、ma_44が追加されたと思います。これで、このObject Modを44マグナムで使えるようにする為の設定を1つ終えました。 ma_10mmは不必要ですので、ma_10mmにカーソルを合わせて右クリック- Deleteで削除してしまいましょう。 現時点で必要な設定は終えましたので、右下にあるOKをクリックしてウィンドウを閉じて下さい。 Create New Object?ウィンドウが出ると思いますので、はいを押して下さい。 出なかった場合は、IDが正しく設定出来ていないので再度開いてIDを設定し直して下さい。 次に、武器からアタッチメントを取り外した時にMiscアイテムとしてインベントリに追加されるようにする設定を行います。 Items- MiscItemから、miscmod_mod_10mm_Muzzle_Suppressorをダブルクリックで開きます。 次に、Object Modの時と同じようにIDを変更していきます。 miscmod_mod_10mm_Muzzle_Suppressorをmiscmod_mod_44_Muzzle_Suppressorに変更して下さい。 名前が10mm Suppressorですと違和感がありますので、44 Suppressorに変更しておきましょう。 WeightはMiscアイテムの重量となります。変更しても問題ないので任意で別の数値に変更しても構いません。 ValueはMiscアイテムの価格になります。こちらも任意で変更して構いませんが、数値は整数で入力して下さい。 Pickup Soundは、取得時に再生される音源ファイルを参照します。 Putdown Soundは、落とした時に再生される音源ファイルを参照します。 MiscItemの設定は、これで終了ですのでOKを押してウィンドウを閉じて下さい。 Create New Object?ウィンドウが出ると思いますので、はいを押して下さい。 MiscItemを設定出来ましたので、Object ModからMiscアイテムとして入手出来るようにMiscItemを設定しましょう。 Items- Object Modからmod_44_Muzzle_Suppressorを開きLoose Modのドロップダウンリストからmiscmod_mod_44_Muzzle_Suppressorを探し出して選択して下さい。 ドロップダウンリストが開かれた時に、キーボードから文字を入力する事で入力した文字の場所に飛んでくれます。 文字列を打ち込む事も可能ですが、慣れない内は難しいかもしれませんが頑張って下さい。(アンダーバーを打ち込む場合は、USキーボードでないと正しく入力されません。) 設定は終了しましたので、OKを押して閉じて下さい。 最後に、ワークショップからアタッチメントの作成が出来るようにする為の設定を行います。 Items- Constructible Objectからco_mod_10mm_Muzzle_Suppressorをダブルクリックで開いて下さい。 IDをco_mod_10mm_Muzzle_Suppressorからco_mod_44_Muzzle_Suppressorに変更しておきます。 Workbench Keywordは、ケミストリーやアーマーベンチなどから作成する場合に設定します。 今回はNONEのままで問題ありません。 Created Objectから、mod_44_Muzzle_Suppressprを選択して下さい。 これは、ワークベンチから製作を行った際に入手されるオブジェクトの指定項目です。 Required Item Listは、製作時に必要となる材料を設定出来ます。 c_Adhesiveを選択してRequired Coundを1に変更してみましょう。 これで製作時のコストが5- 1へと減少しました。 Required Objectのドロップダウンリストから別の素材を指定する事も可能です。 Match Conditionsは、比較演算子などを利用して条件を満たしている場合にワークショップから製作出来るように設定する項目です。 少し難解かもしれませんが、条件の指定が出来る為に強力過ぎるアタッチメントを序盤では制限するような事も出来て大変便利です。 少し解説すると、Function Name(関数名)のHasPerkはパークを取得しているかどうかの関数です。 Function Infoは、どのパークなのかを指定する項目です。この場合ですと、GunNutの2番目のパークを取得しているかどうかの設定になっています。 Compは比較演算子の事です。==は、等しいかどうかを表しています。 Valueは数値を設定します。Hasperk関数は0か1かのブール値となっていますので0か1を入力します。 0ですと、取得していなければ・・・。1ですと、取得していれば・・・と言う感じです。 簡潔にすると、GunNutの2番目のパークを取得していればアイテムの製作が可能になると言う意味になります。 以上で設定は終了となります。 OKを押してウィンドウを閉じて下さい。 それでは、早速インゲームで正しくオブジェクトの製作が可能かどうか試してみましょう。 メニューバーのFile- Saveからファイル名をModTutorialとし保存して下さい。 あれれ、おかしいですね。 44マグナム用に設定した筈なのに、カテゴリ内にMuzzleの項目が表示されていません。 随時更新
https://w.atwiki.jp/winningeleven2011/pages/215.html
パッチ紹介PESEdit Patch PESVN Patch Fire Patch 2011 主なパッチ紹介サイト 主な制作フォーラム パッチ紹介 基本的に チーム、選手、リーグの実名化 選手の顔、シューズ、ボール、曲、アドボード、壁紙を追加 エンブレム、ユニフォームを実際の物にする 移籍反映 以上の改変は大体のパッチに共通しているので省略 PESEdit Patch 特徴 ブンデス1部と2部を追加 新しいスタジアムを追加(別途スタジアムパックが必要) 選手の能力の変更(コナミの能力を元にして修正) 備考 大型パッチの中では比較的改変箇所が少ないのでこのパッチを基にした改変パッチも多い 更新が安定している PESVN Patch 特徴 選手の能力の変更(コナミ+フットボールマネージャー) 新しいチームの追加 CL、ELに出ているチーム MLSの幾つかのチーム U-21、U-20代表などのヤングチーム AFFスズキカップ2010(東南アジア選手権)の代表チーム 2部リーグを追加(チャンピオンシップ、セリエB、ブンデス.2、リーガ・アデランテ) ※どれか一つを選択 リベルタドーレスのチームをその他のモードでも使えるように 幾つかのスタジアムの芝のHD化 KOMU氏のゲームプレイパッチを同梱 沢山のスコアボードを追加(どれを使うか簡単に選択できるようになってます) スタジアムの追加(お好みで)※コナミスタジアムと入れ替え Fire Patch 2011 特徴 チームの増加:全部で214チーム(!) 一部イントロの変更 備考 EXEを独自にいじっているので 公式やキットサーバー等のアップデートした時は 制作者の対応待ちになる 主なパッチ紹介サイト PES next-gen Editing Gamingaccess PES-Patch.com PES Patchs ModdingWay 主な制作フォーラム Evo-Web PES VN
https://w.atwiki.jp/projectzomboid666/pages/30.html
MODとはなにか MODとは、主にPCゲームにおいて、開発・運営元ではなくユーザーが作成してゲームに適用可能にしたプログラムの総称である。MODification(改変)の略と解釈される。 MODはユーザーがゲームに望む改良点や追加機能を自作して公開したものであるといえる。オリジナルのゲームにはない機能を追加したり、ゲームバランスを調整したり、バグとおぼしき部分を是正したり、ゲームやキャラクターの見た目を変更・追加したりと、MODによって実現される内容は多種多様である。非公式の他言語ローカライズもMODに該当する。 https //www.weblio.jp/content/MOD どのようなMODがあるのか システム面の変更から、マップの追加、服装の追加、武器の追加、食料の追加、車両の追加、スキルの追加、髪型の追加、アイテムの追加、大型のMODにまで及ぶ。 注意点 ①導入は自己責任で。 そもそもMODは非公式のものであり、公式がサポートしていないのがほとんどです。 ②競合に注意。 MODは個人が作ってるものなのでMODどうしが競合(干渉)してエラーがでる場合があります。その場合はまず、MODを抜いたりして試してください。 わからない場合はsteamのMODの説明の下のコメント欄に○○ができない(○○doesn't work.)などと書いている場合があります。それも参考にしてください。 ③感謝の気持ちを忘れず! modは基本的にはボランティアに等しいものなので、すぐにケチは付けず、更新早くしてくれ!なども言わないようにしよう! ④MODの更新に注意 2023年5月はまだBUID41なのですが、いずれBUID42が来ます。そうすると大きくゲーム内verが変わってしまう(BUID41→BUID42)なので既存のMODが対応しなくなってしまうことがあるので気をつけてください。 システム系 Mod Options BUILD41対応 ほかのmodの設定を変えられる。結構便利 https //steamcommunity.com/sharedfiles/filedetails/?id=2169435993 searchtext= More Traits BUILD41対応 スキルを増やす https //steamcommunity.com/sharedfiles/filedetails/?id=1299328280 searchtext= Improved Build Menu BUILD41対応 建築で材料の部分がわかりやすくなる。足りているものが緑色になり、足りない部分が赤色に。地味に嬉しい。 GUI系 Minimal display BUILD41対応 腹減りや水分、スタミナや眠気などがパッと見てわかるバーが追加される。 改良版がでた。 https //steamcommunity.com/sharedfiles/filedetails/?id=2004998206 searchtext= sDayZ - Minimal Display Bars Preset And New Icons 上のmodの改良版。もっと見やすくなった(多分) 上のmodが必要。https //steamcommunity.com/sharedfiles/filedetails/?id=2799152712 searchtext= 重複アイテムをコンディションで並べ直す(Reorder Duplicates by Condition) BUILD41対応 武器や服装の耐久度、食べ物の残量などで並び替えてくれる便利系mod. https //steamcommunity.com/sharedfiles/filedetails/?id=2766834021 searchtext= Health Bars (for Build 41) これも体調を表示する便利系mod.説明を見なきゃどこが何かわからないかも、基本左二つの腹減りと水分さえ分かればOK https //steamcommunity.com/sharedfiles/filedetails/?id=1959288739 KillCount BUILD41対応 自分の情報画面にタイトル通りのkillcountが表示される。どのジャンルのどの武器で何体倒したかまで表示される。車も表示される。 https //steamcommunity.com/sharedfiles/filedetails/?id=2553809727 Simple playable piano lesson BUILD41対応 ピアノが弾けるようになる。 ちゃんと音が出るのもポイント https //steamcommunity.com/sharedfiles/filedetails/?id=2465017864 searchtext= マップ追加系 West Point Expansion BUILD41対応 westpointを拡張するmod。 これだけでOK https //steamcommunity.com/sharedfiles/filedetails/?id=2195155059 searchtext= Grapeseed BUILD41対応 grapeseedを追加する。場所はRoseWoodの左上 https //steamcommunity.com/sharedfiles/filedetails/?id=2463499011 searchtext= BlackWood BUILD41対応 BlackWoodを追加する。 場所はRoseWoodの右上(中規模) https //steamcommunity.com/sharedfiles/filedetails/?id=2536865912 searchtext= Bedford Falls BUILD41対応 Bedford Fallsを追加する。マルドローの右下。めっちゃデカい(大規模) https //steamcommunity.com/sharedfiles/filedetails/?id=522891356 searchtext= Raven Creek BUILD41対応 Raven Creekを追加する。 マップの左上(大規模) https //steamcommunity.com/sharedfiles/filedetails/?id=2196102849 searchtext= Lake Ivy Township BUILD41対応 LakeIvy Townshipを追加する。マルドローの左上(小規模) https //steamcommunity.com/sharedfiles/filedetails/?id=2252982049 Basement BUILD41対応 自分で家の中に作れるシェルターを追加する。場所は決まっておらず、家の中に作れる。入り口のサイズは変わらないが、小、中、大のサイズでシェルター内部の大きさを決められる。シェルター内は何もなく、自由にカスタマイズ可能。本を読むことによってレシピが覚えられる。 とてもオススメでゾンビに襲われる心配もない。 これで外を気にせず快適な生活を営める…かもしれない。 https //steamcommunity.com/sharedfiles/filedetails/?id=2849247394 Kingsmouth in KY BUILD41対応 Kingsmouth島を追加する。終末でバカンスはいかが? https //steamcommunity.com/sharedfiles/filedetails/?id=2434339338 武器追加系MOD Firearms B41 BUILD41対応 武器(主に銃)を追加する。 Glock 17 Colt Single Action Army MP5 UZI Carbine Winchester 1894 1873 FN FAL M60 M24 Ithaca 37 Remington 870 Ruger M77/22 M24 SKS AK-47 https //steamcommunity.com/sharedfiles/filedetails/?id=2256623447 装備関係 アクセサリー系 Tactical Knives Sheath BUILD41対応 最終アップデート 2022/7/29 ナイフだけをしまうホルスターのようなものを追加する。 ホルスターとは別なので追加でナイフがショートカットに入れられて便利。 https //steamcommunity.com/sharedfiles/filedetails/?id=2839025395 Simple sring mod BUILD41対応 最終アップデート 2023/1/21 武器をひっかけることの出来るスリングを追加する。 3つほどショートカットが増やせる。軍事施設などにある。 https //steamcommunity.com/sharedfiles/filedetails/?id=2868394326 バイオハザード系 The Last Of Us系 Ellies Knife + THE LAST OF US WEAPONS ラストオブアスに出てくる武器を追加する。 内容は下記の通り。 Ellie's Knife Scissor Pipe Scissor Plank Scissor Parts Shiv Weapon Nail Bomb Molotov Brick Machete Clothing Retextures Blue School Bag Retextures https //steamcommunity.com/sharedfiles/filedetails/?id=2789958529 The Walking Dead系 -
https://w.atwiki.jp/etvip/pages/285.html
MOD解説 複数あるETのMODを解説しようと思います etmain デフォルトの状態ではこれ。 ヒットボックスがおかしかったり、バグがあったり、一部のマップができなかったりする。 etpro etmainの修正MODみたいなもの。 ヒットボックスの修正やご無体な連射バグの修正、専用マップなど、意外ににかなりの修正点がある。 VIP鯖では主にこれを使用し、国際大会などでも使用される。 etpub XPのセーブ機能がある。鯖の設定によるが、NoobyLandでは最大一ヶ月間保存される。 ガチ&お祭で使える便利MODで海外では利用率高し。 二段ジャンプ、投げナイフ(ナイフ所持中に右クリック)、毒注射、死んだ振り、死体引きずり またパンツァーファウストの軌道に重力をかけることができる。 ヒットボックスはetpro/mainと微妙に違う。 jaymod etpubを基にして、さらに発展させた本格的お祭MOD。もちろんXPセーブ機能あり。 二段ジャンプ・死体引きずりは無いが、そのほかは健在。 スキルレベルが5まで存在し、MAXで緑になる。 EngはLv5で【通常地雷・毒霧地雷・指向性地雷】が選択できる。 また、Co以外の全クラスでショットガンが使用できる。 こちらもヒットボックスが上記3MODと微妙に違う。 NoQuarter 完全お祭MOD。NOOBの為にあるMOD。これでも満足できないNOOBはハンゲでもやってなさい 妙なところがリアルで、両陣営共有武器(パンツとかMMGとかFGとか)が無くなっている。 スキルレベルはMAXLv9まである。 全クラスLvMAXでMedの注射が使える。 パンツ(ロケラン)が誘導仕様またはリモコン仕様 パンツ(ロケラン)の弾はスナイプで破壊できる ファイヤーボールを飛ばし合って超常能力合戦ができる 他、いろいろ。 昔のanko鯖で一時使用されていた。Terra鯖で不定期に遊べる。 FalckonET ETでは数少ないリアル系MOD。TC Eに少し似ている。 モデル・テクスチャの修正、死亡モーションの追加などがメイン。 遊んでみれば解るが、これはもう別なゲームである。 アイアンサイト(銃に付いている照準)で狙いを定める 走っている時には銃が使えない。 パンツがリモート操作できる 何と言ってもこのMODの目玉は、鯖の設定で設置した車両をある程度自由に動かせる点にある。 バギーみたいな乗り物と戦車が置けるのだ。 しかし、公式に書いてある設定方法がわかりにくい。 他にこのMODを採用している鯖もないため、事実上証明不可能。 誰か英語の読める人、公式訳してきてください。 →現在では謎が解明し戦車を自由に動かしてWonderbar!できるようになっている。 True Combat Elite―TC E ETのMODであるが、こちらは内容をテロリストVSコマンド部隊という現代戦である。 ETとは完全に別ゲーム。DOOMエンジン使ったFPSみたいなもんだと思ってください。 ETTV サーバーの観戦ができる。 主に大会などでスペクトしている。 LamaPRO W ETの原型、RtCWのマルチ対戦風にするMOD。 ていうかRtCW。 Omni-bot おバカなBOT。 戦闘はそこそこ強いのだが、立ち回りがいちいち笑える。 例えばオアシスのAT-Gun前の階段で引っかかったりしている。 でもv21するとどんな状況下でも蘇生を最重要として突っ込んでくる、けなげなヤツら。 可愛すぎです。萌え。 a href="http //brettforrest.com/wp-content/themes/cod_overnight_tramadol.html quot; cod overnight tramadol /a br -- htljqevipg (2007-12-06 22 04 34) 何でもする。舐めてあげるし。入れてあげる。d(´∀`*)グッ♂ http //gffz.biz/index.html -- 名無し (2011-12-08 04 32 39) リッチドールの奈々子です。宜しくお願いします。+.(・∀・).+ http //44m4.net/ -- ひとみ (2012-06-11 16 07 04) 名前 コメント
https://w.atwiki.jp/akasatanahama/pages/137.html
概要 Minecraft内のクラス書き換えインターフェイス、"IClassTransformer"を用いてバニラクラスの書き換えを行う。 このチュートリアルはとても難解な内容を含んでいます。 中級編までをひとしきり出来るようになってから挑戦してください。 バニラクラスを書き換えるため競合に注意して行ってください。 事前準備 今回は事前の準備が幾つか必要である。 まず、クラス書き換え用の別ディレクトリをsrc/main/java内に作成する。今回はalcore.asmとする。 ディレクトリを分けずにやると正しく読み込めなくなるため必ずディレクトリを分ける。 次に、coremodとして働かせる(→クラス書き換え用に通常のMODより早く読み込む)MODとして、開発環境とビルド環境にそれぞれ読み込ませる。 今回はcoremodのクラスをalcore.asm.ALCorePluginとする。 ビルド環境 MODのjarファイル内に情報を埋め込めるよう、build.gradleファイルの末尾に以下のコードを追加する。 //manifestファイルの書き込みをビルドに追加する。これにより、coremodの読み込みが可能になる。 //なお、テスト起動時にはこのオプションが効かないためVMオプションに以下の引数を追加する。 //-Dfml.coreMods.load=alcore.asm.ALCorePlugin jar { manifest { //coremodのパスを指定する。 attributes FMLCorePlugin alcore.asm.ALCorePlugin //今回はAluminiummodが別で入っているためそれも読み込む。 attributes FMLCorePluginContainsFMLMod true } } 開発環境 開発環境では上記のものが効かないためVMオプションに以下の引数を追加する。 -Dfml.coreMods.load=alcore.asm.ALCorePlugin ソースコード 今回は、ディレクトリ"tutorial.aluminiummod"でアイテムの追加とレシピの追加及び鉱石の追加を参考にアルミニウムインゴット、アルミニウム鉱石とその精錬レシピまでを実装してある前提で解説する。 もしそこまでのやり方がわからない場合は、一旦上記三つのチュートリアルをよく読んでから戻ってきていただきたい。 ALCorePlugin.java package alcore.asm; import cpw.mods.fml.relauncher.IFMLLoadingPlugin; import java.util.Map; public class ALCorePlugin implements IFMLLoadingPlugin { //書き換え機能を実装したクラス一覧を渡す関数。書き方はパッケージ名+クラス名。 @Override public String[] getASMTransformerClass() { return new String[]{"alcore.asm.ALCoreTransformer"}; } //あとは今回は使わない為適当に。 @Override public String getSetupClass() { return null; } @Override public void injectData(Map String, Object data) { } @Override public String getAccessTransformerClass() { return null; } @Override public String getModContainerClass() { return null; } } ALCoreTransformer.java package alcore.asm; import cpw.mods.fml.common.asm.transformers.deobf.FMLDeobfuscatingRemapper; import net.minecraft.launchwrapper.IClassTransformer; import org.objectweb.asm.*; import static org.objectweb.asm.Opcodes.*; public class ALCoreTransformer implements IClassTransformer { //IClassTransformerにより呼ばれる書き換え用のメソッド。 @Override public byte[] transform(final String name, final String transformedName, byte[] bytes) { //対象クラス以外を除外する。対象は呼び出し元があるクラスである。 if (!"net.minecraft.tileentity.TileEntityFurnace".equals(transformedName)) return bytes; ClassReader cr = new ClassReader(bytes); ClassWriter cw = new ClassWriter(1); ClassVisitor cv = new ClassVisitor(ASM4, cw) { //クラス内のメソッドを訪れる。 @Override public MethodVisitor visitMethod(int access, String methodName, String desc, String signature, String[] exceptions) { MethodVisitor mv = super.visitMethod(access, methodName, desc, signature, exceptions); //呼び出し元のメソッドを参照していることを確認する。 String s1 = FMLDeobfuscatingRemapper.INSTANCE.mapMethodName(name, methodName, desc); //C \Users\ ユーザー名 \.gradle\caches\minecraft\net\minecraftforge\forge\1.7.10-10.13.4.1558-1.7.10\forge-1.7.10-10.13.4.1558-1.7.10-decomp.jar\より名称を検索、比較してメソッドの難読化名を探す。 if (s1.equals("updateEntity") || s1.equals("func_145845_h") || methodName.equals("updateEntity") || methodName.equals("func_145845_h")) { //もし対象だったらMethodVisitorを差し替える。 mv = new MethodVisitor(ASM4, mv) { //呼び出す予定のメソッドを読み込む。 @Override public void visitMethodInsn(int opcode, String owner, String methodName, String desc, boolean itf) { //書き換え対象のメソッドであることを確認する。 String s2 = FMLDeobfuscatingRemapper.INSTANCE.mapMethodName(name, methodName, desc); if (s2.equals("isBurning") || s2.equals("func_145950_i") || methodName.equals("isBurning") || methodName.equals("func_145950_i")) { //引数として次に渡す値にthisを指定する。 mv.visitVarInsn(ALOAD, 0); //メソッドを読み込む。INVOKESTATICでstaticメソッドを呼び出す。 super.visitMethodInsn(INVOKESTATIC, "alcore/asm/ALCoreHook", "ALFurnaceHook", Type.getMethodDescriptor(Type.VOID_TYPE, Type.getObjectType("net/minecraft/tileentity/TileEntity")), false); //今回はフックを差し込むだけだが、ここで書き換えも出来る。 } //今回は最後に元のクラスを読み込んでreturnする。 super.visitMethodInsn(opcode, owner, methodName, desc, itf); } }; } return mv; } }; cr.accept(cv, ClassReader.EXPAND_FRAMES); return cw.toByteArray(); } } ALCoreHook.java package alcore.asm; import net.minecraft.entity.item.EntityItem; import net.minecraft.init.Blocks; import net.minecraft.init.Items; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; import net.minecraft.tileentity.TileEntity; import net.minecraft.tileentity.TileEntityFurnace; import tutorial.aluminiummod.AluminiumMod; public class ALCoreHook { //差し込むフック。フック内の詳細は割愛。簡単に言うと、鉄鉱石とアルミニウムインゴットがある状態で火がついていたら爆発して鉄を撒き散らす。 public static void ALFurnaceHook(TileEntity tileEntity) { if (tileEntity instanceof TileEntityFurnace) { TileEntityFurnace furnace = ((TileEntityFurnace) tileEntity); if (furnace.furnaceBurnTime 0 furnace.getStackInSlot(0) != null furnace.getStackInSlot(0).getItem() == Item.getItemFromBlock(Blocks.iron_ore) furnace.getStackInSlot(2) != null furnace.getStackInSlot(2).getItem() == AluminiumMod.aluminium) { furnace.setInventorySlotContents(0, null); furnace.setInventorySlotContents(1, null); furnace.setInventorySlotContents(2, null); if (!furnace.getWorldObj().isRemote) { furnace.getWorldObj().newExplosion(null, furnace.xCoord, furnace.yCoord, furnace.zCoord, 15, true, true); EntityItem entityItem = new EntityItem(furnace.getWorldObj(), furnace.xCoord, furnace.yCoord, furnace.zCoord, new ItemStack(Items.iron_ingot, furnace.getWorldObj().rand.nextInt(32) + 32)); entityItem.fireResistance = Integer.MAX_VALUE; furnace.getWorldObj().spawnEntityInWorld(entityItem); } } } } } 解説 ALCorePlugin.java public String[] getASMTransformerClass() 書き換えするコードを記述したIClassTransformerを実装してあるクラスを渡す。 配列形式であるため、トランスフォーマーはいくつも追加することが出来る。 public String getModContainerClass() 今回はModとして見えないように実装するため、nullを返してある。 もしModとして見えるようにする(CodeChickenCoreのように別MODとしてリリースする)ならば、DummyModContainerを継承したクラス名をStringで渡す。 ex. "alcore.asm.ALModContainer" ALCoreTransformer.java public byte[] transform(final String name, final String transformedName, byte[] bytes) 書き換えの実態を担うクラス。引数は クラス名、易読化クラス名、バイトコードである。 バイトコードはそのままでは読めない読めたらすごいため、 ClassReader(バイトコードをASMで読めるようにする)→ClassWriter(ClassReaderを書き出せるようにする)→ClassVisitor(内部クラスでクラスを書き換えられるようにする) と手順を踏んで使えるようにする。 最終的にClassWriterをバイトコードに書き出して返す。 間違って別のクラス・メソッドを書き換えてしまってはいけないため、名称でのチェックが必要。 FMLDeobfuscatingRemapper public String mapMethodName(String owner, String name, String desc) クラス名、難読化されたメソッド名、引数記述Type(後述)の順で引数を与えて易読化メソッド名を返す…… はずなのだが、forge1.7.10だと何故かうまく動かない事がある。そのため、コメントの通り難読化されたソースコードと易読化されたものを比較し、難読化名も判定しておいたほうがいい。 ClassVisitor public MethodVisitor visitMethod(int access, String methodName, String desc, String signature, String[] exceptions) ここで、呼び出し元のメソッドをチェックする。今回は"onUpdateEntity"から呼ばれた"isBurning"に対して書き換えを施しているが、もし無差別にあるメソッドを書き換えるならif節は不要。 MethodVisitor public void visitMethodInsn(int opcode, String owner, String methodName, String desc, boolean itf) メソッド内での呼び出しされたメソッドを訪れる。 同様にintやstringなども訪れることが出来る(Methodvisitorのソース参照)。 ここで他のメソッドを呼び出してやることで、書き換えが実現できる。 ビルド・コンパイル coremodが正しく読み込まれているならば以下が出力されているはずである。テストプレイ時はまずこれをチェックしてみてほしい。 Found a command line coremod alcore.asm.ALCorePlugin また、このデータをjarファイルにコンパイルしたらMinecraftのディレクトリにあるmodsフォルダに入れてテストプレイをしたほうが良い。 難読化の都合上環境を変えるとうまく動かないためである。 不具合がある場合はロガーやSystem.out.printInを使って引数や変数の内容を出力させてみるのも手である。 コメント この項目に関する質問などをどうぞ。 名前
https://w.atwiki.jp/mayugeserver/pages/10.html
本鯖のMOD構成について 必須MOD(前提系) 必須MOD(本体) 導入推奨MOD 他に鯖缶が入れてるやつ 導入する可能性のあるやつ 一括DL用ファイル このページでは、普段の癖で大量に導入されているMODを羅列していく。 基本的に直リン 何とは言わんがT or使って管理してるから無駄やぞ 同一と証明出来なければセーフという理論 ※リストを管理しきれてないので一括DLファイル推奨 必須MOD(前提系) MinecraftForge CoFH Core CoFH World CodeChicken Lib 1.8.+ Forge MultiPart CBE EnderCore HeatAndClimateLib Mantle EBLib LMLibrary ElecCore OpenModsLib MrTJPCore CraftStudio API MalisisCore BdLib CXLibrary LibNine Mysterious Mountain Lib Reborn Core Redstone Flux 必須MOD(本体) Forestry Industrial Craft Advanced Solar Panels Advanced Machines Buildcraft Additional Pipes for Buildcraft Logistics Pipes Project RED Project Red - Core Project Red - Integration Project Red - Fabrication Project Red - Expansion Project Red - Illumination Project Red - Exploration Project Red - Compat Tinkers Construct PlusTiC Construct's Armory Tinkers' Evolution Tinker's SlashBlade Applied Energistics 2 AE2 Stuff AE Additions - ExtraCells2 Fork Ender IO Ender Zoo Ender IO Endergy Stellar Fluid Conduits Gas Conduits Railcraft Thermal Foundation Thermal Expansion Thermal Dynamics Thermal Innovation Thermal Cultivation Redstone Arsenal TofuCraftReload HeatAndClimateMod Extra Utilities 2 抜刀剣 ExBlades SlashBlade Japanese Addon Pack Crafting EX Smash Bats Mekanism Mekanism Generators Mekanism Tools CraftingTable IV StorageBox MineAllSMP DigAllSMP CutAllSMP Ender Storage 1.8.+ Wireless Redstone CBE Multi Page Chest OpenBlocks Steve's Carts Reborn ArchitectureCraft - TridentMC Version MalisisSwitches MalisisDoors LittleMaidReengaged Firis's Patch Biomes O' Plenty Village Names Cubic Villager CraftTweaker BiblioCraft Bibliocraft_paintings_example_resource_pack (リソースパック) Vanilla Builders Extension カラコインMOD 導入推奨MOD LiteLoader TabbyChat 2 Just Enough Items (JEI) JEI Integration Just Enough Resources (JER) Block Drops (JEI Addon) JustEnoughTooltips JEI Bees Hwyla Waila Harvestability Wawla - What Are We Looking At OptiFine FoamFix BetterFps Bad Wither No Cookie - Reloaded Sound Filters SkipSignGUI LunatriusCore InGame Info XML VILLAGE INFO SpawnChecker Schematica Inventory Tweaks Xaero's Minimap Xaero's World Map RosettaEnchantTable SignPicture Smooth Font FPS Reducer Untranslated Items ReAuth MineMenu 他に鯖缶が入れてるやつ Shadowfacts' Forgelin Better Foliage ChatLog for Forge Yarr Cute Mob Models - Remake Chat Bubbles Controlling Dynamic Lights HorseInfoReloaded ToroHealth Damage Indicators 導入する可能性のあるやつ このMOD群はまだ導入していません 導入するとログイン出来ない可能性があります McJtyLib RFTools RFTools Dimensions RFTools Control CC Tweaked Guide-API Modular Forcefield System OMLib Open Modular Turrets Open Modular Passive Defense Immersive Engineering Immersive Petroleum Immersive Railroading Immersive Cables AsphaltMod Doggy Talents Pam's HarvestCraft Compact Machines MineColonies Cooking For Blockheads MCMultiPart Sonar Core Practical Logistics 2 Ultimate Car Mod Hostile Worlds - Invasions MrCrayfish's Furniture Mod 一括DL用ファイル 必須MOD 非必須MOD
https://w.atwiki.jp/mokuzaiserver/pages/19.html
MOD導入方法 ここではMOD導入してみたい!でもやり方わからん!という人や一回やろうとしたけど挫折したンゴ… という人のためにできるだけわかりやすくMODの導入方法を説明したページです。 Windowsしか環境がないのでWindowsのやり方です。Macは知らないけどLinuxは前提MOD導入までなら多分ほぼ一緒です。 +Forge未対応時のOptifine導入方法 Forge未対応時のOptifine導入方法 「ForgeがまだなのにOptifineが最新版対応した」とは大型アプデに時とかForgeのやる気が無いときとかにたまにある現象である。 でもOptifineは有能なのでForgeがなくても普通に動きます。 まずOptifineを準備します。バージョン一覧はこちら こんなページに飛ばされるのでダウンロードします。 ダウンロードしたファイルを起動! そしたらこんなの出てくるので Installをクリックします。 少し待つとインストール完了するので OKを押すとウィンドウが閉じます。 プロファイルがOptifineのものになってたら成功です。やったね! あまり性能の良くないパソコンを使っているならより軽量な設定ができるようになります。 調べて設定してみると良いでしょう。 PCスペック次第では影MOD(シェーダー)入れることもできます。 性能に自信があるなら入れてみると良いでしょう。 なお説明はしない模様。 +Rift導入編(1.13~) Rift導入編 こちらでは1.13からの前提MODとなるRiftの導入方法を説明します。 まずこちらから直接ダウンロードします。 そしてファイルを保存して起動します。 すると画面が出てくるのでOKおして終了すると導入完了です。 +Forge導入編(~1.12.2) 前提MOD導入編 まず前提MODの入れ方を説明します。 前提MODとはMODを動かしたり読み込んだりするためのMODです。入れたいMODにあわせて必要なものを導入しましょう。 ここでは最も必要とされるMinecraftForgeの導入方法を説明します。(1.13以降は現在未対応) 準備編 MODを導入するバージョンのマイクラをあらかじめ一回起動しておく必要があります。 忘れずに起動しましょう。(ここの説明では1.12.2です。自分に必要なバージョンを起動しましょう。) ダウンロード編 MinecraftForgeを配布しているページに行ってダウンロードしましょう。ページはこちら。 画像は1.12.2です。使用するマイクラのバージョンに合ったものを入手しましょう。(1.13以降は現在未対応) すると広告ページに飛ばされます。数秒待つと広告をスキップできるようになります。スキップすると他のページに飛ばされることなくすぐダウンロードが始まります。スキップは右上に表示されます 真ん中あたりにダウンロードとか表示されても広告なので注意やで。 導入編 先程ダウンロードしたファイルを開きます。保存してすぐ開いても良いでしょう。 するとこんなウィンドウがでてきます。OKをクリックしてください。 なんか色々読み込まれるので少し待ちます。するとこんなのがでてきます。OKをクリックで導入完了です 実際に導入できたらプレイの右の矢印を押してforgeのプロファイルができたか確かめてみましょう。 新しいプロファイルの作成が確認されたら成功です。 MinecraftForgeをいれたらあともう一歩です。と言うかほぼゴールです。 次の「一般MOD導入編」を参考にいろんなMODを入れてみましょう。 +一般MOD導入編 ここからは前提MODにMinecraftForgeを必要とするMODの導入を説明していきます。 自分が導入したいMODをあらかじめ準備しておきましょう。 Linuxはなぜか旧ランチャーなのでここからは各自やり方調べてください。そこまで難しくはないです。 まずはじめにMODを入れるべき場所を開いていきましょう。 マイクラを起動し起動オプションから適当なプロファイル(どれでもOK)をクリックしてください。 ゲームディレクトリの行の右端にある緑の矢印をクリックしてください。 するとこんなフォルダが開かれます。この中のmodsフォルダの中にダウンロードしたファイルを入れましょう。 Forgeではこんな感じにバージョンごとのフォルダを作るとちゃんとバージョンごとに読み込まれるので複数のバージョンでMODを使いたい場合は誤読込を防ぐためにも分けたほうが良いでしょう。 分けた場合はMODを対応するバージョンのフォルダの中に正確に入れましょう。 導入が終わったら起動して動くか確かめてみましょう。