読者です 読者をやめる 読者になる 読者になる

【デレ4th神戸】神戸出張アフターレポ②【ライブ1日目 2/4】

その他

どうも、旧:ふくともPです。

前回に引き続き、神戸出張のアフターレポートになるわけですが、今回はライブ1日目について書こうと思います。

担当ということで春菜とみつやすさんのことばかり、というか書いていることのほとんどがその二人のことになりますがご了承ください。

9/3

4thライブ神戸公演一日目。

僕の担当する春菜とみつやすさんの初の大規模ライブ参加がこの日ということで、今回の出張の中で一番大きなウェイトを占めていました。

 

日付が変わるとデレステにて「15時からスカウトチケット販売開始」のお知らせが。対象アイドルの一覧にはSSR春菜も入っており、実装直後にガチャ爆死した身としては嬉しい限り。サンキューチッヒ!!

 

バスでほとんど寝れていない状態で物販に行ったあとで眠い目を擦りつつ、春菜とみつやすさんへの手紙を書くべくペンを握りました。書かなきゃ、と言いつつ書いていなかったことを反省しつつ大慌てでペンを走らせ、ライブ出演のお祝いと感謝、春菜と出会ってからこの日を迎えるまでの思い出、春菜とみつやすさんの今後への期待や応援メッセージなどなど、書き始めてみると眠かったはずの目はどんどん冴えていき、書き終えたのは2時頃でした。

 

前日物販の様子とライブ当日であることを受けての人数増加を踏まえ、始発で物販に行き連番者さんの手伝いをしようなどと思いつつ仮眠を取ることに.....。

 

目が覚めると時計は8

......8時!?

 

幸いにも前日の内にサイリウム等の準備は済ませていたので朝ごはんを手早く済ませ鞄を引っ掴んでホテルを飛び出しました。そして三宮に着き電車を乗り換え一安心、市民広場駅に着くのを待ちます。

 

到着予定時刻を回っても電車は止まらず、少し不安を覚えた僕は次の駅で一度降りることに。

するとそこは......

f:id:q-fukutomo:20160909085625j:plain

大阪駅

大阪駅?昨日三宮に向かう際に通った覚えが。

どうやら別の電車に乗ってしまったようです。慌てて折り返そうとしもう一度電車に乗りました。

 

新大阪駅

???

三宮から大阪に来るときに通っていないところに来たようです。

折り返したつもりで同じ方向に乗っていた模様。

流石にこれはマズい、と電車から降り、逆方向への電車を落ち着いて確認。ようやく正しい電車に乗ることができ、ホッとしていると連番者さんから「物販のアテは別に付いたので落ち着いてゆっくりきてください」という旨の連絡が来ました。申し訳無さを感じつつも他にできることもなく、電車を乗り間違えないように細心の注意を払いつつ現地へと向かいました。

 

10時少し前、物販が前倒しで始まったという情報をTwitterにて見かけました。すると、物販開始から30分ほどでMMMDセット完売の速報が。流石ワイらの春菜や!!などと思い嬉しい半面、春菜担当仲間の同僚さん方が手に入れられなかったこともあり、非常に複雑な気持ちで電車に揺られました。

 

会場に着いたのは10時半頃、連番者さんはまだ待機列の中ということで課金城付近で名刺交換をして待つことに。まゆとお揃いの赤リボンを配っていた、熱いまゆ愛を感じさせてくれるPさんが印象的でした。また、モバマスで同プロダクション所属の春菜Pさんにも会うことが出来たのも思い出深いです。

 

その後、連番者さん(春菜P)と合流、連番者さんの物販支援者さん(春菜P)と合流し、課金城へ入城することに。つぼみのインスト版をBGMに過去イベントを振り返り最後は各イベント曲のメドレーで、ここでも涙を流すことに。

 

その後コール本をもらいにアリストンホテルへ。

配布会場へ向かうべくエレベータに乗りました。乗り合わせた同僚さん方に挨拶をするとまたしても春菜Pの方が。アリストンホテルにてコール本を頂いたり談笑している内に一緒にいた方の連番者さん(春菜P)も合流しました。更に前述の同プロダクション所属のPさんとも再会。現地チケットは持っておらずプレゼント箱までたどり着けるかわからないということで、みつやすさんへの手紙を預かり届けることに。同会場にて併催されていたマシュマロキャッチプロテストを眺めたりしている内にお昼すぎに。

 

お昼ご飯を食べに春菜P5人で三宮まで移動することに。

その道中、315プロや765プロ、765シアター組などなど他の事務所のアイドルについてもお話することができ、アイマスという大きな枠の中での横の繋がりはこうして形成されていくんだなー、と感じました。

 

静岡出身の春菜Pさんの熱い「さわやか」推しを聞いている内にハンバーグが食べたくなったため、ハンバーグ屋さんに入りました。

f:id:q-fukutomo:20160909162513j:plain

f:id:q-fukutomo:20160909162524j:plain

大変美味しゅうございました。

 

食事をしつつ今度はアイマスに限らず他のジャンル等の話ができたのも大変印象的でした。

 

会場に戻る前にコンビニに立ち寄りスカウトチケット取得の準備と飲み物を購入。

ポートライナーに揺られている間に15時を回り、一行のテンションが上がって来ました。開場まではまだ時間があるので再びアリストンホテルへ。

f:id:q-fukutomo:20160909163735j:plain

するとそこで「眼鏡騎士団」のTシャツを来た方と出会いました。

