ゲーム開発チーム「丸ダイス」の開発ブログです! 公式サイトはこちら

【Unity】Grid By Cell Size でのSprite EditorのスプライトシートSliceを自動でやる方法

ドット絵のゲームではこんな感じのスプライトシートをアニメーションに使います。 f:id:marudice:20210505110243p:plain

通常はこんな具合に

f:id:marudice:20210505110801p:plain:w400

テクスチャのImport Settingsから48x48でBottomが原点~みたいな設定でSliceしてスプライトシートを作るのですが・・・

f:id:marudice:20210505110949p:plain:w300

まぁたくさんあって大変ですね・・。毎回同じ設定で良いので自動でやりたい。

答えはほぼこちらのフォーラムにあって、おなじみのAssetPostProcessorエディタ拡張を使います。

Cell Size 48x48
Pivot Bottom Center
ほか ドット絵っぽい設定
対象 "Assets/Texture/Sprite"以下のテクスチャのみ

例えばこんな感じなら、 以下のコードをAssets/Editor以下に入れれば、対象フォルダに画像を入れるだけで自動でSliceまでやってくれます!

GridSpritePostProcessor.cs

using System.Collections.Generic;
using UnityEngine;
using UnityEditor;

public class GridSpritePostProcessor : AssetPostprocessor
{
    public override uint GetVersion()
    {
        return 1;
    }

        // 特定のパス以下のみ処理する
    private bool IsAssetGridSprite() { return assetPath.StartsWith("Assets/Texture/Sprite"); }

    public void OnPreprocessTexture()
    {
        if(IsAssetGridSprite())
        {
            TextureImporter importer = (TextureImporter)assetImporter;
            importer.textureType = TextureImporterType.Sprite;
            importer.textureCompression = TextureImporterCompression.Uncompressed; // ドット絵で圧縮すると色が崩れる
            importer.filterMode = FilterMode.Point; // ドット絵でポイント以外を使うと超ぼやける
            importer.spriteImportMode = SpriteImportMode.Multiple;
            //importer.spritePixelsPerUnit = 48; // 何ピクセルを1.0とするか?必要ならゲームに合わせてお好みで.
        }
    }

    // code from here: https://forum.unity.com/threads/sprite-editor-automatic-slicing-by-script.320776/
    public void OnPostprocessTexture(Texture2D texture)
    {
        if (IsAssetGridSprite())
        {
            ImportGridSprites(texture);
        }
    }
    private void ImportGridSprites(Texture2D texture)
    {
        TextureImporter importer = assetImporter as TextureImporter;
        if (importer.spriteImportMode != SpriteImportMode.Multiple)
        {
            Debug.LogErrorFormat($"GridスライスするスプライトがMultipleになっていません");
            return;
        }

        var cellSize = new Vector2(48, 48);
        Rect[] rects = UnityEditorInternal.InternalSpriteUtility.GenerateGridSpriteRectangles(texture, Vector2.zero, cellSize, Vector2.zero);
        List<Rect> rectsList = new List<Rect>(rects);

        string filenameNoExtension = System.IO.Path.GetFileNameWithoutExtension(assetPath);
        List<SpriteMetaData> metas = new List<SpriteMetaData>();
        int rectNum = 0;

        foreach (Rect rect in rectsList)
        {
            SpriteMetaData meta = new SpriteMetaData();
            meta.rect = rect;
            meta.alignment = (int)SpriteAlignment.BottomCenter;
            meta.name = filenameNoExtension + "_" + rectNum++;
            metas.Add(meta);
        }

        importer.spritesheet = metas.ToArray();
        AssetDatabase.Refresh();
        Debug.Log($"Generate {metas.Count} sprites from {filenameNoExtension} PostProcess.");
    }
}

いい感じですね! good stuff! f:id:marudice:20210505113122p:plain

【EQUALINE】ver 1.4.2 アップデートパッチ

こんにちは!丸ダイスです!

EQUALINEにFailure Reviewという失敗した問題を復習する機能が追加されました。

f:id:marudice:20210313014204j:plain

出来なかった問題も、復習してパターンを身につければ地力がましていつか打開できる!という寸法ですね!

Steam版、itch版と同様、パッケージ版でもこのFailure Reviewが追加されたver1.4.2が利用可能になります。

下記URLよりダウンロード&実行で最新版に更新可能です。

