ここからさらに学んで行く為に

最後という事なので、このシリーズが終わったあとにやりたい事や、参考になりそうなサイトなどについて簡単に書いておきます。

とにかく使ってみよう

このシリーズで、最初の段階でプログラムに関して知っておきたい事は十分以上に知った事になると思います。

この次のステップとしては、

  1. プログラムを実際に書いてみる事
  2. ツクールMV自体を知る事

の二つが必要です。

最終的にはやっぱりツクールMV以外でプログラムをしてみよう、というのでも良いようにこのシリーズは作ったつもりです。
ですが、最初はやっぱりツクールMVで使ってみるのが、このシリーズの後としてはスムーズだと思います(特におまけの三回はそれを意図しているので)。

この二つを同時に進める一番良い方法はやはり「実際にゲームを作ってみる」だと思います。

このシリーズをここまでやる時点でも普段の生活の中に結構な時間を頑張って取らないと行けなかったはずです。 突然前触れなく始まったこのシリーズをここまでやるのは、相当大変だったと思います。 本音を言えば、なんのかんのと言いつつ第六回あたりで挫折してしまう可能性も相当高いだろうな、と思って作っていました。 という事でこれを書いている時点でもおまけの第一回まで来ている、というのは、私の失礼な予想を超えた、相当頑張った結果だと思っています。
この上さらに明日からゲームを作り始める、というのはなかなか難しいでしょう。

ですが、少し日があいても良いので、実際に作り始めていくのが次のステップとしては是非やりたい所です。
その中で「ここを直したい」というのがある程度出てから、 本シリーズをもう一回復習し、さらに直したい所を調べながらいじっていく、というのが理想的な進め方だと思います。

復習はそんなには時間がかからないと思います。

復習はたぶん第四回目くらいからでいいし、百本ノックとかも飛ばせば良い。 何よりこのシリーズをやってて一番時間がかかるのは「詰まってた」時間だと思います。 この辺わからねーなぁ、と詰まってた時間。 でも復習だと課題は解かないで答え見ていくだけでも良いし、一周目よりは詰まる場所はずっと減っているはずなので、 たぶん3~4日くらいで全部読み直せるんじゃないでしょうか。 課題を全部解きなおして説明も完璧に理解しようとすればもっと時間はかかるでしょうが、だいたい分かってればいいんですよ、こんなのは。 完璧を目指さず8割分かった、を目指すものです。

実際に直したい、と思う事の中には、残念な事に実現が大変な物もあるはずです。中には今の実力では直せない、という事もあるかと思います(これはどこまで行ってもある)。 やりたい事と簡単な事が一致してくれる程世の中甘く無い。
ただ現時点の実力で直せる事も相当多いはずで、幾つかは実際に直せる物もあるはずです。 本シリーズが普通の入門よりも難しい事までやるのは、その辺の現実をある程度考慮に入れて考えた結果でもあります。

そうやってやりたい事を調べながら直していくと、「こういう事を変えたい時はこの辺いじれば良いのか」とだんだんとアタリがつくようになると思います。 また、現在の知識で出来る事と出来ない事の区別もついてくるようになると思います。 そこまで行けば中級者。そこまで行けたらいいな、と思って本シリーズも作りました。

もしゲームを作らないにせよ、やはり次のステップは実際に使ってみる、という事だと思います。 とにかく使い方を決めて、調べながら使ってみる。 プログラムの勉強はここまでで既にかなりの所までやったので、次は使ってみるのが一番です。 プログラム言語は、ある程度使ってみないと分からない事も多い。

JavaScriptはいろんな用途に使える言語なので、ツクールMV以外でもいろいろ出来ます。 自分のオススメとしてはWSHとOLEですが、自分のやりたい事をやるのが一番です。

また、ゲームなりwebなり、とにかく電子の世界で多く時間を過ごす我々にとっては、 プログラム言語を一つちゃんと知っているか知らないかの差は結構大きいと思います。 世の中の大抵のプログラムの解説は、「何か一つ別の言語を知っている」という前提で書かれている物が多いので、 どれか一つを知らないと難しくて読めない。

このシリーズを一通りやれば、最初の一つをちゃんと知った、と言える状態になります。
ここまで来たら、ツクールMVやJavaScript以外の、これまで手の届かなかった多くの入門解説も分かるようになったはずです。

このシリーズでやらなかった事

この先に進んで行くにあたり、このシリーズでやらなかった事も簡単にまとめておきます。