実物を見たのは初めてでした。正直僕も欲しいなぁ、などと。

 

スカウトチケットと共に手に入れた10連チケットは安定のSSR不在。

いざ、SSR春菜のスカウトへ。

f:id:q-fukutomo:20160909164207j:plain

5人の春菜Pが一斉にSSR春菜をお迎えし、気持ち的にはこの瞬間がこの日の山場の1つでした。その熱量が周囲にも伝播したのか注目が集まっていたような気がします。

 

高揚感と達成感を感じつつ、ライブ会場であるワールド記念ホールへと移動。

自分の分はもちろんのこと、預かった分の手紙も確かにプレゼント箱へと届け入場口へと向かいました。

 

f:id:q-fukutomo:20160909164837j:plain

自分もカンパに参加した春菜とみつやすさんへのフラスタもこの目で見ることができ、興奮度合いは最高潮に。

また、このフラスタだけでなく兵庫県のP一同によって贈られた全体向けへのフラスタにも春菜とみつやすさんのイラストを見ることができました。

f:id:q-fukutomo:20160909165128j:plain

 

いよいよ入場。

会場の熱気を感じつつ開演を待ちました。開演予定地時間を少し回った頃、BGMも止まり、モニタにチッヒが現れライブが始まったのでした。

 

以下セットリスト

  1. とどけ!アイドル
  2. ゴキゲンParty Night
  3. S(mile)ing!
  4. Naked Romance
  5. エヴリデイドリーム
  6. おねだり Shall we〜?
  7. TOKIMEKIエスカレート
  8. Snow Wings
  9. Twilight Sky
  10. ショコラ・ティアラ
  11. ましゅまろ☆キッス
  12. 小さな恋の密室事件
  13. Love∞Destiny
  14. 生存本能ヴァルキュリア
  15. ハイファイ☆デイズ(GAME VERSION)
  16. Tulip
  17. 風と空と恋のワルツ
  18. メルヘンデビュー!
  19. あんずのうた
  20. 純情Midnight伝説
  21. Rockin' Emotion
  22. 咲いてJewel
  23. きみにいっぱい☆
  24. 明日また会えるよね
  25. メッセージ
  26. GOIN'!!!
  27. BEYOND THE STARLIGHT
  28. おねがい!シンデレラ

正直興奮しすぎていてほとんど記憶が飛んでいるというか、ただただ楽しかったことしか覚えていません。

