15B26の変更点 ・ネットワークでカウルが2重カウントされていた不具合を修正 ・深くお詫び申し上げます ・シナリオ用関数の追加(別紙参照) ・ファイルの入出力用関数を追加 ・ネットワークでのメッセージのやり取り用関数を追加 ・初期化やリセットなど、制御用キーを無効化する関数の追加 ・チャットからの入力機能の追加 ・ネットワーク上のシナリオの扱いを変更した(NetworkダイアログのScenario) ・同じシナリオ使用者同士でないと弾は見えないし、当たらない ・同じシナリオ=同じシナリオコード(ファイル名は無関係) ・シナリオコードは下記&sで問い合わせたときの()の中の16進数 ・NetworkダイアログのScenarioをチェックしないときは従来通り ・チャットに問合せ機能 ・&で始まる文字列は問合せコマンドとして解釈 ・&に続けて(小文字でも良い) 'C'--Chips情報問合せ 'F'--FPS問合せ 'J'--告知登録(例 &jみんな***に集合!)、告知欄に配信・表示される 'K'--告知問合せ(ネットワークに入ったら,最初のみ&kと打って告知がないか調べること) 'L'--Land問合せ 'N'--名前問合せ 'O'--OS問合せ 'P'--ping応答時間(往復) 'S'--シナリオ問合せ 'V'--バージョン問合せ 'X'--位置問合せ ・さらに続けて数値を入れることで、プレイヤ指定できる(&j,&kを除く) 例 &c0 &f12 ・当然相手が15B26以上でないと無視される(応答がない) ・今のところ自分自身には問い合わせできない 15B25cの変更点 ・燃料供給経路の不具合による謎の爆発修正(のはず) ・カウルの透明に関する不具合修正 ・ネットワークへのカウルEffect対応 ・旧バージョンで見るとエフェクト付は四角いカウルになってしまうので注意 ・Effect情報はかなり短縮(5bit)されておくられるので微妙な表現できない ・Zバッファに(GBが対応していれば)24bitを使用するよう変更 15B25bの変更点 ・option付のweightの燃料が変更されていないのを修正 ・15B25の変更点のドキュメント内容を修正 15B25の書き忘れ ・ブレーキランプで発光度を使うときはColor値も変えた方がよい むしろ、発光度#0f00で固定し、Color値を変更すべし(暗い赤→明るい赤) ・今年のAFネタは無しです 少しやってみたけど破綻しました(テーマはAnti-loose Force)、いずれ... 15B24の書き忘れ ネットワークでのLimit30FPS解除を無効にした 15B25の変更点 ・カウルの見直し ・カウルがずれるのを修正 ・カウルにEffectを設定できるようにした。 ・スペキュラ,スペキュラの強さ(拡がり具合),発光度,透明度を調整 ・16進の4桁で,スペキュラが一番右桁、透明度が一番左桁 ・例 Effect=#20fb 透明度=2/15=0.13.. 発光度=0/15=0 スペキュラの強さ=15/15=1.0(大きいほど広がり具合は狭くなる) スペキュラ=11/15=0.73.. ・デフォルトはEffect=#00fb ・発光度はブレーキランプなどに使える ・今のところネット表示は未対応 ・Weightの燃料の設定変更 ・Weightの燃料の基準を4000000から6000000に変更 ・燃料の消費をWeightから優先的に行うようにした ・Arm弾の修正 ・水中から発射したArm弾速度はチップの速度が0のとき通常の1/10に変更 ・また射程距離を150mとした (弾が遅いので弾リストがすぐにいっぱいになるため) 15B24の変更点 ・レギュレーションに"E"を追加 ・ONの時、高効率燃料、OFFのとき通常燃料 ・通常燃料のとき、Wheelトルク,Jet,Arm弾充填に燃料を使用する。 ・出力系下段の加速計を燃料計に変更(左端が満タン、右端がエンプティ) ・燃料は各チップに積載される。チップの種類により積載量が異なる Core: 2000000 Chip系:1000000 Frame系:500000 Weight:4000000(ただしOptionにより重量と同様に増える) 他:0 ・燃料からエネルギーに変換する効率は異なる Arm: 1 Jet: 10 Wheel:30 大きいほど効率が良い ・Lua/スクリプトに_FUEL(チップ番号),_FUELMAX(チップ番号)を追加 所属する系の合計燃料と合計最大燃料を取得する ・シナリオのSET,_GETに"FUEL","FUELMAX"を追加(詳細別紙) ・WeightにOptionを追加 ・Optionに1〜8(実数可)を設定することによって重量を調整できる ・Weightの元の重量(通常のチップの4倍)×Optionが重量になる ・タイヤの摩擦の変更 ・横滑りを少なくした ・全体的なしなりの調整 ・重量800kg以上から急にタイトになるを 1000〜2000間でなだらかにタイトになるよう変更 ・いままでの800〜2000kgの作品は全体的に柔らかくなります。 ・シナリオの_TOP関数が返す値が間違っていたのを修正 ・申し訳ありませんでした ・logにアナログ入力を記録 ・Dataのplanとplane2の操作法を変更 ・15B23の書き忘れ ・log(rcl)は地形データと同じフォルダに置いてください。 ・logでは、Luaのグローバル変数を記憶できてません。 挙動がLuaのグローバル変数に依存する場合は、再生がうまくいきません。 ・同様にアナログ入力の値も記憶できてません。 15B23の変更点 ・Luaの_TOP関数が返す値が間違っていたのを修正 ・マーカ文字の大きさを変更可能に Extra...->Marker Name Size ・海テクスチャーの変更 ・高速化 ・Cowlの余分な物理計算処理箇所を削除 ・ベクトル・行列計算をインライン化 ・VC2005EEにコンパイラを変更 ・Logの見直し ・大体はうまく行く ・ファイルに保存したLogファイルの再生->うまくいかないときが多い 15B22cの変更点 ・なんと、_LINE2Dは直っていなかった。修正 15B22bの変更点 ・_PLAYERY,Zの返す値がおかしいのを修正 ・Fogレベル左端で水面の移動表示がされていないのを修正 ・_LINEが透明(空色)になってしまうのを修正 前回(15B22)の書き忘れ ・WEIGHTチップの耐久度だけ従来の4倍にした ・ネットワークダイアログの表示マークに四角(ARM付)も表示するようにした ・ネットワークダイアログの当たりレポートの表示を少し変えた ・ViewBとViewGの自動切換えのタイミングを速度に応じて変わるようにした 15B22の変更点 今回は大きな修正はありません ・マーカと共に名前を表示 日本語はでません(たぶんずっと) ・タブでネットワークダイアログの表示と本体の切り替え ・_PLAYERYFORCES(n)がうまくが使えないバグの修正 ・_PLAYERXなどのノイズの変更(確定ではありません・ノイズは必要か?) ・ホイールのブレーキバグの修正  など 15B21bの変更点 ・ネットワーク系関数にバグが多いのでとりあえず修正 ・Luaで_SETCOLORが使えなくなってしまったのを修正 ・Luaで_PLAYERINITS()が使えないバグの修正 ・_PLAYER***(n)で自分の値がとれないのを修正。XYZは自分の物のみノイズを乗せてません。 ・_PLAYERYFORCES(n)//強制上向き力の回数 を追加 ・_PLAYERNAME2のバグ修正 ・シナリオにもネットワーク用関数の追加 ・ExtraのMarker Sizeの記述のミスの修正 15B21の変更点 ・ネットワークの安定性を目指した スレッド管理が怪しかったので直し、 コンパイルオプションの/MLを/MTに戻した(シングルスレッド->マルチスレッド) ・ARM弾の修正 ・●マーカにはあたらない ・■マーカでもリセット後150フレーム(約5秒)は攻撃できないしあたらない ・ARM弾描画も修正した、始めと終わりをはっきりさせた。 ・ネットワークではシナリオを不可にした。 ・シナリオをどうしても使用したい場合はネットワークダイアログのScenarioチェックをいれる ・この場合、ARM弾の扱いが異なる シナリオ有りの弾はシナリオなしの人からは見えない。逆も同様 B20の弾はシナリオ有りの扱いになる また、シナリオ無しの弾には、弾の所有者情報が新たにふくまれる ・シナリオ不可は暫定的なもので、将来的にはホストからの配信を予定 ・マーカの大きさを変更可能にした。Extra... ・スクリプト/Luaに関数を追加 _PLAYERS() //ネットワークプレイヤの人数 _PLAYERHOSTID() //ホストのID _PLAYERMYID() //自分のID _PLAYERID(n) //n番目のプレイヤのID (nは0〜_PLAYERS()-1) _PLAYERCHIPS(n) //n番目のプレイヤのチップ数 (nは0〜_PLAYERS()-1) _PLAYERARMS(n) //n番目のプレイヤのARMチップ数 (nは0〜_PLAYERS()-1) _PLAYERCOLOR(n) //n番目のプレイヤのマーカ色 (nは0〜_PLAYERS()-1) _PLAYERCRUSHES(n) //n番目のプレイヤの破壊された回数 (nは0〜_PLAYERS()-1) //破壊=Coreの耐久度<0 _PLAYERRESETS(n) //n番目のプレイヤのリセット回数 (nは0〜_PLAYERS()-1) _PLAYERINITS(n) //n番目のプレイヤの初期化回数 (nは0〜_PLAYERS()-1) _PLAYERX(n) //n番目のプレイヤのCoreの位置x (nは0〜_PLAYERS()-1) _PLAYERY(n) //n番目のプレイヤのCoreの位置y (nは0〜_PLAYERS()-1) _PLAYERZ(n) //n番目のプレイヤのCoreの位置z (nは0〜_PLAYERS()-1) //Coreの位置にはそれぞれ+-5mほどの雑音が乗せてある //また自分やSleep中のプレイヤの位置は現在取れないので注意 _PLAYERNAME(n) //n番目のプレイヤの名前 (nは0〜_PLAYERS()-1) //Luaでは文字列が返るが //Scriptでは4byte分の数値が返る // 4byte分の数値を文字として表示する場合$を付けて // print 0,$_PLAYERNAME(0) などとすること。$は今回からの新仕様 _PLAYERNAME2(n,i) //n番目のプレイヤの名前2 (nは0〜_PLAYERS()-1) //Scriptで4byte以上の名前がほしい場合に使用する // print 0,$_PLAYERNAME2(0,0),$_PLAYERNAME2(0,1),$_PLAYERNAME2(0,2) // _PLAYERNAME2(0,0)と_PLAYERNAME(0)は同等 // Luaでは不可 ・Dataフォルダに B21Test.txtを追加してScriptのみテストした。   Luaは未テスト(えっ!) ・ネット上のモデルの表示に不具合があったので修正 ・ハイライトがでない ・裏面も表示していた(離れて見ると縞模様が出る) 15B20b+の変更点 ・●マーカの表示が変なのはResourcesのuser.ddsとuser.xが古いためでした。 ・この2つのリソースだけ修正しました。exe等に変更はありません。 15B20bの変更点 ・ARM弾が多すぎるときにバグるのに対応 ・コンパイルオプションの/MTを/MLに変えた(マルチスレッド->シングルスレッド) 15B20の変更点 ・ARM弾がネットワーク上でも出るようにした ・ARMチップを持ったモデルには、■マーカを出すようにした ・●マーカの人を攻撃しないようにしてください ・爆発系の画像を独立させて、少し変えてみた(まだ気に入らない) ・データ送信内容を少し変えた ・コアの位置のみは小さな間隔で送り(15FPS)、  その他のデータは大きな間隔で送るようにした(5FPS) ・従来は8FPSオンリーだった ・低速マシン(RCにとっては充分な速度のマシンは無いですが)用にLimit15FPSモードを付けた。 ・1秒間に15回計算できれば実速度で動くことになります   ・計算が少ない分剛性が出ません   ・Limit15FPSモードではスクリプト/Luaの内容が変わるべきなので(フレーム間が33msではなく67msになるため)  _BASE()関数を設けた。30または15が返る。_DT()の値にも注意(0.0033333/0.0066667) ・影の表示を多少速くした。ただし影が出る範囲が3mになってしまった ・従来どおりがいい人(10m)はExtraのFast Shadowのチェックを外してください 今回も時間がないのでテストはほとんどしていません。 4ヶ月ぶりで記憶が一切とんでいます。どんなバグがあったんだっけ? バグフィックス期待の方、申し訳ないです 15B19fの変更点 ・何か変えたけど覚えがない。改悪であったことは確か 15B19eの変更点 ・ファイル読み込み時の変数の初期化に失敗しているバグの除去 ・根本的なブラックアウトバグは除去されていないが  初期時の頻発は無くなるはず   ご協力ありがとうございました。 15B19dの変更点 ・メモリリークが発生するところがあり修正 ・Chatでエンターキーで送信 ・リセット・初期化で変数等の初期化を今一度念入りにした。 ・その他もろもろ 自分のところではブラックアウトもアプリケーションの異常終了も、 ネットクローズも確認できないため(15B19aから)手探りのデバッグです 詳しい情報や落ち易いモデルの提供などご協力をお願いします。   15B19cの変更点 ・送信コマンドのタイムアウト値を100msにした  もしかして、送信キューがいっぱいになって落ちている?   15B19bの変更点 ・RC画面ではIMEを無効にするようにした ・ネットワークのエディット欄のフォントをシステムフォントにした ・マーカの色関係バグを修正した 15B19の変更点 ・ネットワーク関係 ・ダイアログは閉じなくても良くした(閉じてもよい) ・最小化してもバックグランドで動いているようにした ・従来の最小化のように動きを止めたい場合は  Networkダイアログ内のPauseをチェックを入れてください  (RC画面は真っ黒になります) ・Player Name一覧を表示するようにした ・マーカの大きさを不変にして色を指定できるようにした ・Player Nameのあとに#ff0000等と記述、又はColorボタン ・簡易チャット機能をつけた(ダイアログ下段) ・B18使用者は、表示に悪影響があるかもしれない ・他のプレイヤーの表示を仮同期させた(位置予測による) ・最大参加者を30に増やした(前回は10) ・表示のバグ(ArmのCowl化け,Jet風船の反転表示)の修正 ・メニューのLobbyはまだ作成途中 ・IGMに対応予定  ただしどうも古い仕様なのでDirectPlay8と同居を試験中  情報募集中 ・Brakeがある条件で利かないバグの修正 ・各モデルはBrake値の再調整が必要かもしれません ・モデラ作成者のためにユーザーメッセージによる遠隔データロード機能を追加 ・詳細はVBSample.zipの読んでね.txtを参照 ・ブラックアウトハングの原因らしきものを修正 ・まだ頻発するようなら報告希望 ネットワークはまだまだ。 シナリオはネットワークに対応予定。 15B18の変更点 ・ネットワークのテスト(TCP/IPのみ) ・SettingメニューのNetwork...でネットワークの設定&開始/終了 ・ホストになる人(始めたい人)はHostを選択しStart ・Host Nameに現れる接続したい人にIPアドレスを知らせる ・ダイアログは右上のXで必ず閉じること ・Endはホストを閉じます(自動的に他の人がホストになるはず) ・接続したい人はConnectを選択しHost NameにIPアドレスを入力しStart ・ダイアログは右上のXで必ず閉じること ・Endは接続を閉じます ・IPアドレスは***.***.***.*** の数字と.の組み合わせ 複数現れることがあると思われるがグローバルかローカルか適切なものを。 スペース文字は含まないようにしてください ・ポートは適当に変えてください(その場合はポート番号も知らせること) 仕様では2300から2400を推奨とのこと ・マシンパワーがあれば一台で複数のRCを立ち上げてテスト可能です ・非同期、1チップあたり16バイト+α、10回/秒更新 ・当たり判定、弾の情報はまだやり取りしてません ・接続者の名前を出す機能はまだありません ・チャット機能はまだありません ・影、砂埃など出ません ・接続テスト結果を出来れば教えてください(回線、速度など) ・さまざまなバグフィックス 15B17の変更点 ・地面との当たり判定処理を大幅に変えた ・モデルデータのチップ引数にUSER1とUSER2を追加 ・例 N:chip(angle=90,user1=abc,user2=1234) //abcは変数 ・user1は変数の代入可、user2は変数の代入不可 ・チップに対する情報を付加する目的。用途は自由(シナリオと連動?) ・各値取得関数_USER1(チップ番号),_USER2(チップ番号)を追加。 ・シナリオには_GET,_SETで取得、設定できるようにした。 ・フォグの深さを設定できるようにした。(SettingメニューのExtra Setting) ・ResourcesのデータのテクスチャーをDDSに変更 (高速化を望めると思ったがそうでもない) ・さまざまなバグフィックス (OnInitがモデルデータでうまく呼び出されないバグ他) 15B16bの変更点 ・Valのminのデフォルトを-無限大にしてしまったのを0に戻した ・OnInitがモデル読み込み時に呼ばれないのを呼ばれるように修正 ・コンパスのナビゲーションマークが最初から表示されてしまうのを解除 補足注意事項(15B16の書き忘れ): ・ユーザービューの位置,ズーム設定をすると  自動的にユーザービューモードになります(_SETVIEWTYPEしなくても) ・ユーザービューの位置,ズーム設定は2D,3Dライン命令より先にしてください  ラインの表示がおかしくなります 15B16の変更点 ・シナリオ関数の追加と修正 ・モデルの状態を初期状態にする_RESETの追加 ・ユーザービューの画面同期の遅れの修正 ・_SETVIEWZOOMの視野角が整数だったバグを実数に修正 ・ユーザービューのバンクが取れるようにシナリオに_SETVIEWUPを追加 ・_SAVEで吐き出すValのminがうまく出力されないバグの修正 ・_KEYLOCKを使うと、_KEYによる判定が出来なくなるバグの修正 など 15B15の変更点 ・シナリオ仕様の変更 ・F1キーでfunction OnMode()〜end が呼ばれるようにした。  シナリオでキーきっかけの処理(モード変更やヘルプ表示)は  基本的にF1キーからはじめるようにしてください ・マウス入力はシナリオからはCtrlキーを押下中しか入力扱いしないようにした。 ・意図的にモデルからキーを扱えなくする_KEYLOCK関数を追加 ・シナリオサンプルの添付(Dataフォルダ内) 走り幅跳び.rcs 射的.rcs レース1.rcs ボール運び.rcs ・2次元ラインがH視点で使えないバグの修正 ・ボールの当たり判定の修正&ころがり摩擦を強くして止まり易くした ・スクリプト/Luaの関数に以下を追加 _DIR(チップ番号),_ANGLE(チップ番号),_POWER(チップ番号),_SPRING(チップ番号), _DAMPER(チップ番号),_BRAKE(チップ番号),_COLOR(チップ番号), _PARENT(チップ番号),_TOP(チップ番号) それぞれチップの接続方向、角度、Power、Spring、Damper、Brake、カラー 接続元チップ番号、属する系の元チップ番号 を返す。 ・LuaのRunTimeエラー時に細かいエラー情報が表示されないバグを修正 15B14の変更点 ・デフォルトの地形を変更 ・スクリプト/Luaの関数に以下を追加 _MX() マウスのx座標取得 _MY() マウスのy座標取得 _ML() マウスの左ボタン状態取得 _MR() マウスの右ボタン状態取得 _MM() マウスの中ボタン状態取得 _MOBJ(オブジェクト番号) オブジェクトの質量 _I(チップ番号,列番号,行番号) チップの慣性テンソル(3x3)の値取得、列番号・行番号は(0,1,2) _IOBJ(オブジェクト番号,列番号,行番号) オブジェクトの慣性テンソル(3x3)の値取得、列番号・行番号は(0,1,2) _MOVE2D(x,y) 2次元ラインの始点設定 _LINE2D(x,y) 2次元ラインの終点設定&描画  座標は正規化座標系(x,yは-1〜1の実数で表現) 色は_SETCOLORを使用 ・シナリオにも関数(v1.2)を追加(別紙) ・メニューの修正 Settingは終了時に保存される(Resetメニューでデフォルトに戻す) Helpの4つのShow ...も保存される Viewを分けた SettingにSoundを追加 ・最後に読みこんだデータのパスを記憶 ・ボールの当たり判定のバグとり 跳ね返り係数と摩擦係数も調整しました ・15B13dではSSE2がONでコンパイルされていました。大変ご迷惑をかけました。 15B13dの変更点 ・跳ね返りの裏修正がボールフリーズを生んでいたようなので元に戻した。ふ〜。 15B13cの変更点 ・シナリオで_CHECK2,_CHECK2OBJが使えないバグの修正 ・シナリオで_GET,_GETCHILDを追加,_SAVE関数の調整 ・シナリオで_PAUSE()中に_KEY関係が使えないバグの修正 ・シナリオの関数はこれからも拡充していく予定 ・System.rcsのボールの出現位置を修正(ボールが重なるとフリーズするため) 15B13bの変更点 ・モデル読み込み時の強制終了してしまうバグに対処 Chipオブジェクトの初期化メソッドのミスが原因だったようです 15B13の変更点 ・ゲームファイルに代わるものとしてシナリオファイルを導入した ・シナリオファイルは拡張子.rcs のテキストファイルで  すべてLuaスクリプトとして記述する ・初期化時には function OnInit() 〜 end が呼び出される ・リセット時には function OnReset() 〜 end が呼び出される ・各フレームごとに function OnFrame() 〜 end が呼び出される(main()でも可) ・使える関数は別紙シナリオ関数一覧.txtを参照 ・デフォルトでResoucesのSystem.rcsが読み込まれる ・メニューからObjectとWindを削除して、System.rcsにその機能を組み込んだ  Hキーでボール追加、Jキーで風の強さ設定  (Configure Inputのキーボードで一度「リセット」を行うこと) ・通常のシナリオファイルはDataフォルダにおいてください  (Fileメニューから読み込む)サンプルは用意できませんでした。 ・モデルのLuaスクリプトにも OnInit OnReset OnFrameを使えるようにした ・OnFrameがある場合はmainは呼ばれない ・_KEYDOWN(キー番号)、_KEYUP(キー番号)を関数に追加(押した、離したで1が返る) ・ARM弾の速さを秒速150mから300mに変更、エフェクトも多少変更 ・チップとARMの当たり判定はまだ組み込んでません ・ボールなどの当たり判定にまだバグあり 15B12bの変更点 ・日本語対応でかなりの速度ダウンが有りえるのでデフォルトを英文に直した  ・ただし 表示文に日本語が含まれる場合は、その行は和文として表示する  ・また表示行頭に&マークがある場合も和文として表示(等幅フォントとして表示したい場合) 15B12の変更点 ・Script/Luaの表示を日本語対応,等幅に ・聞くところによれば、ものすごく遅いということだが、自分のところでは確認できず ・モデルデータ,Script,Luaのエラー表示をもう少し丁寧に表示するようにした ・ARM弾が近すぎるボールに当たらないバグの修正 ・Coreが二つあるモデルにとりあえず対応 ・地形データのころがり摩擦係数をマイナスにすると当たり判定を無視するように変更 ・ARM弾は当たる 15B11の変更点 ・気球の影の修正、色がつけられないバグの修正 ・ARM弾の地面に対する着弾点のズレのバグを修正 ・ARM弾のチップに対する当たり判定を追加   ・自分の系のチップもすべて当たり判定に含めているので自壊することもある   ・チップに耐久度を持たせた。関数_T(チップ番号)で求められる0〜10000(-1は破壊済み)    弾に当たると減っていく(減り具合はチップの重さと弾のパワーに関係) すべてのチップを半径0.3の球として当たり判定を行なっているため   ・すきまから後ろのチップに当たる可能性がある   ・チップの方向性に意味がない ・新しい関数の追加 dummy=_MOVE3D(x,y,z) 3Dライン描画の始点の設定 dummy=_LINE3D(x,y,z) 3Dライン描画の終点の設定 dummy=_SETCOLOR(カラー) 3Dライン色の設定(例 #FF0000)   15B10の変更点 ・ARM弾のあたり判定に地面とボールを付けた。 ・Reset[R]時、ボールはリセットしないようにした。 (初期化[U]のときボールに加わる力を0にした) ・JetのOptionとして1(水素風船)2(空気風船)をつけた(形状のあたり判定はなし) ・地形データに摩擦係数を埋め込みを変更した 4行目(Emissive項)の3つの数値で指定する 1番目がころがり摩擦係数、2番目が静止摩擦係数、3番目が動摩擦係数 ころがり摩擦係数は0〜1だが、微小な数値で効果が出るので注意 Material { 1.000000;1.000000;1.000000;1.000000;; 5.000000; 0.000000;0.000000;0.000000;; //鏡面反射係数として使用(本来の設定) 0.000000;0.000000;0.000000;; //この行に変更(本来は発光度Emissive) TextureFilename { "Stone.JPG"; } } ・高速化のため少し全体に柔らかくなった ・高速化のため地形の裏面表示をメニュー(Setting)で切り替えられるようにした 15B9の変更点 ・B8のバグの修正 ・通常チップの摩擦を少し大きくした(地形で摩擦を少なくできるため) ・Luaの初期化でも変数を渡して、一部不具合を解消 ・ARMのバグの修正と効果の修正 あたり判定はまだ未実装 ARM弾の発射方向にはチップの接続は許さない(予定) ・ゲームファイルでリングの数が8個のみを98個に修正   Xの値が-9999未満でリングの終了(へんな値になっていた) ・ジョイスティックのアナログ入力を6にした_ANALOG(0)〜_ANALOG(5) 手持ちは3つしかないので確認できてません。 15B8の変更点 付属のARM.XをResourcesに必ずいれてください ・地形データに摩擦係数を埋め込めるようにした。  摩擦係数の変更の仕方  1)地形データ(***.X)を強引にテキストエディタで開く  2)「Matrial」で検索をかけて次のような記述を探す(マテリアル[ポリゴンの色/テクスチャー]の数だけある)  3)3行目の数値の2番目と3番目の数値を-1(すべる)から1(すべらない)までに変える(0がデフォルト)   2番目が静止摩擦係数、3番目が動摩擦係数になる(1番目は鏡面反射係数)   実際の摩擦係数は設定値+1.0になります(設定値-1.0のとき摩擦係数は0.0) Material { 1.000000;1.000000;1.000000;1.000000;; 5.000000; 0.000000;0.000000;0.000000;; //この行 0.000000;0.000000;0.000000;; TextureFilename { "Stone.JPG"; } } ・フレーム系にOption=1を記述することでゴースト化(透明、当たり判定なし、重さあり)でいるようにした。 2軸以上のパーツを擬似的に作成できる メニューのSetting->Show GhostでON/OFFできる。(本来はレギュレーション) ・ARMチップを取り合えず実装(完成度30%)   OptionにARM弾の強さを設定、PowerにOption以上の力を入力することで発射   Optionに大きな値をいれると重い弾を発射できるが充填に時間がかかる      B4Test.txt参照    ・関数追加 _GX(チップ番号) //重心座標 _GY(チップ番号) _GZ(チップ番号) _XX(チップ番号) //X軸ベクトル _XY(チップ番号) _XZ(チップ番号) _YX(チップ番号) //Y軸ベクトル _YY(チップ番号) _YZ(チップ番号) _ZX(チップ番号) //Z軸ベクトル _ZY(チップ番号) _ZZ(チップ番号) _QX(チップ番号) //クォータニオン _QY(チップ番号) _QZ(チップ番号) _QW(チップ番号) _TYPE(チップ番号) //チップのタイプ _OPTION(チップ番号) //チップのOPTION値 _EFFECT(チップ番号) //チップのEFFECT値 _M(チップ番号) //チップの質量 15B7の変更点 ・Luaでstepによる変数の補正が変数の値を操作した場合にも行われるバグの修正(Scriptとの互換性) ・Scriptで#00ffなど16進が使えないバグの修正 ・ゲームのスタート時3秒待つ間スクリプト&Luaを呼びださないよう修正 ・ゲームの終了時、ゴールタイムの下にチェックコードを表示するようにした このコードは地形ファイル、ゲームファイル、モデルファイルのチェックサムとゴールタイムから 計算されるコードで、タイムの不正申告を防ぐものです。(暗号化してあります) 不正かのチェック機能はまだ未実装ですが、上記3ファイルの提示とタイム、チェックコードを明記 するとある程度の信頼性が生まれると思います。 ※ログ機能は1.5Bではまったく使えません。色んなものがFixしてからと考えています。 15B6の変更点 ・新たにオイラー角取得関数_EX(チップ番号),_EY(チップ番号),_EZ(チップ番号)を作成 基本的に_AX,_AY_AZと同じだが、AZの範囲と符号のバグを修正し、高速化したもの 互換性のため_AX,_AY_AZは残して置くが、今後使わない方がよい。 ・同様に相対オイラー角取得関数_RX(チップ番号,参照チップ番号),_RY(同左),_RZ(同左)を作成 ・Keyが取得できない(Q,W,E)バグを修正 ・Lua付きのデータのあと、スクリプトのみのデータがうまく読み込めないバグを修正 ・リセット時に、スモークの除去とLuaのリセットを行うように修正 ・物理挙動を修正(速度がまたもとに戻った) ・ARMチップはしばらく見送り 15B5の変更点 ・Luaで_SPLITが使えないバグを修正 ・モデルデータのドラッグ&ドロップのみ対応 ・Wheel系にEffectオプションを追加(1〜10の実数、タイヤの太さを変える) 例 S:Wheel(power=-Engine,brake=HBrake,option=1,Effect=3) ・_AZ()の調整(テストほとんどできず、評価求む) ・ARMチップは今回見送り 15B4の変更点 ・Luaスクリプトの組み込み Bike3Lua.txtを参照 function main() 〜 end は必ず必要です RigidChips側の変数、関数はすべて大文字として扱ってください。 数学関数は(sin,cosなど)はLua側のものを使用してください。 エラー処理は細かくしてありません。(今後の課題) 文法はLuaの勉強をしてください。わかる人はわからない人に教えてあげてください(いつものように) 無理には使わないでください。 ファイルio機能のみ組み込んでません(ウィルス対策) ・新規関数 _ROUND(値)四捨五入した整数にする _SPLIT(チップ番号) チップを分裂させる._BYE()の動力付き版 _OX(0),_OY(0),_OZ(0) ボールの位置 ・スクリプトの16進表記(#000000〜#FFFFFF)を可能に ・処理速度を速くした(20%程度速くなっているはず) かなりのことをしてるので、挙動のテイストも変わってしまったかも ・アンブレイカブルOFF時の壊れやすさの閾値をさげた プロペラには影響が少ないはず 勝手に破壊機能もまだ生きてます ・Weightチップの摩擦係数をさらにすこし上げた ・JetチップにEffectオプションをつけた(スモーク機能、整数値0〜4:内容はまだFixではありません) 例:Jet(power=100000,effect=2) ・今のところ再生機能(Log)はほとんど使えません。 15B3の変更点 ・しなりを取り除いてみた。 spring=1のパネル(デフォルト設定)のしなりを軽減した。 spring=1条件でのみdamperの値によりしなり具合を調整できる(damper=1:ガチガチ damper=0:前バージョンと同じ) デフォルトでdamper=0.5なので少しはしなる damper=0.5以上は基本的に推奨しない(衝突処理が対処できなくなる) wheel系より先のパネルはしなり除去をしない(プロペラはしなりがないと推進力がなくなる) 重さが800以上のモデルにしかしなり除去をしない(衝突処理が対処の関係で多少暴れが生じるため) 原因不明の振動がでる場合はdamper=0にしてみてください(spring=1条件でのみ) ・水しぶきの表現を少し変えた(水から出るときにも水しぶき) 15B2の変更点 とりあえず前回がバグバグなので修正バージョン ・カウルの角度が正負逆なのを修正 せっかく造形してくださったかたもうしわけない。 ・カウルに微妙に重さがあったのを修正 ・ウエイトに色が付かないバグを修正 チップファイル(ChipH.x)に問題があったため ・風機能を一応復活 ・カラーを変数化 ※ログファイルは例によって役立たず、1.5Bでは完全に役立たず ※スモーク機能は、途中でファイルを壊してしまったので一時中断 ※Luaは手付かず バージョン1.5Bの説明 バージョン1.5のための実験バージョンB ネットワーク化を含んだ完成版としてバージョン1.5を考える そのための試行錯誤をベータ版として公開する ベータ版の機能は増えるだけではなく無くすことも考える、大幅な物理特性の変更も視野にいれる ベータ版ではバージョンごとに特性が変わるので(いままで以上に)広く意見を求めたいが 互換性はあまり考慮しない(テストにばかり時間がかかるので) 15B1の1.2からの変更点 ・錘チップWeightの追加(水との比重2.8通常のチップの4倍の重さ) 注)摩擦抵抗は大きい それに伴いFrameの摩擦抵抗を滑りやすくした(ChipとWeightの中間ぐらい) ・カウルチップCowlの追加 衝突も空気抵抗もない装飾用 注)カウルチップに通常の他のチップは付けられない メニューから非表示にもできる 引数にOption=0〜5を指定することで形を変えられる angleには変数も可 ・オブジェクトの登場 ボールオブジェクトをメニュー操作で登場させられる ボールと戯れることができる バグ有り ・Wheelの引数にもOption=0〜2を追加 1,2でタイヤアタッチメントを装着 バイク用のつもり ・地形データ(Xファイル)のテクスチャーに透明を含められるようにした ただし アルファチャンネルが0x66以下が透明 半透明表現はできない ・スクリプトに_ZOOM(視野角)を追加 (CCDカメラのズーム) 視野角に0を入れると現在の視野角を返す あわせてCtrl+F10視点をCCDカメラの視野角に合わせた ・新機能確認用にモデルデータv15test.txtを追加した 今後の予定 とりあえずスクリプト言語Luaを組み込みたい(従来のスクリプトとの切り替え方式) バージョン1.2の主な変更点 ・水中での抵抗を変えた(1.1.1から比べて少し大きくした、要注意:物理挙動の変更) ・安定化のため収束ループを増やした(要注意:物理挙動の変更)   処理速度も約15%減になってしまいます。   大きく挙動が変わることはないと思いますが、大変申し訳なく思います。   v1.5のつもりで作っていたのですが、なかなか錘チップ、カウルチップが完成できないため中間バージョンとして公開します。 ・水しぶきと砂塵のリソース画像を軽量化 ・重心表示と外力ベクトル表示の機能を追加(Help->Show External Force) 白:重心 赤:摩擦力 緑:撃力 青:空気抵抗、水抵抗 重力は表示しません。 ・深海での擬似圧力、高高度での空気密度の変化を追加(失敗?) ・いくつかのバグフィックス ・ジョイスティックスロットルの値をスクリプトから拾う_ANALOG(2)関数を追加 ・ジョイスティックハットスイッチ(POV?)の値をスクリプトから拾う_HAT(0)関数を追加(1000倍された値なので注意) ・スクリプトのprintの最大行数を10行から100行に変更 ・if分のネストは以前同様サポートしていない バージョン1.1.1の主な変更点 ・水しぶきの表現を追加(要注意:ResourceにSplash.pngとSplash.x必要、無いと起動時エラー) ・いくつかのバグフィックス ・水中での抵抗を変えた(要注意:物理挙動の変更) ・モデルデータの記述間違いを修正 (以下ver1.1での書き忘れ) ・扱えるキーボタンを追加(Configure Inputのキーボードで一度「リセット」を行うこと) ・ジョイスティックのX,Yの値をスクリプトから拾う_ANALOG(0),_ANALOG(1)関数を追加 バージョン1.1の主な変更点 ・JETの表現を変えた ・ログファイル(.rcl)の入出力のバグを修正した(いままでのrclファイルは無効) ・データ読み込み時のエラーが出ないバグを修正した ・HELPメニュー内にモデルデータソースを表示する機能を付加 ・一応、安定した環境になったので、v.1.1としてパッケージ化した。  バグとりは今後も行うが、新しい試みは v.1.1シリーズとしては行わない  新しい試み、実験はv1.5シリーズで行う(予定) 修正バージョン1.0.5bの主な変更点 スクリプト機能がうまく使えない不具合を修正しました。 ログファイル(.rcl)の入出力のバグを修正しました。 (おまけは1.0.5と同じものです) 修正バージョン1.0.5aの主な変更点 スクリプト機能がうまく使えない不具合を修正しました。 (おまけは1.0.5と同じものです) 修正バージョン1.0.5の主な変更点 ・ショートカットキーが使えないいくつかのメニューを修正した。 ・Logの方式を変えた。 動いた状態で録画開始できるようになった。 確実に録画できるようになった(要確認) ログファイルの形式を変更し、拡張子も.rclに変えた(.logはサポートしない) ・GAMEスタート時のバグを解消した。 (おまけ)オフロード用地形 Land4.x とオフロードカーサンプル 4wd.txt 修正バージョン1.0.4の主な変更点 ・関数_AY()がコアの値しか返さないバグを修正。 ・VIEW (カメラ)F〜Jの変更 VIEW FとGで切り離したチップに焦点を当てる、VIEW HはCCDカメラ焦点にした ・GAMEファイルを読み込めるようにした(*.rcg テキストファイル) 地形データとGAMEデータを読み込みキーUで競技初期化(長押しするとGAMEキャンセルになるので注意) 最初のリングで、速度完全ストップ、秒読みの後スタート、すべてのリングを抜けるとタイムが表示される 物理挙動の変更 ・変な摩擦があったので除去 ・空気抵抗を1.0.2と1.0.3の間の具合にした投影面積の1.3乗に比例するようにした ※今後、物理挙動に関わる変更はしないようにする ・ログが正常に再生されないバグは修復できていない (おまけ)GAMEファイルの説明 RigidChipsGame 1.0 // バージョン情報 land1.x // コースを設定する地形データ名(いづれ自動的に読むようにする) "Course for Torque-Car [Breakable]" // コース名(画面に表示される) 0,5,0,-45 //スタート位置(x,y,z)、Y軸(方位)角 1,1,1,0,0,1,1,1 //レギュレーション GATJUCSFの順(最後のFは燃料、将来用) 10.0 //燃料(将来用) 35,3,-38, 0,-40,0, 12 //最初のリングの位置(x,y,z),回転(x,y,z),半径(メートル) 67,3,-297, 0,118,0, 12 -244,3,178, 0,172,0, 12 -67,3,448, 0,-65,0, 12 266,3,209, 0,104,0, 12 309,3,77, 0,-39,0, 12 140,3,32, 0,136,0, 12 35,3,-38, 0,-40,0, 12 //最後のリングの位置(x,y,z),回転(x,y,z),半径(メートル) -9999,0,0,0,0,0,0 //ダミー(必ず必要) "END" //ダミー(必ず必要) 付属のモデルLandMarker.txtを使うとコース作成に便利 修正バージョン1.0.3の主な変更点 ・空気抵抗を変えた。風の当たる角度が90度になるにつれ急激に抵抗が増えるようにした。 ・摩擦のルーチンを改善した。接触時の妙な跳ね返りを軽減した。(robot.txtがまともになった) ・画面の情報表示をON/OFFできるようにした(メニューHelp) チップの名前は変数として表示しないようにした。 変数のパラメータにdisp=0とすれば、変数も表示しない。 ・チップ接続のしなりを少なくした(はず) ・とりあえず、Logの保存をできるようにした(仕様は今後変更の可能性が高い) 修正バージョン1.0.2の主な変更点 ・地面からの高さを返す関数_H(チップ番号) を追加(ver1.0.1から、記述忘れ) ・CCDカメラをフルカラー(32bit)画面モードでも使用可能に(ver1.0.1から、記述忘れ) ・チップを切り離す関数_BYE(チップ番号)を追加 サンプルデータ bye.txt添付 ・タイマー_TICKS()の値を設定し直す_SETTICKS(値)を追加(1ticksは1/30秒) さらに、リセットした時に0に戻すよう変更 ・データファイルを読み込むときにエラーがあれば、メッセージボックスを表示 ・ブレーキパラメータbreakの綴り間違い(brake)の修正、breakも可 修正バージョン1.0.1の主な変更点 ・霧の範囲を遠くにした(300mから600mに) ・最大チップス数を100から512に ・タイヤの跳ね返り係数を少なくした ・フレーム系の摩擦係数をタイヤと同じにし、すべりにくくした ・空気抵抗値を従来の3/4にした ・壊れるモードでの耐性を強くした(特にタイヤは外れにくくした) ・dumperをdamperに修正(dumperも可) ・ifでの比較に==(等しい)を使えるようにした。&(and) |(or)も使える ・各チップの引数にname=***を付けられるようにした  例 E:Rudder(name=ABC,angle=90,・・・)  この名前は,関数の引数として、_X(ABC),_VY(ABC)のようにチップ番号として使える ・一応、水面より上1mで空気抵抗の表面効果をつけた(擬似・実験) ・収束ループを10回から12回に増やした。強度が増した分、遅くなった。 ・