進捗率43%ぐらい。とりあえず駅伝の枠部分は出来た。自動で実在っぽい校名を入れるところはまだ作ってないけど、まぁ手動入力だけでも十分・・・なのは自分だけですかね。まぁとりあえず自分にとって必要ないところは後回しというか、今作はなんでも入れるイメージで始めたのに気付いたらガンガン妥協して3に先送りしようとしてる件。この辺は大げさな言い方をすれば自分の生き方そのものって感じですかね~。まぁでも妥協しなかったから人気出るとは限らないし・・・。

えー現在はセーブ、タイトル関連をまだちょっと後回しにして、いよいよゲームの心臓部である練習部分に取り掛かってます。単純な走力の増減はなんとかなるとして問題はテンションとの連動ですね。今回は前作の調子と違って普通にプレイすると中央付近を行ったりきたりするような感じにしたいんだけど、その辺の匙加減はやっぱり他の人にもやってもらわないと上手く行かないんだろうな~。

っつーことでこの辺で本格的にテストプレイ者を募集しようかなと思ってます。条件は・・・、いやこういうのやったことないから正直よくわかんないけど、プレイして意見をくれる人で、作者の気まぐれでセーブデータがぶっ壊されても平気な人とかかな。期間はたぶん5月1日、早くて4月29日ぐらいから2週間とかそのぐらい。あるいはもっと伸びるかも。メールのやり取りになると思うので協力してくれる人はコメ欄かメールフォームからメアド晒してください。

ついでに気分転換に作ったゴミswfファイルを載せてみます。1次元の処理なんだからやろうと思えば難しくはないんだよな~。もちろん駅伝部ゲーム2とは何の関係もないけどね。






     人気ブログランキングへ

拍手[0回]

110407a.jpg




  ☆☆☆ ・ ・




スペースキーだけで操作する単純で爽快なアクションゲーム。シビアなタイミングを求められる場面がかなり多くどちらかというとイライラ系なものの個人的にはかなり楽しめた。こういうゲームでハイスコアを狙いたくなるのってなかなか無いからね。

ちなみに自分は初回が345でここまでの最高記録は121。このゲームの場合はむしろこの死にやすさがプラスになってるんだろうな~。タイミングがズレて何機か無駄にしてもショックが少ないってのもあるし。


     人気ブログランキングへ

拍手[0回]

進捗率37%ぐらい。枠部分はいろいろと面倒くさいので後回しにして先にセーブ部分を作ってみた。全くデータを弄らずゲーム内の配列をセーブ用の配列にただ置き換えただけでやってみたところ、データ量は約290KBでした。えー、この時点で前作の20倍以上。セーブデータを3つ作るとすると約870KB。ただしデータの8割以上が0かundefinedなので、今後1024KBを超える可能性もアリと。

う~ん、各大会の各区間ごとの値等省略した部分が結構あるのにこの数字ですか。いろいろ圧縮したりしても200KB以上は避けられそうにないですねぇ。まぁ最初からそのつもりではあったんだけど。

さてさて、一応ゲームの大枠が出来てきたところでここからは思ったこととかを適当に書いてみる。まずは前作がいかに単純なつくりだったかってことね。一応終盤のバランス調整は頑張ったしタイムの表示方法や戦歴リストとかはそこそこ拘ったけど、ごく一部の仕組みを除いて本当につくりが単純なんだよな~。こんなのに2年とか掛けたなんて信じられんわ。

そして今作も思ったほど複雑ではないです。というかむしろ単純さが増したかも。今回はほぼ全ての部分を単一のムービークリップで作ったのでfunctionでの使いまわしが楽になったという部分が大きい。ようやくattachMovieとfunctionの組み合わせにも慣れてきたしね。

あと仕組みの部分とは関係ないけどゲーム的には箱根駅伝って退屈だなーとか思った。一応山はあるけど基本的にスタミナ系の練習だけやってりゃ勝てそうだんもんな~。ある程度短い距離の区間もあってその辺の適正を見極めて配置させる必要がある全日本とかの方がゲーム的には面白そうだよね。

ついでに、もし2の完成が待ちきれないって人がいらっしゃったら旧作をやり続けるよりこのゲームでもやった方が楽しいと思うよ。ってかスピード、スタミナ、メンタルの3要素なのか。考えることは同じか・・・。


     人気ブログランキングへ