なので覚えている範囲でざっくりと。

 

  1. とどけ!アイドル:デレステメインのライブにふさわしい開幕曲でした。みつやすさんがステージ上に立ち、カメラに抜かれてモニタにテロップが出た時には思わず叫びだしそうになりました。
  2. ゴキゲンParty Night:正直意外な選曲でした。しかしこの時点で会場のボルテージは最大になり、この曲をやってくれて本当に良かったと思いました。
  3. S(mile)ing!:ソロ曲は今回『はにかみdays』がくるものと思っていたためこちらも意外と言えば意外でした。アニメクライマックスの卯月を思い出し、不覚にも涙が。はっしーかわいかったです。
  4. Naked Romance:3rdライブで披露されなかったこともあり、やっと聴くことが出来ました。津田ちゃん自身もそのことを気にしていたらしく、後のMCで「歌えたよ―!」と言ってくれたのがとても嬉しかったです。
  5. エヴリデイドリーム:かわいい!アンドかわいい!担当こそ名乗っていなものの、僕もまゆが好きだったのですが、まきのんのステージパフォーマンスを観て心を奪われました。
  6. おねだり Shall we〜?:今回は擦っても大丈夫なちょっと良い猫耳にグレードアップしてそうです。毎回違う「スキあり」の言い方をしているとのことでしたがが、今回は非常に色っぽかったです。なつ姉すごい。
  7. TOKIMEKIエスカレート:やっぱりるるきゃんはカリスマでした。デレステからダンスを逆輸入していたのが印象的でした。
  8. Snow Wings:正直まだ言葉にできていません。春菜とみつやすさんのデビュー曲である『Snow Wings』がこの大舞台で披露できたこと。何よりステージに立ってくれたこと。他のステージ慣れしている方々に劣らないパフォーマンス。全てが嬉しくここでは涙を流すことはなく、ただただ魅了され、楽しんでいました。持ち込んだ青のケミカルライトはここで残り半分になりました。「まばたきも忘れるほど輝いているでしょう」その通りでした。
  9. Twilight Sky:夕焼けを模したサイリウムの海の一部になることが出来たのがすごく嬉しかったです。るーりぃのパフォーマンス最高にロックでした。
  10. ショコラ・ティアラ:3rdライブに引き続き今回はマシュマロを食べていました。非常に美味しそうに頬張っていた大坪プロ、可愛かったです。
  11. ましゅまろ☆キッス:麗ちゃまだけでなく大坪プロと一緒に歌っていました。Pのことをどうやったら喜ばせられるかを考えながら今回の振りを考えてくれた麗ちゃまは正にきらりのようでした。ありがとう。
  12. 小さな恋の密室事件:ちょこたんかわいい。そのインパクトが強すぎて他の感想が湧いてこないです......。
  13. Love∞Destiny:まさかのフルバージョン。背景のモニタに加蓮と智絵里も映っていたのが嬉しかったです。Cメロがかっこいいどころの騒ぎじゃなかったので音源販売が待ち遠しいです。
  14. 生存本能ヴァルキュリア:オリジナルメンバーがいないため、正直来ないと思っていたのですが。イントロが聴こえた瞬間、青のケミカルを焚いていました。みつやすさんのキレの有るダンス、クール過ぎる視線。そして、ちっすーの「生き残れ」がすごく強烈に記憶に残っています。
  15. ハイファイ☆デイズ(GAME VERSION):キャスティング企画上位5名によるハイファイ。美嘉姉1位おめでとう!後のMCでるるきゃんが「初めて美嘉にあげられた1番」と泣きながら言ったのに貰い泣きしました。
  16. Tulip:るるきゃん以外全員キュートアイドルでした。なつ姉とまりえってぃのブレなさに思わず笑いが。しかし、パフォーマンスは本物ですごく盛り上がりました。
  17. 風と空と恋のワルツ:こっひーと津田ちゃんのソロ曲その2。Naked Romanceを先に歌っていたのでやるにしても入れ替えで2日目だと思っていたため驚きました。「だ、だめぇ......」にハートを撃ち抜かれました。
  18. メルヘンデビュー!:初めて生の会場で「誰だ、誰なんだ―!?」を言えたのが楽しかったです。間奏の「あの、プロデューサーさんはナナの本当の姿を知っても好きでいてくれますか?......なんちゃって~☆」で泣かされました。好きだよ。
  19. あんずのうた:メルヘンデビュー!で叫びまくった後のあんずのうた。きついしんどい、でも楽しい。ゆきんこと杏のソロで歌うのは久々ということでしたがすごく安心感がありました。カエダーマ大作戦であんずがモニタに映った時は「お見事、それからありがとう」という気持ちでした。(課金してよかった)
  20. 純情Midnight伝説:サプライズゲストできよちゃんが登場し、炎陣勢揃い。声帯実装済みCINDERELLA MASTER待機組による全力のパフォーマンス。熱かった。原さんの見事なヘッドっぷりに舌を巻きました。
  21. Rockin' Emotion:炎陣メンバー続投でなつきちソロ曲。「人生のジェットコースター目を開けて楽しむのさ」の部分が今が一番勢いに乗っている彼女たちにぴったりだなぁ、と感じました。
  22. 咲いてJewel:ここでもみつやすさんのクールっぷりに脱帽。想像以上にライブ映えする曲で俊龍大先生に感謝感謝。
  23. きみにいっぱい☆:サンバのリズムにノッて会場を盛り上げてくれました。THEパッションという感じでしたね。
  24. 明日また会えるよね:かわいい!流石キュート曲。間奏の「いいよ?」が本当に可愛くて悶えそうになりました。が、それと同時にもうすぐライブが終わってしまう寂しさも感じてきました。
  25. メッセージ:2公演参加組によるメッセージ。ライブ慣れしているというのでしょうか、この日の公演で一番安定感を感じました。綺麗な旋律に聴き入っていました。最後にはっしーがMの字をなぞり、モニタでは手紙のCGが飛んでくる演出が素敵でした。
  26. GOIN'!!!:アンコール前では最後の曲。興奮のあまり開幕で4本、落ちサビ前で6本のUOを焚く始末。5人のメンバーが初の大きなステージということもあり一つ一つの詞が今日このライブに至るまでのことをなぞっているように感じられここでも涙が。いい、ライブでした。
  27. BEYOND THE STARLIGHT:アンコール1曲目、デレステ1周年記念曲。ゲームで聴いた詞、課金城で観た映像などなど既に何度か泣かされていたこの曲ですが、生で聴いてもやはり泣くことに。ステージに上がった彼女たちはこれからも進み続ける、今日初出演の方々にとってはゴールじゃなくて出発点なんだ、ということを考えていると熱いものがこみ上げてきました。
  28. お願い!シンデレラ:この日の大トリ、シンデレラガールズと言えばこの曲。他の曲ももちろんでしたが特にこの『お願い!シンデレラ』をみつやすさんと春菜がこのステージで歌ってくれたことが何よりも嬉しかったです。「心にシンデレラ 私だけじゃ始まんない 変われるよ 君の願いとリンクして」のところが(僕にとっては)僕と春菜だけでなく、春菜とみつやすさんのことも歌っているのかと思うと涙が止まらなくなりました。本当にありがとうございました。

 

セトリに関しては以上です。

MCのみつやすさんについて。

  • 今日のこだわりは?と聞かれ「眼鏡ですかね!」と答えるリアル春菜なみつやすさん
  • 春菜の眼鏡に相当寄せているもののまだ違う、とこだわりと春菜への愛を感じさせてくれるみつやすさん
  • なつ姉に「本体(眼鏡)喋んないの?」と聞かれ「本体は喋れないので台座が喋ります」と答えるシンデレラ一門に馴染むみつやすさん
  • アンコールで戻ってきた後の自己紹介・挨拶で「自信のなかった少女はもうどこにもいません!」とモバマスの1stアニバのアイプロやデレステSSRの親愛度演出を彷彿とさせるみつやすさん。(その言葉を聞いて僕は泣きながら膝から崩れ落ちました)

みつやすさんが春菜と出会って、春菜を演じてくれて本当に良かったと思いました。

 

終演後、今日一日を共に過ごした春菜Pさん方とお疲れ様会を兼ねて夕飯へ。

f:id:q-fukutomo:20160911031232j:plain

パスタを頂きました。

 

