退屈ブレイキング

ジョジョ、SCP、映画、ゲームなどの話題が中心の趣味ブログ。おおむね週一更新です。

プログラミングで大事なことは、mugenが教えてくれた。


mugenとは?

mugen

こんにちは!daimaです。
突然ですがあなたは
mugenをご存知でしょうか。

『mugen』とは1999年に
今は亡きアメリカのElecbyte社が開発した、
PC向けの、フリーの格闘ゲームエンジンであり、
2000年代中盤にネット界隈で
大人気となったソフトウェアです。

ゲーム製作エンジン黎明期の徒花


このゲームエンジンは非常に自由度が高く、商業2D格闘ゲームなどに見られる機能であれば、ほぼ全て実装できる。様々なキャラクターやステージを追加でき、アドオンで体力ゲージやキャラクター選択・タイトル画面などを変更できる。発表されているキャラクターの種類は自由であるため、ユーザーはゲーム、作品等といった既存の枠組みを超えた対戦が可能である。M.U.G.E.Nオリジナルのキャラクターも多数存在しており、オリジナルキャラクターの中には既存ゲームに匹敵するような完成度のキャラクターもいる。(wikipediaより引用)

mugenが画期的だった点は、
それまでハードルの高かったゲーム制作、
とりわけ当たり判定やバランス調整など
厄介ごとの多い格闘ゲーム製作の敷居を
一気に下げてくれた点です。

とはいえその自由度は非常に高く、
独自の簡易的な
プログラミング体系を備えていて、
変数や各種演算子、条件分岐など、
従来の2D格闘ゲームに必要な処理は
おおむね揃っています。

さらに革新的だったのが、
ユーザー間でデータを共有し、
他人の製作したキャラやステージを
簡単に自分のmugenに
組み込むことができた点。

このシステムにより、
ユーザーは好きなキャラクターを集めた
自分だけのmugenを作ることができ、
後述する対戦動画の流行や
mugen特有の
文化の発展にもつながりました。

また、製作物をネット上に公開すれば、
自分の作ったものが世界中の人々に
遊んでもらえるというロマン
は、
私を含む当時のアマチュア製作者たちの
挑戦心をおおいに掻き立てました。


ニコニコ動画の発展に合わせて人気が爆発

ニコニコ動画キャプチャ
▲ニコ動には今もトーナメント動画などが
アップされ続けている。

加えて、2006年に登場した
ニコニコ動画の存在は、
mugenの興亡を語る上で
避けては通れません。

対戦風景を手軽に配信でき、
ニコ動特有の楽しければ何でもありで、
同人的なノリを許容する土壌が
mugenのそれと完全にマッチ。

特に、ai同士の
対戦風景を流すトーナメント動画は、
見栄えのする必殺技の応酬と、
mugenならではの
ドリームマッチ要素がうけ、
最盛期には何百という
キャラクターが集うトーナメント動画が
連日のように投稿されていたものです。

また、製作者にとっても、
紹介動画や製作過程をアップすることで
素早く広範な意見を得ることができ、
製作物のクオリティアップや
モチベーションアップに欠かせない存在でした。


daimaが製作にのめり込むまで

対戦風景キャプチャ
▲ジョナサン&ツェペリ VS 岸辺露伴&吉良吉影
mugenならこんなありえない対戦も実現できた。
(※上記4キャラは全てdaimaの過去の製作物)

次第に製作へ興味が映る

そしてそのうち私は
ただ遊ぶだけでは飽き足らず、
既存キャラのコードを弄ったりする中で、
だんだんと自分でも
キャラを作ってみたい
という欲望が
募っていきました。

元来ゲームに目がなく、
加えて創作活動にも興味大。
しかも私の場合、具体的に
作ってみたい対象も明確でした。

それは、かの名作対戦格闘ゲーム
ジョジョの奇妙な冒険 未来への遺産
のシステムで、ゲーム内には登場しない、
原作3部以外のキャラクターを作ること。

これは、当作を遊んだことのある
原作ファンであれば、
誰もが一度は夢見た空想であり、
それを自分の手で実現できる可能性に、
当時は心底ワクワクしたものです。

(後に、ジョジョASBがその夢を、
なんとも微妙な形で
叶えてくれたのはまた別のお話。)


右も左も分からない最初のキャラ製作

しかし、いざ製作を始めようにも
何から手をつけて良いかわかりません。
いくらmugenでも、制作未経験の素人が、
いきなりまともなキャラクターを
製作できるわけがないのです。

