するめごはんのIT日記

主にITネタを書いていくのさ

かわいいは創れる!

ごきげんよう

f:id:surumegohan:20180806205340p:plain

IT業界のエンジニアだったら、「無いモノはつくる」という理論?があったりなかったりする認識です。
なので今回は「かわいい」を「創」りました。

特設ページも制作しました
ヒロインの告白 結城琴葉

スマートマキアートというユニット名
・本スキルの企画から開発
・特設Webページ上の文言

全部やりました。

ちなみに某CMは
「カワイイはつくれる」
みたいですね。

■何をしたのか

Amazon Echo Spotに対応したAlexa スキル
「ヒロインの告白」
を作成し、先ほどリリースされました。

Amazonさんのリンク
Amazon CAPTCHA

■どういうスキルなのか

清純ヒロイン結城琴葉(ゆうき ことは)が告白してくれます。
ちなみに「連発モード」として起動すると連発して告白してくれます。

そして、「IT業界の深い闇」をさらに進化させた
声による、スキルに対して星いくつかをつけるレビューモード
声による、スキルに対する感想コメントを開発者(ってか僕)に自由に伝えるフィードバックモード
を搭載しています。

■なんで創ったのか

僕は高校時代は男子校だったので、クラスに女子はNothingだったわけです。
つまり無かったのですよ。

なので ないモノは創る理論 で創りました。

■どうやって創っていったか

美少女に告白されたいというヨコシマなことを実現させるには、美少女がいないとはじまりません。
制作順を書いておきます。

1.大雑把なキャラクターイメージから

はじめに大雑把にキャラクター設定から始まりました。

前提として、そもそも女の子なのかから入り、そうしたわけですが。

じゃあどんなキャラクターなのよ。
どんな性格なのよ。

からスタートでした。

・清純ヒロイン
・幼馴染
・元気っ子
・メガネ委員長
・先輩お姉さん
・後輩や妹系

とかから悩み始め、まずは清純ヒロインからにしようとなりました。

2.清純ヒロインって何さ

世代によって、イメージする「清純ヒロイン」は差異がでてくるので、とにかく調べるところから。
いろいろ調査した結果、僕が欲するヒロイン像というものがある程度固まってきたのでそれをベースとしました。

調査にあたっては、知る限りの人気のゲームやアニメの女性キャラクターについて

・性格
・セリフ回し
・しぐさ
・どういうところが人気なのか
・主人公などに恋愛感情がある場合はどのような内面が作品で描かれているか

などなどを僕の主観ですが調査していきました。

調査を進めていく中で今回のスキルのキャラクター像に近いのは以下が良いと判断しました。

・敬語に近い話し方をする
・恋愛対象に想いを告げられないでいる
アホ毛とかは不要
・学園モノ

となった次第です。

3.学生時代の経験が活きた

少し話は脱線しますが、僕が高校生だったころに
恋愛シミュレーションツクール2
というゲームがありまして、アホみたいにやってた過去があるのです。

恋愛シミュレーションツクール2 | ゲームソフト | PCゲーム | エンターブレイン

この頃もキャラクターデザインからシナリオ作成まで、ガリガリやってたわけです。

そんなこと言ったら中学生の頃から部活でドラマ撮影とかも監督・脚本・撮影などを諸々やってたし、小学生時代からフロッピーディスクRPGツクールDante98をやって、友人間で馬鹿やってたわけです。


王様がトイレの紙がなくて困ってて、図書館の本の間に挟んである紙で代用するとかそんなアホなゲーム

RPGツクールDante98>
worholicanada.mydns.jp

