呪いのMinecraftの作り方 Part0

初めましての方は初めまして
よんぱちさんと申します。

# 呪いのMinecraftとは？
詳しくはこの動画を見ればわかりますが、
https://www.youtube.com/watch?v=MFoH4XMDsbo
まあ、簡単に言うと、
* Minecraftには基本ない不可解なことが起こる
* 存在しない謎mobが出てくる
* テクスチャがバグり散らかしている

などの現象が起きる"創作の"Minecraftのバージョンである。
まあここ見たほうが早いね！
https://w.atwiki.jp/minecraftcreepypasta/
ちなみにやる際は自己責任でお願いします。
創作ではありますが、都市伝説のコンテンツとして存在しないバージョンであったり、不可解なことが起こるバージョンとしてコンテンツが広がっています。

## で、どうやって作るの？そもそも作れるの？
まず、そもそも作れるのかという疑問でありますが、~~あるんだから作れるにきまってるでしょ(((~~

はい。

### どうやって作るの？
そしてどうやって作るのですが、基本的にベースバージョンがあります。しかし、1.9以降の最新バージョンで作るのはとても難しいです。ですが、Java版には旧バージョンがあり、Beta、Alpha時代だったり、正式版であれば、1.2.5以前であればとても作りやすいです。(私もいくつかそのバージョンで作ってる。)

#### どのバージョンが作りやすい？
今回は、個人的に作りやすさと要素の多さがちょうどいい1.2.5を基準にして作ろうと思います。
また、変数や関数の名前やスタイルが違いますが、正式版や、やAlphaでも作れると思います。
ちなみにほかのBeta版であれば、個人的にBeta1.8.1だったり、Beta1.7.3とかBeta1.6.6が作りやすいです。(エラーが起こりにくいため)
あまりお勧めではありませんが、Alpha版だとAlpha1.2.6が作りやすいです。

#### マルチ用のサーバーも作れる？
ちなみに呪いのMinecraftで基本サーバーはできないようになっていますが、今回は余裕があればサーバー編も書こうと思っています。(かなり難しいですが...)

#### どのツールを使うの？
RetroMCPというツールを使います。
こちらからダウンロードできます:thinking:
https://github.com/MCPHackers/RetroMCP-Java
https://github.com/MCPHackers/RetroMCP-Java/releases/tag/v1.0
基本的にzulu javaの8バージョンをお勧めします。それ以外のバージョンは推薦しません。
また、Javaのインストール方法は割愛します。自分で調べてやってください。

### 注意事項
* **こちらの記事はこの改造を推進するものではありません。何があってもすべて自己責任です。私は何があっても一切保証しません**
* ほかの方の素材を勝手に使わないでください。使うのであれば基本はフリーのもので(クレジット表記を忘れずに)、もし使いたければその方に許可をとるなりしてください
* 公開すると、消される可能性があるので消されても自己責任で！
* Javaの基本を学んでおくことをお勧めします！本屋さんなどにJavaプログラミングの教科書が売っていると思います。あとはわからないことがあればネットで調べる癖をつけよう！
* **かなり難しいです！やるときは覚悟してください**
* これらの記事では、基本のやり方と作成例しか説明しません。あくまで呪いのMinecraft制作に慣れることが目的なのであれがやりたい、こういうのが作りたいので教えてと言われても解説しませんのでよろしくです
* 今回は、購入しているMinecraftアカウント(Mojangアカウント)にログインしている前提で作ります
* Mojang様に敬意を

### 用意するもの
* Retro-MCP
* VSCode など
* VSCodeのjavaのプラグイン(あれば自動補完をしてくれるのでやりやすい)
* Zulu Java 8
* 7-zip https://7-zip.opensource.jp
* multimc or prismlauncher
* ChatGPT(使えれば)
* やる気
* 調べられる力
* 創作力


# 1. RetroMCPを実行しよう
ダウンロードして、 **新しいフォルダを作成して※重要(名前は現状なんでもいい)** そこにRetroMCPを入れて実行したら、このような画面が出てくるはずです。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2718984/be536284-f895-45bb-9176-9eae5cc81191.png)
この画面が出てきたら、「Current Version」を押します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2718984/d4f4ed1c-80d3-4ad6-baac-8abcacea1791.png)
1.2.5をクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2718984/e077c0fa-44fc-4aa2-9b42-67120ef73fd4.png)
このように出てきます。
はいをクリックしてください。
これで1.2.5がダウンロードされます。

Optionsから、Keep Resourcesを有効にします。(これをしないと一部ファイルがいじれません！)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2718984/92af2eee-956d-49da-8d32-9397b25134c6.png)

そのあとDecompileというボタンを押してください。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2718984/ced9991f-ad09-450c-b500-e593bf3e95c3.png)
そうすると、1.2.5のMinecraftのデコンパイルが開始されます。
一度デコンパイルしたら、それ以降はデコンパイルボタンを押さないでください。(リセットされます！)
デコンパイルが完了したら、`RetroMCP-Java-GUI.jar`があるフォルダをVisual Studio Codeで開きます。(なんでもいいですが、VSCode推薦です。)
# 2. 基本準備
推薦: `./jars` フォルダに行き、`minecraft.jar`を7-zipで開く。
開いたら、
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2718984/8d8cb122-a121-4ae9-9ae7-7aec1fe94faa.png)
これらのフォルダを選択し、
` ./minecraft/src/ `
にいき、選択したフォルダをそこにコピーします。(ドラック&ドロップがやりやすいです！)
基本的にクライアントの場合は、
`./minecraft/src/`
で作業します。
サーバーの場合は、
`./minecraft_server/src/`
で作業します。(サーバー編はそのうち書きます。そんなすぐはかけないので期待せず待ってください。)
ちなみに似たようなフォルダとして
`./minecraft/source/`
`./minecraft_server/source/`
がありますが、そこをいじっても何も変わらないので注意です。(ここは間違えやすいので注意！)

これで基本的な準備が完了しました。

次回はとうとう要素を作っていきます。

まずはバージョン名決めとタイトルからつくっていきます

もしコメントが来ればですが、こういうことをしたい、というのがあれば余裕があれば書くので、期待せず待ってください。

次回もよろしくです！:+1:
次回→ https://qiita.com/Yon4800/items/68b207913001614f23a8