そこでまず私がとった行動は、
無限○学校などの
学習サイトを周り基礎を身につけること、
そして、同じ志を持ったものが集まる
ネット上のコミュニティを覗くことでした。

学習についてはとにかく一歩一歩。
変数の概念や画像の登録法など
トライアンドエラーの繰り返しで
基礎を身につけていきました。

コードの書き方を身につける上で
最も効率的だったのが、
既存キャラのコードを読み、
次に実際に手を動かして
それを改変することです。

習うより慣れろというのは
よく言ったもので、とにかく
手を動かして体感してみることは
趣味でも仕事でも変わらない
最短最強の学習法です。

また、上手な人のコードを読み、
コードの書き方や変数の節約法など
様々なテクニックを模倣すること
また非常に有効でした。
(mugenでは使用できる変数の数に
制限があるのです)

この盗んで覚える学習法は
mugenに限らず、今私が仕事の
Web製作で利用しているような
プログラミング言語の学習にも有効で、
これはmugenでの経験が
今の実生活に活きたなぁと
思うところの一つです。


ドット絵を描くことについて

mugenで製作を行う上で
私が通らなければならなかった
困難の一つがドット絵の作成でした。

昔から絵は好きだったものの、
まともなドット絵を描いた経験はなく、
はじめのうちはプロの描いた
ドット絵を見て、それをD-PIXEDという
フリーのドット絵製作ツールで
真似して描く
ことを
ひたすら繰り返しました。

また,当然ながら
格闘ゲームのドット絵は
一枚で完結するものではなく、
全体の動きを考えて
一動作に複数のドットを
描かなければなりません。

例えばジャンプ動作であっても、
綺麗な動きを見せたければ
上昇→下降→着地までで
大体15枚前後のドット絵が必要です。

しかも、滑らかな動きを表現するには
足や腕といったパーツの動作の流れや、
服や髪にかかる重力なども考えねばならず、
「アニメーターってすげぇな…」と思いながら、
悪戦苦闘しつつ一体のキャラにつき
100枚は軽く超える量の
ドット絵を描いていました。

と、今にして思えば
なぜそんな苦行を頑張ったのかと
思わない点もないのですが、
これはこれで、人体の構造を
意識しながら描く
ということを
学ぶことができたので、
画力を上げる上では
良い経験にはなったと思っています(笑)。


ネット上の創作コミュニティについての一考察

私は基本的になんでも
自分でやりたいタイプなので、
所謂コミュニティについては
あまり有効活用できていたとは言えません。

ですが、某所のスレッドなどを
定期的に覗いたりする内に、
いくつか面白い発見がありました。

それはまず、口で
アイディアを出す人は沢山いても、
実際に手を動かして
何かを作ろうと行動する人は
一握りしかいない
ということです。

割合的にはアイディアだけの人が30人いて
実際に行動する人がやっと一人
いるかどうかといったところでしょうか。

実のところ、当時私が
キャラ製作に踏み切った理由の一つはに、
こうした話し合いばかり、あるいは
ちょろっと一枚ドット絵を
描いただけで盛り上がり、
それ以上先に進まないような
スレッドの状況にやきもきして、
なら俺が不言実行してやるぜ!
という心持ちになった点がありました。

この時の経験は今も活きていて、
何かに挑戦するときは、
人の後をついていくのではなく、
まず自分から率先して動くという、
現在の私のスタンスにも繋がっています。


ついに最初のキャラクターをリリース。しかしその評判は…

プログラムの文法を覚え、
製作用のツールを探し、
ひたすらドット絵描くなど紆余曲折を経て、
製作開始からおよそ3ヶ月ほどで
なんとか最初のリリースに辿り着きました。

しかし、そのクオリティは
正直お粗末なもので…

  • ・グラフィックは既存キャラの描きかえ
  • ・しかもドット絵が下手で見た目がキモい
  • ・システムもほぼ既存キャラの流用
  • ・バグ、永久ループてんこもり

という、中国版ミッ○ーも驚きの
粗悪なパチもん状態。

事実、Aviutlで作成して
ニコ動にアップした紹介動画には、
「グラがね…」「こんなのイラネ」
「永久コンボのバーゲンセールだ」

などの厳しいコメントが散見されました。
(興味の湧いた方は「mugen」「アバッキオ」で
検索してみてください…)

しかし中には
励ましのコメントをくださるかたや、
冷静に改善点を指摘するコメントもあり、
また、良し悪しはともかくとして、
自分の作ったものを初めて他者から
評価してもらえた嬉しさ
もありました。