拍手[0回]

進捗率31%。駅伝の基本部分は旧作のを解読して書き写すのがメインだったのでそれほど時間は掛からず。ってかなんか過去の自分が(あくまで自分基準だけど)天才的な組み方を連発しててすげーなーとか思った。sort(Array.NUMERIC)をあんな風に使うとはな~。いやいや、何故か色々と勉強になっちゃいましたよ。駅伝部分は単純に見えてかなり奥が深かった。

その駅伝本戦の仕様は、まぁ基本的には前作と同じ感じです。ただあまりこの辺には手間を掛けたくないのでHAGONE以外の駅伝は簡略化します。出場校を20に絞って枠とかの扱いもテキトー。もちろん全日本が20校じゃ物足りないとかいう人がいれば変えると思いますが、とりあえず2はこのままで行ってもいいかな~と。使いまわしバンザイ。

んで一応今後の予定ですが、駅伝の枠及び記録関連を作り終わって40%。年度の引継ぎとセーブ部分が終わって50%。練習等での能力の変動を一通り作って60%。ある程度(10年プレイして三大駅伝いずれも5位以内とか)ゲームとして成り立っていることを確認して70%。そこから他の人にも協力してもらってテストプレイをしつつ数値等の調整をして完成まで持っていくと。普段はどこかで敢えて寝かせたりもしますが(作るのに飽きるとも言う)、今回はあくまで"3"が完成形、今作ってる"2"はそのベータ版とかそういう位置づけなので出来れば一気に作り上げたいですねぇ。



     人気ブログランキングへ

拍手[0回]

101119b.jpg



  ☆☆ ・ ・ ・




前作の続編。そりゃそうだ。ステージ数が増えて、スーパーマンに変身するステージなど新要素も結構多…いや明らかな新要素はそこぐらいか。こういうゲームでは特定ステージの単発新要素は数に入れないのが普通かな。

えーっと前作に比べるとバラエティ色が濃くなった分パズル性が失われてしまったのが残念です。見た目で楽しめるステージとかはあってもいいんだけどそういう一発ネタの割合が多すぎるよな~。複数のキャラを同時に殺すところとか、いくつか面白いステージもあったんだけどねぇ。



     人気ブログランキングへ
 

拍手[0回]

11ga10b.png



進捗率25%ぐらい。思いつきでこんなの作ってたらすげー時間食った。こういうグラフ系の描写には大体三角関数が必要なんだけど中卒ニートの頭には難解過ぎますって。たまたまこんな解説を見つけたから何とかなったんだけどさ~。

ちなみに図は上位がちょうどインカレで勝てるぐらいの走力をランダムで入れたデータになってます。単純なランダムなので円に近い形になっていますが実際に練習を重ねるともっと歪になるかと…。

11ga10c.png





それからスカウト部分もだいたい出来上がりました。監督レベルと同じだけのポイントをそれぞれの能力に割り振る感じですね~。エースが欲しいなら1番手極振りで、全体的にそこそこのレベルにしたいなら全体に振ると。地域のところももう出来上がってるけど説明はめんどい…。


さてさて、いい加減駅伝部分に着手しないといけませんな。


     人気ブログランキングへ

拍手[0回]

進捗率24%ぐらい。ニコニコで作業用のBGMを探してたらいつの間にかMMD関連の動画を漁ってた、そんな今日この頃。

前回更新時に関カレ、インカレは既に出場者の選択と仮のタイムと順位が出せるようになっていて、もう完成は時間の問題と思ってたらそう上手くは行かなかった。まずはソート関連。出場者を選ぶときには種目ごとにID順になってるんだけど、結果を表示するときは見栄え的に順位で並べたほうがいい。でも人数が不定ということで従来のやり方だとたぶんよくないと。

その辺りについてダラダラ書かせていただくと、えーいやここを説明するのは面倒くさいな・・・。とりあえずレースのパターンをいろいろ作るとなるとタイムによって順位が一意に決まるようにしたほうが修正とかが楽と思ったのですよ。例えばある年の関カレ1万mは28分50~55秒なら6位とかね(実際は違うけど)。でもこのままだと例えば自校の1人目が28分53秒、2人目が28分52秒、3人目が28分51秒のときに3人とも6位になってしまうと。これを1人目8位、2人目7位、3人目6位とするシステムが本当に面倒くさくてそこだけで3時間とか掛かった。

