Minecraft

MinecraftConnectionCore (prerelease) ライブラリを公開しました

C# から Minecraft にコマンドを投げるためには CoreRCON パッケージの導入が必要でした。また、コマンドを送信するためには非同期なメソッドにする必要があり、プログラミングを始めたばかりの方にはかなりハードルが高いように感じました。そこで、非同期…

【Azure + LINE + Minecraft】Minecraft の作物を自動で収穫して通知するシステムを構築してみた

Minecraft で作物を作るのは結構面倒です。種まきした後、しばらく待ってから生育具合を確認し、成長しきっていれば収穫して再び種まきするといった繰り返し作業になります。成長しきるまでに30分~1時間と、作物の種類によっても異なるので「○○分待てば収穫…

【C#】属性を使って列挙型に文字列を割り当てる

列挙型で定義した列挙子は整数 (ID) が割り当てられており、使い方によっては便利なのですが、文字列を割り当てたいなという場面が出てくると思います。 例えば、マイクラでポーション効果を付与したいときにポーション効果一覧をこのように定義します。 pub…

【C#】拡張メソッド .ToString() 的なやつをつくってみた

C# で大変お世話になっている .ToString() みたいなメソッドってどうやって作っているのか疑問に思って、色々調べたら 拡張メソッド という機能らしいです。名前は初めて知りました。 ライブラリを作っているとメソッドが増えて「わざわざ1行使って呼び出す…

【MinecraftConnection】ライブラリメモ #5

自作ライブラリのメモその5。ChestItems クラスを追加。 チェストアイテムに対して操作ができるクラスで、現在はアイテムの取得、更新、ソートが行える。 名前空間:MinecraftConnection.Data コンストラクタ:RCON GetChestItems(int x, int y, int z) : チ…

【Minecraft】チェスト内のアイテムをコピーする

Minecraft 1.13 から追加された /data コマンドですが、これを上手く使うといろんなことができます。 まずは /data コマンドで何ができるかです。コマンドのオプションはこのようになっています。 /data get -> データを取得する /data merge -> データを結…

【C# + Minecraft】ドット絵をプログラムに描かせる

目的 ドット絵に変換した画像をMinecraft上に描画する 1. 画像を用意する 今回はホロライブの雪花ラミィさんの画像をお借りしました。本人のTwitterにグリーンバックの画像がアップされています。 @yukihanalamy このままでは解像度が高すぎて描画しきれない…

Azure 上で Minecraft Server を立てる

1. 仮想マシンの作成 まずは リソースの作成 から Ubutu Server 18.04 LTS を選択します。 仮想マシンの設定ですが、私はこのように設定しました。この辺は自由に選択しても良いと思います。 で、問題は サイズ の選択ですが Minecraft Server は特にプラグ…

【MinecraftConnection】ライブラリメモ #4

自作ライブラリのメモその4です。PlayerData クラスの機能を追加。 GetHealth (string PlayerName) : プレイヤーの体力を取得 GetFoodLevel (string PlayerName) : プレイヤーの満腹度を取得 GetScore (string PlayerName) : プレイヤーのスコアを取得 使用…

【MinecraftConnection】ライブラリメモ #3

自作ライブラリのメモその3です。PlayerData クラスにて、プレイヤーのアイテム情報を取得する機能を追加。 GetHandItems (string PlayerName) : プレイヤーの手持ちアイテムを取得 GetInventoryItems (string PlayerName) : プレイヤーのインベントリアイテ…

【MinecraftConnection】ライブラリメモ #2

自作ライブラリのメモです。(まだ未公開) プレイヤーの位置を得る Minecraft でプレイヤーの位置を得るには /data get entity <Player> Pos コマンドを使用すればいいのですが、その返り値がかなり長い文字列です。しかも、データ自体は数値だけではないので文字列</player>…

【MinecraftConnection】ライブラリメモ #1

2020年12月末から製作中のライブラリのメモです。まだ公開はしていませんが、公開するときにはリファレンスが必要になると思うので、そのための記録として残しておきます。(おそらくシリーズ化っぽくなる?) Minecraft で花火を作る場合 前回の記事でも書…

【C#, Minecraft】書き初め