ライブでの疲労と言葉にならない想いとでお昼ほど会話が弾んだ覚えはないですが、同じライブに参加した後に顔を合わせたためその想いは共有できていたように感じます。

 

食事が終わりいよいよ春菜Pさん方ともお別れに。

また会いましょう、と言葉を交わし電車に乗りました。

 

ライブそのものとみんなで過ごした時間に思いを馳せつつ、ホテルに戻ってきました。

遂に一人になった寂寥感とみつやすさんの最後の言葉を思い出しまた泣きそうになりながら、ようやく言葉にできた感想などをTwitterに発信し、眠りにつきました。

 

この日は丸一日中涙腺が緩みっぱなしでした 笑

 

(次の記事へ続く)

【デレ4th神戸】神戸出張アフターレポ①【関東発〜ライブ前日 1/4】

その他

※今回は開発系とは全く関係のない記事です。

 

お久しぶりの方はお久しぶり、初めましての方は初めまして。

上条春菜担当、旧:ふくともPです。

Pです。(二度目)

 

2016年9月3日、4日に行われた「THE IDOLM@STER CINDERELLA GIRLS 4thLIVE TriCastle Story Starlight Castle」に参加してきました。

 

素晴らしいライブだったのはもちろん、僕にとって初めての単身出張(ライブ遠征)ということもあり得るものは大変多く、この想いをどうにか形に残しておきたいと思い記事を書くことにしました。全4回に分割して書いていきます。

 

では、時系列順に振り返っていきます。

 

9/1

9/2の前日物販に参加するべく夜行バスに乗ったのがこの日。

 

まず始めに僕と同じく上条春菜を始めとする眼鏡アイドルを応援してくれているタワーレコード新宿店様に立ち寄り、士気を高めました。

f:id:q-fukutomo:20160906115234j:plain

 

その後友人と夕飯を食べている時に最初の問題が発生しました。

 

「バス乗り場の最寄り駅が新宿ではなかった」

気付いても時既に遅し。

どんなに急いでもバス発車までに乗り場に着かないことが判明し、大いに慌てました。

 

しかし、遠征慣れしている友人の提案により、キャンセルで席の空いた別の便に乗り、大阪までバスで行けることになりました。

 

本来乗る予定だった1階4列のバスではなく、2階4列のバスになり全く快適とは言えない上にバス代を二重に払うことになってしまい非常に後悔しました。

が、しかしそれでも何とか出張先へ向かうことができ一安心したのもまた事実。

期待に胸を膨らませつつ眠りに落ちました。

 

9/2

日付変わって翌日。

眠りに落ちたと言ったな、あれは嘘だ。(おい)

 

前述の通りの環境+興奮により全く眠れませんでした。

一口しかないコンセントも隣の席の方に使われてしまい、物販待機中のことを考えた結果、ケータイを触ることも出来ない今、何をしようか、と考えたところ手荷物の中にPCを入れていたことを思い出し、以前から構想を練っていた二次小説の大まかな流れを書き出してみることにしました。

 

僕の思い描く上条春菜像と彼女を取り巻く他の人物。

ネタを温めてきた期間がそれなりに長いこと、またライブ直前でアイドルマスターシンデレラガールズというコンテンツ全体に対する熱が高まっていたこともあり、キーボードを叩き始めると想像以上に指が走り、誰かが書いたものをなぞっているだけなのでは、と思うくらいにはスムーズに進んでいきました。

 

最後の休憩場所に着く直前まで指は動き続けました。

降車前に一旦保存し、夜風に当たってクールダウン。

バスに戻り、もう一度PCを開いて今度は各キャラの小説の上での設定や言わせたいセリフなどを書き出していきました。

実際に一本書き上げられるかはまだわかりませんが、ここまでの工程は非常に楽しかったです。

 

そして時計は3時を少し過ぎた辺りを指します。

話の流れやキャラ設定等もある程度固まり、いざ本文を書き始めてみることに。

自分の語彙力の無さ、書いてみた後のコレジャナイ感と戦いつつ書き進めること数十分、ようやく睡魔が襲ってきたため瞼を閉じました。

 

目が覚めたのは6時過ぎ、バスが大阪駅に着いたところでした。

初めて自由に来た関西の空気にテンションが上がり睡眠不足も何のその、神戸方面へと移動を開始しました。

ホテルのチェックイン時間と物販開始時間を見比べ、先に物販会場へ向かうことに。

 

物販会場、ポートアイランド市民広場に到着。

最初に目に飛び込んできたのは通称:課金城でおなじみのCygamesさんによるフラワースタンド(?)

f:id:q-fukutomo:20160906123625j:plain

いやー、とにかく大きい!

あの大きなモニタにはどんな映像が映るんだろうか、などと思いつつCD物販待機列へ。

 

友人の分も会場限定CDを頼まれていたということもあり、CD物販から並んだのですが、結果的にはその選択は失敗だったようです。(理由は後ほど)

 

「快晴の空の下、待つこと5時間30分」

物販会場に着いたのが7時30分、物販開始が13時ということでひたすら待ち続けました。前日物販は平日だったということもあり、列の伸びは緩やかで、自分の並んだところは目測で前から100番目前後だったと思います。

 

本家モバマスのイベントを回していたらガチャチケが10枚溜まったので引いてみることに。

f:id:q-fukutomo:20160906135404j:plain