さらに個人と全体での記録を残したりそれを表示させたり、まぁ色々あったわけですよ・・・。いや本当に今週に入ってからは毎日3~5時間は制作に当たってたんだけどそれでも今日までかかったからね~。インカレ部分だけで合わせて15時間ぐらい?ん、15時間?そのうちソート関連が3時間って計算合わなくね?まぁいいか。絵描いてたりもしてたしね。とにかくインカレでこんなに時間掛けてどうすんだよって感じですよね。しかもまだパターンは1通りずつしか作ってないし。駅伝部分はスムーズに進むといいなぁ・・・。


     人気ブログランキングへ

拍手[0回]

101101a.jpg




  ☆ ・ ・ ・ ・




イライラゲー。一応何度もチャレンジしたくなる要素は備わってるけど、アクションが苦手な自分にはちょっと難しすぎた。改めて1時間ぐらいやって140YDが精一杯とかダメすぎるよな~。まぁもともと得意な人が楽しめばいいんじゃないかと思う。


     人気ブログランキングへ

拍手[0回]

進捗率18%ぐらい。駅伝部分を後回しにしてインカレ等を作成中です。相変わらず一応作ってはいるんだけど、どうもペースが上がらないというか、何だろうなぁ、時間はあってやる気も問題ないのに、いや、よくわからん。とりあえずプリティーリズムにはいろんな意味で参った。(唐突過ぎる)

えー、そのゲーム内インカレとかについてですが、今のところかなりゲーム的というか、現実とは結構かけ離れたものになりそうな感じです。以下に仕様を列挙します。

時期
関カレ5月 インカレ6月 ユニバ8月

概要
ユニバは奇数年のみの開催。各大会とも1日で全種目実施。実施順は検討中。

出場資格
関カレ及びインカレ それぞれ標準記録を突破した人の中から各種目3人まで。1人が何種目出てもok。標準記録は基本的に2011年の現実の大会に沿っているが、一部変更あり。
ユニバ 該当年のインカレで2位以内の人が強制的に出場。ハーフのみ違う選考にするかも。

タイムとか
各種目とも力を出し切るaパターンと牽制するbパターンを用意。どっちが出るかは運次第。その他、性格によって普段の記録会よりも力を出しやすい(本番に強い)or出しにくい(本番に弱い)なんてのも作る予定。

とりあえずこんなもんか。性格自体が未実装なので最後の部分はまだ構想段階です。今週中には駅伝の基本部分を作り上げたいなぁ。まぁどうなるかわかんないけど通しのテストプレイ開始で完成度60%ぐらいだと思うので、1日2%ペースなら今月中にはかなり出来上がる計算?いや進捗率自体独断だからかなり怪しいんだけどさ。はい。そんなところです。頑張りません。


     人気ブログランキングへ

拍手[0回]

進捗率14%ぐらい。記録会部分と歴代のトラック関連とかをほぼ完成させたほか記録画面もじわじわ作成中。残ってるのはとにかく駅伝関連ですね。大まかな仕組みは前作から流用できるとしても各枠のタイムを決めて記録させる部分をひたすらひたすら、もう本当にひたすら作る必要があると。他校の分も含めて全部記録させるとなるとやっぱり面倒くさいよな~。そもそも見る側が見たい記録にたどり着くまで相当掛かりそうだ。もしかしてファイル内の検索機能を入れたりしたほうがいいのかな?