https://drive.google.com/file/d/1xhaSZGCmRagIX_ELFUSRhJm34Db8EKNR

どのバージョンからでも最新版に更新可能です!

ver1.4.1, 1.4.2 の修正内容は以下の通りです

・ゲームオーバー後のFailure Reviewを追加

・Failure Reviewを複数問題対応

・ゲームオーバー時の演出バグを修正

【EQUALINE】Steam版公開、ver 1.4.0 アップデートパッチ

こんにちは!丸ダイスです!

Twitterで告知したEQUALINEのSteam版がついに配信開始となりました!

store.steampowered.com

Steam版では、今までイベント会場限定だった対戦モードが正式に実装され、計算の腕を競い合うことができます!

f:id:marudice:20210211142442j:plain

また同時に、Steam版向けの追加要素を含むパッケージ版向けのver1.4.0アップデートパッチを配信しました!

パッケージ版をご購入の方は下記URLよりダウンロード&実行で最新版に更新可能です。

https://drive.google.com/file/d/1bI63fqYO7EYdSxN8FeVJ8CpCss1n3tCp

どのバージョンからでも最新版に更新可能です!

ver1.4.0での修正内容は以下の通りです

・Battleモードを追加

・Mission 16の演出関連バグを修正

【EQUALINE】itch.ioでダウンロード販売を開始しました!

こんにちは!丸ダイスです!!

EQUALINEの最近

丸ダイスが開発したアクションパズルゲーム「EQUALINE」をご存知でしょうか。

www.youtube.com

EQUALINEはこんなゲーム。数字と記号に線を引いてすばやく計算する「一筆書き計算パズル」です。

EQUALINEは、2019年夏の公開後、長らくコミックマーケットなどのイベント会場限定で頒布を行っていました。

ですが、実はこの半年新たに「EQUALINE」のパッケージを手にとった方は一人もいません。なぜでしょう・・?

そう、なぜなら……

ゲームを頒布できるリアルイベントが全くないです・・・。

理由はもちろん、アレのせいです。

もっと多くの人にEQUALINEを遊んでほしい… 丸ダイスはアレと販売体制の間で苦悩します。

PGRFの競技タイトルに選出

もう一つ、EQUALINEにはいいこともありました。

Twitterで#PGRF というタグを見たことがあるでしょうか?

正式名は「Puzzle Game RTA Festival」といい、2日間に渡って20以上のパズルゲームがプレイされるRTAイベントです

Puzzle Game RTA Festival

このRTAイベントで、なんと「EQUALINE」が競技タイトルに選出&当選し、プレイされることが決まっています!

ほかの当選作品一覧を見てもらえば分かる通り、プレイされるのは誰もが聞いたことある有名パズルゲームばかり・・!

その中で「EQUALINE」がRTAの対象タイトルに選ばれたことに丸ダイス一同(2人ですが)は盛り上がり、舞い上がり、天に昇りました。

ということで……

EQUALINEのDL版を、新しく配信開始します!!

今日からです!配信ストアはitch.io。 こちら からどうぞ。

これに合わせて追加のアップデート!……とかあればよかったのですが、残念ながらないです。

代わりに、Puzzle Game RTA Festivalが開催される10/17, 18(土、日)までの4日間限定で、70%の大幅セールを実施します

配信スケジュールによると、EQUALINEのプレイは10/17(土)17:20ころのようです。

凄腕プレイを見て興味を持った方は、ぜひ遊んで見てくださいね!

unity1week17「しょくもつれんさ・どうぶつえん」開発の振り返り

こんにちは! 丸ダイスです!

先月のunity1weekで「しょくもつれんさ・どうぶつえん」というゲームを作りました!

しょくもつれんさ・どうぶつえん | フリーゲーム投稿サイト unityroom

今回は「1万RT!超バズった!」でもなければ「総合優勝やったぜイェイ!」でもないので軽めですが、 開発の振り返りをします!

企画

いつもどおりババー!っとアイデアを出して(画像略。しょーもないアイデアメモが30枚くらい生まれました)

その中にあった「ゆうなま」「ライフゲーム」「百獣の王」あたりをベースにして

こんな企画に決まりました。

f:id:marudice:20200902203000p:plain:w200f:id:marudice:20200902203054p:plain:w200

決まったのは火曜日の夜くらい。

