kill-time

About

Name: Naokit

QRコード


スマホ・携帯用表示対応!

Count per Day

  • 225056総閲覧数:
  • 154昨日の閲覧数:
  • 2011/05/20カウント開始日:

楽天ベストセラー

プチコン

先日のポケコン購入を機に、ここの所 自分の中でBASICでのプログラミングの制作意欲が高まっています。

暇な時にちょくちょくポケコンをいじっては簡単なプログラミングをして実行してみて遊んだり、DSiをひっぱり出してきてプチコンで適当なサンプルプログラミングを試したり、改造してはニヤニヤしています。

まぁ、いずれいつものように飽きるでしょうが、やはりトライ&エラーを繰り返し、”自分でプログラミングで何かを作る”というのは達成感があり楽しいものです。
特に、プログラムが自分の思い通りに動作した時はかなりの快感!。逆の場合はDSをぶん投げたくなりますが

という事で、だいぶ前に ”走れっ!!ガイコツくん!” というプチコンの連打系ゲームを公開しましたが、対コンピュータで遊べるように最低限の改良をしてみました。
(ちなみに以前のものはプログラミングが面倒だったので、一人でベストタイムを目指すタイプのものと、もしくは人対人の対戦で遊ぶだけの物でした。)

では、以下にその改良したゲームを公開します。

◎走れっ!!ガイコツくん!vs CPU

d100c_Ex
↓プレイ動画です。

YouTube Preview Image

相変わらずタイトル画面等の凝った演出はありませんが、やっぱり敵と戦うって事になると面白みが増しますね。

とりあえず、ゲームの概要を。

ハ○パーオリンピックタイプの連打でキャラを走らせるゲームです。(A,Bボタンを交互に連打で走ります。)
自分のキャラは画面上部の”ガイコツくん”です。
ライバルキャラよりも早くゴールを目指してください。
全9ステージ構成でキャラもステージごとに変化します。
(ただ、プチコン内蔵の敵キャラのスプライトの種類が少ないため意味不明なキャラもいます。)

また、ベストタイムも画面に表示されるようにもなってます。
一応、9ステージクリアするとエンディングです
・・・まぁ、最初ステージはエンドレスにしようかとも思いましたが、エンディングがある方が目標があっていいかなという事で採用しました。
ぜひエンディング目指してがんばってください!
(といっても、メッセージが一行表示されるだけですがw)

以下はQRコードです。プチコンmk2でQRコードを読み取ると取り込めます。

最初の方は余裕で勝てると思いますが、ステージが後半になるとかなり敵も手強くなります。
自分の場合、後半はボタンを指で連打ではまず勝てず、”擦(こす)り連打を使用してもなかなか勝てません”。
敵の移動にはランダム関数を使用し、一定速にはならないように多少変化を付けいていますが、後半は勝てるかどうかはぶっちゃけ運次第かも知れません。

裏技
どうしてもCPUに勝てないという方はプチコンの編集メニューで、Basicプログラム中の
97行目の
”PX=PX+3” の部分の数字の”3”を任意の数に変えてみてください。
大きな数字にすればするほどボタンを押したときの自キャラの移動量が大きくなり、結果的に自キャラの足が速くなります。

果たして、2017年現在どれぐらいのプチコンmk2ユーザーが潜在しているかわかりませんが、遊んでいただければ幸いです。
では、今回はここまで。

さて、前回の続きです。
前回の記事を読んでない人はこちらへどうぞ

今日は先日リサイクルショップで買ったシャープの”ポケコン”と、任天堂のDSiのBASICアプリ”プチコンmk2(以下プチコン)”に、それぞれ同じプログラムを書いて実行させスピード等を比較してみたいと思います。
といっても、大規模なプログラムは書けませんし、あくまで簡単なBASICプログラムを幾つか実行させてその違いを楽しもうというのが目的ですのでご了承ください。

ちなみにこのポケコンはポケコン史上最も後期に発売されたもので、歴代ポケコンの中ではかなり高性能な方です。
CPUもZ80(互換) 8MhzとCPUスペックだけなら名機パソコン”MSX”の初代機と同等以上(初代MSXはZ80 約3.6Mhz)の代物です。

ちなみにDSiのスペックはネットで調べたところ以下の通りです。
CPU ARM-9+ARM7 (デュアルコア:周波数不明)
(前機種のDSはARM946E-S 67MHz + ARM7TDMI 33MHzとの事なのでおそらくそれ以上)
メインメモリ 16MB(プチコン内で使用できるメモリは1MB)

ではテスト結果です。

