スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

Almightでスマホ用ノベルゲーム作成「22回目:Uncaught TypeError: Cannot read property '1' of null」

さて、22回目は、急きょ、エラーについてです。
おそらく、長編を作っている方なら一度は遭遇したことがあるかもしれないエラーです。
今回私が遭遇したのは、「はじめから」を選んで、シナリオファイル「一章.ks」を読み込もうとしたとき、
いくらやっても読み込まなかった状態です。
この状態、フリーズすることなく、ひたすらボタンはクリックできるのに進まない、という状態でした。
試しにデータをロードして先に進もうとすると、ロードしてシナリオを開いた直後に固まります。
しかし、Almight特有の白画面(エラー警告)は出ない。
どうなってるのかなと思ってデバッグを開いたところ、コンソールで以下のようなエラーを吐いていました。

error.jpg

ちょっとでかいですが、文字がつぶれて見えなくなるといけないのでそのまま貼り付けました。
さて、注目すべきは赤枠をつけた部分。
Uncaught TypeError: Cannot read property '1' of null

なんのこっちゃ!?
ネット先生で調べると、jsファイルのエラーだとかが出てきてさらに意味不明に。
そもそもこのエラー、何か読み込もうとしたときに例外エラーが起きたという意味。
しかしnull(中身が空)の1が読み込めんとはよくわからないものです。
何か設定し忘れたファイルか、存在しないものを読み込もうとしたかを疑い、ファイル名がおかしくないかや、
以前# Almightでスマホ用ノベルゲーム作成「18回目+α:ファイルの文字コード」
でもやっていた文字コードバグが混じっているのかと思い、全ファイルを調査。
しかし、問題はない。

途方にくれ、しょうがなく正常なAlmightのフォルダをコピーし、100行くらいをコピペしては起動を繰り返し問題個所を捜索。
すると………………

…………そこには………

「えぇーーーっ!!!」

驚きのエラーが!

さて、Almightでは構文を書く際の約束があります。
それは、構文は「@」で書き始めるか、「[ ]」で囲うかです。
察しのいい人はもう気づいたかもしれませんね。
VOIDさんは癖と言うか、見た目から感じる生理的な印象から「[ ]」派です。
さて、これは必ず「[ ]」で囲わなければいけません。
そうです。
「[ 」だけになっていた箇所がありました。
今回のエラー、ようするに何の例外エラーかというと、構文を書き始まる個所があったけど、終わりが見えなくて参照ができなくなってますよ、みたいな意味だったようです。

しかし、普通のプログラムはファイルを読み込んだときではなく、その構文に到達した時にエラーを吐いて固まるものだけど、
Almightは高性能にもファイルを読み込んだ瞬間エラー箇所があればエラーを吐いて止まってくれるようです。
こういうエラーは見つかりにくいのに、案外しょうもないことがエラーであることが多い気がします。
みなさんも、数100数1000行書いてからデバッグするのではなく、新しい変数や処理を入れたらすかさずデバッグをしたほうがいいかもしれませんね。

……えっ、ただの書きミスじゃないかって?

大丈夫、まだ人生をミスしたわけじゃないさ。

それでは、おあとがよろしいようで~。次回へ続く。
次回こそは1章を無償公開予定?!
スポンサーサイト

コメントの投稿

非公開コメント

最新記事
カテゴリ
プロフィール

VOID

Author:VOID
同人サークルSUZUMUSHIです。オリジナルノベルゲームを作っています。コミケ等で配布予定です。作品に興味がわいたら
公式サイトへ。
(・ω・)ノ

Twitter
公式Twitterです。関係ないつぶやきもしばしば。
最新トラックバック
カウンター
RSSリンクの表示
検索フォーム
QRコード
QR
RSSリンクの表示
ブロとも申請フォーム

この人とブロともになる

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。