プチコン3号

『プチコン3号 SmileBASIC』（ぷちこんさんごう スマイルベーシック）は、スマイルブームより2014年11月19日に配信されたニンテンドー3DS用ソフト。プラットフォームをニンテンドー3DSへ移した『プチコン』シリーズ第3作週刊ファミ通 2014年8月21日・28日合併号 pp.38-39.。3DSのスペックに合わせて開発環境やBASICの機能が強化されている。2015年10月15日から海外でも配信を開始したWii U版『プチコンBIG（仮）』の開発が決定!　3DS版『プチコン3号 SmileBASIC』との上位互換を実現。

ティザーサイト現在は閉鎖されているが、アーカイブが残っている。また、ティザーサイトで公開された動画は、現在でもYouTubeの公式アカウントに残っている。で初めてタイトルが明かされた。

 強化された機能 
プチコン3号で強化もしくは追加された機能の詳細を記す。

3D対応
縦横のX,Y座標に加え、奥行きをZ座標(-256≦Z≦1024)で定義するプチコン３号 - スペック。数値が大きいほど奥に表示されるが、ポリゴンを使用することはできず、実際の奥行きはもっと粗い段階制になっている。
高解像度化
ニンテンドー3DSの画面サイズに合わせ、下画面が256×192→320×240、上画面が256×192→400×240と大きくなった。
特殊入力機器対応
 マイク・カメラ・ジャイロセンサーなど。
 マイクは、MICSTART命令で入力を受け、配列で保存することができる。
 ジャイロセンサーは、速度、角度を数値で取得することができる。
 カメラは、元ティザーサイトの動画では紹介されていたが、実際は実装されていない。
拡張スライドパッド対応
ニンテンドー3DSの周辺機器である「拡張スライドパッド」にも対応しており、標準搭載されているスライドパッドと同様の内容方向、角度、移動量が取得できるを拡張スライドパッドから取得可能。Newニンテンドー3DSのCスティックとZL、ZRボタンにも対応している。
プログラムの折り返し表示
編集時、横に長いプログラムを書いても画面端で折り返されるようになった。オプションで、前作のようにどんどん右にスクロールする形にも設定できる。
単語の色分け
命令・変数・関数などでプログラムが色分けされる。配色はオプションから自由に設定できる。
編集用メモリの増加
999,999行まで対応した旧作は9,999行までだった。さらに、一行あたりの文字数制限がなくなった旧作は100文字までだった。いずれも空メモリに依存する。
編集機能強化
Undo・Redo機能や複数行・一部分のコピー・アンド・ペーストに対応している。
命令のヘルプが説明書から独立
今作では説明書を開かなくても、HELPボタン (下画面右上、青色の「?」ボタン) から入力中の命令の説明をすぐに読むことができるリファレンスが搭載された旧作は命令のヘルプを読む際に説明書を開く必要があった。
SMILEボタン
編集中のプログラムを破壊せずとも、別のプログラムを実行可能なボタン。デフォルトで設定されているプログラムは「SMILEツール」。スマイルボタンに割り当てるプログラムは変更可能で、オプション画面から好きなプログラムに変更できる。
SMILEツール（ダイレクトお絵かきツール）
SMILEボタンにデフォルトで設定されているツール。
BGM(内蔵の曲)やBEEP(内蔵の効果音)の確認をその場でできる。また、キャラクタやグラフィックや波形などを描く時、専用プログラムを読み込む必要なくお絵かきに移れる旧作は専用のプログラムを読み込む必要があった。
同時編集（マルチプログラム）
ロードやセーブを気にすることなく、SLOT0〜3に、4つまでプログラムを開いておける。一つのスロットのプログラムを実行している間に他のスロットのプログラムが破壊されることもない前作は1つしか開けなかった。
ユーザー定義関数
プログラムSLOTを超えて利用可能なユーザー関数を定義できる。(他のSLOTで使用するにはUSE命令で使用可能にする必要がある)
関数の内容について、既存の命令や関数などを用いて定義し、返り値をRETURNで定め、DEFまたはCOMMON DEFとENDでそれらを挟む。
ユーザー命令
プログラムSLOTを超えて利用可能なユーザー命令を定義できる。(他のSLOTで使用するにはUSE命令で使用可能にする必要がある)
命令の内容について、既存の命令や関数などを用いて定義し、DEFまたはCOMMON DEFとENDでそれらを挟む。
プロジェクトフォルダ
前作までは「フォルダ」の概念がなかったが、今作は1階層の「プロジェクトフォルダ」内にファイルが入る。ただし、作業の為のプロジェクトはPROJECT命令かオプションから一つだけ設定し(初期設定は”[DEFAULT]”フォルダ)、BASICではその中からファイルを探し出したり、書き込んだりする。
「作品を見る」では、作業用のプロジェクトの設定にかかわらず、プログラムを実行したプロジェクトフォルダ内でファイルの探し出しや書き込みが行われる。たとえば、作業用のプロジェクト設定が「[DEFAULT]」(初期設定)で、「作品を見る」から「SAMPLE」というプロジェクトフォルダ内のプログラムを実行し、プログラム内でファイルの保存がある場合は「SAMPLE」フォルダ内に書き込まれ、「[DEFAULT]」フォルダには書き込まれない。
ユーザー作品のサーバー管理
前作までは作成したプログラムの共有はローカル通信やQRコードを利用していたが、今回はスマイルブームが用意したサーバーを経由しての共有となる。公開するプログラムを受け取る側は「公開キー」と呼ばれる文字列を入力して受け取る仕組みとなる。
サーバーとのプログラムのやり取りにはニンテンドーネットワークIDが必要。また、一つのニンテンドーネットワークIDにつき10(有料会員は100)個のスロットがあり、一つのスロットには一つのプロジェクトフォルダまたは一つのファイルが入る。そのため、プロジェクトフォルダの中にファイルをたくさん入れて公開すると、結果的には多くのプログラムを公開できることになる。また、有料会員にならずとも、3号とBIGを同一アカウントで使用することでスロットが20まで拡張される。
ワイヤレス通信
最大4人までワイヤレス通信が可能。
DETUNEの音楽ソフト(KORG_DSN-12)とのリンク

