top of page
すべての記事
Version 0.4.1 – 船に勝手に乗り込む動物とさよなら 🦎
2026年6月22日 野生の生き物の上に船を着陸させたら、怒ったおみやげのように船内に閉じこめられていた、なんてことはありませんか? 直しました! 船は着陸時に、野生の動物を丁寧に外へ出してくれます(もちろん、なついた仲間は残ってOKです 🐾)。船に乗り込んだ瞬間、敵が見た目の上でも攻撃をやめるようになり、宇宙のHUDからは地上専用のごちゃごちゃした表示がなくなりました。そして F1 が、フィードバックを送るための唯一のキーになりました。
Marcel Dütscher
6月22日読了時間: 1分
すべてのブロックは固い ― そうでないときを除いて
私たちのクライアントのメッシャーには、鉄の掟があります。空気ではないブロックは、すべて描画され、当たり判定を持つ。以上です。この単純化のおかげでメッシュ化は速く、コードもシンプルです。ところが、まさにこのルールを破りたがる機能が現れました。 エネルギーゲート。エネルギーフェンスに、ゲートがほしくなりました。プレイヤーと味方のNPCはそのまま通り抜けられるけれど、野生の動物は通れない、きらめく膜です。つまり、見えているのに、一部の相手にとっては壁にならないブロックです。私たちの設計には、まったく想定されていないものでした。 解決策は二つの半分でできています。クライアント側では、メッシャーに初めて意図的な例外ができました。ゲートのブロックは描画されますが、当たり判定のメッシュからは除外されるので、プレイヤーはそのまま通り抜けられます。サーバー側では、本当のロジックが動きます。生き物の移動システムが一歩ごとに、エネルギーの壁が行く手にあるかどうかを確認するのです。野生の動物と敵は引き返し、仲間とプレイヤーは通れます。このチェックは、野生動物、仲間、惑星
Marcel Dütscher
6月22日読了時間: 2分
ネットコードの落とし穴 ― 静かに消えるメッセージ
マルチプレイのバグは、ちょっと特別な種類です。クラッシュもしないし、エラーも記録されません。ただ、何も起きないのです。自分たちのネットワークコードで出会った、お気に入りの落とし穴を二つ、注意喚起と読み物としてご紹介します。 落とし穴その1:登録されていないメッセージ。私たちのネットワークプロトコルには、「ブロックが変わった」「プレイヤーが動いた」「チャット」といったメッセージのクラスがあります。新しいメッセージの種類は、すべてコーデックに登録して、IDをもらい、シリアライズできるようにしなければなりません。これを忘れると、最悪のことが起きます。送信の呼び出しは失敗しているのに、そのエラーが黙って握りつぶされる場所で起きるのです。クラッシュもログもなく、機能がただ「動かない」。何度もこれでデバッグして、ついに反射的に身につきました。新しいメッセージクラスを作ったら、まず聞くことは「登録した?」です。 落とし穴その2:ゴーストブロック。サーバーがブロックを変えるとき(たとえばスクリプトが地形を作り変えるとき)、接続しているすべてのプレイヤーに自分から
Marcel Dütscher
6月21日読了時間: 2分
Version 0.4.0 – 友だちを連れてこよう(最大12人まで!)🐳
2026年6月21日 マルチプレイが大きく成長しました。標準の人数の上限が4人から12人になり、段階式の無線通信とリアルタイムのボイスチャットも使えるようになりました。惑星のあちこちにいる仲間と話せます! 自分でいろいろ試したい人向けに、専用サーバーは Docker イメージとして提供されるので、どんな OS でも1つのコマンドで自分のワールドをホストできます。舞台裏では、品質をチェックする CI のゲートもずらりと追加しました。
Marcel Dütscher
6月21日読了時間: 1分
うちの子に渡せるゲームを作る
私はオンラインゲームを開発していて、息子がそれを遊んでいます。何気なく聞こえるこの一文が、このプロジェクトでいちばん厳しい設計条件です。私はテーブルの両側に座っているからです。機能がほしい開発者として、そしてネットの世界に何があるかを知っている父親として。 この二つの立場がなければ生まれなかった決まりを、いくつか紹介します。 メールアドレスなしのアカウント。ブロックを積むだけなのに、子どもが個人情報の足跡を残すべきではありません。だから、アカウントにメールアドレスは必要ありません。集めていないものは、だれも傷つけられません。 公開ワールドはパスワード付きだけ。知らない人が子どものワールドにふらっと入ってくることはできません。いっしょに遊んでほしい人には、パスワードを直接伝えます。アルゴリズムではなく、校庭で。 プレイ時間のリマインダー。ゲームはプレイ時間を表示して、休憩をやさしくうながします。開発者として作るのが楽しかったか、ですって? そうですね、父親が開発者に勝った、とだけ言っておきます。(これについてのJustusの意見は記録に残っていて、
Marcel Dütscher
6月21日読了時間: 2分
Version 0.3.2 – レーザー、着陸、そしてもっときれいなスクリーンショット ⚡
2026年6月21日 初めての本格的なゲームプレイのアップデートです! 浮かぶスキャンドローンが遠くからレーザーを撃ってくるようになりました(気をつけて!)。宇宙船が壊れると、ちゃんと爆発が起きます。飛行中は後部ハッチが開いた穴ではなく、かっこいい青のエネルギードアになります。そして、着陸では選んだ惑星にきちんと飛んでいけるようになりました。さらに、すべての種類の惑星の新しいスクリーンショットも用意しました。ギャラリーを見れば、世界がどれだけバラエティ豊かか、やっと伝わると思います。
Marcel Dütscher
6月21日読了時間: 1分
「宇宙のマインクラフト」が、父と息子の本物のゲームになるまで
きっかけは、夕食のテーブルでのちょっとしたひとことでした。10歳の息子Justusには、夢のゲームについてとてもはっきりしたイメージがありました。「マインクラフトみたいだけど、宇宙が舞台。自分で作る宇宙船と、自動で作られる惑星と、基地づくりがあるやつ」。 IT の仕事をしている私は、そのアイデアをすばらしいと思いました。でも同時に、本業のかたわら、夜にゲームエンジンの何千行ものコードを書く時間なんてないことも分かっていました。 解決策は? 人工知能をチームに迎えることです。 このプロジェクトは、初日からちょっと変わった体制で始めました。Justusは、大きなビジョンを持つゲームデザイナー兼プロダクトマネージャー。私は設計の方針を決める「テクニカルディレクター」です。そして、Claude や ChatGPT、ElevenLabs といったAIに、地道な作業(C#のコード、3Dモデル、効果音)を作ってもらっています。 「開発スタジオ」での毎日でいちばんワクワクするのは、ものを作っていく過程です。Justusの頭はすてきなアイデアでいっぱいですが、ゲー
Marcel Dütscher
6月20日読了時間: 2分
Version 0.3.1 – itch.io に登場!🎮
2026年6月20日 小さなアップデートですが、大きな一歩です。リリースの仕組みが、インストーラーを自動で itch.io にもコピーしてくれるようになりました。ゲームのダウンロードがぐっと身近になりました。それから、名前に「DoNotShip」と書いてある Unity のフォルダを一緒に配ってしまうのもやめました。おっと。😅
Marcel Dütscher
6月20日読了時間: 1分
Version 0.3.0 – 公開して、きちんと進める 🌍
2026年6月20日 リポジトリを公開したので、私たちも大人の仲間入りをしました。保護された main ブランチを使ったきちんとしたプルリクエストの流れ、AIバックエンドのセキュリティ修正、そしてコンパイラ警告の総ざらいです。オープンソースは、家族のプロジェクトでもちゃんとやるものなんです。
Marcel Dütscher
6月20日読了時間: 1分
Version 0.2.0 – 同じ日に、2回目の打ち上げ 🔁
2026年6月20日 そうなんです、1日に2回もリリースしました。これが打ち上げ当日のテンションです。😄 v0.2.0 は主に、これからのアップデートをスムーズに届けられるよう、リリースの仕組みそのものを整えるためのものでした。地味ですが、宇宙船にはちゃんと動く発射台が必要ですよね。
Marcel Dütscher
6月20日読了時間: 1分
Version 0.1.0 – 発進!🚀
2026年6月20日 すべてはここから始まりました。Blocks Beyond the Stars の、最初のタグ付きビルドです。まだ立派なリリースノートはありませんが、ゲームがやっと私たちのパソコンの外に出ました。ブロックと星、そしてJustusからのたくさんのアイデアが、形になるのを待っています。どんな旅も、バージョン0.1から始まります。💫
Marcel Dütscher
6月20日読了時間: 1分
bottom of page