百億のマインクラフトと千億のタートル

つまり、マイクラワールド1つあたりタートルが10匹生息しているわけですね。

外部エディタを使って快適CCプログラミング

前回のお話

前回の記事で、外部エディタをインストールできたと思います。

hevo2.hatenablog.com

エディタは、Visual Studio CodeでもSublimeText3でもどちらでもかまいません。もちろん、他に使い慣れたエディタがあるならそれでも全然問題ありません。

ゲームディレクトリを開く

これまで、「yuka0」プログラムを作りましたよね。あるいは、「hensu0」プログラムも作りました。ゲーム中で作ったプログラムを、インストールした外部エディタで開いてみましょう。

まずはマインクラフトの「ゲームディレクトリ」を開く必要があります。 一番簡単な開き方は、Twitch経由だと思うので以下の画面まで進みましょう。

注目するのは右上の歯車()のマークです。 ここをクリックするとメニューが開きます。一番上の「フォルダーを開く」を選びましょう。

f:id:hevohevo:20190925141922p:plain
Twitchでプロファイルを開く

「フォルダーを開く」と、Macだとこのように「ゲームディレクトリ」を開いてくれます。

f:id:hevohevo:20190925142847p:plain
ゲームディレクトリ(Mac)

ここから以下のようにフォルダの中を潜っていきます。

 (ゲームディレクトリ・現在地)」フォルダ 
 > 「saves」フォルダ > (あなたが作ったワールド名)」フォルダ > 「computer」フォルダ 

「saves」フォルダ内には、あなたが一番最初にワールド生成したときのワールド名のフォルダがあり、そのフォルダの中に各種データが保存されています。

その中の「computer」フォルダがComputerCraft関連のデータが保存されている目的地です。以下の画像のようになっているはずです。

ここに「0」「1」のような番号のフォルダがありますが、これがマインクラフトゲーム内のそれぞれの名前をつけたタートルのファイル置き場になります。

f:id:hevohevo:20190925143203p:plain
computerフォルダ

「え、ID? 僕の相棒(タートル)は何番なんだ!」

普通はそう考えますよね。

タートルのIDを調べる

実はゲーム内でプログラムを書きそのファイルをタートル内に保存すると、そのタートルには一意な番号であるID(そのタートルだけの番号、他と重複しない番号)が割り振られ、そのタートルIDと同じ名前のフォルダがこの「computer」フォルダに作られます。

つまり、タートルにプログラムを保存するとタートルのIDと同じ名前のフォルダの中にプログラムが保存されるのです。1

念の為、タートルの番号が何番であるのかを調べるコマンドについても紹介しておきましょう。いつものようにタートルのターミナル画面を開き、おもむろに次のコマンドを入力します。

> id

idコマンドを使うことで、次のようにそのタートルのIDが表示されます。

つまり、このタートルのIDは「0」で、つけた名前(ラベル)は「Bob」であることがわかります。

f:id:hevohevo:20190930101536p:plain
タートルのID(とラベル)を調べる

このタートル内のプログラムファイルを探しているならば、そのIDと同じファイル名のフォルダの中を探しましょう。

「computer」フォルダ内にある「(タートルID)」フォルダ

タートルIDフォルダを開こう

今回の私のタートルはID「0」ですので、先ほどの「computer」フォルダ内の「0」フォルダを開きました。みなさんも自分のタートルのフォルダを開きましょう。次のようにいくつかのファイルが存在しているはずです。

f:id:hevohevo:20190925143203p:plain → f:id:hevohevo:20190930102402p:plain
「computer」フォルダ内にある「0」フォルダの中身

  • aisatsu.lua
  • yuka0.lua
  • yuka1.lua

などなど、他にもいくつかのファイルがありますね。

拡張子がついていることに気づいた?

ここで一点だけ注意してほしい点があります。みなさんがプログラムを書くとき、

> edit aisatsu

のようにコマンドを打ち込んで「aisatsu」プログラムを作りはじめました。しかし、そのプログラムファイルは、「aisatsu.lua」という名前になっています。他のファイルもそうですよね。「.lua」という名前はなんなのでしょうか。

このようにファイル名の末尾にあるピリオドとその後ろの数文字のアルファベットを拡張子と呼びます。「.lua」は拡張子の一種です。

コンピュータからみると、「aisatsu」というテキストファイルがあったとしても、それがなんのために存在するのかよくわかりません。そこで、ファイル名の末尾に「.lua」をわざとつけます。これによって「これはLuaプログラムファイルなのだ!」と明示的にコンピュータ側に知らせるわけです。2

CC内で作ったプログラムファイルはLuaプログラムなのは当たり前なので、エディタであるeditコマンドが気を利かせて拡張子「.lua」をつけてくれたわけですね。親切!

なお、ターミナル画面で「aisatsu.lua」を実行したいと思った時に、> aisatsu でも実行できますし、> aisatsu.luaと打ち込んでも実行できるようになっています。

外部エディタの起動とプログラムファイルの開き方

一番簡単でわかりやすい方法は、あらかじめエディタを起動しておいて、そのウィンドウ上に、開きたいファイルをドラッグ&ドロップすることです。

f:id:hevohevo:20190930110020p:plain→ファイルをドロップ→f:id:hevohevo:20190930110216p:plain
開きたいファイルのアイコンをエディタのウィンドウ上にドラッグ&ドロップ

以下のようにファイルを開くことができました。あとは、エディタで編集し放題です。

ところで以下のエディタ画面の一番下紫の帯がありますが、その一番右に「Lua」と書かれていることに気づきましたか?

f:id:hevohevo:20190930110445p:plain
CCのLuaファイルを外部エディタで開く

これは、

エディタ「お、ファイル名に.luaという拡張子がついているな。これはLuaファイルか。それならLuaファイル編集モードに切り替えておいたぜ」

というエディタ側の配慮によるものです。親切! おかげで、綺麗に色分けをしてくれますし、様々なエディタ側のサポートを受けることができます。

日本語コメントも書き放題、色分けしてくれるのでとても見やすい。 もうCCプログラムを書くときには外部エディタを使うしかないよね。

f:id:hevohevo:20190930111832p:plain
日本語コメント書き放題

外部エディタを使ってCCプログラミングするときの注意点

  • マイクラで遊びながら、CCのプログラムファイルを直接、外部エディタで開きましょう。
  • 日本語はコメント部分だけにすること。日本語をゲーム内で表示することはできません。
  • 当然、プログラムファイル名も日本語不可です。
  • 編集したプログラムファイルの保存は、画面上部の「ファイル」メニューから「保存」です。

ちなみに私の普段のCCプログラミング環境はこんな感じ。

f:id:hevohevo:20190930112719p:plain
私のデスクトップ画面

液晶モニターをつないでもう一つ画面があるのですけど、そちらはブラウザ(Chrome)開いて、情報収集したり、Twitterみたりしてます。

みなさんも自分の快適なCCプログラミング環境を試行錯誤してくださいね。

それでは、環境が整ったので、次回から本格的にCCプログラミングやっていきましょう!


  1. ですから、「タートル内でプログラム書いたけど名前つけるの忘れてた! タートルを破壊しちゃったけど書いたプログラムはどこ? まさか消えちゃった!?」という慌て者でも大丈夫。ご安心ください。ここに保存されてます。

  2. 他にも拡張子の種類はたくさんあります。画像ファイル「.png / .jpeg / .jpg」、Word文書用の「.doc / .docx」、テキストファイル「.txt」、Windows実行形式ファイル「.exe」などは有名ですね。