それぞれのソフトに相互リンクできる機能が搭載されているわけではないので、プチコン側でリンカを組んでサウンドで同期させるという方法が取られた『DSN-12』敗れたりぃッ！　図ったな『プチコン3号』ッ!!　“DETUNE VS SMILEBOOM サウンド対決2”リポート【CEDEC 2015】。
処理高速化

4Gamer記事［TGS 2013］北海道IT推進協会ブースにこっそり展示されていた，ニンテンドー3DS用プログラミングツール「プチコン3号（仮称）」を見てきた - 4Gamer.net公開時点でもmkII比で2倍。10倍を目標に開発していた『プチコン3号 スマイル ベーシック』BASICへの愛から生まれた“奇跡のソフト”その由来を開発者に聞いてみた。
なお、Ver.3.3.2現在、mkII比でニンテンドー3DSは3倍程度、Newニンテンドー3DSは10倍の速度となっているので目標は一応達成されている模様。
スクリーンキャプチャ
Ver.3.6.0で追加された機能。SELECTボタンで撮影できる。

 弱化及び廃止された機能 
TALK機能の弱化
前作のプチコンmkIIでは、音声合成エンジンとして、トモダチコレクションなどでも採用されているRuby Talkが使われていた説明書よりが、Galatea Talkにエンジンが変わった。これに伴い、話者の設定、抑揚や音程などの設定ができなくなり、男声で単純にしゃべるだけとなった。しかし、アルファベットや数字、一部の記号はそのまま読み上げられるようになり旧作では、疑問符(?)や感嘆符(!)以外はエラーになった、若干肉声に近いようになった。
現在、話す速度は読み上げさせたい文字列中の<s(値)>(0-65535、デフォルト32768 値が大きいほど速い)、声の高さは読み上げさせたい文字列中の<p(値)>(0-65535、デフォルト32768 値が大きいほど高い)、声の大きさは<v(値)>(0-65535、デフォルト32768 値が大きいほど大きい)で設定可能。
SENDFILE/RECVFILE命令(ソフト同士でのファイルの送受信)・QRコードでのファイルの共有の廃止
代わりに、前述したとおりインターネットを通してプログラムを「公開キー」で共有できるようになっている。