自分のサイト
▲昔、製作物紹介のために作ったサイト。
これもHTMLとCSSを苦労して勉強し作ったっけ…

こうして私は
mugen製作者としてデビューし、
2014年に活動休止するまで
定期的にキャラをリリースし続け、
最終的には2014年に製作を終えるまで
15体以上のキャラを
リリースする事となったのです。


なぜここまでmugenにはまったか

しかし、あらためて振り返ってみると、
自分でもよくここまで
作ったなぁというのが正直な思いです。

バイトや学校の勉強と並行しつつ
1体キャラを製作するまでには、
2ヶ月から3ヶ月以上はかかるわけで
それを15体分も続けるなんてことは、
自分でもあまり健全な時間の使い方では
なかったと思います(笑)

実は、自分がそこまで
mugenに熱中した理由には、
例えば前述したようなファン心理、
あるいはネットで公開した時の反応だけでなく、
もっと大きな別の要因がありました。

それは、リアルで共にmugenをプレイし、
またお互いに製作者として
意見を交換し合えた兄弟の存在です。

血は争えぬといいますが、
弟も私に少し遅れて製作を始め、
兄弟で同じくmugen製作者として
活動していた時期がありました。

モニター越しに他人から反応をもらうのと、
リアルで身近な人間から意見をもらうのとでは
やはり得られる実感の重さが違います。

厳しい指摘を出し合い、
意見がぶつかることもしばしばでしたが、
それはそれで得難い経験でした。

またこれはmugenに限った話ではなく、
あらゆる創作活動において、
客観的な評価を下してくれる
他者の存在はとても大きいものです。

他者を介さず、
自分自身で完結しまう創作は、
どうしても独りよがりで
公平な視点を欠いたものになりがちです。

mugenの製作に取り組んで
自分にとって一番ためになったのは
もしかしたらそういう視点を
学べたことだったのかもしれません。


なぜmugenをやめたか

mugen自体の衰退

実に5年間もハマったmugenの製作でしたが、
それも2014年で休止しています。

その最大の要因は、
mugen自体の人気が
衰退してしまったことでした。

ブームの発信地だった
ニコニコ動画の勢いが落ち、
MMDやUnityなど、他の
魅力的な創作活動の選択肢の増加、
そして2D格闘ゲームという
フォーマットの限界といった
複合的要因によって
必然的にmugenから
人が離れていってしまったのです。

人がいなければ
せっかくキャラを作っても
今までのような反応を得られず
製作者としても
モチベーションは下がります。

また、製作元のElecbyteの廃業
大手キャラ紹介サイトの
1日1キャラの更新停止もこの時期で、
この二つのニュースを知った時、
mugenはもう終わったのだな
感じたものでした。


家庭の事情

この時期になると私も弟も、
今までのように好き勝手
遊んでいるわけにもいかず、
mugenに割ける時間は
必然的に減少しました。

また、メインPCが
windowsからmacに代わり、
mugenを起動する機会自体が
ほとんどなくなってしまったことも
大きかったと思います。


そのほかMugenの四方山話

mugenにおけるai

猫も杓子もAIブームの昨今。
せっかくですので、
mugenのAI周りのお話もしておきます。

mugenのaiの仕組みは単純で、
『条件(トリガー)を満たしたら、
指定の行動(ステート)へ移動する』

この単純な基本の
組み合わせで成り立っています。

mugenのフレームレートは1F=(60/1秒)。
つまり、60/1秒ごとにプログラムが
対戦相手と自分の距離、ステート状態、
残りのゲージ数などを判断して、
あらかじめ組まれたプログラムに従い、
次の行動を決定しているわけです。
(その意味では、現在流行りの
自己学習型AIとは性質が違います。)

例えば、相手の牽制技に差し込みで
昇竜拳を出すような動きをさせたい場合は、
敵のステートがA(攻撃)で、
なおかつ敵の行動時間が20Fより大きく、
さらに自分が行動可能で地上状態であり、
敵との距離が0以上40以下
という条件を満たすならば、
技ステートXXX番の
昇竜拳」に移行する
といった具合に
プログラムを組みます。

ただ、このままだと条件を満たした場合、
必ずステート移行することになり、
それでは動作が単調になりすぎるため、
実際は乱数で確率を出して、
他の行動と割合で指定する場合がほとんどです。