これに限らず、ツクーラーだったので
RPGツクールDante98
RPGツクール SUPER DANTE(スーパーファミコン
RPGツクール3(プレステ1)
RPGツクール4(プレステ1)
RPGツクール2000Windows) ※まさかの大学必修講義
・シューティングツクール95(Windows
もやってきてました。

これらの経験が2018年夏に活きることになるとは。。

4.状況から推察される告白メッセージをひたすら構築する

今回のスキルでは、設定上、体育館裏とかに告白対象を呼び出して、恋愛感情を告白するという状況です。

上記の経験や、ネットの調査から
100種類の告白メッセージを抽出しました。

その100種類をそのまま使うわけにはいかないので、その100種類をもとにして、僕の独自アレンジで数十種類に絞りました。
具体的な数は秘密ですが、結構こだわってます。

また、告白時のセリフは「間」にもこだわって、セリフ抽出時に「。。」「、、」「・・・」などの独自記号を入れて、何秒間の間を開けるべきかしっかりやりました。

5.告白以外のメッセージの抽出

告白するということは、告白されるユーザはそれに対して返事をするのであって、それによるヒロインのセリフを構築していきます。
先に告白メッセージの抽出が終わっているので、今回のキャラクター「結城琴葉(ゆうき ことは)」なら、どう返答するかを考えていきます。

6.スキルの状態遷移を構築する

ここまできて、VUI設計をします。

起動
→ 1回目の起動ユーザか、2回目以降か判断する
→ 告白していいかユーザに尋ねる
→ OK or NGをユーザが返す
→ 応答メッセージを構築して返答
スキルが星いくつか、声でのレビューモード
スキルにたいしてユーザの感想を声で拾うフィードバックモード 

が、今回のノーマルモードハッピーパスです。

ここに途中で「ストップ」「キャンセル」「ヘルプ」を言ったらどうなるのかを付け加えていきます。

なお、連発モードはまた別のロジックとなっています。

7.イラストにする際にどのようなキャラにするかイメージを固めてイラストレーターさんを探す

セリフや性格が固まったので、Echo Spot対応のためにイラストが必須です。

というわけで、調査していたキャラクターをもとに今回の「結城琴葉(ゆうき ことは)」のイラストイメージを構築します。

僕は画力が皆無なのでイラストレーターさんにイメージを伝えないといけないわけです。
結果以下になりました。

【性別】女
【年齢】16
【髪型・髪色】黒と茶色の間のような色、長さは肩よりやや長い
【目の形】ニ●コイの小野寺●咲さんのような感じ
【目の色】茶色
【表情】告白するので、頬が赤く、笑顔とはにかむのが混ざっている感じ
【服装】制服、襟元に赤いリボンがあると尚良い
【背景】ベースはピンクで、少しキラキラしている感じ
【性格】普段おとなしめの清純ヒロイン

ここまでイメージを固めた上で、イラストレーターさんを探します。

様々なサイトやTwitterなどでポートフォリオやサンプル画像を観て回りながら、
早瀬十佳(はやせ とおか)様
にお願いいたしました。

上記のキャラクターイメージと、セリフ集を送付した上で、描いて頂きました。

今回のスキルの絵の著作権はこちらの早瀬十佳様にあります。
利用規約にも明記しましたが、無断転載するとガチで法的対応です。


Amazonのスキルページにあるアイコンはブログとかで使う分にはOKです。

ちなみに、裏話ではありますが、当初キャラクター名はあえてつけない方向にしていました。
しかしながら頂いたイラストが大変素晴らしかったので、名前を「結城 琴葉(ゆうき ことは)」とつけさせていただきました。

告白する勇気から「結城」
琴や葉のような繊細さから「琴葉」となりました。

ぐぐってもかぶっていなかったのと、姓名判断もいい感じでした。

8.イラストのラフ画をもとに声優さんを探す

想定よりも早めにラフ画を頂けたので、今度は声優さんを探します。
声優さんが今回は最重要です。

VUIなので声が基本であり、告白してくる女の子のイメージを表現して 結城琴葉 に命を吹き込んでもらう必要があります

いろいろ探した結果
「天使の声」として活躍なさっている
羽歌那(わかな)様
にお願いしました。

台本はもちろんのこと、キャラクター設定、状況の設定、どういう声を出してほしいかをお願いして収録していただきました。

この際に、僕が想定しているセリフの「間」がうまくとれていないところは、羽歌那様ご了承のもと、リテイクを数回実施しています。

Amazonの審査落ちが原因で、3回も依頼してしまいました。。。

今回のAmazonの審査で特に厳しかったのが
「mp3を再生してますが、【アプリ】という単語はすべて【スキル】にしてください。これは規約のどこにも明記してないけど。」
です。

これをやられたので、羽歌那様と再調整することになりました。

■他にもいろいろあった

今回、Echo Spot対応だったので、Amazon社としてもかなりの混乱があった模様です。
例えば、審査時に以下の現象が発生しました。
全部は書きませんが。。

・セッション切れてない疑惑

Amazon「スキル終了時に「すぐに」セッションがきれてない」
僕「すぐにって具体的に何秒なんですか。ちゃんとセッション切る実装にしてるし、審査員の主観ですか?」
Amazon「ごめんなさい。大至急確認します。(20分後くらい)審査側のミスでした。再申請お願いします。」

・再現手順が意味不明

Amazon「この再現手順をすると動きがおかしい」
僕「再現手順としての情報がなさすぎる。。どのタイミングでそのセリフを話しかけて、どういう返答になったのかせめて書いてください」
Amazon「・・・・(返答なし)」

・審査結果が誤字だらけ

Amazon「〇〇の可能があります」
僕「・・・「可能性」だよなたぶん」

Amazon追記合うのIntentの扱いが~~~」
僕「・・・「付き合う」・・・か??」

Amazonさんも大変そうだ。。。

■テクニカルな話

技術的な実装とかハマったところとかは別途Qiitaに書きます。
ただ言えるのは X千行のコード を書いてます。
僕の実装が悪いんですけども。。。

そしてだいたい想像がつくかもしれませんが
・Lambda
・DynamoDB
は使っていて、他にもAWSの様々なサービスを裏で使っています。

■つくってみて

めっっっちゃ大変だった。
デュ〇ルする時より遥かに大変だったと思ってます。

僕はたまに以下のようなことを言われます。
「なんでそこまでしてやってるんですか?」
「本気出しすぎだろww」
「情熱すごいですね」

面白い・楽しいからに決まってるだろうが!!

今回のスキルがクヲリティ高いのか低いのか、どういう判定を世の中で受けるかはわかりませんが 、レビューやフィードバックモードを搭載しているのでそれをもとに

・結城琴葉をシリーズ化できないか
・結城琴葉を動かせないか
・別のキャラクターをどうつくるか

などを、より深堀していこうかと。

あと、何名からか
「もうこれエンジニアじゃなくてプロデューサーだろww」
「ア●マスとかデレ●テとかって知ってる?」
「男キャラも作ってください」
と、言われおり大変嬉しい限りです。

最後に特設ページをもう一度記載しておきます。

ヒロインの告白 結城琴葉

スペシャルサンクス

・スキル開始音という発想と「ジングル」いう単語を教えてくれた方
・子供が産まれて名づける際に姓名判断を使用したと教えてくれた方
・連発モードのアイデアをくれた方
・技術的課題について相談対応してくれた方
・結城琴葉のファンになってくれた方

■おまけ

こちらで今回のスキルについて登壇します。

iotlt.connpass.com