◎テスト1 グラフィック描写
前回も使用した円を連続描写するプログラムです。
円の間隔を4ドットにしています(STEP 4)ので計算上、円を35個ほど描写する事になります。

(参考)ポケコン版のテスト1のプログラムリスト
***************************************
10 CLS
20 FOR X=0 TO 140 STEP 4
30 CIRCLE(X,25),23
40 NEXT X
***************************************

YouTube Preview Image
<ポケコン>
約35秒ほどかかっていますね。
一生懸命描写している様がなんだか愛着がわきます。

YouTube Preview Image
<プチコン>
予想通り一瞬です。速すぎて描写している感は全くないですね。
一秒かかってないと思います。

◎テスト2 素数計算
任意の数値を入力して、その数が素数かどうかを調べるプログラムです。
約数が存在する場合は都度その約数を出力します。
アルゴリズム的には単純なもので、2から順番に”任意の数-1”まで順番に割り算をして余りが0であれば割り切れると判断しています。

今回は調べる任意の数を”1000″にして、”1000″が素数かどうかを判断するテストを行いました。

(参考)ポケコン版のテスト2のプログラムリスト
*******************************************************************
10 ‘ソスウハンテイプログラム
20 INPUT “セイスウ ヲ ニュウリョク>”;A
30 B=0
40 FOR D=2 TO A-1
50 IF A MOD D=0 THEN B=1:PRINT “/”;D;”デワリキレタ!”
60 NEXT D
70 PRINT “”
80 IF B=0 THEN PRINT A;”ハ ソスウデス”
90 IF B=1 THEN PRINT A;”ハ ソスウジャナイ”
100 PRINT “”
110 GOTO 20
*******************************************************************

YouTube Preview Image
<ポケコン>
約12秒ほどかかりました。

YouTube Preview Image
<プチコン>
テスト1に続き、こちらもほぼ一瞬ですね。約一秒くらいですかね。

比較できないくらい、あまりにもプチコンが速いので任意の数を”99999″にしたところ

ポケコン 約 20分12秒(1212秒)

DSi  約 6秒

でした。

つまり、この結果だけで見ると 1212秒 ÷ 6秒 = 202

DSiが約200倍速い結果となりました!!

ということで、
・・・・・う~ん。やはり、ポケコンの惨敗ですねぇ。分かってはいましたが、逆に言うと現在のDS等のゲーム機の高性能ぶりには目を見張るものがありますね。
これが3DS版のプチコンだともっと速いと思います。

散々な結果のポケコンでしたが、この機種はBASICだけでなく高速なC言語やアセンブラ言語も扱えるそうなので腕に自信のある愛好家の方々は専らそちらでプログラミングしているようですね。
上記のプログラムもそちらで記述すれば計算速度はおそらく10倍以上速くなるとは思います。

ちなみに、以下のサイト様で素晴らしいプログラムが公開されています。つい最近でも意欲的にプログラムがアップされているところを見るとかなりのポケコン愛を感じますね。

コスモパトロール
http://cosmopatrol.web.fc2.com/

また、詳細は省略しますがPC上で動作する様々なポケコンのエミュレータもあるようです。
↓ポケコンを体験してみたい方や興味がある方はどうぞ。

PockEmul
http://pockemul.free.fr/

puchikon

DSiウェア プチコンmk2 800DSiポイント(800円) 
↓公式URL(購入はDSi上のニンテンドーDSiショップで行えます)
http://smileboom.com/special/ptcm2/

前回の宣言どおり、Nintendo DSi 用のプログラミングソフトプチコンmk2のBasicでゲームを作ってみました。
Basic等の言語系に触れるのは本当に久々でしたので大したものは作れませんが、趣味で遊んでいた昔を思い出しながら作ってみました。
各プログラムはQRコードで公開しますので、プチコンをお持ちの方は良かったら読み込んで遊んでみてください!各ゲームのタイトルのネーミングセンスに関しましてはご了承くださいw)

◎走れっ!!ガイコツくん!
よくある連打ダッシュ系のゲームです。一方向への移動だけですのでプログラミング的には割と楽です。
キャラはプチコンに内蔵されているスプライトのキャラをそのまま使用しています。
A,Bボタン連打でダッシュしますので、ゴールまでのベストタイムを目指してください。


gaikotsu
また、”対戦できないの?”という友人の助言により、ついでに上記のプログラムに手を加えて人対人で対戦出来るようにしてみました。

◎走れっ!!モンスターズ!
1P側はA,B連打で、2P側は左,右連打でダッシュしますので、友達と競い合って楽しんでみてください。
puchi01