あけましておめでとうございます。2021年もよろしくお願いします。 さて、お正月と言えば 書き初め ですね。ということで、新年初めての書き初め(と書いてプログラミングと読む)をしていきます。 実行環境 Minecraft 1.16.3 (バニラ版, RCON設定済みサーバ…

【C#】同期メソッドから非同期メソッドを呼び出す

今までに、CoreRCON ライブラリ を用いてマイクラ自動化、もといマイクラプログラミングを色々やってきました。ただ、このライブラリを使うにあたって非同期処理のコーディングが必要になるので、「プログラミングを始めたばかり」の方には難しいかもしれま…

【C#, Minecraft】Blazorアプリ で チェストの中身(アイテム)を取得する

Minecraft 1.13 以降に追加された data コマンドを用いると、チェストの中身を取得することができます。今回は /data get block <チェストの座標> Items というコマンドを用いて、チェスト内のアイテムを取得してみます。 目標 Blazor アプリで任意の座標に…

【C#, Minecraft】Blazor アプリでマイクラにコマンドを投げる

Blazor を一言で言うなら、C#とHTMLを組み合わせてWebアプリを作れるフレームワーク です。正確には ASP.NET Core 上で動作する機能の1つですが、詳しい説明は省きます。気になる人は調べてみてください。 docs.microsoft.com 目的 Visual Studio で Blazor …

【Minecraft】ワールド間を行き来する方法

Minecraft の実況動画を見ていると、大規模なチームで活動するときに資源サーバを立てて、生活用と資源用で行き来しているようです。デフォルトのままではサーバ1つで1つのワールドが生成され、その中でネザーやジ・エンドなどの世界を行き来できます。しか…

統合版 Minecraft で LANサーバを立てる

Java版のサーバの立て方は何回か記事にしていますが、今回は統合版 (Windows 10版) Minecraft のサーバを立てます。 1. bedrock版サーバのダウンロード このサイトからサーバを立てるための Zip ファイルをダウンロードします。 ダウンロードしたら展開しま…

Xamarin アプリから Minecraft にコマンドを投げよう

以前、マイクラ自動化でC#からRCON経由でマイクラのコマンドを投げられることを確認しました。同じC#ならばプラットフォームが異なってもできるのでは?というノリでXamarinアプリを作ってみたら意外といけました。 www.youtube.com youtube では Androidエ…

Xamarin でマイクラ自動化できそう

CoreRCON を使えば C#言語でマイクラにコマンドを送信できます。ということは、プラットフォームに関係なく C# さえ扱えればスマホからもコマンド送信ができるのでは?と思いました。 結果として、Xamarinで作ったアプリでもRCON経由でマイクラにコマンドを…

Minecraft Java Edition の購入方法

一通りMod開発講座を終えたので、Minecraft Java Edition の購入方法をまとめておきます。もし、自分で作ったModを動かしたい場合はデバッグ用ではなく、正規版を購入する必要があるので注意してください。 この資料は別で作っているものですが、その一部に…

【Minecraft 1.15.1】Mod開発 #Ex サーバを用いたデバッグ

Minecraft 1.15.1 用のMod製作おまけ編です。サーバを立ち上げてデバッグする方法についてです。 今回でMod開発は一区切りです。#1 から 今回までで、おおよそのMod開発ができるようになっていると思います。まだ Entity やバイオーム生成をやっていませんが…

【Minecraft 1.15.1】Mod開発 #12 特殊アイテムの作成

Minecraft 1.15.1 用のMod製作その12です。特殊効果を持つアイテムを作ります。 Minecraft modding 12 from Takunology

【Minecraft 1.15.1】Mod開発 #11 進捗(実績)の追加

Minecraft 1.15.1 用のMod製作その11です。進捗(実績)を追加します。 Minecraft modding 11 from Takunology

【Minecraft 1.15.1】Mod開発 #10 防具の作成

Minecraft 1.15.1 用のMod製作その10です。防具を作ります。 Minecraft modding 10 from Takunology

【Minecraft 1.15.1】Mod開発 #9 鉱石ブロックの生成

Minecraft 1.15.1 用のMod製作その9です。鉱石ブロックを定義し、ワールドに生成できるようにします。 Minecraft modding 09 from Takunology

【Minecraft 1.15.1】Mod開発 #8 道具の作成

Minecraft 1.15.1 用のMod製作その8です。斧やくわ、つるはしなどのツールを作成します。 Minecraft modding 08 from Takunology

【Minecraft 1.15.1】Mod開発 #7 アイテムグループの作成

Minecraft 1.15.1 用のMod製作その7です。ブロックやアイテムなどをグルーピングして分かりやすくします。 Minecraft modding 07 from Takunology

【Minecraft 1.15.1】Mod開発 #6 ブロックの作成

Minecraft 1.15.1 用のMod製作その6です。ブロックを作って配置できるようにします。 Minecraft modding 06 from Takunology

【Minecraft 1.15.1】Mod開発 #5 レシピの作成

Minecraft 1.15.1 用のMod製作その5です。レシピを作成します。 Minecraft modding 05 from Takunology