えーさて、せっかくなのでスクリプトでも公開してみますかね。ほぼ完成扱いになっている記録会の基本的な部分です。
-----
rentugi = [];
imabest = [];
if (this._parent.kihon[1]<10) {
 this.yearh = "0"+this._parent.kinon[1]+"年";
} else {
 this.yearh = this._parent.kihon[1]+"年";
}
this.hiduke = this._parent.mon+"月"+this._parent.day+"日";
for (i=1; i<21; i++) {
 this.attachMovie("kirohito", "kirohi"+i, 5200+i);
 mest = "kirohi"+i;
 this[mest]._x = Math.floor((i-1)/10)*260-140;
 this[mest]._y = (i-1)%10*30+50;
 this[mest].krk2 = this._parent.buin[i][this._parent.kihon[4]];
 if (i<6) {
  this[mest].krk1 = "4年";
 } else if (i<11) {
  this[mest].krk1 = "3年";
 } else if (i<16) {
  this[mest].krk1 = "2年";
 } else {
  this[mest].krk1 = "1年";
 }
 for (p=40; p<60; p++) {
  this._parent.buin[i][p] = this._parent.buin[i][p+1];
 }
 this._parent.buin[i][50] = this._parent.kihon[2];
 this._parent.buin[i][55] = this._parent.kirokutipe;
 this._parent.buin[i][60] = "";
 if (this._parent.buin[i][20]>20) {
  karihiro = this._parent.buin[i][20]-20;
 } else {
  karihiro = 0;
 }
 karisupi = this._parent.buin[i][11]+this._parent.buin[i][12]+this._parent.buin[i][13]-karihiro;
 karisuta = this._parent.buin[i][14]+this._parent.buin[i][15]+this._parent.buin[i][16]-karihiro;
 karisesi = this._parent.buin[i][17]+this._parent.buin[i][18]+this._parent.buin[i][19]-karihiro;
 switch (this._parent.kirokutipe) {
 case 1 :
  takiai = "記録会   1500m";
  this._parent.buin[i][45] = 秘密だよ!
  if (Math.random()*1<(this._parent.buint[i]-1)*(this._parent.buint[i]-1)/16) {
   this._parent.buin[i][45] += 2700;
  }
  if (this._parent.buin[i][45]<??000) {
   this._parent.kantoku[46] = 1;
  }
  if (this._parent.buin[i][45]<??500) {
   this._parent.kantoku[47] = 1;
  }
  break;
 case 2 :
  takiai = "記録会   5000m";
  this._parent.buin[i][45] = 秘密だよ!
  if (Math.random()*1<(this._parent.buint[i]-1)*(this._parent.buint[i]-1)/16) {
   this._parent.buin[i][45] += 2700;
  }
  if (this._parent.buin[i][45]<??000) {
   this._parent.kantoku[48] = 1;
  }
  if (this._parent.buin[i][45]<??000) {
   this._parent.kantoku[49] = 1;
  }
  if (this._parent.buin[i][45]<??000) {
   this._parent.kantoku[50] = 1;
  }
  break;
 case 3 :
  takiai = "記録会   10000m";
  this._parent.buin[i][45] = 秘密だよ!
  if (Math.random()*1<(this._parent.buint[i]-1)*(this._parent.buint[i]-1)/16) {
   rentime[i] += 2700;
  }
  if (this._parent.buin[i][45]<??0000) {
   this._parent.kantoku[51] = 1;
  }
  if (this._parent.buin[i][45]<??4000) {
   this._parent.kantoku[52] = 1;
  }
  if (this._parent.buin[i][45]<??8000) {
   this._parent.kantoku[53] = 1;
  }
  if (this._parent.buin[i][45]<??2000) {
   this._parent.kantokui[54] = 1;
  }
  if (this._parent.buin[i][45]<??6000) {
   this._parent.kantoku[55] = 1;
  }
  break;
 case 4 :
  takiai = "  ハーフマラソン";
  this._parent.buin[i][45] = 秘密だよ!
  if (Math.random()*1<(this._parent.buint[i]-1)*(this._parent.buint[i]-1)/16) {
   rentime[i] += 2700;
  }
  if (this._parent.buin[i][45]<??00) {
   this._parent.kantoku[56] = 1;
  }
  if (this._parent.buin[i][45]<??40) {
   this._parent.kantoku[57] = 1;
  }
  if (this._parent.buin[i][45]<??80) {
   this._parent.kantoku[58] = 1;
  }
  if (this._parent.buin[i][45]<??20) {
   this._parent.kantoku[59] = 1;
  }
  break;
 }
 if (this._parent.buin[i][45]<this._parent.buin[i][this._parent.kirokutipe+30]) {
  this._parent.buin[i][this._parent.kirokutipe+30] = this._parent.buin[i][45];
  this._parent.buin[i][this._parent.kirokutipe+34] = this._parent.kihon[1]*1000+this._parent.kihon[2];
  this._parent.buin[i][21] += 2;
  if (this._parent.buin[i][21]>20) {
   this._parent.buin[i][21] = 20;
  }
  imabest[i] = 1;
  this[mest].krk4.gotoAndStop("更新");
  if (this._parent.buin[i][45]<this._parent.rekodo[10][this._parent.kirokutipe*4-1]) {
   for (p=1; p<11; p++) {
    if (this._parent.buin[i][45]<this._parent.rekodo[p][this._parent.kirokutipe*4-1]) {
     for (z=this._parent.buin[i][this._parent.kirokutipe+60]; z>p; z--) {
      this._parent.rekodo[z][this._parent.kirokutipe*4] = this._parent.rekodo[z-1][this._parent.kirokutipe*4];
      this._parent.rekodo[z][this._parent.kirokutipe*4-1] = this._parent.rekodo[z-1][this._parent.kirokutipe*4-1];
      this._parent.rekodo[z][this._parent.kirokutipe*4-2] = this._parent.rekodo[z-1][this._parent.kirokutipe*4-2];
      this._parent.rekodo[z][this._parent.kirokutipe*4-3] = this._parent.rekodo[z-1][this._parent.kirokutipe*4-3];
     }
     for (zss=1; zss<21; zss++) {
      if (this._parent.buin[zss][this._parent.kirokutipe+60]<this._parent.buin[i][this._parent.kirokutipe+60] && this._parent.buin[zss][this._parent.kirokutipe+60]>=p) {
       this._parent.buin[zss][this._parent.kirokutipe+60]++;
      }
     }
     this._parent.buin[i][this._parent.kirokutipe+60] = p;
     this._parent.rekodo[p][this._parent.kirokutipe*4-1] = this._parent.buin[i][45];
     this._parent.rekodo[p][this._parent.kirokutipe*4] = this._parent.buin[i][this._parent.kirokutipe+34];
     this._parent.rekodo[p][this._parent.kirokutipe*4-3] = this._parent.buin[i][1];
     this._parent.rekodo[p][this._parent.kirokutipe*4-2] = this._parent.buin[i][2];
     break;
    }
   }
  }
 }
 if (this._parent.kirokutipe == 4) {
  this[mest].krk3 = this._parent.roadire(this._parent.buin[i][45]);
 } else {
  this[mest].krk3 = this._parent.trackire(this._parent.buin[i][45]);
 }
 rentugi[i] = this._parent.buin[i][45];
}
-----
ネタバレを防ぐため一部加工してありますが、隠しきれてなかったり意図的に隠してないところもあるのでよく見るとあの辺の仕様がわかっちゃうかもね。そういや調子をどうタイムに反映させるかはまだ決めて無いんだったな~。まぁ練習メニューの詳細を決めるのと同時ぐらいにやればいいか。