もう1作作った「こけぴよぱずる」の企画も既に出ていて、企画を比較するとこんな感じ。

  • 「どうぶつえん(仮)」
    • 面白さが不明。状態が複雑すぎて面白いパズルになるか不明
    • 実装が重い(厳密な決定論的シミュレーション、早送りなど時間操作インターフェイス、D&Dエディタ)
    • アートが重い(どうぶつ5種必須。捕食、被食、繁殖などアニメが多い)
    • 「動物を捕食させてふやす」:奇抜でウケそうな表現
    • →明らかにキツそうで不透明なゲーム
  • 「こけぴよ(仮)」
    • 面白さが確実。予測しきれる複雑さで確実にパズルが作れる
    • 実装が軽い(一律方向のキー操作でのターン制パズル)
    • アートが比較的軽い(企画時点では「たまご」「にわとり」のみだった)
    • 「タマゴを孵してひよこがふえる」:奇抜な表現ではなかった
    • →無難に作れそうで普通に楽しめそうなゲーム

「作れるゲームをただ作ってもつまんねぇじゃん!」……という思いが半分、 「いや、既に2日消費してるし、出来るもの作ろうよ…」…という思いが半分。

「どうぶつえん」になりました

どうして(現場猫

開発作業

結果

こんな感じでした「予想通り」って何やねん!という話だと思うので、自分が何を思ったか忘れないためちょろっと振り返りを…。

「楽しさ」が低かったことの評価

丸ダイスがパズルをしっかり遊び始めたのは実はゲームが公開されてからでした。

(実装が重すぎて、パズルの作問はいつも通りとしてステージの配置・通しプレイもPuzzler.K先生にまかせてしまっていたため)。

そして気付きます。「これ、初期配置で全部決まるゲームなのに、複雑すぎて予想しきって解くのムリじゃん…」あなたの企画ですよ。

Puzzler.K先生は、「状態が複雑でちゃんと予測しきるパズルは難しい。要点は抑えながらあとはいろいろ試して解いてもらう」とせざるを得ないことに 比較的早く気付いたようで、そういうパズルデザインが基本になっています。

丸ダイス的にはパズルとしての解ききれなさと同時に、「過程に全く介入できない」不自由さがイマイチだなという評価です。

こうしたライフゲーム的なルールベースシミュレーションはやはり過程が楽しいので、そこを見ているしかないルールはゲーム体験として微妙です。

評価の「楽しさ≒ゲームプレイの競技性」が低くなることはここから予想していました。

「面白そう」さのプロモーションでひよった話

Puzzler.K「あの、動物が食べられる時に『ギエーー!!』とか鳴いて怖いです…」

丸ダイス「よかった!ちゃんと怖く聞こえたんだ!これから動物の残骸を撒き散らしたりしたいな!」

……マジで怖がっていたのにすぐ気付いて、やりすぎたかな・・?と思ってしまいました。

丸ダイスは「ウルトラ草」とか「受精3D」とか、ブラックユーモアが大好きで、表現の面でもちょっと狂ってる方が良い(し、客観的にも有利)と思ってはいるのですが、ややビビリなのです。怒られるのが怖いのです。

結果、実装の物量も相まって、悲鳴以上のハデな捕食リアクションは入れませんでした。

その結果は記事冒頭の動画のとおり。「面白そう」でしょうか?

改めて見ると、「どうぶつがどうぶつを捕食する」インパクトがツイートがTLを流れる0.5秒では伝わらないです。

要は日和ったのです。やると決めたら日和ってはダメです。

心を強く持ち、ファンシーライオンがファンシーウサギを噛みちぎるザンギャク・バイオレンスをお姉さんが満面の笑みで眺めるべきでした(?)。

その他、楽しかったこと、イケてたこと

  • むじ先生のアートが非常に優れていました。おねえさんのキャラ立ち&かわいさ、どうぶつのかわいさ、地形まで含めたアートの統一感、あまりにもカンペキで驚きました。
  • 50以上のどうぶつの声をかき集めてノリノリでミックスした結果、要所でどうぶつがガンガン鳴くいいサウンドデザインが出来ました。
    • 最近、テーマに合わせた音作りに慣れてきて楽しいです。シンセは出来ないんですが…。
  • これだけ狂った基本ルールの元でも、ちゃんとパズルを作り切ったPuzzler.K先生はやはり偉大です
  • 「斬新さ」が結構高いのは(予想はしつつも)安心しました。ルールそのものの物珍しさを感じてもらえたようです

今回の試作はイケる?ボツ?

ボツです

理由は、ゲームの競技的な楽しさを上げるためにルールの根本的見直し(例:途中の介入を踏まえたパズルとして再設計)が必要だからです。

ちょっと残念ですけどね。私はtnk先生の「やってダメならすぐ諦める」という言葉を信じたいのです(ちなみに、ラピッドプロトタイピングのプロと言えるハイパーカジュアルのクリエイターも口を揃えて同じことを言います)

こけぴよぱずる 振り返り

追記:2作目「こけぴよぱずる」についてPuzzler.K先生がTwitter連投で書いてくれました!

1年作ったゲームの開発中止を決めた話

こんにちは!丸ダイスです!

約1年前くらいから本格的に始めた「地球人の島」の開発を中止することを決めたので、そのお知らせです!

残念な結果ですが、かけた時間を今後の開発に活かすためにも開発の振り返りをしたいと思います。

ゲームの内容などを知らなくても読めるように書くので、ゲームを作る方の参考になれば幸いです!

※ゲームの内容は前提とはしませんが、誰でも読める易しい記事ではありません。 ゲーム開発の経験があると読みやすく、特に開発記録は正確に読むために熟読を必要とします。

開発記録

2019年2月 ゲームジャム版:オンラインわちゃわちゃに感じた手応え

「地球人の島」の開発はここから始まりました。

当時開催されたゲームジャム「unity1week」のお題は「つながる」。

この時一週間で作ったプロトタイプがこちら。

このバージョンはunityroomでプレイ出来ます:

つなげて!道路 オンライン | フリーゲーム投稿サイト unityroom

『道をつなげて・街をつなげて・ほかのプレイヤーともつながる!』というアオリ文句で、

「パズル的な道をつなげる気持ちよさ」と「オンラインのわちゃわちゃ協力プレイ」を楽しめる作品です。

「10人という大規模で共闘が楽しめる」「基本アクションの手応えが良い」これが揃うだけでも、 ゲームジャムレベルでは十分な品質を感じられたのだと思います。

ポジティブな評価を頂き、オンラインプレイに手応えを感じました。

ただし、このプロトタイプには大きな弱点が存在します……。

私はその弱点を自覚していましたが、今思えば最後まで解決が出来ていない致命的な弱点だったのかもしれません…

2019年8月 夏コミ版:短期で開発するクリッカーにするつもりが…

プロトタイプの弱点、それは「ゴールがないこと」です。

便宜的に制限時間とスコアを計算していましたが、あくまでおまけ。

今どきスコアが表示されるだけで何度も遊んでくれるプレイヤーはいないので、

楽しさの本質である「共闘」と「道がつながる」が重要になるゴールが必要でした。

5月に「これなら短期開発でいけるんじゃね?」と思いついて本格開発を開始。夏コミで発表したのがこちら

youtu.be

(ノーカット版はこちら

この時のゴールは「街から街の移民で人口を増やす」です。

  • 「街」はパネル自体が持つのではなく、予め設置されたハタから出現
  • パネルに「人種」が関連付き、街と街をつなぐ「街道」にそって人が「移民」

街道の長さや通ったパネルの人種で人口比率が変わるので、狙った人口比率を達成してもらおう、という遊びです。

「こうしようかな?こうつなげようかな?」と考えて道をつなげる競技性が生まれました。これは狙い通り。

悪かった点としては、見た目はイマイチでした。道を置く前から色がつくのはカラフルできれいかと思いきや、 「自分で土地を広げてる感」が大幅に削がれることに作ってから気が付きました。

また、人口という街をクリックしないと見られない数字だけでは、パッと見た時に発展させてる感触が弱かったです。

その他、共闘的な要素が一旦消えたことで元々あったわちゃわちゃ感はなくなりました。

おそらくこれのせいで頂いたネガティブな感想もあり動揺したこともありましたが、 開拓・クラフト型のゲームはマルチプレイ化がバランスを崩しにくいので、今思えばそこは気にする本質ではなかったと思います。

2019年11月 冬コミ版:見た目を重視した開拓ゲーを目指す

単なる数字としての人口を増やすゴール設定は分が悪そうだったので大幅に変更し、 いわゆる都市開拓ゲームの競技性を目指すことにしました。

Civilizationの開拓パートや、未プレイですがSimCityなどを参考に

『「土地を広げる」「建築を増やす」「人口を増やす」といった各要素の増産が相互に別の要素の増産を産む』という拡大再生産のサイクルを 競技性の中心に据えました。

また、不要になった土地の色を取っ払うことと合わせて「地球人と一緒に島を開拓」という世界観をはっきりさせました。

そうして出来た冬コミ版がこちら

youtu.be

(ノーカット版はこちら

建築方法が街から街を歩く「地球人」の力を借りる形に変わったことで、数字ではなく見えているにぎやかさがそのまま開拓の 進行具合になっています。

また、お金というリソースが追加され、人口や建築の数によってもらえるかずが増えるので、人口→建築→お金→土地… と、複数の要素がサイクルする拡大再生産が 出来始めています。

この段階で良かったのは「島」というモチーフを採用した点でした。「地球人の島」というタイトルも決まり 「パット見て『面白そう』」というプロモーション上の強さに手応えが出来ました。

反対にイマイチだったのは競技性です。

複数の要素が相互に支え合う拡大再生産を目指していたものの、お金以外に拾えるアイテムは用途がないまま、 地球人が中々建築に来なくてイライラ、モニュメントは建築要件が同じで繰り返す遊ぶ意味がない、といった具合です。

(少し前のデジゲー博版はこれとほぼ同じなので省略)。

2020年4月 迷走中:モニタープレイ駆動の試作サイクルに光明

競技性の中心は感触が良かったため、拡大再生産をより楽しめる要素をスクラップ&ビルドをしていましたが、中々よい手応えがない・・・。

迷走している間に気付いたのが、モニタープレイしないまま潰している仕様があることでした。

「建築の種類ごとに変わるお金以外の拾うアイテム」を作ったのは冬コミ版の時点だったのですが、

それの用途を固める前に「建築の種類ごとに変わる島全体の発展度(非消費。拾わなくて良い)」という仕様を思いつき、 「お金以外の拾うアイテム」の実装が試す前に無駄になってしまいました。

詳細は省きますがこの他にも、思いついて実装も始めたものの、別の思いつきでモニターしないまま潰してしまった仕様があることに気づきます。

リソース管理型のゲームはバランスが調整されて各要素が相互に機能して始めて楽しさが生まれるので、新しい要素は実装してもすぐに面白くはなりません。

そこに気づかないまま新しい要素を実装するやすぐプレイして(イマイチだな…)なんてやっていたので、良い手応えがないのは当然でした。

単純に実装コストがもったいないですし、作った→つまらん… を繰り返すのでモチベが下がります。

これに対する解答として「モニタープレイ駆動の試作サイクル」に切り替えることにしました。

やり方は、『検証する遊びが初プレイでも体験出来る要件をまとめてタスク化して、全てこなしてからモニタープレイを行う』というものです。

要は「作りきるまで遊ぶな」ということです。こうしてみるとただのPDCAですが、私のようなゲームデザイン大好き開発者には重要なのではと思います。

GitHub Projectを使い、必要な(だが出来てない)要件を全て並べました。

f:id:marudice:20200802204549p:plain

今はDoneばかりですが、4月時点では全部To doでした。

モニタープレイで検証する内容が具体的に分かるタイトルも効果が高そうです。

2020年7月 最終版:サイクルは整えたものの中止判断

7月ごろにはこのProjectを消化しきり、テストプレイを行いました。

youtu.be

(ノーカット版はこちら

これを自分で5回くらい遊んで評価した結果、

『基本を変えずに完成を目指せる遊びの核が出来ていない』と判断して、開発中止を決めました!

学び

学び1. なぜゲームジャムやコミケに出ると開発が進むのか?

途中で「モニタープレイ駆動の試作サイクル」を紹介しましたが、 実はこの方法、多くの開発者が知らずに実践しています。「ゲームジャム」や「コミケ」です。

外向きの発表では初見で体験出来ることが必須なので、自然とモニタープレイ可能な要件が整理され、優先されます。

外部から迫られる締め切りが理由としてよく上げられますが、このように「強制的に初見で遊べる仕様に整理される」 ことも重要に働いていそうです。

個人的にはこれが大きな学びで、4月以降は1月~4月の迷走に比べて最終版に活かせた開発成果が目に見えて多く、手戻りも少なかったです。

うまく機能すればコロナ禍で減った外向き発表に頼らない高い開発効率が期待出来そうなので、今後も活用するつもりです。

学び2. いつ諦めるか?どうやって諦めるか?

今回は、泥沼ゲーム開発パターンとして知られる、「作っては壊すが永遠に繰り返される」 になってしまったと思います。

「これをゲームにしたら面白そう」というボトムアップなアイデアから試作を始めた場合に難しいのが「どこで諦めるか?」です。

これには長年悩んでいたのですが、先日素晴らしい考え方を知ったので共有させて下さい。

『1日作ってダメなら諦める。良くなる可能性があっても今の自分には無理だったと考える』

unity1weekなどで活躍されているゲーム開発者のtnkさんに頂いたアドバイスです(原文ままではないです)

1週間ゲームジャムの文脈で話されていたので、言葉通りに適用出来ないケースもあると思いますが、 特に重要なのは「プロデューサーの目線を持つこと」だと自分なりに解釈しました。

自分がもし、企画を持ってきて開発を依頼したプロデューサーだったらどうでしょうか?

まず「この日に遊べるものを」と期限は決めるでしょうし、「作り直したら良くなるかも」とクリエイターが言っても、 現に面白いものを用意出来なかった事実を根拠に、その人自身の能力を含めて企画を見直すのがプロデューサーの役目です。

一見厳しいですが、ほかの企画なら輝けるかもしれないクリエイターに寄り添った人事とも言えます。 大切なパートナーであるクリエイターを腐らせていてはもったいない!

幸いプロデューサーも私なので、人格ごと見限られることはないのです(よかった!)。

正しかったかどうかは分かりませんが、中止を決断出来たのはこの考え方のおかげです。

学び1. 企画書は必ず言語化しよう!

ゲーム開発が泥沼化するパターンは

  • 思いついた要素が永遠と継ぎ足されていく
  • 作っては壊すが永遠に繰り返される

のどちらかになることが多いです(今回は後者)。 完成しないのはどちらも同じで、「企画が明確でない(=ゲームの核は何なのか?)」が原因です。

何が重要で何がどうでもいいのか不明確なので思いついたものがアレもコレもと継ぎ足されてしまうし、 駆け引きやゲーム体験(≒競技性)が不明確なまま要素から作り始めるからメカニクスをころころと変えてしまう。

昨年11月のゲームジャムに参加した時に企画を言語化するパワーを知ってからはそうしてますが、 それより前に始めた開発だったので曖昧なまま進んだのはよくなかったです。

『アイデア』と『企画』をフォーマット化する方法論とそのメリットについては前々回のゲームジャムの振り返りに書いたので、よければご覧ください。

モニタープレイ歓迎します!

「地球人の島」のプレイアブルなビルドは全部で4つあります

ゲームジャム版以外は現在入手不可能ですが、知人や希望される方にはぜひ遊んで頂きたいです。

連絡頂ければ無料でビルドをお渡しします(ただし、プレイ後に感想をお聞きすると思います・・)

今後の開発について

ナイショです!げへへ!!

めっちゃ面白いゲーム作ります!

【密ですビートゲーム】バズを狙って作ったゲームが思ったよりバズった

こんにちは。緊急事態関係なく引きこもりの丸ダイスです。

 

4/26(月)~5/3(日)に開催

 


された unity1week #16 お題「密」で「密ですビート・ストリート」(通称:密ですビートゲーム)というゲームを作りました。

 

開発終了後に投稿したこちらのゲーム紹介ツイートが5/5現在1万以上RTされており、ゲーム開発史上(というか人生で)もっともバズったツイートになりました。嬉しいです。

 

前回は長々書きすぎて大変だったので簡単に、企画~開発~広報の流れを振り返ってみます。

 

 

企画。安直でもPVではこれには絶対に勝てない

f:id:marudice:20200505161216p:plain

今回のアイデアメモで真っ先に出た一枚。今回のゲームジャムでブレストをしたら100人中95人が書きそうです。

あまりにも安直ですが、結局このネタで作ることになります。

 

「密です」のネットミームは、「密ですビート」や

f:id:marudice:20200507200642p:plain

このイラスト、密ですゲーム あたりが人気で、総じて口に出して言いたいパワーワードの性質があります。

 

みんな、密です を言いたいのです。だから「密です」のゲームが欲しい。

 

既にあった「密ですゲーム」は、数も少なくそこまで品質が高くなかった(作った方ゴメンナサイ…)ので、300もの作品が投稿されるunity1weekから、潜在的な「密です言いたい」需要を強く満たす作品がバズることは容易に想像出来ました。

 

結果、「GWクソ暇だけど、密ですゲームがたくさんあるらしいぞ!遊ぼうぜ!」となることが主催のnaichiさんがGWをプレイ期間にした意図でもありそうでした(もちろんそれは我々開発者も嬉しい!Win Win Winで最高です!)。

 

革命的で最高のプロトタイプを作り上げることを野望してゲームジャムに挑む身としては、「密ですゲーム」を作らずに済む道も考えていたのですが、Baba Is You を超えるアイデアの天啓でも受けもしない限り「密ですゲーム」を超えるウケは狙えそうになかったので、ウケれば良しの回と割り切って「密ですゲーム」を作ることにしました。

 

繰り返しですが、「密ですゲーム」は「密です言いたい」需要のためのゲームなので、プラットフォーマーやパズルではなくリズムゲーム格闘ゲームがいいです。格闘ゲームは1週間では作れません。なので、ロジカルにリズムゲームに確定しました。

 

 出来た企画書

f:id:marudice:20200505163408j:plain f:id:marudice:20200505160908j:plain 

 

前回のゲームジャムの振り返りでも使ったフォーマットです。これホンマ便利最高です。強制的に全てが具体的になります。

 

イデアでなく理詰めで企画を決めたので丸被りも覚悟しました。

ただ、「←→」での位置の押し分けと「ZXC」での種類の押し分けを、レーンストップで2キーノーツにすることで素直に融合出来る仕様はアイデアだったので、完全な被りはなかろう……くらいの気持ちでした。

これで仕様まで決まったので制作開始。

 

制作

制作の流れは、前回の開発とそんなに大きな違いはなかったです。

最終的に4人チームという大所帯ですが、企画が決まった後で適宜打診してたので、スクラム組んでえいえいおー!って感じじゃないです。…そんな冷たい感じでもないですよ!

フチヌローさん

f:id:marudice:20200310013956p:plain

企画を決めた月曜夜に打診して一緒にやることに。

f:id:marudice:20200507213524p:plain

絵の仕様は大体決まってたので、こんな感じのモックを速攻でお見せして、ひたすら素材イラストを上げて頂きました。(これは私が描いたヘッタクソな絵ですが、レイヤーで差分も揃えてて、ポーズ・サイズ感の目安になってそのまま仮画像になるので結構大事です)

細かい部分はお任せしているので、例えば

f:id:marudice:20200507214637p:plain 「座って向かい合う市民」という仕様で

f:id:marudice:20200507214654p:plain こう上がってきたりするのは遊び心のある嬉しい想定外でした。 

 

最高のアーティストにお任せすると、自由に描いて頂ければ最高の絵に仕上がるので最高ですね! 

Puzzler.Kさん

f:id:marudice:20200310014011p:plain

月曜に打診して、譜面作成+作曲を担当してもらうことに。

譜面エディタが準備出来るまではヒマなので、参戦したのは木曜夜。

 

Puzzler.Kさんはそもそも自分で遊びを作れる人なので、自作した譜面エディタ(後述)の使い方を説明したら、後は自由に作曲&譜面作成して頂きました。

2,3曲目の譜面担当なので、品質は遊んで頂ければ分かるかと・・。スゴイゾ。

 

最高のプランナーにお任せすると、自由に作って頂ければ最高の遊びが出来るので最高ですね!

 

NoEさん 

NoE

ゲームに合った曲作りが得意そうという理由で、木曜に打診して2曲目の楽曲を作成して頂きました。大正解。

木曜打診土曜締め切りというムチャスケジュールにも関わらずいいものを仕上げて頂いて、お陰様で宣伝する時の動画にも使わせて頂きました。

 

最高のコンポーザーにお任せすると、最高の曲が上がってくるので最高ですね!

 

丸ダイス

f:id:marudice:20200310013738p:plain

プログラム書いたり、残りを気合で作りました。

「さかだちの街」のモバイル版が出たばかりで対応に追われたり、長く閉じこもって人と合わなかったせいか、木曜まではあまり元気がなかった…。追い込みの週末は徹夜したりハイで元気でした。

実装的には、音ゲーなので時間の扱いがとにかく大変でした。deltaTimeの差分時間を禁止してAudioSettings.dspTimeの積分時間で議論すること、拍数で正規化した時間で議論するのがポイントだと思います。

 

リアルタイム譜面エディタ

 木曜?に始めて、金曜にほぼ出来ました。

youtu.be

こんな感じで、プレイ時のキーを押すとノーツが出現して記録される実際に曲を聞きながら編集出来る、リアルタイム譜面エディタを開発機能として作りました。

音ゲーの譜面を考える時に、押した通りに記録してくれたらいいのに…と思っていたので試してみたらいい感じ。

譜面を作り上げるには追加で 消しゴム/巻き戻し/早送り も必要で、ゲームジャム期間の中では結構重い実装でしたが、これのおかげでイテレーション早く譜面を作り込めるようになりました。

とは言っても、音ゲー作るならみんなやってるかも。

 

チュートリアル 

今回作ったゲームは、3曲x3難易度がゲームの本編ですが、その前にこんな具合のチュートリアルをプレイ必須の0曲目として入れました。

www.youtube.com

 プレイ中に譜面やレーンストップが動的に変わったりイレギュラーが多いので、半日弱くらいはかかりました。

 自分のペースで進めるプラットフォーマーやパズルなら、レベルデザインに自然に入れる(=ジャンプするボタンを表示しながら段差を配置)のが定石です。 一方、音ゲーやシューティングはプレイヤーが転んで泣いていてもどんどん先に進んでしまい、プレイヤーとの対話は失敗です。 不要かも…?とも考えたけどやっぱり必要でした。

 チュートリアルがなくても遊べるゲームを作るのが一番ですが、そのために既視感のある体験しか作らないのは個人的にはつまらないです。 新しい初めての体験を作るためにも、プレイヤーとの対話は丁寧にしたい…。

 

広報

恥ずかしいので詳細はナイショですが、バズったツイートは適当な投稿ではないです。 どこを最初の10秒にして動画にするかも、どんな文章を添えて興味を引くかも、考えて書いてます。

自然体に見えて次々にバズツイートを生み出す人って、なんかいますよね。ずるい。

スクショ一撃でゲームが面白そうに見えるイケイケアーティスト各位も羨ましい…。

バズの呼吸を身に付けられないものかと、日々考えています。

 

バズればそれでいいのか?

そんなことはないです。

学習目的以外でのゲームジャム参加は、目的が大事だと思っています。私の場合は、

  1. プロダクトにつなげる価値があるゲームのプロトタイプを作ること
  2. 面白いゲームを作るクリエイターとして認知されること
  3. 苦楽を共にした仲間として他の開発者と仲良くなること
  4. 普段の中長期開発の息抜き(大事!!)

このあたりが目的です。

unity1weekはコンテストでもあるので順位が気になってしまうのですが、深呼吸して考えてみると良い順位を取ることは2.にいくらか寄与するくらいで、それ自体が何かを生むものではないです。

統計なのでコントロール出来ない上に、明確な採点基準がなく印象や流れで決まってしまう危うさを秘めた、フェアな競技とは大分性質が違うものです。

よかった時はもちろん嬉しいですがそのために苦しむのはつらいので、最近は何のためにゲームジャムに参加するのかを言い聞かせながら参加しています。順位はよければラッキーくらいの気持ちで…。

 

今回は1.を企画段階で捨てた(これを展開させるのは無理でしょう…ボコボコに叩かれる…)ので2.がメイン目的でしたが、予想以上に達成出来たので一安心。 広報効果は(え、こんなもんなの…?)でもありましたが…世知辛いのじゃ…。

 

アプリ化やプラットフォーム展開は叩かれそうだけど譜面や曲を増やすくらいなら喜ばれそうなので、やりたい方いたら大歓迎です! ぼくのGitHubにInvite!

 

おしまい。 よかったら遊んでみてね!

 

 

追記:

キズナアイさんがプレイしてくれた!!! 完全にただの記念なんですが、実はファンだったのでぶち上がりました。 人生の実績が解除される音がしました。

 

f:id:marudice:20200519234347p:plain

これは私が作ったゲームをアイちゃんがめっちゃ楽しい!ってプレイしてる画像です。YoutubeTwitterが滅んでもこの事実が残るように投稿された動画から引用させて頂きました。

もう印刷したのではてなブログが滅んでも大丈夫です。