FactorioRecipeリリース

FactorioRecipeというFactorioの組立機の比率や材料の数が分かるツールを作りました。

FactorioRecipe

まぁ良くあるFactorioのアイテム作成チェーンを見るツールの1つなわけですが、最大のウリはゲーム内のluaファイルを直接読む機能が付いているので、特に面倒なことしなくても最新版に追従できるという点です。ので、現在α版のv0.15に対応していて、今後も速攻対応できる感じです。自動化サイコー。

Factorioは不時着した未知の惑星で工場を作るゲームで、プログラミングみたいにどんどん自動化を進めつつ、高機能かつ複雑なアイテムを大量に作っていくのが面白いです。

まぁこれ見るのが早いと思います

www.youtube.com

サーバサイドのアプリケーションはScala + Playframework、DBはPostgreSQL。View側はCoffeeScript + VueJS。インフラは自宅サーバのArchLinuxの上のDockerで動いてます。

今までやったことが無いのはLuaの読み込みですが、最近使ってる言語はリッチなものばかりなので面倒くさかったですね。あとJavaからLuaを実行できるluajのLua内オブジェクトをJavaのオブジェクトに割り当てる機能も貧弱で厳しい。

あと今回は初めてPostgreSQLを使いましが、やはり色々設定まわりとか違うので最初は手間は掛かりますね。ただ`create table`でもtransactionが効くので、開発中のmigrationテストで失敗してもロールバックされて、DB修復しなくていいのは楽ですね。(MySQLにはこの機能が無い)個人的にPostgreSQLを使うモチベで最大のものはMaterialViewですがまだ試してないです。そういえばcreate table内でunique indexとか張れない気がしたけど何か間違ってたかな。謎