まさかのSレア春菜。このメモリアル・ブルーのカードは春菜の声優がみつやすさん(長島光那さんの愛称)に決まって最初に出た春菜のカードであること、イラスト内に春菜の初期カードの写真が映っていることなどから僕が一番好きな春菜のカードであったため非常に嬉しかったです。

 

待機途中、飲み物を切らし自販機に向かう際に後ろに並んでいた同僚さんに「ついでに買ってきましょうか」と声を掛けてみました。その方は十分に飲み物を用意していたようで買ってくるのは自分の物だけとなりましたが、そこで声を掛けたことをきっかけにお話をすることができ、名刺を交換することにも成功しました。神戸での初の名刺交換はこの時でした。

 

物販開始時刻になったところで課金城に変化が。モニタにライブに出演するアイドルたちの映像が映し出されました。

f:id:q-fukutomo:20160906125107j:plain

その映像の一部にはもちろん僕の担当アイドル、上条春菜の姿もありました。ここでようやく春菜とその声優、みつやすさんが大舞台に上る実感が湧いてきて、様々な思いと共に涙もこみ上げてきました。

物販が終わり次第課金城へ向かおうと思いながら自分の会計を待ちました。

 

無事に会場限定CDを3枚購入し、会計2000円ごとに1枚もらえるうちわは4枚全てSnow Wingsのデザインのものを頂きました。理由は書くまでもないでしょう(笑)

 

流れるようにグッズ物販待機列へ。

目的のものはただ一つ、「上条春菜のまぁまぁ眼鏡どうぞセット」(以下MMMDセット)

f:id:q-fukutomo:20160906135206j:plain

......のつもりだったのですが、せっかくなのでショッピングバッグも購入することにしました。意志が弱い。

 

自分の会計がもう少し、という時に同じく春菜Pの連番者さんもMMMDセットを購入希望ということを知り、注文票の数を2個に変更しました。

この時点で完売は法被のみでした。

 

いざ僕の会計。注文票をスタッフさんに渡したところ、何故か他のスタッフさんと困り顔で話をし始めました。少ししてレジに戻ってきたスタッフさんに話を伺うと「注文数2個に対して在庫が1個しかない」とのこと。無いものはどうしようもないのでMMMDセットを1個とショッピングバッグを1つ購入し、お買い物終了。そして、同時にMMMDセットが完売。

春菜Pとしては春菜のグッズが完売したことが嬉しく、また自分の分が買えて良かったと思う反面、連番者さんの分が確保できなかったことを残念にも思いやや複雑な気持ちで課金城へ。

f:id:q-fukutomo:20160906130953j:plain

まずここで「上条春菜」の文字に涙。

f:id:q-fukutomo:20160906131419j:plain

春菜の曇りのない笑顔に涙。

f:id:q-fukutomo:20160906131527j:plain

大スクリーンで踊る春菜の姿に涙。

一体何回泣くんだ僕は、とは思うものの溢れてくる涙は止まらずしばらくモニタを観て立ち尽くしていました。

f:id:q-fukutomo:20160906131824j:plain

モニタ下の幕が上がり、アイドルたちのイラストが出てくる演出。

そこには「上条春菜長島光那」の文字が。アイドルだけでなくキャストさんも大切にしてくれるCygamesさんに感謝をしつつやはり涙を流していました。

 

課金城の中で観られる映像は翌日連番者さんたちと一緒に観ようと思ったのが半分、寝不足で疲れていたのがもう半分でホテルへと向かいました。

 

チケットが取れてからホテルを探したため安価なところは埋まっていたのか、そこそこ値の張るところに泊まることになりましたが、ライブ会場からもそこそこ近く、部屋の設備も良い所で、結果的にはここで良かったなぁ、と思えるホテルでした。

 

物販で購入したものや自宅から持ち込んだパンフ、全アイドル名鑑などを見ている内に陽はだんだんと傾いていきました。

3泊4日の計画ということでホテルに居る間の食べ物や飲み物を買いがてらホテル周辺を散策。関東ではあまり聞くことのない生の関西弁に少し感動を覚えました。ホテルに戻ってシャワーを浴び汗を流したところで、翌日に備えサイリウムを始めとするライブグッズや名刺入れ等を手荷物用の鞄に入れ替えたり、Twitterを眺め同僚さんたちの熱を感じたりしているうちに時計は進み、23時を回ります。

 

配布されたスタージュエルと手持ち分を合わせ10連ガチャを2回実行。しかし、SSR春菜を引くことは出来ず。

 

とは言え、翌日から始まるライブやシンデレラガールズというコンテンツへのモチベーションは依然高まったままでした。

(次の記事へ続く)

【ジョーカースクリプト勉強会】番外編・セーブデータの管理【Unity】

Unity ジョーカースクリプト Unix系コマンド

どうも、ふくともです。

 

今回はジョーカースクリプトを利用したUnityのセーブデータ保存場所の特定を行おうと思います。

当方、開発環境がMacであるためUnix系ターミナルコマンドを使用しています。

Windowsについてはそのうち別の記事に書き起こすかもしれません。

 

というのも、現在サークルの制作でAndroidアプリを組んでいてロード/セーブ画面で「PCでの開発中に作成されたセーブデータ」をAndroid機から参照しようとしてフリーズする、という自体に陥りまして。

 

セーブデータ自体をAndroid機に突っ込んでやろうかとも考えたのですが、アプリ配布に当たって既にセーブデータが入っているのも如何なものかと思い、とりあえず.apkビルド前にセーブデータを削除してしまおう、ということに。

 