ちなみにこのスクリプトで最も苦労したのは終盤ですね。終盤の4分の1ぐらい。これが歴代のデータを管理する部分なんだけどfor文の入れ子に次ぐ入れ子でbreakが入ったりしてもう大変でしたよー。いや本当にどのfor文が何を指してるかとか面倒くさすぎるんだけど、省略する方法もわかんないからしょうがないんだよね。ああ。これでバグが見つかったら泣ける。


     人気ブログランキングへ

拍手[0回]

 プロフィール 
HN:
1717181
フリーゲームの感想がメインのブログです。
感想及び評価は完全に独断で手当たり次第根こそぎプレイしてガンガン書いてます。☆平均1.8ぐらい。
かつてはFlash8でゲーム制作も行っていました。
Youtuber(天野ガム)としても活動してます

https://twitter.com/5Qqvac8TFmxr6wG
 ブログ内検索 
 アーカイブ 
 メールフォーム 
 最新コメント 
[08/23 bl555]
[08/09 webpage]
[08/01 bl555]
[07/29 new]
[07/14 comment-122528]
 最新記事 
 P R 
 バーコード 
 カレンダー 
07 2026/08 09
S M T W T F S
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31
 アクセス解析 
 フリーエリア 
ブログパーツ

Template by ららららいふ / Material by 素材くん「無料WEB素材屋」