この入門では、プラグインで見かける範囲のうち、以下の事を取り扱っていません。

  • 文字列周辺(データ型や数値との違いなど)
  • スコープ
  • for, while
  • ArrayのforEach
  • 自分でサブクラスを作るやり方

最後のサブクラス以外は難しい訳では無いのですが、ある程度触った後に必要になった所でやる方が良いだろう、と思って説明していません。

この辺の事が出てきたら「あ、やってない奴だな」と思って、逃げるなり他の解説を読むなりしていただけたらと思います。

ある程度良く当たるようになってきたら、次のステップに進む準備が出来たという事なのであとで紹介する中級か上級のプログラムの解説サイトを見るのが良いでしょう。 難しい事は大してないので、そこまで行けば結構すぐ覚えられるはずです。

参考になりそうなサイト

以下では参考になりそうなサイトを幾つか挙げます。

ツクールMVのプラグイン関連

プラグイン入門サイト

これは自分でググって適当に良さそうなの探してください。分かりやすいと自分が思う奴でいいと思います。 おまけの第一回や第二回で参照したプラグインの解説をしている入門サイトでも良いと思いますし、他のでも構いません。

ツクールのやりたい事ベースの解説

プラグインの入門サイトくらいの内容を理解したら、次はツクールMVの中身を理解していく、という事が必要になるはずです。

まずはやりたい事ベースで調べていくのが良い。ググってみるのも良いのですが、いろいろまとまっている所を軽く目を通しておくと、あたりがつきやすいと思うので最初に軽く読んでおくのがオススメです。

そんな目的としては、terunonさんの卑弥呼テクニックは、実際にどんな事がどういう感じで出来るのか、という事を知るのに良い記事だと思います。

また、おまけ第二回で題材にしたプラグインの配布元でもある「RPGツクールMVで感動ものを作る。」のサイトの自作ゲーム専用プラグインを用意しよう!も、同じ用途に良いと思います。

この辺のサイトを見たり、分からない所はググったりしながらやりたい事をやっていくのが理想です。

ツクールの内部解説

さて、ある程度作業を進めていって理解が進んだら、そのあとは全体的な説明を読んでみると理解が深まります。 これは最初にやっても仕方なくて、ある程度やったあとでやりましょう。

戦闘の解説は、Qiita:Game_action徹底解剖が分かりやすかったです。 これ書いている人、良く見たらおまけ第三回で題材にしたプラグインの製作者であるSigureyaさんですね。

この方のプラグインはコードもシンプルで不必要に面倒な事をしないし、解説も難しい知識をあまり必要無くても理解出来るように書いてあるし、 勉強に良いと思います。

このサイトの他にも幾つか同じような趣旨の内部解説のサイトはあります。 難易度は様々で、中には不必要に難しいのもあるので、 自分のいじりたい所に合わせてググって、分かりやすそうなのを探して読んでみるのが良いと思います。

ただプログラム入門者は、こういった物を見るよりも前に、やはり最初はある程度自分で書いて、経験を積むのが先です。 それから読む事で分かる、そういうものです。

JavaScriptの中級以上向けサイト

JavaScriptで分からない事が増えてきたら、以下のサイトなどで調べるのが良いでしょう。二つ程紹介しておきます。

MDNのJavaScriptガイド

このMDNのサイトは網羅的に書かれていて、このサイトで見つからない事は無いといっても過言では無い。 ググった時もMDNのサイトが引っかかっていたらまずそれを読むのがオススメな位、解説の質も高いです。

このMDNのサイトは、今回リンクで紹介した上のガイド以外も良く書かれています。 例えばチュートリアルの中級編と上級編ではトピック別に詳しい説明があるのですが、 この辺の内容は扱っているトピックが気になるくらいのレベルに到達したらオススメのサイトになります。 「算数で挫折したJavaScript入門」で「扱いません」といった物は、だいたいこの辺に解説があります。

ただ説明は短いので上級者向きです。ある程度書く経験を積んだ後に読みましょう。

次のバージョンのJavaScript
JavaScriptは2015年に大きなバージョンアップがありました。これをES2015とかES6と呼びます。ES2015とES6は基本的には同じ物です。
 
2018年現在、だいたいはES2015へのアップデートが終わった状態で、もう古いJavaScriptを使う必要はほとんど無いというのが現状ですが、 一つ我々としては大きな例外があります。それがツクールMVです。ツクールMVは一つ前のバージョンのJavaScriptしか(基本的には)使えません。
 