日時を利用してセーブデータの保存先を特定したいのでとりあえずセーブデータを1つ変更しておきます。

 

 

↓ジョーカースクリプトのロード画面(カスタマイズ有)

f:id:q-fukutomo:20160212014121j:plain

画面から分かるようにセーブ日時も保存されているようです。

 

ということは、セーブデータもこの時間に変更されているはず。

 

Unix系の検索コマンドでこの時刻に最後の変更が加えられたファイルを検出したい。

 

検索コマンド find

$ find / -mtime 0

 

これでストレージ内のその日に変更が加えられたファイルまでは絞れるようです。

 

......と言ってもその日のうちに変更したファイルではきっとソースコードなども引っかかってしまい絞り切れてるとは言えませんね

 

先ほどのリンクをもう少し見てみると -ls オプションを加えることで詳細表示が出来るようです。

-lsオプションでは時刻も表示されるので

$ find / -mtime 0 -ls

これで必要なデータは見つかるはずです。

 

が、表示された中から目標のファイルをマンパワーで探すのは効率的ではないので、

文字列検索コマンド grep

を併用します。

 

 

セーブデータによると01:20:59(時:分:秒)に変更されていますね。

-lsオプションで表示されるのは時:分なので、01:20を含むものだけを表示させればいいですね。

 

コマンドの併用は | (パイプ記号)をコマンドの間に挿入すればできるので、

$ find / -mtime 0 -ls | grep 01:20

でOKです。

※時刻に関してはそれぞれの環境に合わせて適宜置き換えてください。

 

また、@saveタグの定義ファイル

Assets/JOKER/Scripts/Novel/Components/SaveComponent.cs

を見てみると

configファイルで指定されている最大セーブスロット数まで、0から順に列挙していきます。

save_0 save_1 save_2 …  というセーブファイルを列挙していく

 

save.name:セーブファイル名(ロード時に指定する名前でもある)

 とあるので、今回の環境ではセーブファイル名にはsave_4が使われているはずです。

 

時刻と同様にgrepを叩き

$ find / -mtime 0 -ls | grep 01:20 | grep save_4

でファイルの位置が特定出来ます。

※ディレクトリによっては権限の関係で参照できない可能性もあるので念のため管理者権限で実行したほうが良いかもしれません。

 

同じディレクトリに入っているのは大体セーブファイルなのでビルド前にまとめて削除or退避させてビルド後に再配置すれば実機デバッグは問題なく行えます。

 

以下、軽い宣伝になります。

今回使用した画像は私の所属する同人サークル「outer(base);」(読み:あうたーべーす)でAndroid移植を進めているノベルゲーム「Surface」のロード画面になります。

3月中にはリリース予定ですので、ジョーカースクリプト勉強会シリーズの制作サンプルとして遊んでみていただけると幸いです。

 

以上。

2016/02/12 Fri.

【ジョーカースクリプト】揺らしエフェクト改

ジョーカースクリプト Unity

既に年が明けてから一月と少し経っていますが、あけましておめでとうございます。

ふくともです。

 

以前作ったジョーカースクリプト用の揺らしタグですが、少し手を加えて振れ幅/時間に任意の値を指定できるように改良しました。

 

ファイルの配置位置等は以前の記事をご参照ください。

q-fukutomo.hatenablog.jp

 

今回のタグを呼び出す際には

[quake x=◯ y=△ time=□]

と書いてください。

 

以下、改良後のコード

// QuakePluginComponent.cs
using UnityEngine;
using System;
using System.Collections;
using System.Collections.Generic;

namespace Novel{
    public class QuakeComponent:AbstractComponent{
        public QuakeComponent(){
            this.originalParam = new Dictionary<string,string>{
                {"x","1.5"},
                {"y","1.5"},
                {"time","5.0"}
            };
        }

        GameObject target = GameObject.Find("MainCamera");

        public override void start(){
            double x = double.Parse(this.param["x"]);
            double y = double.Parse(this.param["y"]);
            float time = float.Parse(this.param["time"]);
            iTween.ShakePosition(target, iTween.Hash("x",x, "y",y, "time",time));
            this.gameManager.nextOrder();
        }
    }
}

 

GitHubからダウンロードもダウンロード可能です。

github.com

 

このページでのソース中で水色で書かれている部分が以前との差分になります。

 

まずpublic QuakeComponent(){ };の中。

this.originalParamにx,y,timeの3つの値を受け取ります。

Dictionary<string,string>は二つの文字列を格納するコンテナで、第一要素が変数名、第二要素がデフォルト値になります。

このDictionary<string,string>をList<string>に置き換えると要素は変数名だけになり、その引数が必須になります。

今回はx, y, timeの3つの引数を持ち、それぞれのデフォルト値が1.5, 1.5, 5.0、3つとも引数を与えるかは任意、ということになります。

 

次にpublic override void start(){ };の中。

double型のx,yとfloat型のtimeに引数で与えられた値を代入します。

Dictionary<string,string>とあるようにこの時paramに入っているデータはstringクラスのものなのでdouble.Parse(), float.Parse()でそれぞれの型に変換(キャスト)して代入します。

 

最後に iTween.ShakePosition( );です。

前回は固定の値を入れていたところに今回は引数を受け取った変数を使うので、値ではなく変数名を書きます。

 

補足。

x,yの単位はピクセルではないようです。(Unity側の仕様かと思われます)

画面中心がx==0, y==0となっていて、