バージョン
Ver.3.0.0 (2014年11月19日) :初版。
Ver.3.0.1 （2014年12月17日）:Ver.3.0.0の不具合修正版だが、HELPボタン（前述）を押すと強制終了する不具合が発覚し、配信当日に配信中止となったプチコン３号 - 更新データのお知らせ。
Ver.3.0.2 (2015年1月7日) : Ver.3.0.1の不具合修正バージョン。新たな要素の追加はない。
Ver.3.1.0 (2015年3月4日) : 不具合修正や新たな命令の追加など。
Ver.3.2.0 (2015年6月17日) : 有料会員権の追加や、新たな命令の追加など。
Ver.3.2.1 (2015年8月5日) : 不具合の修正、有料会員権の説明追加など。新たな要素の追加は無い。
Ver.3.3.0 (2016年4月6日) : カタログIP、高度サウンドユニット（有料）の追加など。
Ver.3.3.1 (2016年5月25日) : Ver.3.3.0の不具合修正バージョン。新たな要素の追加は無い。
Ver.3.3.2 (2016年7月27日) : 不正アクセス対策を施した。新たな要素の追加は無い。
Ver.3.5.0 (2016年12月28日) : プチコンBIGとの調整や、不具合修正などがされている。
Ver.3.5.1 (2017年2月1日) : プチコンBIGとの調整やVer.3.5.0の不具合修正が行われたバージョン。 新たな要素の追加は無い。
Ver.3.5.2 (2017年3月2日) : Ver.3.5.1の不具合修正バージョン。 新たな要素の追加は無い。
Ver.3.6.0 (2018年3月14日) : 不具合修正やスクリーンキャプチャ機能の追加、新たな命令追加、STARTボタンの操作変更が行われた。
Ver.3.6.1 (2018年7月18日) : Ver3.6.0不具合の修正バージョン。新たな要素の追加は無い。
Ver.3.6.2 (2018年10月10日) : Ver3.6.1不具合の修正バージョン。新たな要素の追加は無い。
Ver.3.6.3 (2018年12月5日) : Ver3.6.2不具合の修正バージョン。新たな要素の追加は無い。

 その他 
発売日が決まる前までの発売日の表記の推移は情報公開直後は「近日発売」と記されている片隅に＊印で「近日＝一年先ではない比較的近い未来」と記されていた。その後、7月発売予定となり、プチコン3号に関するエイプリルフールネタの記事にも掲載されていたが延長され、2014年秋配信となった。
大阪府立泉尾高校のプログラムの授業に採用された速報！ 大阪府立泉尾高校様のプログラミング授業に『プチコン３号』が採用されました。ニンテンドーDSでプログラミング公立高校でもプチコンしよう！大阪府立泉尾高校に行ってきました公立高校でニンテンドー3DSを用いたBASICの授業開始、その狙いを聞くBASICで学ぶゲームプログラミング～『プチコン3号』が高校の授業に導入された経緯とは？小野憲史のゲーム時評：3DS活用した物理の公開授業　勉強の動機付けに。
2016年、海外で本ソフトを利用したニンテンドー3DSシステムへの不正アクセスが確認されたため、同年7月11日から一時的に配信を停止「プチコン３号 SmileBASIC」の配信停止について、2016年7月27日にアップデートの上配信を再開した。

プチコン大喜利
第三回プチコン大喜利：2014年11月19日から2015年1月31日「飛び出す（？）プログラム」
第四回プチコン大喜利:2015年10月17日から2016年1月4日「ニンジャ」
第四回以降、日本以外で「SmileBASIC」が発売された地域も参加可能になった。
プチコンmkIIも対象ソフトになっている。

プチコンマガジン
2015年7月29日、ニンテンドーeショップで「プチコンマガジン創刊号」が配信開始された。「プチコンマガジン創刊号」はプチコン大喜利で投稿された優秀な作品の中から34本（＋紹介4本と新作1本）を収録したゲーム作品集になっていてプチコン3号を3DSにインストールしなくても遊べるようになっているプチコンマガジン 創刊号『プチコンマガジン 創刊号』新発売のご案内「プチコンマガジン 創刊号」がニンテンドーeショップで7月29日に配信。今後、続編の配信も検討されている。

公式投稿サイト
2016年6月27日開設。自作のプログラムを投稿できるプチコン投稿ポスト『プチコン3号 スマイル ベーシック』 公式プログラム投稿サイト開設！ 本日（6月27日）より自作プログラムの投稿受付スタート。投稿作品は3DSダウンロードソフト「プチコンマガジン」への収録や公式雑誌の「SMILEBASIC MAGAZINE」への掲載、ニンテンドーeショップでの単体販売に向けての選考対象にもなる。

書籍
ニンテンドー3DSでプログラミング！　プチコン3号SMILE BASIC公式ガイドブック（ニンテンドードリーム編集部）
SmileBASIC Magazine：スマイルブーム公式雑誌（平成28年6月27日発売・アンビット）『プチコン３号』公式マガジンが6月27日に創刊…受賞作品のプログラムリストや解説などを収録

関連項目
プチコンBIG(2016年12月25日発売)：プチコン3号と互換性があるWii U向けソフト。

 脚注 

 注釈 

 出典 

 外部リンク 
 スマイルブーム公式サイト
 プチコン3号 公式サイト (smilebasic.comへのリダイレクト) 
 プチコンmkII 公式サイト
プチコンマガジン創刊号

3
Category:2014年のコンピュータゲーム
Category:ニンテンドー3DS用ソフト