monstors

そして、最後にもう一つ。DSならではの機能を使用したゲーム。

◎サークル タッチ
DSのタッチ機能を利用したモグラ叩き風ゲーム。次々出てくる円の中心部をタッチして下さい。円の出てくる速度はどんどん早くなります。5回ミスするとゲームオーバー。
ミスした時の音声にイラッとしますw


(撮影用にわざと下手にプレイしていますw)

Circle Touch

以上です。
どのプログラムも大した技術は使用していませんが、サクッと書いてサクッと実行できるこの手軽さがやはりBasicの面白いところでもありますね。
需要があるかどうかは別にして、また何か作った時は公開したいと思います。

・・・って言うかプチコンの最新版、”プチコン3号”(3DS専用ダウンロードアプリ)もそのうち触ってみたいな~。

ちなみにプチコンのプログラミングでは以下のサイトが非常に参考になりました。
数々のBasicプログラミングテクニックが惜しげもなく公開されており、とても勉強になります。
おちゃめくらぶ
http://ochameclub.web.fc2.com/
運営者の御茶目菜子さん素晴らしいサイトの公開ありがとうございます。

logo-title-ptcm2
DSiウェア プチコンmk2 800DSiポイント(800円) 
↓公式URL(購入はDSi上のニンテンドーDSiショップで行えます)
http://smileboom.com/special/ptcm2/

先日、格安のジャンク品で購入し見事に復活を遂げたDSiに”DSiウェア”を入れてみます。
今回買ったDSiウェアは知る人ぞ知る”プチコンmk2”です。

(*現在プチコンはDSi・3DSで動作する ”プチコンmk2” と更に進化した3DS専用の新ソフト ”プチコン3号” があります。今回はDSiのためあえて旧作のDSi版のプチコンmk2を取り扱います。)

このソフトはDSi上でパソコン等でおなじみの初心者向けプログラミング言語、”Basic”を動かすことが出来ます。(もちろんDSi用に仕様がいくつか変更されていますが。)

Basicは30代以上で昔からパソコンを触った事のある人には一度は聞いたことがあるであろう有名なプログラミング言語です。まぁ今でも有名ですが。

かつて8ビットパソコンの全盛期から16ビットパソコンが登場した頃までは殆どのパソコンでBasicは標準で内蔵され広く使われていました。
今とは違いソフトは買うというよりも、自分で作るという考え方の時代だったため、当時のパソコン(というかマイコン)少年は当時のPC雑誌のプログラムコード片手に自分で打ち込んで勉強していたものです。
(私、Naokitの世代はそれより若干後の世代ですが。)

その後、他のプログラム言語が進化してくるにつれ、Basicは初心者向けというイメージが強くかつ動作も比較的遅かったため、開発向けというよりホビー向け言語になった感があります。
しかし、”書いてすぐ実行”できるというお手軽な開発環境、今でも愛好者はかなり多いようです。

また、遅いと言ってもDSiは32ビットのCPUを搭載しているため、当時の8ビットCPUのパソコンのBasic環境とは別次元の処理速度を持っています。
そのため頑張れば、ファミコンクラスのゲームならかなり快適に作れるようです。
加えてこのプチコンではDSならではの制御命令(タッチペン操作、合成音声、スプライト制御 等々)も使えるようになっており多彩なプログラムが組めるようになっています。
また、作成したプログラムはQRコードに変換して公開することも出来るとの事。(プチコンmk2のみ)

と、能書きはここまでにして早速ダウンロード購入してみました。

IMG_0811

早速起動すると

IMG_0813
下部のタッチパネル部がソフトウェアキーボードになっているのでこれを使って編集画面でコードを書いていきます。

IMG_0826
とりあえず、適当にコードを書いて実行画面に切り替え実行してみます。
(手元にあった古いiPodでの撮影のため画像がピンボケしまくりですがご了承ください)

うーん。楽しい!w
大したことは何もしてないのですがw
このように”Talkコマンド”で簡単に合成音声の発音もできるので、これだけでも結構遊べます。

適当に触っているうちに昔Basicで遊んでいた記憶が徐々に懐かしさと共に蘇ってきて、気がつくと軽く数時間もいろいろ弄ってしまいました。

次回はこのプチコンで私Naokitが作った簡単なゲームを公開して行きたいと思います。

カレンダー

2017年5月
« 4月    
1234567
891011121314
15161718192021
22232425262728
293031  
Amazonで検索
楽天市場で検索
楽天で探す
楽天市場