プチコン3号&BIGまとめWiki

既知の不具合

パンくずリスト

プチコン3号で見つかった、既知の不具合の一覧です。

ソフトの性質上、またユーザーがよく訓練された人たちということもあって、「配信直後のゲームソフト」として見ればすごい勢いでバグが見つかりましたが、最新バージョン 3.5.2 ではほぼ修正されています。

おもに Twitter や Miiverse、2 ちゃんねるの報告、公式サイトから情報を集めてます。

  • Ver3.5.2以降で発見された不具合情報が掲載されています。
  • 2018/01/13 (土) 10:08:12 現在の情報です。

強制終了やハングアップ、メモリリークなどが確認される不具合

引数無しの OPTION を記述するとコンパイル時に強制終了する

コンパイル時に強制終了なので、例えすぐに実行されなくても瞬時に強制終了します。

  1. WAIT 120
  2. OPTION

特定の命令を繰り返すと恒久的なメモリリークが起こる

詳しくは下記を参照

明らかにおかしな挙動や不具合

引数無しの OUT で発生するエラーの種類がおかしい

例えば、

  1. DEF TEST OUT
  2. END

のようなプログラムを実行した際、

  1. Out of code memory in 0:1

のように表示されます。公式ヘルプでは

12:Out of code memory (コード領域のメモリー不足)

とあります。このような場合は Syntax error の方が妥当なはずです。

スプライトに SPHOME で設定した原点が SPANIM I によって変更される

次のプログラムで確認できます。

  1. SPSET 0,110 ’ドル袋のスプライト
  2. SPOFS 0,200,120
  3. SPHOME 0,8,8
  4. SPANIM 0,”I”, 60,110, 1,230 ’60秒後にコインに変わる

このプログラムを実行すると、画面中央にドル袋が現れ、60秒後にドル袋がコインに変化するのですが、変化と同時に位置が中央からズレてしまいます。

これは厳密には「原点が(0,0) に戻る」わけではなく、「SPANIM I で指定した定義番号に設定されている原点に変更」されます。先ほどのプログラムでは 230 番(コイン)のスプライトを使っていますが、これを 2278 番に変更します。2278 番は同じコインの画像ですが、2278 番のデフォルトでは原点は下中央になっています。要はSPANIM "I" でキャラ番号を変更した際、SPHOME で設定した原点が変更されてしまうわけです。

作品を見る で実行中にエラーが発生すると、次に実行したプログラムがすぐに止まってしまう

作品を見る でプログラムを実行している際にエラーが発生すると、次に実行しようとしたプログラムが実行されず、すぐに戻ってしまう問題です。

解決策

再度実行すれば問題ありません。

INPUT および LINPUT のにおける CONT 停止時の挙動に問題がある

INPUT および LINPUT で入力待ち状態にて START ボタンなどで中断したのちに CONT で再開する場合に、想定する動作をしないというものです。
具体的には、INPUTLINPUT ともに入力の再開ができないのと、両命令の挙動に差異があるということです。

解決策
  • DIRECT モードでは命令を再開できない (CONT は「プログラム」を再開する命令)
  • INPUT での入力待ち時に中断した際は、再開時に入力できずにプログラムが続く
  • LINPUT での入力待ち時に中断した際は、再開できない

ことを留意しておく

詳細

これは、それぞれのモードで以下の命令を実行して、入力待ちの状態で中断したあと、CONT で再開した場合の挙動をまとめたものです。

実行した命令DIRECT で検証EDIT で検証
INPUT ACan't continueエラーなし
INPUT A$Can't continueエラーなし
LINPUT A$Can't continueUninitialized variable used
  • これらの命令に限らず基本 DIRECT モードで実行した命令は、中断しても CONT で再開できません。
    • これは不具合ではなく仕様だと思われます。
  • INPUT では再開してもエラーが発生せず、指定された変数は変更されないまま次の命令へ進む。
  1. A=30
  2. INPUT A
  3. PRINT A

数値を入力した場合はその数値が表示されるが、中断して CONT した場合は 30 が表示される。

整数型配列のソート結果がおかしい

SORT による整数型配列のソート結果がおかしいという不具合。

詳細

たとえば、このようなプログラムで発生します。

  1. DIM ARY%[8]
  2. ARY%[0]=1<<31
  3. ARY%[1]=−128
  4. ARY%[2]=128
  5. ARY%[3]=NOT (1<<31)
  6. SORT ARY%
  7. FOR I=0 TO LEN(ARY%)−1
  8.  ?ARY%[I]
  9. NEXT

また、FOR-NEXTなどで括って複数回ソートさせると値によっては「順番が変わる」ことがあります。

解決策

なし

SmileBASIC インタプリタの不具合

確認されていません。

修正された不具合

すべての数値変数が実数として扱われる (ver 3.5.2)

A=100:PRINT A とすると、100.00000000と表示される

解決策

FORMAT$() などの文字列関数を使用して表示する

原因

プチコンBIGから仕様を引っ張ってきたために起きてしまった不具合のようです。詳しくは小林社長のツイッターをご覧ください。

メニュー 【3号】

ヘルプ

リンク

最近の更新

最近の人気ページ

オンライン情報

  • 現在同時に 9 人がこのサイトを見ています
  • このページはこれまでに 786 回、本日は 1 回、昨日は 2 回閲覧されました

ページの先頭に戻る

表示モード : [ スマホ・3DS対応表示 | クラシック表示 ]
PukiWiki 1.4.7 Copyright © 2001-2006 PukiWiki Developers Team. License is GPL. Based on "PukiWiki" 1.3 by yu-ji
ページの処理時間 : 0.025 秒 | このページの最終更新 : 2018/01/13 (土) 10:08:12 (10d) | ログイン
Copyright(C) 2011-2014 プチコンまとめWiki ◆1sxkymI8ji30