目安としては

・x==15.4で画像が画面右側

・x==-15.4で画像が画面左側

・y==9.2で画像が画面下側

・y==-9.2で画像が画面上側

にそれぞれ見切れるようです。

 

timeには秒数を入力してください。

 

以上です。

2016/02/05 Fri.

 

【C++】素因数分解プログラムと処理時間計測【chronoライブラリ】

C++

意外にもスパンが短く、5日ぶりです、ふくともです。

 

今回は、書こうと思ったものの先に前回の記事を書くべきだと思い一旦流した記事を。

なんとなくノリで作ってみたプログラムを晒してみます(実用性は気にしない)

作ったものはタイトル通り素因数分解プログラムで、入力された2以上の整数値を素因数分解します。

 

vectorの使い方については前回の記事で触れたため割愛します。 

流れとしては

Ⅰ. 値入力

Ⅱ. 与えられた値を構成する素数の検索

Ⅲ. Ⅱで得た各素数の指数を計算

Ⅳ. 出力

です

 

性能テストのために処理時間も計測しています(が実用性は気にしないなら不要な気も)

 

以下コード(コメントも一応添えていますが解説は後述)

#include <iostream>
#include <vector>
#include <chrono>
using namespace std;

// 素数と指数をペアで格納する構造体を定義 struct KEKKA{ int Sosuu; int Shisuu; }; int main(void) { int N; cout << "2 ≦ N="; cin >> N; cout << endl; // 入力が終わったタイミングで計測スタート auto start=chrono::system_clock::now(); if(N<=0){ cout << "ERROR"; }else if(N==1){ cout << "1^1"; }else{ // 変数宣言とか vector<int> sosuu; sosuu.push_back(2); vector<kekka> kekka; // Nを構成する素数の取得 // エラトステネスの篩 // 3以上の素数は奇数であることを利用 for(int i=3;i<=N;i+=2){ if(N%i==0){ bool flg=true; for(int j=0;j<sosuu.size();++j){ if(i%sosuu[j]==0) flg=false; } if(flg==true) sosuu.push_back(i); } } // 求めた各素数の指数を求める for(int i=0;i<sosuu.size();++i){ int M=N; int shisuu=0; for(;M%sosuu[i]==0;++shisuu){ if(M%sosuu[i]==0) M/=sosuu[i]; } KEKKA tmp={sosuu[i],shisuu}; kekka.push_back(tmp); } // 出力 cout << N << " = "; for(auto p=kekka.begin();p!=kekka.end();++p){ if(p->Shisuu!=0){ cout << p->Sosuu << "^" << p->Shisuu; // kekkaコンテナの最終要素でなければ「素数^指数」の後に「 * 」を出力 if(p!=kekka.end()-1) cout << " * "; } } } cout << endl; auto end=chrono::system_clock::now(); auto diff = end-start; auto diff_mcrsec = chrono::duration_cast<chrono::microseconds>(diff).count(); cout << "所要時間:" << diff_mcrsec << "マイクロ秒" << endl; return 0; }

 

chrono ←処理時間の計測などに使うライブラリ

本の虫: C++11の時間ライブラリ: chrono

chrono::system_clock::now() ←現在時刻の取得

→計測終了時から計測開始時を引くと処理時間が得られる

※型名が長いのでautoで指定したほうがタイプミスも少なくて無難

正式にはstd::chrono::system_clock::time_point型

chrono::duration_cast<chrono::microseconds>(diff).count() ←変数diffの値をマイクロ秒の整数値に変換
変換可能な単位などはこちらを参照↓

C言語/C++ 処理時間計測 入門

 

0以下の値が入力された場合にはERRORを出力

1が入力された場合には1^1を出力

2以上が入力された場合にはその値を素因数分解して出力

ex) 入力値:15 出力:3^1 * 5^1

 

最初のループではNの約数の内、素数であるものをsosuuコンテナに格納する

 

その次のループでは得た素数で入力値を割り、割り切れればその素数の指数を1増やす

割り切れなくなったらKEKKA構造体型の変数に素数と指数をペアで格納し、その変数をkekkaコンテナに格納する

↑格納するデータが一つでない場合には一度構造体型変数に纏めてからコンテナに格納するほうが楽

 

「入力値= 素数^指数 * 素数^指数 * 【中略】* 素数^指数」のフォーマットで出力

 

以上です。

 

プログラムそのものは置いておくとして、処理時間の計測はそこそこに有用だと思います。

2015年の記事は今回が最後になると思います、閲覧してくださった方々ありがとうございます。

それでは良いお年を。

 

 2015/12/27 Sun.

【C++】素数判別プログラムのサンプルとvectorの練習

C++

ご無沙汰です、ふくともです。

入力された値を素数かどうか判別するプログラムを組んでみたので載せてみようかと。

前に書いた配列の動的確保より簡単で「C++らしい」コードが書けるコンテナというものを利用してみようと思います。

 

以下コード

    // prime_num.cpp
    #include <iostream> // cout,cinなどを使うするために必要
    #include <math.h> // 平方根を取得するsqrt関数を使うために必要
    #include <vector> // vectorコンテナを使うために必要

    using namespace std; 
