ほとんど個人的意見ですが、少し突っ込んだ考察です。
まずそもそも、どうして変数は宣言しなくても使えるかというと、新しい名前が出てきたらプチコンが気を利かせて「お、新しい変数だな?」と判断することができるからです。
配列でも「新しい」事は変数と同じように判断できますが、配列はそれに加えて「サイズがいくつの配列なのか」という情報が必ずいります。
暗黙のルールを作るなら「0個」が一番自然ですが、それだと
BOX[0]=1
など、どのように書いてもエラーになるので意味がありません。
前作ではこれを、「10個」という暗黙のルールを作っていたから、宣言しなくても使えたようですね。
0そうだね プレイ済み