ゲーム作りのチュートリアルではないですが、「これやっとくと便利よ」という設定があります。
作るものが複雑になってくると、わりと必須だと思います。
ここらで一度、PICO-8の設定を見直しましょう。
ファイルの保存場所を変える
「3. 背景をつくる」でファイルをsaveしましたが、PICO-8がファイルをどこに保存しているかわかりますでしょうか。
PICO-8は、それらの設定がコンフィグファイルに書かれています。
コンフィグはテキストファイルになっており、次の場所にあります。
Windows | C:/Users/Yourname/AppData/Roaming/pico-8/config.txt |
Mac | ~/Library/Application Support/pico-8/config.txt |
Linux | ~/.lexaloffle/pico-8/config.txt |
いずれも自分のホームディレクトリー以下にあるそれぞれのディレクトリーです。
config.txtファイルを開くと、設定項目がたくさん書かれていますが、次の2箇所を修正しましょう。
// Location of pico-8's root folder root_path フルパス // Location of cartridge save data cdata_path フルパス
それぞれ、PICO-8のファイルを保存する場所を指定します。
これらを、使い慣れたパスに変更しておきます。
変更しなくても動作上は問題ないのですが、デフォルトの場所が、あまりアクセスのよいところではありません。
手の込んだことをやり始めると、PICO-8のエディターでは手狭になり、他のエディターやグラフィックソフトを使ってデータを作成し、ファイルをPICO-8にインポートしたりします。
そうなると、アクセスしやすいところに作業フォルダーがあると便利なのです。
また、DropboxやOneDriveなど、クラウドストレージのディレクトリーに設定しておけば、ほかのPCでも引き続き作業ができて非常に便利です。
パスを変更して保存したらPICO-8を立ち上げなおして、保存場所の変更が反映されているかどうか確認してください。
コマンドラインから立ち上げる
PICO-8を立ち上げる時に、アプリケーションアイコンをダブルクリックすると思いますが、もう一つ、コンソールから立ち上げるという方法があります。
これはメリットも大きいので、ぜひ設定してみてください。
自分はMacなので、Windowsについては未検証です。
Windowsの場合
PICO-8の実行ファイルがあるディレクトリーに、「pico8.bat」というファイルをテキストエディターなどで作成して、次の内容を入れて保存する。
cmd /k start pico8.exe
pico8.batをダブルクリックすると、PICO-8が起動する。
Macの場合
ターミナル(Terminal.app)を起動して、ホームディレクトリーにある.bash_profileを編集する。
nano ~/.bash_profile
次の一文を追記する。
alias pico8=/Applications/PICO-8.app/Contents/MacOS/pico8
追記したら、ctrl+xを押して終了モードに入る。保存するかどうか聞かれるので、「y」を押して、そのままエンターキーを押して保存。
いったんログアウトしてまたログインし直すか、次のコマンドを入れて.bash_profileの設定を反映させる。
source ~/.bash_profile
それ以降、ターミナルに
pico8
と入力すると、PICO-8が立ち上がる。
どんなメリットがあるか
複数のPICO-8が立ち上がる
ターミナルのウィンドウを開いただけ、複数のPICO-8を立ち上げることができるようになります。
ひとつのPICO-8で作業しつつ、小さなテストプログラムをもう一つのPICO-8で試してみる、みたいなことができます。
printh()が使える
printh()という関数が使えるようになります。
print()をつかって画面上に変数の値を表示させることはできますが、表示する段階での変数の値しか見ることができません。継続して変化を確認したい場合には適さない方法です。
printh()を使うと、ターミナルにログを出したり、それをファイルに保存することができるようになります。
printh( 文字列や変数, "ファイル名", 上書きするかどうか )
ファイル名を指定しない場合は、ターミナルにそのまま文字列が表示されます。
printh("X:"..x, "x-axis", true)
ファイル名を指定すると、この場合「x-axis.p8l」というファイルが作成されて、その中に文字列が出力されます。
上書きをtrueにしておくと、runするたびにファイルが上書きされます。
falseにすると、上書きではなく追記されていきます。