優れたAI同士の対戦動画を見ると、
崩しやブロッキング、受身狩り、
あるいは魅せプレイなど、とても
複雑な判断を行なっているように見えますが、
それらも元を正せば、条件と行動という原子、
それに確率というスパイスを加えて
成り立っているわけですね。

と、このように
原理自体は単純なAI製作ですが、
ゲームシステムもバランスも
統一性のないmugenにおいて、
常に安定して動けるaiを作るには、
非常に複雑で地道な検証と
作り込みが必要となります。

また、対戦動画を盛り上げる上では
ただ勝つだけでなく、
(そういう趣旨の動画もありますが)
対戦相手と自分、お互いの
良さを発揮できるような
所謂魅せについても考えねばならず、
これがなかなかどうして奥が深いのです。

AIの出来次第で
無名キャラが一躍注目を集めることもあり、
また自分の作ったAIが、
名勝負を生み出した時など
喩え難い無上の喜びがあり、
自分にとってai製作は
キャラ製作に並ぶmugenの楽しみの一つでした。


海外の製作者からメールを貰った

mugenにはアメリカや
ブラジルなどにもユーザー、
製作者が数多くいて、
一時期私も海外のmugenユーザーと
メール上でやりとりがありました。

中でも嬉しかったのは、
海外のジョジョファン、
かつMugen製作者
という
ツチノコより希少な方と出会って、
その人の製作の相談に乗ったり、
ドット絵を書いてあげたりしたことでした。

当時は人工知能導入前で
性能がイマイチだった
Google翻訳を使って、
カタコトの英文メールで
やり取りしていたことを懐かしく思います。

また、海外にも所謂クレクレ君がいて、
しかも大抵、崩し文字を多用した
読み辛い英文メールを送ってきやがります。
(文章の書き方って、人柄がもろに出ます)

こういう手合いはスルーが万国共通の
もっとも賢い対処法ですね…


mugenと著作権の話

最後に、これを語るのは
製作者だった身からすると
なかなか心苦しいことなのですが、
mugenは著作権の観点からし
他の同人活動と同じかそれ以上に
ブラック寄りのグレーです。


インターネット上で公開されているキャラクターやステージ、BGMなどのデータには、既存のゲーム・アニメ作品などのグラフィックデータ・音声データから抽出して製作されたものが多数存在しており、多くのサイトではそれについて言及せず、多数のユーザーがそれを意識せずにプレイしている。wikipediaより引用)

ウィキ先生がおっしゃる通り、
mugenの製作物の多くは
企業の著作物の流用で成り立っており、
特に既存ゲームの再現系キャラは
グラフィックや音声を元のゲームを
吸い出して作られています。

そんなmugenが
曲がりなりにも
存在していられたのは、
権利を持つ企業側が
黙認していたためで、
モラルの面からいえば
決して褒められた存在ではないでしょう。

こうしたどこまでいっても
アングラから離れることのできない
mugenの性質もまた、
mugenの衰退に少なからず
影響したものと思われます。


最後に

製作活動で得たもの

  • ドット絵の画力
  • プログラミングの基礎と興味
  • HTML、cssの基礎
  • 楽しかった時間


製作活動で得た考え方

  • どんなことでも懸命に打ち込んだ経験は身になる
  • 上達するにはまずは模倣から始める
  • 良い創作には他者の視点が欠かせない
  • 好きこそものの上手なれはガチ
  • 悩むよりまず行動


以上で、私と
mugenについての昔話を終わります。

あと、これは杞憂かもしれませんが、
万が一当記事でmugenの
製作にご興味を持ち、
なおかつゲーム製作を学びたい
という方がいましたら、
その場合はmugenよりも
同じくフリーのゲーム製作環境である、
Unityをおすすめします。

unity3d.com

なぜならUnityであれば、
格闘ゲーム以外にも様々なジャンルの
ゲームを作ることができるうえ、
なにより企業も採用しているソフトなので、
学んでおけば将来の就職にも役立ちます。

また、mugenと違い、
著作権的にも悪いイメージがないので、
人に製作歴を話すのが
憚られるということもありません。(笑)

賛否両論あるmugenですが、
私としては、何かを作る喜び、
そしてそれを人に
遊んでもらう喜びを教えてくれた
忘れ難い存在です。

今後、mugenで何かするということは
ないとは思いますが、
そこで学んだことは
今後も役立てていきたいですね。

それでは、最後まで
私のしょうもない昔話にお付き合い頂き、
誠にありがとうございました。

それでは、またの機会に〜♪