/* こう書いておくことで例えばstd::cout << "hogehoge";を
cout << "hogehoge";に短縮できる(std::が省略できるようになる)*/ bool Prime(unsigned long int n); // 判別関数 int main(void) { // 入力 unsigned long int n; cout << "調べたい値:"; cin >> n; // 入力された値を関数に渡し、返り値に合わせてメッセージを出力 cout << n << "は素数"; if(Prime(n)!=true) cout << "でない"; cout << endl;
return 0; } //判別関数の実装 bool Prime(unsigned long int n){ /* 最小の素数だけ手動で格納 最小の素数は2であり、それ以降の素数は3以上であるためiの初期値は3 nが素数でない場合はnの平方根以下に約数が存在するので、 nの平方根以下のみを調べれば良い 2を除く素数はすべて奇数なのでiは2ずつ増加させる 素数の判別方法はエラトステネスの篩を調べてみると良いと思います*/ vector<int> Primes; Primes.push_back(2); for(int i=3; i<=sqrt(n); i+=2){ bool flg=true; for(int j=0; j<Primes.size(); ++j){ if(i%Primes[j]==0) flg=false; } if(flg==true) Primes.push_back(i); } bool flg=true; for(int i=0; i<Primes.size(); ++i){ /* Primes[0]の2は例外的に格納しているため、 素数かどうかも例外的に判断する nが2でなくてnの平方根以下の素数で割り切れる場合、nは素数でない*/ if(n%Primes[i]==0){ if(n!=2) flg=false; break; } } return flg; }

 

入力されたnによって配列の必要な要素数が変わるため動的に処理してくれるvectorコンテナを利用します。

宣言:vector<型> オブジェクト名;

最後尾にデータを追加:オブジェクト名.push_back(追加したいデータ)

最後尾のデータを削除:オブジェクト名.pop_back(追加したいデータ)

素数の取得:オブジェクト名.size()

先頭要素のポインタ取得:オブジェクト名.begin()

最終要素のポインタ取得:オブジェクト名.end()

通常の配列同様にオブジェクト名[要素番号]で要素へのアクセスが可能です。

また、オブジェクトのポインタからメンバにアクセスする際には

ポインタ名.メンバ、ではなく

ポインタ名->メンバでアクセスします。

(->はアロー演算子というものです。)

 

コンテナと一緒にお約束のように使われるイテレータについてはまた後日別記事にて書こうと思います。

今回はここまで。

 

2015/12/22 Tue.

【ジョーカースクリプト勉強会】キャラ画像編【第4回】

Unity ジョーカースクリプト

はい、ふくともです。

前回の内容は基礎的な部分終わってないのにやるのもどうなんだと思いつつ公開してしまいました。

 

またまた時間は空いてしまいましたが気を取り直して第4回、キャラ画像編!(とりあえずサンプルのゲーム画面にキャラ写ってたらそれっぽく宣伝始められるねやったね)

 

用意するもの(ファイル名は適当)

・キャラクターの画像(CHARA_FACE0.png)

・表情だけ挿し替えた画像(CHARA_FACE1.png)

※キャラクター画像の背景は透過を済ませておくこと 

Assets/JOKER_GAME/Resources/novel/data/images/character/

以下に前述の画像を配置

 

以下関連タグ(引数の値はサンプル)

  • キャラクター定義:[chara_new name="CHAR_NAME" storage="CHAR_FACE0"]
  • キャラクター削除:[chara_remove name="CHAR_NAME"]
  • キャラクター表示:[chara_show name="CHAR_NAME"]
  • キャラクター非表示:[chara_hide name="CHAR_NAME"]
  • キャラクター移動:[chara_pos name="CHAR_NAME" x=N y=M]
  • 表情登録:[chara_face name="CHAR_NAME" face="1"storage="CHARA_FACE1"]
  • 表情切り替え:[chara_mod name="CHAR_NAME" face="1"]

基本的な流れとしては

  1. キャラクター定義と表情登録
  2. キャラクター表示
  3. 表情変更や表示位置移動
  4. キャラクター非表示
  5. キャラクター削除(メモリ解放、快適なプレイのため

[chara_new]の際に引数で tag="TAG" を与え、[chara_show tag="TAG"]・[chara_hide tag="TAG"]とすることで一括表示/非表示が可能

[chara_new]で選択した表情は[chara_mod name="CHAR_NAME" face="default"]で選択可能

[chara_show]、[chara_hide]の引数に time=N を与えることでN秒かけてフェードイン/フェードアウトさせることが可能

[chara_pos]同様に[chara_show]の引数に x=N y=M を与えることで水平方向にN、垂直方向にMの位置に表示させることが可能

一旦削除したキャラクターの仕様には[chara_new]で再定義が必要

 

その他の引数もあるけどとりあえず上記のものを把握しておけば支障はないはず。

http://jokerscript.jp/home/tag#chara_new ←に詳しく載っているので物足りなければこちらを。(画像の拡大率や名前欄との連携等もできます)

 

かなり雑で駆け足な解説でしたがキャラクタ画像に関しては以上。

(サンプルプロジェクト立ててスクショ見せつつ進めたほうが良かった気はしなくもなくも)

 

次回、音声編で一通りジョーカースクリプト勉強会は終わりになるかと思いますが、何か思うところがあれば随時延長戦は行うつもりです。

 

本筋とは若干ズレますが、先日ジョーカースクリプトの製作者様が改善作業をする、という旨のツイートをしていらっしゃいましたので、1ユーザーとして非常にありがたいなぁ、と。

それに伴って既出の記事も更新するかもしれませんので、よろしければ今後の記事と併せてチェックしていただけると幸いです。

 

2015/10/08 Thu.