ここで紹介している中級以上向けのサイトはどちらもES2015向けとなっているので、一部の記述はツクールでは使えなかったりします。 良く出てくる範囲ではlet, const, class, アロー演算子, for ofなどは前のバージョンのJavaScriptにはありません。
 
たぶん中級者になったころにはツクールの新しいバージョンなりなんなりでES2015が使えるようになっていると思うので、 無理に古いバージョンの解説を探したりはせず、現在一番良さそうな物を紹介しました。
 
本シリーズは入門者向けなので幾つかあえて解説してない事がありますが、そのうちの多くはES2015で大きく変わるから、という事情です。 本シリーズで説明している内容はES2015でもそのまま重要な物と、ES2015では変わってしまうが今どうしてもとりあえず作業するのに必要だ、 という物に絞って解説しています。 しばらく本シリーズの内容で経験を積んで、次のステップに進む頃にはES2015になってるはず、というのが自分の想定です。 という訳でその時に新しい知識を学ぶのがオススメです。

ECMAScript 2017時代のJavaScript入門書

2018年5月現在では幾つかの項目が書きかけですが、内容的にはそこらの書籍よりもずっと良く書けています。 MDNの説明よりも知らない人向けにちゃんと書かれていて、見た事が無いトピックを新しく学ぶ人にも理解出来るように書かれています。

ただタイトルは入門書ですが、レベルとしては中級以上の内容だと思います。 こちらもある程度コードを書いて分からない所が貯まってきてから見るのがオススメです。

また、こちらのサイトは、コラムでも説明したES2015とそれ以前の機能のどちらかなのかが明示されているので、 解説されている機能がツクールMVで使えるかどうかを知る事も出来ます。

おわりに

さて、以上で十一回+おまけ三回に渡る、「算数で挫折した人向けのJavaScript入門」が終わりました。

これを書いている時点ではもともとのターゲットである算数で挫折した人はまだおまけの第一回をやっている所なので、最後までたどり着けるかは分かりません。 ただおまけの第一回までたどり着いただけでも大したものでしょう。第八回と第九回を乗り越えられたら相当な物だと思います。

このシリーズは私が花粉回避の為に沖縄に居た頃始めました。 沖縄にいる間に終わるかなぁ、と思ったけど、3週間くらいあふれてしまいましたね。 書き始めは履歴を見ると3月1日で、今が5月11日なので約2.5ヶ月でしょうか。うへぇ、結構書きましたねぇ。
ここを書いている段階では「おまけ第三回」の最後の推敲が終わってないのでまだ完成してませんが、あと数日以内には完成すると思うので、 2.5ヶ月、という事で良さそう。

だいたい当初考えていた内容は全部説明出来たかな、と思います。

当初考えていなかった事というと、

  1. 配列と辞書の百本ノック
  2. タカビーなお嬢様とセバスチャン
  3. 英語の解説

の3つはフィードバックを元に考えた内容です。なかなか良い物になったんじゃないかな、という気がします。 修道女ちゃん動かしたりとかはちょうど良い回を作れなかったので出来ませんでしたが。

プログラムは知識があってもすぐには書けません。 いろいろ苦労しながら書いていく過程で学ぶ事も多く、そういう点では「このシリーズを全部終えたら、その場で思い通りの戦闘システムが自由に作れる」とか、 「どんなメニューも思いのまま」とは行かないでしょう。

ただ、書き始めるのに必要な段階よりは大分上の所には居ると思います。 これだけ分かった状態から始めると、普通の人よりもずっと進みは良いんじゃないでしょうか。

このシリーズの内容を一通り消化できていれば、プログラムの知識的な物はかなりな物なんじゃないかな。

ここまでやった読者の皆様も忙しい毎日の中時間作ってやって大変だとは思いますが、 作る側の私も相当大変でした… いやぁ、お互い良く頑張りましたよ、ほんと。

勉強するのと、それを実際に使って物を作る所の間には大きな壁がある所で、 それはツクールをある程度触った事がある皆さんも重々承知している所とは思います。

ただ、実際に物を作る所の障害のうち、プログラムが分からない!という部分に関してはかなりの程度改善出来たんじゃないでしょうか。 他の障害を乗り越えるのは結局は皆さまの頑張りに期待する所ですが。

本シリーズが実際に物を作っていく手助けになる事を祈っております。きばって行きましょう!