約 5,664,427 件
https://w.atwiki.jp/ddr_dp/pages/2256.html
Private Eye(楽) 曲名 アーティスト フォルダ 難易度 BPM NOTES/FA(SA) その他 Private Eye atomsoak ft. cerol X3 楽6 160 173 / 9 STREAM VOLTAGE AIR FREEZE CHAOS 33 26 10 53 0 楽譜面(6) / 踊譜面(8) / 激譜面(12) / 鬼譜面(-) 属性 地団駄 譜面 http //eba502.web.fc2.com/fumen/ddr/x3/priv_eye_8b.html 譜面動画 https //www.youtube.com/watch?v=cCx9pj5Bt0Q (x?.?, オプション不明) 解説 4分はかなり長いが、地団駄や渡りなど交互に踏みやすいX3らしい傾向が垣間見える -- 名無しさん (2016-07-23 20 38 24) 名前 コメント コメント(私的なことや感想はこちら) 名前 コメント
https://w.atwiki.jp/c21coterie/pages/420.html
日記2010年10月その1 にあるゲームを実装中。 http //www.geocities.jp/sinapusu2002/2dTanklGame/canvasTest.htm で実際に動くコードを確認可能。 現在、マウスポインターを狙って弾を撃ってくる大砲を実装。 それを確認できる。 var KeyBuffer;//キー入力バッファ var e_manage=new Array()//マップ上にいる敵データを管理する配列 var myUnit=CreateMyUnit(100,100) //自機の管理,当面ダミーデータ var x_position=new Array()//敵味方の大雑把な位置を表現する var eBullet_manage=new Array();//敵の弾を管理する配列 var myBullet_manage=new Array();//自機の弾を管理する配列。 var map;//画面マップ var mapHeightDates=new Array()//地面の凸凹を現す変数データ、地面は1次元の折れ線として表現される、当たり判定がめんどくさくなる理由の王様; var g=4.9//重力の値、必要に応じて変更予定 var baseClock=0.1;//弾の移動や敵の移動などの元となる1fpsでbasicClock時間が進む。 var mapHeight=600; var mapWidth=1000; var gd; function setPict(bp){ BulletPict= bp; } function eCannon(x,y,hp,size,timer,rndTimer,BulletSpeed,debug,img) { this.x = x; this.y = y; this.nowX=x; this.nowY=y; this.hp= hp;//ヒットポイント //this.bmp = new Image("e_CannonBody.jpg");//キャノン本体の画像 //this.Cannon = new Image("e_Cannon.jpg");キャノンの砲身の画像 this.AttackTimer= timer;//攻撃間隔 this.rndTimer = rndTimer;//攻撃間隔のランダムな揺らぎの秒数、fps単位 this.BulletSpeed=BulletSpeed;//弾速 this.state=0;//0なら稼働中、1なら爆発エフェクト中、2なら大砲を発射後の反動アニメーション this.round=0;//大砲の砲身の角度を表す変数 this.nextAttackTimer=50;//fps計算一回ごとに1引かれる変数、これが0以下になると弾発射処理が行われ、nextAttackTimerは再セットされる。 this.size=size//大砲のサイズ/大きいのや小さいのや色々作りたくなる変数 this.no=0; this.img=img;//弾のエフェクト this.img.width=size; this.img.height=size; this.attack = function(debug) { //放物線を描いて飛ぶ大砲の弾。これを発射しeBullet_manageに弾を登録するメソッド; //弾の移動は全てeBullet_manageから取り出しmoveメソッドで行う。jscriptではスタックに複数の型を混在させることが出来たか記憶があいまい、混在出来るいい意味でいい加減な言語だったと思うけど? // 主人公機と自機のX,Y座標の差分にあわせて、大砲の発射角が変更される this.nextAttackTimer--; if(this.nextAttackTimer 0) { var x1=myUnit.x-this.x; var y1=myUnit.y-this.y; //var cb=new CannonBullet(0,0,0,0);//ダミーデータ //cb.img.onload = function() //{ if(Math.abs(x1) 1){ if(x1 0){ x1=1;//真上にはうてないということで }else{ x1=-1; } } var k=0.5*g*x1*x1/(this.BulletSpeed*this.BulletSpeed); var d=x1*x1-4*k*(k+y1); //弾が届く位置に敵がいたらd>0となるので発射 if(d 0) { var s=(x1+Math.sqrt(d))/(2*k); var t=Math.sqrt(1+s*s); var direction=1;//弾を発射する向き1なら右向きに発射、-1なら左向きに発射 if(Math.abs(x1) x1) { direction=-1; } //debug.alert(t); //debug.alert("P100"); //cb.setDates(this.x,this.y,this.x,this.y,direction*this.BulletSpeed/t,this.BulletSpeed*s/t); var cb=new CannonBullet(this.x,this.y,direction*this.BulletSpeed/t,direction*this.BulletSpeed*s/t); registerBallet(cb); //debug.alert("P101"); } this.nextAttackTimer=this.AttackTimer+Math.random()*this.rndTimer; } //} } this.raunchingR_Set=function() { //大砲の砲身の傾きをセットする関数、十数FPSに一回程度の稼動で問題なし } } function ground_dates(g_HeightDates,MapSplitSize){ this.g_HeightDates=g_HeightDates;//地面の折れ線データ this.cosDates=new Array()//地面の傾きに対するCosの値 this.roundDates=new Array();//地面の傾き角度、戦車を地面に設置させるのに必須 this.MapSplitSize=MapSplitSize;//折れ線データの横幅、一定値 this.pointTypes=new Array();//頂点データ、地面が凸形状か凹形状かを指し示す指標データ this.a=new Array();//折れ線の各線の傾きをあらわす関数 var c; var t; var s; var d=MapSplitSize;//計算式を読みやすく for(i=0;i g_HeightDates.length-1;i++){ t=g_HeightDates[i+1]-g_HeightDates[i]; c=d/Math.sqrt(d*d+t*t); this.cosDates.push(c);//地面の傾きに対するcosの値を格納する //地面の傾き角を求める s=t/Math.sqrt(d*d+t*t) this.roundDates.push(Math.asin(s)*180/Math.PI);//傾きデータ this.a.push(s/c); } for(i=0;i g_HeightDates.length-2;i++){ t=(g_HeightDates[i+2]+g_HeightDates[i])/2-g_HeightDates[i+1];//結果が0以上なら凹地形、0以下なら凸地形 this.pointTypes.push(t); }; this.groundMove=function(x,y,speed){ //地面の上を移動するとき、移動物体の次のx位置を決める関数,このゲームではxが決まればyは自動的にもとまるのでxのみを返す //位置エネルギーと運動エネルギーの等価と折れ線の境界線を越える場合の処理を考えて処理を記述する。 } this.putGroundLine=function(ctx){ //地面の凸凹を折れ線で視覚化。 ctx.beginPath(); var d=this.MapSplitSize; ctx.moveTo(0,mapHeight-g_HeightDates[0]); for(i=0;i g_HeightDates.length;i++){ ctx.lineTo(d*i+1,mapHeight-this.g_HeightDates[i]); //ctx.lineTo(d,mapHeight-this.g_HeightDates[i])); } ctx.stroke(); } this.groundHitCheck=function(x,y,nextX,nextY){ //地面との当たり判定。 //折れ線地面との当たり判定を行う //何かバグがあったら怖いので、ここはついでの判定 if(nextX =0 || mapWidth =nextX){ return true; } if(nextY =0){ return true; } var nXF; var XF; nXF=Math.floor(nextX/this.MapSplitSize); XF=Math.floor(x/this.MapSplitSize) if(nXF==XF){ //折れ線の線分のみの場合 var t1=this.a[XF]*(nextX-XF*this.MapSplitSize)+this.g_HeightDates[XF]-nextY; if(t1 =0){ return true; }else{ return false; } }else{ //折れ線の凸か凹みを var s=Math.min(nXF,XF); var b=Math.max(nXF,XF); if(this.pointTypes[s] 0){ //凹地形を間にはさんでいる場合 //点が2本どちらかの折れ線の下にあるかの判別式の和集合 var t1=this.a[s]*(nextX-s*this.MapSplitSize)+this.g_HeightDates[s]-nextY; var t2=this.a[b]*(nextX-b*this.MapSplitSize)+this.g_HeightDates[b]-nextY if(t1 =0 || t2 =0){ return true; }else{ return false; } }else{ //凸地形の場合の判別式に限り、中間点での当たり判定を求める必要あり、中間点の数は後日修正予定。 //凸地形を間に挟んでいる場合 //点が2本の折れ線の下にあるかの判別式の共通集合 var t1=this.a[s]*(nextX-s*this.MapSplitSize)+this.g_HeightDates[s]-nextY; var t2=this.a[b]*(nextX-b*this.MapSplitSize)+this.g_HeightDates[b]-nextY if(t1 =0 t2 =0){ return true; }else{ return false; } } } return false; } } function registerBallet(bc){ //弾を管理する配列に弾を登録する bc.no=eBullet_manage.length; eBullet_manage.push(bc); } function delBallet(delNo){ //弾を管理する配列から弾を削除する //この関数を呼び出す場合、呼び出し元のループを-1する必要がある //弾が一個のときこの関数はどうなるか? if(eBullet_manage.length 1){ eBullet_manage[delNo]=eBullet_manage.pop(); eBullet_manage[delNo].no=delNo; }else{ var a=eBullet_manage.pop(); } } function CreateMyUnit(x,y){ this.x=x; this.y=y; } function CannonBullet(x,y,xSpeed,ySpeed){ this.x=x;//弾のスタート位置 this.y=y; this.nowX=x;//弾の今の位置 this.nowY=y; this.xSpeed=xSpeed; this.ySpeed=ySpeed; this.r=10//弾の当たり判定、空中でこの範囲内に主人公機がいれば当たる this.state=0//大砲の弾の状態、0なら移動中、1なら着弾し爆発エフェクト this.explosionTimer=30;//爆発の持続時間 nFPS this.explosionSize=20;//爆発時のサイズ,ゲーバラとあわせてよく考える必要あり this.nextX=x;//弾の移動後の位置 this.nextY=y;//弾の移動後の位置 this.time=0;//弾が発射されてからの秒数、1fpsごとにbasicClockだけ増加する。 this.no=0; this.img=BulletPict; this.img.width=10; this.img.height=10; this.imgSize=10; this.img2=BulletExplosion;//爆発画像 this.setDates=function(x,y,speedX,speedY){ this.nextX=x;//弾の移動後の位置 this.nextY=y; this.x=x;//弾のスタート位置 this.y=y; this.nowX=x;//弾の今の位置 this.nowY=y; this.xSpeed=xSpeed; this.ySpeed=ySpeed; } this.move=function (debug) { //弾の移動state=0なら移動処理; //state=1なら爆発アニメ,explosionTimeを1減らし、これが0以下になるまでは爆発効果 //計算により弾が地面とぶつかることが判明した場合、state=1に変更、弾を爆発させる。 //debug.alert("a"); if(this.state==1) { //debug.alert("b"); this.explosionTimer--; if(this.explosionTimer 0) { // eBullet_manageからこの弾を削除する関数を呼び出す delBallet(this.no); //return false;//弾を削除したのでそのことを呼び出し元に伝える } }else { //debug.alert("c"); //弾の移動処理 this.time+=baseClock; var t=this.time; this.nowX=this.nextX; this.nowY=this.nextY; this.nextX=t*this.xSpeed+this.x; this.nextY=t*this.ySpeed-0.5*g*t*t+this.y; if(gd.groundHitCheck(this.nowX,this.nowY-this.r,this.nextX,this.nextY)==true) { this.state=1; this.img=this.img2;//爆発画像 this.r=this.explosionSize; } } //return true; } } function Ground_hit_check(x,y,nextX,nextY){ if(mapWidth =nextX || nextX =0){ return true; } if(nextY =0){ return true; } return false; } 大砲テスト用ページ。 http //1ka2ka.com/archives/201006/09_203630.htmlを参考に作成。 大砲がマウスポインターを狙って定期的に玉を発射したならお慰み。 DHTML+JScript5.5で実装。 固定画面に次々と現れる雑魚敵を倒す超古典ゲームになる予定。 ?xml version="1.0" encoding="UTF-8"? !DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http //www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" html xmlns="http //www.w3.org/1999/xhtml" xml lang="ja" lang="ja" head meta http-equiv="Content-Type" content="text/html; charset=EUC-JP" / meta http-equiv="Content-Language" content="ja" / meta http-equiv="Content-Style-Type" content="text/css" / meta http-equiv="Content-Script-Type" content="text/javascript" / title Canvas /title !--[if IE] script type="text/javascript" src="excanvas.js" /script ![endif]-- script type="text/javascript" src="2dGameTest2.js" /script script type="text/javascript" var cW=1000; var cH=600; var mouseX; var mouseY; var canvas; var ctx; window.alert("test"); var cannonPict=new Image(); cannonPict.src="hibana2.jpg";//?" + new Date().getTime(); var BulletPict=new Image(); var BulletExplosion=new Image(); BulletExplosion.src="bakuhatu.jpg"; BulletPict.src="hibana2.jpg"; BulletPict.width=5; BulletPict.height=5; e_manage.push(new eCannon(100,400.5,30,10,25,5,40,window,cannonPict)); e_manage.push(new eCannon(200,400,10,5,30,15,40,window,cannonPict)); e_manage.push(new eCannon(300,410.5,30,10,25,5,40,window,cannonPict)); e_manage.push(new eCannon(400,400,10,5,30,15,40,window,cannonPict)); e_manage.push(new eCannon(500,510.5,30,10,25,5,40,window,cannonPict)); myUnit=new CreateMyUnit(200,200); var l=0; setTimeout("timer()",2000); function timer(){ canvas = document.getElementById( Map ); ctx = canvas.getContext( 2d ); ctx.clearRect(0, 0, cW, cH); for(i=0;i e_manage.length;i++){ e_manage[i].attack(window); } for(i=0;i eBullet_manage.length;i++){ ctx.fillText(eBullet_manage[0].nextY,5,72); ctx.fillText(eBullet_manage[0].nextX,5,84); eBullet_manage[i].move(window); } gd.putGroundLine(ctx); for(i=0;i e_manage.length;i++){ ctx.drawImage(e_manage[i].img,e_manage[i].x , cH-e_manage[i].y); } for(i=0;i eBullet_manage.length;i++){ ctx.drawImage(eBullet_manage[i].img,eBullet_manage[i].nextX,cH-eBullet_manage[i].nextY, eBullet_manage[i].r,eBullet_manage[i].r); } l++; ctx.globalAlpha = 1; ctx.fillStyle = "#666666"; ctx.fillText("X座標:" + mouseX, 5, 12); ctx.fillText("Y座標:" + mouseY, 5, 24); ctx.fillText("test;"+l,5,36) ctx.fillText("eCount;"+e_manage.length,5,48) ctx.fillText("eCount;"+eBullet_manage.length,5,60) setTimeout("timer()",30); } window.onload = function() { draw(); window.alert("test1"); } function draw(){ canvas = document.getElementById( Map ); canvas2= document.getElementById( MapBack ); window.alert("a01"); mapHeightDates=new Array(200,230,234,277,320,368,339,374,348,357,362,326,317,309,279,322,294,267,267,100,200); window.alert("a02"); gd=new ground_dates(mapHeightDates,50); window.alert("a03"); window.alert("a04"); canvas.onmousemove = mouseMoveListner; function mouseMoveListner(e) { var rect = e.target.getBoundingClientRect(); mouseX = e.clientX; mouseY = rect.height+rect.top-e.clientY; myUnit.x=mouseX; myUnit.y=mouseY; } } /script style type="text/css" canvas { border 1px solid black; } /style /head body onload="draw();" canvas id="Map" top="0" left="0" width="1000" height="600" /canvas canvas id="MapBack" top="0" left="0" width="1000" height="600" /canvas p id="debug" name="debug" avc /p /body /html
https://w.atwiki.jp/goronka/pages/1584.html
【作品名】Nega0 【ジャンル】エロゲ、SLG 【先鋒】ワイルド・B(神山微意子) 【次鋒】ポジティブワン(守沢いちよ) 【中堅】灯台ロボwithバーニング・A(木之元英子) 【副将】夢埜玲子 【大将】龍神 【共通設定・世界観】 認識世界・共通世界 認識世界とは個人の心の世界、深層心理といえるべき場所。 魔法少女はここで思ったことを共通世界に「現実」として具現化させている。 共通世界とは我々で言う現実世界のこと。 魔法・魔法少女 現実を自分の思うままに改変することが出来る能力及び使役者の総称。 正確にはすぐさま現実世界そのものを改変しているのではなく、 「あるはずがない」という現象や物事自体を自らの認識から否定した上で 強引に現実世界に干渉し他人全てに「あるはずがない」ことを「普遍なもの」と認識させる能力である。 そのため魔法自体は一種の精神攻撃・支配、記憶・認識改竄に部類されるが、 「あるはずがない」という自分の認識さえも破棄しているので効力は全能に限りなく近いと思われる。 「過去を書き換える」「不可能を可能にする」「ご都合主義をつくりだす」「夢を叶える」 といったこと実行しようとして「魔法少女が存在する」という認識に結びついた。 実際は大将が与えた能力であり、大将を除くメンバーは魔法を行使できる。 効力範囲は少なくとも惑星、改変描写はないが宇宙が存在するので最大宇宙並みか。 あまりに強い魔法が反発しあうと世界が認識させるのを止めフリーズする。 なお魔法の発動に失敗すると「変えようとした」認識は他者に残るが 「変えようとした」本人は認識世界に取り残されてしまう。 作中では魔法の発動に失敗し「魔法少女は存在するが自分はこん睡状態」という現実に改変されていた。 以下作中で起こった魔法による現実(認識)改変 「魔法少女という存在が普遍的に存在する現実に改変した」 「貧乏学生が『本当はお金持ちだった私』という現実に改変した」 「ポジティブワンが『他人の認識世界に自由に入れる』という現実に改変した」 「『10年前に取り壊された灯台が存在する』という現実に改変した」 「『1年前に死んだ犬が元気に生きている』という現実に改変した」 「『自分ではない存在(魔法少女)が攻撃魔法を使って破壊活動を行う』現実に改変した」 「魔法を伝えるために『魔法少女として生まれ変わる』という現実に改変した」 「本来デバッガー以外入ることが出来ない認識世界に『手を繋いだら入れる』という現実に改変した」 「なおたの死んだ母親が『そもそも存在していなかった』という現実に改変した」 「本来認識世界にいるだけのポジティブワンを『現実世界に自我を出せる』という現実に改変した」 「自分がもてないから『カップルがいそうなお祭りは中止になる』という現実に改変した」 「死んだはずのなおたを『生きている』現実に改変した」 「壊れたデバッグマシンであるファソが『元に戻った』現実に改変した」 「死んだはずのなおたを『召喚できる』現実に改変した」 デバッガー・デバッグ 魔法少女の過度な魔法行使による共通世界のフリーズ・崩壊を防ぐ者たちの総称。 魔法による現実改変の影響を受けない。 魔法少女の認識世界においてご都合主義の箇所に突っ込みをいれ魔法の元となる 「あるはずがない」という認識の否定を強引にやめさせ現実世界を元のあるべき世界にもどすことが出来る。 フリーズ 世界が人々に認識させるのをやめた状態。 この状態では他人の認識を改竄することなく魔法が共通世界に作用するようになる。 作中では上記のほかにお菓子の家や巨大怪獣が平然と存在している状態になっていた。 不可能と思わない限り何でもできるのでこの状態では擬似的な全能能力があると思われる。 ※上記の通り魔法少女は「あるはずが無い(≒不可能である)」という認識を破棄しているため。 また後数時間で完全に世界がフリーズし魔法少女が停止する状況だったので、 環境ルールにより先鋒・次鋒・中堅は長期戦において時間切れ負け扱いになる。 スターファイア ネガティブゼロのデバイスから放たれる時速2万キロ(秒速5.56km、約マッハ16)をこえるビーム。 その威力はビルなどの建造物はおろか山一つを完全に吹き飛ばし 地上から人工衛星を破壊可能な射程を持つ。 作中でレーザーとも呼称されている(この場合速度は光速になる。 なおスターファイアに限らず各アプリには使用制限があるが、 使用者の体感時間によって再び使用可能になるためほぼ無制限に使用できる。 攻撃力の倍化について この作品におけるダメージは全て攻撃側の数値で反映されている。 50なら50、100なら100与える攻撃となっている。 そのため数値の倍化は攻撃力そのものの倍化であるといえる。 なお、上記のスターファイアは250の攻撃力である。 魔法少女やデバッガーはともに認識世界で可能なことは全て共通世界でも問題なく可能。 そのため魔法は反応相応で効果が発生する。 【共通テンプレ】 【素早さ】数十mからのレーザーを発射後回避できる、それ相応の反応・戦闘速度 【先鋒】 【名前】ワイルド・B(神山微意子) 【属性】魔法少女 【大きさ】女子高生並み 【攻撃力】素の攻撃力は女子高生並み 【防御力】スターファイアーの48倍以上の攻撃(物理・不思議攻撃)に巻き込まれても全くダメージを受けない 【素早さ】反応は共通テンプレ並み、移動等は鍛えた女子高生並み 【特殊能力】魔法:共通設定参照、すでに魔法が発動している状態 【長所】魔法 【短所】精神耐性皆無、長期戦で負ける 【戦法】世界がフリーズしかけている環境で参戦 即魔法で自分の勝ちを願い想像する 【次鋒】 【名前】ポジティブワン 【属性】魔法少女 【大きさ】女子高生並み 【攻撃力】攻撃速度は60mから光速反応キャラが同じ距離から回避できない程度 魔奏:具現化させたピアノを弾くことで炎や雷、氷を具現化させて攻撃することが出来るアプリ 威力はスターファイアの2~3倍ほど、射程は数十mほど 魔奏・星天:星のような光を召喚し広範囲でで相手を攻撃するアプリ、威力は上記の魔奏以上 射程・範囲は数十m 【防御力】物理・不思議攻撃ともにスターファイア程度を30発程度食らっても問題なく戦闘可能 15倍なら2発、30倍なら1発耐えられる、またその程度では傷一つつかない 肉体や精神だけではなく存在自体の強度を奪われても問題なく戦闘続行可能 魔奏・輪:空間をねじ曲げ物理現象全てを無効にするアプリ 空間攻撃または不思議攻撃は普通にダメージを食らう 【素早さ】素の反応・戦闘速度は共通設定並み デバッガーが追いつけない速度で移動できるためマッハ1以上の移動速度 【特殊能力】魔法:共通設定参照、すでに魔法が発動している状態 飛行可能 自分の肉体ごと相手の深層心理に移動させて相手の認識を改竄すること出来る、発動は瞬時 ただしある程度相手が無防備な必要があるためほぼ考慮外 ポジティブワンがダメージ蓄積で戦闘不能になっても主人格である守沢いちよが表に出てきて戦闘続行可能 【名前】守沢いちよ 【属性】全ての人間の幸福を祈る魔法少女 【大きさ】女子高生並み 【攻撃力】攻撃速度は60mから光速反応キャラが同じ距離から回避できない程度 魔奏・深淵:ピアノを具現化しそれを奏でることで闇で形成された触手を発生させるアプリ 捕獲すると対象を深淵へと引きずる込むことが出来る、素の攻撃力はスターファイアの2倍程度 射程・範囲は数十mほど 【防御力】物理・不思議攻撃ともにスターファイア程度を35発程度食らっても問題なく戦闘可能 15倍なら2発、35倍なら1発耐えられる、またその程度は傷一つつかない 肉体や精神だけではなく存在自体の強度を奪われても問題なく戦闘続行可能 【素早さ】素の反応・戦闘速度は共通設定並み、移動は女子高生並み 【特殊能力】魔法:共通設定参照、すでに魔法が発動している状態 【長所】復活仕様 【短所】完全破壊された場合はいちよが出て来れない 【備考】魔法少女を広めている諸悪の根源、とされていた 【戦法】『自分は魔法少女である』という現実に改変し、魔奏・輪が発動状態で参戦 魔法で『自分が勝利する』という風に現実を改変する、効いていない場合は魔奏・星天 即行いちよになった場合は魔法で現実改変、それ以外は魔奏・深淵を使う 【中堅】 【名前】灯台ロボwithバーニング・A(木之元英子) 【属性】魔法により復活した灯台がロボットになった!+魔法少女 【大きさ】十数mの灯台に手と足がついた、バーニング・Aは女子高生並み 【攻撃力】攻撃速度は60mから光速反応キャラが同じ距離から回避できない程度 JKレーザー:灯台ロボから放たれるレーザーで攻撃するアプリ スターファイアの38倍以上の攻撃力を持つ、射程・範囲はともに数十mほど 【防御力】物理・不思議攻撃ともにスターファイア程度を50発以上食らっても問題なく戦闘可能 25倍なら2発、50倍なら1発耐えられる、またその程度では傷一つつかない 肉体や精神だけではなく存在自体の強度を奪われても問題なく戦闘続行可能 【素早さ】素の反応・戦闘速度は共通テンプレ並み、移動は大きさ相応 【特殊能力】魔法:共通設定参照、すでに魔法が発動している状態 灯台ロボは完全に破壊されるまで何度でもダメージを完全回復させることが出来る、発動は瞬時 これは魔法で「灯台ロボはやられはしない」という認識の下、魔法が発動しているため 【長所】魔法と無限再生 【短所】センスがナンセンスすぎる 【戦法】『自分は魔法少女である』という現実に改変した状態で参戦 魔法で『自分が勝利する』という風に現実を改変する、効かない場合はJKレーザー連発 【副将】 【名前】夢埜玲子(こん睡状態) 【属性】魔法を使ってこん睡状態のデバッガー 【大きさ】女子高生並み 【攻撃力】何も出来ない、特殊能力参照 【防御力】鍛えた女子高生並 【素早さ】こん睡状態なので何も出来ない 【特殊能力】魔法:共通設定参照 基点世界を共通(現実)世界とすると、この世界は夢埜玲子による魔法が常時発動している状態 よって常に魔法による精神攻撃・支配、記憶・認識改竄が行われている 範囲は惑星ほどで対象は設定より認識を持つ全ての生物 目が覚めることによって魔法は一時的に解除される、目を覚ますには玲子の認識を改竄しなければならない ただし目が覚めると魔法は通常通り行使できる 【長所】常時発動の認識改変 【短所】精神耐性もちには素で負ける 【簡易勝敗】相手が大きさ惑星未満で精神耐性を持ってない生物:認識改変勝ち それ以外:基本負け 【大将】 【名前】龍神 【属性】神の一人、世界の認識を作ったものでその管理者 【大きさ】十数mの白い龍(東洋もの) 【攻撃力】「不」のクオリア:ブレス攻撃、これを浴びたものは「やる気」というクオリアを失う 攻撃速度は共通テンプレのキャラがまともに食らってしまうほど、射程は数十m、範囲は数mか 天衣無縫:断絶の概念をこめた爪による切り裂き攻撃するアプリ 単なる物理攻撃ではなく概念による攻撃なので防御無視だろう 【防御力】認識という概念そのものであるため基本的に干渉不可 干渉できる者からの攻撃は山1個分以上の物理及び不思議攻撃を百発ほど耐えられるほど 50倍なら2発、100倍なら1発耐えられる 肉体や精神だけではなく存在自体の強度を奪われても問題なく戦闘続行可能 【素早さ】素の反応・戦闘速度はテンプレ並み、移動は劇中で不動だが大きさ程度だと思われる 【特殊能力】天変地異を引き起こせる(詳細不明のため考慮外) 上位存在であるため下位存在である人間は干渉できない 人間の心なら強制的に都合のいいように書き換えることが出来る(魔法とほぼ同様 神である龍神は、人間と別の時間軸を生きているといっても過言ではない(原文) 特に意味はないと思うが多少寿命が長いとは思われる 【長所】概念存在による干渉不可 【短所】同クラスがもう一人出てくれると最高だった 【戦法】ただそこに存在する状態で参戦(干渉不可状態 人間なら心を書き換えて勝ちを狙う それ以外または効いていないなら天衣無縫で切り裂きまくる 【備考】化身状態では少女、テンプレでは本体の状態で参戦 【old】 【名前】クールセブン(九重ナナカ) 【属性】デッバガー 【大きさ】女子高生並み 【攻撃力】攻撃速度は60mから光速反応キャラが回避できない程度 概念存在に干渉し攻撃することが出来る ゼルプストハンマー:超巨大なハンマーを召喚して相手を殴るアプリ 射程は数十mで範囲も同様、威力はスターファイアの5倍以上 【防御力】物理・不思議攻撃ともにスターファイアの直撃を10発程度耐えられるほど 【素早さ】素の反応・戦闘速度は共通テンプレ以上、移動はマッハ1以上 大将と戦えるため時間無視 【特殊能力】デッバグマシン(シド)により記憶・認識改竄を無効化 飛行可能、相手の深層心理に潜り込める、相手の認識を破壊することが出来る 【長所】ツンデレ 【短所】物分りがよすぎで色々かわいそう 【戦法】とにかくハンマー 無理そうなら相手の深層心理に潜り込んで意思を自分の都合のいいようにデバッグする 【名前】宇崎なおたwithノートパソコン 【属性】死んでいるはずの主人公、光の勇者(本人設定) 【大きさ】男子高生並み、ノートパソコン 【攻撃力】魔法によって具現化させた光の剣を装備 攻撃速度は共通テンプレから60mから光速反応キャラが回避できない程度、射程は数十mほど 概念存在に対し干渉し、攻撃することガできる 邪蒼月龍斬:秘奥義、肉体や精神だけではなく存在自体の強度を奪うことが出来るアプリ 素の攻撃力はスターファイアの5倍ほど 滅殺剣:アンデッド系モンスターを即死させることが出来るアプリ また魔中と悪魔系モンスターには3倍のダメージ補正がかかる(設定) 素の攻撃力はスターファイアの5倍ほど 地烈分断波:地を這う衝撃波で敵を攻撃するアプリ、敵の足元で爆発するので飛行中の敵にも当たる 素の攻撃力はスターファイアより強い程度 【防御力】物理・不思議攻撃ともにスターファイアーの直撃を10発程度耐えられるほど 5倍なら2発、10倍なら1発かろうじて耐えることが出来る 【素早さ】素の反応・戦闘速度は共通テンプレ並み、移動は鍛えた男子高生並み 【特殊能力】宇宙で生存可能、時間が静止した中で行動可能 魔法:共通設定参照 ファソ:携帯しているPCに住むデッバグマシン 彼女がかつての認識を保存してくれるため記憶・認識改竄を無効化にできる 【長所】劇中に魔法を使ってくれた、ファソが破壊されても戦闘続行できる 【短所】だが魔法少女じゃねーよな・・・ 【戦法】速攻魔法で『自分が勝利する』という風に現実を改変する 効かない場合PCをおいてから邪蒼月龍斬、飛んでいる敵は地烈分断波 【備考】最終話途中からの仕様で参戦 【名前】ネガティブゼロ(夢埜玲子) 【属性】魔法を使ったデバッガー 【大きさ】女子高生並み 【攻撃力】攻撃速度は共通して60mから光速反応キャラが回避できない程度 概念存在に対して干渉し攻撃することが出来る ゼルプストスパナ:デバッグマシンであるスパナを巨大化させてぶん殴る技 射程は数十mで範囲も同様、威力はスターファイアーの5倍以上 スターファイアーⅣ:共通設定参照、威力はスターファイアーの4倍程度 【防御力】物理・不思議攻撃ともにスターファイアーの直撃を10発程度耐えられるほど 5倍なら2発、10倍なら1発かろうじて耐えることが出来る 【素早さ】素の反応・戦闘速度は共通テンプレ並み、移動はマッハ1以上 また数秒で大気圏を離脱することが出来る 【特殊能力】時間が停止した中で行動可能 飛行可能、生身で大気圏離脱可能、宇宙行動可能 魔法:共通設定参照 デッバクマシン(ファソ)により記憶・認識改竄を無効化 相手の深層心理に潜り込める、相手の認識を破壊することが出来る 【長所】ただなおたの幸福の願う一途さ 【短所】余計な認識のおかげでラストに使った地球デバック用スパナが使えない 【戦法】魔法で『自分が勝利する』という風に現実を改変する 効いていない場合はスターファイアー、見えている場合はスパナで 【備考】本来はファソが必要だが魔法を使い単独で変身可能な最終話仕様で参戦 参戦:vol.90 517-520 修正:vol.91 55,56 vol.104 166-167 vol.108 386 :格無しさん:2012/05/26(土) 00 02 11.68 ID 66C6yPEG Nega0考察 この魔法は精神耐性持ちには効かない全能ってことでいいのかな。 ほぼ全能だし範囲は惑星じゃなくて単一宇宙としていいだろう。 この場合反応は数十m=60mなので同じ反応の任意全能作品としてドラクエ9から ドラクエ9 【先鋒】反応勝ち 【次鋒】反応一緒かな、分け 【中堅】幻惑か混乱耐性で防がれるか…?負け 【副将】常時世界改変勝ち 【大将】概念存在だが全能なら干渉できるか 同反応分け 2勝1敗2分け 上はほぼ勝てない。下を見る ゴーストハンター・シリーズ 【先鋒】世界改変勝ち 【次鋒】精神耐性あるけど、魔奏勝ち 【中堅】レーザーじゃきつい規模。負けか 【副将】全能規模的に負け 【大将】負け 2勝3敗 大帝国 精神耐性無いし、先手魔法で5勝(大将の攻撃が人外に通じないなら4勝一分けか) 知っておきたい 伝説の英雄とモンスター 同じく5勝or4勝1分け Xenosaga 5勝or4勝一分けかな 3すくみで ドラクエ9=ゴーストハンター=Nega0
https://w.atwiki.jp/freebsd/pages/16.html
ahd0,da0などの大量エラーメッセージ htmlプラグインエラー このプラグインを使うにはこのページの編集権限を「管理者のみ」に設定してください。 本日FreeBSD6.0をインストールしましたが、 /var/log/messagesにエラーの様なメッセージが大量に表示されました。 本当に大量なのでその中の怪しい部分を示します。 Feb 22 00 04 47 sv2 kernel Kernel Free SCB list 143 158 159 128 129 130 131 132 133 134 135 136 137 138 139 140 141 14 2 157 156 155 154 153 152 151 150 149 148 147 146 145 144 Feb 22 00 04 47 sv2 kernel Sequencer Complete DMA-inprog list Feb 22 00 04 47 sv2 kernel Sequencer Complete list Feb 22 00 04 47 sv2 kernel Sequencer DMA-Up and Complete list Feb 22 00 04 47 sv2 kernel Sequencer On QFreeze and Complete list Feb 22 00 04 47 sv2 kernel Feb 22 00 04 47 sv2 kernel Feb 22 00 04 47 sv2 kernel ahd0 FIFO0 Free, LONGJMP == 0x8276, SCB 0x2e Feb 22 00 04 47 sv2 kernel SEQIMODE[0x3f] (ENCFG4TCMD|ENCFG4ICMD|ENCFG4TSTAT|ENCFG4ISTAT|ENCFG4DATA|ENSAVEPTRS) Feb 22 00 04 47 sv2 kernel SEQINTSRC[0x0] DFCNTRL[0x4] (DIRECTION) DFSTATUS[0x89] (FIFOEMP|HDONE|PRELOAD_AVAIL) Feb 22 00 04 47 sv2 kernel SG_CACHE_SHADOW[0x2] (LAST_SEG) SG_STATE[0x0] DFFSXFRCTL[0x0] Feb 22 00 04 47 sv2 kernel SOFFCNT[0x0] MDFFSTAT[0x5] (FIFOFREE|DLZERO) SHADDR = 0x00, SHCNT = 0x0 Feb 22 00 04 47 sv2 kernel HADDR = 0x00, HCNT = 0x0 CCSGCTL[0x10] (SG_CACHE_AVAIL) Feb 22 00 04 47 sv2 kernel Feb 22 00 04 47 sv2 kernel ahd0 FIFO1 Free, LONGJMP == 0x8063, SCB 0xd Feb 22 00 04 47 sv2 kernel SEQIMODE[0x3f] (ENCFG4TCMD|ENCFG4ICMD|ENCFG4TSTAT|ENCFG4ISTAT|ENCFG4DATA|ENSAVEPTRS) Feb 22 00 04 47 sv2 kernel SEQINTSRC[0x0] DFCNTRL[0x0] DFSTATUS[0x89] (FIFOEMP|HDONE|PRELOAD_AVAIL) Feb 22 00 04 47 sv2 kernel SG_CACHE_SHADOW[0x2] (LAST_SEG) SG_STATE[0x0] DFFSXFRCTL[0x0] Feb 22 00 04 47 sv2 kernel SOFFCNT[0x0] MDFFSTAT[0x5] (FIFOFREE|DLZERO) SHADDR = 0x00, SHCNT = 0x0 つづく htmlプラグインエラー このプラグインを使うにはこのページの編集権限を「管理者のみ」に設定してください。 つづき Feb 22 00 04 47 sv2 kernel HADDR = 0x00, HCNT = 0x0 CCSGCTL[0x10] (SG_CACHE_AVAIL) Feb 22 00 04 47 sv2 kernel LQIN 0x5 0x0 0x0 0x2e 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x0 0x40 0x0 0x0 0x0 0x2 0x0 Feb 22 00 04 47 sv2 kernel ahd0 LQISTATE = 0x1, LQOSTATE = 0x19, OPTIONMODE = 0x42 Feb 22 00 04 47 sv2 kernel ahd0 OS_SPACE_CNT = 0x1f MAXCMDCNT = 0x4d Feb 22 00 04 47 sv2 kernel ahd0 SAVED_SCSIID = 0x0 SAVED_LUN = 0x0 Feb 22 00 04 47 sv2 kernel Feb 22 00 04 47 sv2 kernel SIMODE0[0xc] (ENOVERRUN|ENIOERR) Feb 22 00 04 47 sv2 kernel CCSCBCTL[0x4] (CCSCBDIR) Feb 22 00 04 47 sv2 kernel ahd0 REG0 == 0x7e, SINDEX = 0x102, DINDEX = 0x102 Feb 22 00 04 47 sv2 kernel ahd0 SCBPTR == 0x25, SCB_NEXT == 0x7e, SCB_NEXT2 == 0xff2f Feb 22 00 04 47 sv2 kernel CDB 2a 0 5 f2 3b 3b Feb 22 00 04 47 sv2 kernel STACK 0x24 0x0 0x0 0x0 0x0 0x0 0x0 0x0 Feb 22 00 04 47 sv2 kernel Dump Card State Ends Feb 22 00 04 47 sv2 kernel (da0 ahd0 0 0 0) SCB 46 - timed out Feb 22 00 04 47 sv2 kernel (da0 ahd0 0 0 0) Other SCB Timeout Feb 22 00 04 47 sv2 kernel ahd0 Recovery Initiated - Card was not paused この内容が分かる方、いらっしゃいますでしょうか? 私は一体どうすれば良いのでしょう。。。 htmlプラグインエラー このプラグインを使うにはこのページの編集権限を「管理者のみ」に設定してください。 ↑↑↑ 失礼、名前を間違えました。 宜しくお願いします。 htmlプラグインエラー このプラグインを使うにはこのページの編集権限を「管理者のみ」に設定してください。 何か困ったことがあるのですか? htmlプラグインエラー このプラグインを使うにはこのページの編集権限を「管理者のみ」に設定してください。 SCSI HDDをすぐにdd_rescueでコピーしとけ htmlプラグインエラー このプラグインを使うにはこのページの編集権限を「管理者のみ」に設定してください。 でも ahd って時々 boot 時に dump message 吐くよね? (boot -v してるわけでもないし 毎回ってわけでもないし はっきり error と書いてあるわけでもない) こちらは 6-stable ですけど htmlプラグインエラー このプラグインを使うにはこのページの編集権限を「管理者のみ」に設定してください。 htmlプラグインエラー このプラグインを使うにはこのページの編集権限を「管理者のみ」に設定してください。 970 ものが新品同様なら電源きってケーブルの接続チェック htmlプラグインエラー このプラグインを使うにはこのページの編集権限を「管理者のみ」に設定してください。 htmlプラグインエラー このプラグインを使うにはこのページの編集権限を「管理者のみ」に設定してください。 973 htmlプラグインエラー このプラグインを使うにはこのページの編集権限を「管理者のみ」に設定してください。 974 htmlプラグインエラー このプラグインを使うにはこのページの編集権限を「管理者のみ」に設定してください。 975 お返事ありがとうございます。 買って1ヶ月ちょっとの為、ケーブル接続チャックしましたが ちゃんと接続されていました。(HDDにもSCSIカードにも) すぐdd_rescueでバックアップとった方が良いとの事ですが、 これはHDDの不良なのでしょうか。。。 今まではFreeBSD4.11を使っていたのですが、 /var/log/messagesにこのような出力が出た事は無かったです。
https://w.atwiki.jp/mfs2024-official/pages/19.html
Season 0 サーバ設定 以下の理由で、各シーズンのサーバ設定内容を書き残す。 次シーズンのサーバ設定について、運営内で合意を取る 今シーズンのサーバ設定を確認する 来シーズン以降のサーバ設定の参考にする 導入Mod MirrageFairy2024 (https //modrinth.com/mod/miragefairy2024) 主要Mod Applied Energistics 2 (https //www.curseforge.com/minecraft/mc-mods/applied-energistics-2) アイテム倉庫・自動加工ラインを追加 KubeJS (https //kubejs.com/) 生活環境をユーザー毎に変えるため、ユーザー毎に初期リスポーン位置を変更する 各種コンフィグ変更箇所 Minecraft本体 "keepInventory"をonに変更する MirrageFairy 2024 変更なし Applied Energistics 2 "channels"設定を"infinite"に変更 (チャンネル使用可能数を無制限に変更) KubeJS "kubejs/server_scripts/custom_respawn.js"に以下のスクリプトを追加 (コマンドブロックにコマンドを貼り付け、ユーザー毎に初期リスポーン位置をばらけさせる) // シードから乱数生成器を作る関数 // https //stackoverflow.com/a/47593316 function sfc32(a, b, c, d) { return function() { a |= 0; b |= 0; c |= 0; d |= 0; let t = (a + b | 0) + d | 0; d = d + 1 | 0; a = b ^ b 9; b = c + (c 3) | 0; c = (c 21 | c 11); c = c + t | 0; return (t 0) / 4294967296; } } ServerEvents.customCommand('custom_respawn', event = { // プレイヤー情報出力 const player = event.player.name.string; console.log(`Player = ${player}`); // プレイヤーのUUIDを取得 const uuid = event.player.uuid; console.log(`UUID = ${uuid.toString()}`); // UUIDからシードを生成 const hash = uuid.hashCode(); console.log(`Hash = ${hash}`); // シードから乱数生成器を生成 const rand1 = sfc32(hash, hash, hash, hash); const rand1Int = () = Math.floor(rand1() * 4294967296); const rand = sfc32(rand1Int(), rand1Int(), rand1Int(), rand1Int()); // 念のため乱数生成器を攪拌 for (let i = 0; i 100; i++) { rand(); } // プレイヤーを壁に埋まらないような座標にテレポート const dimension = 'minecraft overworld'; const x = Math.floor(rand() * 20000 - 10000); const z = Math.floor(rand() * 20000 - 10000); event.server.runCommand(`execute in ${dimension} run tp ${player} ${x} 260 ${z}`); // プレイヤーが落下ダメージを受けないようにする event.server.runCommand(`effect give ${player} minecraft slow_falling 60`); }); // コマンドブロックに貼り付けるコマンド例 // execute as @p[limit=1,distance=0..3] run kubejs custom_command custom_respawn // これでプレイヤーが隣接して設置された石の感圧床を踏むと、プレイヤーが飛ばされるはず 完走した感想 シーズン未終了
https://w.atwiki.jp/doroboumama/pages/6938.html
米袋奥 127 :名無しの心子知らず:2011/03/22(火) 00 21 10.54 ID 0Z2evaU3 夜食代わりに投下。 此方は関西で震災の影響も無く、ただスーパーの食品が 品薄だったり値上がりがあったり程度。 買い物に出ている間に父が 『仕事のついでにお裾分けしといたから、玄関に置いてあるぞ』 と電話してきた。 父は米穀卸売業というやつで、お米や小麦粉に関するサンプル品や キャンペーン賞品の余り等々昔から持ち帰ってくる。 今回もフリカケやホットケーキミックス等を沢山入れてくれたらしい。 買い物を終えて自宅に帰ると玄関脇でゴソゴソしてる不審人物発見 …思わず固まったよ。 振り返った泥は斜向かいのママさんだった。 私「あの…なにをs(ry」 泥「こんなにあるんだからいいじゃないの!! こんな時は助け合いふじこふじこ」 私「そうですよね!被災地の方々に募金でもなさったらどうですか? 私もさっきしてきましたよー」 とまくし立てて、取り敢えず泥が引きずろうとしてる米袋を取り上げ、 肩にかついでさっさと家の中に入った。 火事場の馬鹿力ってこれかーと我ながら感動しつつ、簡単な 昼御飯を済ませたら再度泥が凸してきた。 ・お米じゃなくてもいいから何かクレクレ ・でもあんな貴重なお米があるんだったらお裾分けして当然よ ・コネがあるのね紹介して ちゃっかり袋の中を見られていたようでクレクレしてきたけど、 旦那が出てきたらビビって帰っていった。 せっかく持ってきてくれた父には悪いがなんだかorz 父にも事の顛末を電話しておきましたが、陶器の茶碗セットと インスタントラーメンが盗まれてて更にorz 130 :名無しの心子知らず:2011/03/22(火) 00 26 34.59 ID Wk6nS5Mr 127 警察呼んできっちりカタ付けんとな。 131 :名無しの心子知らず:2011/03/22(火) 00 26 41.25 ID R81bAs/U 「助け合う」って、一方だけが利益を享受する事ではなくて それぞれがお互いの助けになる事のハズだよね 132 :名無しの心子知らず:2011/03/22(火) 00 34 22.66 ID 0Z2evaU3 130 結構な田舎なので、警察呼ぶとこっちが白い目で見られる 可能性がありまして… 明日、町会長さんにお話しにいく予定です。 父が米袋に差し入れを詰め込むときに、社長や他の社員さんも いらっしゃったので証言もしてもらえますし。 133 :名無しの心子知らず:2011/03/22(火) 00 38 49.73 ID eYQ1pbAf 泥の勢いに負けちゃダメだ! 盗られたものがあるなら、日が経つ前に 『あなたが漁っていた荷物からこれこれが減っている』 って言ったほうが良いような気がするけど、どうだろう? そういうのは助け合いじゃなくてたかりっていうんだよねえ。 次のお話→錆び自転車夫(135)
https://w.atwiki.jp/lightsaber/pages/39.html
Petit Crouton (a.k.a. PC) v1.6 Petit Crouton(略称 PC-L) v2.0 Entry Range Illuminated Saber Controller - User’s manual 簡易版ライトセーバー用制御ボードのユーザーマニュアル c Erv’ - Plecter Labs - v 2.0 - January 2012 erv@plecterlabs.com http //www.plecterlabs.com We spent a lot of time writing this manual to ensure all the important information is provided for proper use of that board. If you are new to saber building, to the use of Plecter Labs boards, or simply to electronics in general, we highly recommend you print a copy of that document and keep it with you during the whole process of installing PC in your hilt. この制御ボードを適切に使うための情報を盛り込むために、我々は多大な労力を費やしました。もし初めてPlecter Labの音源ボードを使ってライトセーバーを作る場合や、電気配線の参照のためにも、このマニュアルを印刷して、製作途中にいつでも手に取れるようにしておくことをおすすめします。 Page-2 2ページ目 Index 目次 PETIT CROUTON (A.K.A. PC) V2.0 1 PETIT CROUTON(小さなクルトン 略称PC) V2.0 … 1 INTRODUCTION 3 はじめに … 3 Sound section 3 サウンドセクション…3 Petit Crouton V2.0 Features Maximum Ratings 4 PC V2.0の仕様と諸元 … 4 TOOLS AND PARTS REQUIRED TO INSTALL/OPERATE THE MODULE 5 組立と操作に必要な工具と部品 … 5 SD CARD CONTENTS, SOUND BANKS AND SLOTS 6 SDカード収録内容、サウンドバンクとスロット … 6 BOARD OVERVIEW 7 基板概略図 … 7 USER’S NOTES 8 自由帳 … 8 WIRING AND OPERATING THE MODULE 9 配線と使用方法 … 9 General Power Switch Recharge Port 9 主電源スイッチと充電ポート … 9 General wiring 11 一般的な配線方法 … 11 USER’S NOTES 11 自由帳 … 11 Animated Accent LEDs 12 動的アクセントLED … 12 Calculating resistors for LEDs 12 LED用抵抗の計算法 … 12 MAIN CONFIGURATION FILE 14 設定ファイル … 14 PARAMETERS AND FINE TUNING THE SABER 15 ライトセーバー用の設定値と適切な値 … 15 CLASHES SWINGS SELECTION MODES 18 クラッシュ音とスイング音の選択モード … 18 ADVANCED WIRING USAGE 18 高度な配線方法と使用法 … 18 WIRING A TACTILE FEEDBACK MOTOR AND A PROGRESSIVE POWER ON LED 18 振動効果用モーターと高度な通電ランプLEDの配線方法 … 18 WIRING A GENERAL POWER-ON INDICATOR / ACCENT LED 21 通電ランプLED及びアクセントLEDの配線方法 … 21 WIRING A FLASH ON CLASHTM(FOCTM) LED / DIE 22 衝撃時フラッシュ(FoC)LEDの配線方法、および専用端子について … 22 ACCENT LEDS SEQUENCER 24 アクセントLEDシーケンサー … 24 Stages Delays 24 電飾の発光順序について … 24 DEEP SLEEP FLASHING LED 26 スリープモード時の点滅LED … 26 Mute On The GoTM 26 Mute On the Go(音声オフモード … 26 TROUBLESHOOTING FAQ 27 トラブルとよくある質問 … 27 Page-3 3ページ目 Introduction はじめに The Petit Crouton is the little brother of our Crystal Focus Board. It is very similar to the CF but has a single sound banks and two accent LEDs, making it a perfect entry range sound fx and high-power LED driver combo board. Petit Croutonはerv氏の提供するCrystal Focusホードの弟分である。CFにかなり良く似ているがサウンドバンクは一つだけ、アクセントLEDは2つのみとなり、音響効果とLEDドライバーを併せ持ったエントリーレンジの基板としてはこの上ないものである。 Warning You’ve just acquired an electronic board containing parts sensitive to ESD. Final wiring assembly is under responsibility of the user with the appropriate tools and ESD protection. If you’re not familiar with ESD, please visit http //en.wikipedia.org/wiki/Electrostatic_discharge Plecter Labs can not be held responsible for improper use or assembly of the Petit Crouton board. 警告:あなたは静電気放電に敏感な電子機器を手にしています。配線と組み立ての完成には、静電気対策済み工具を使い、ボードを静電気放電から保護するなどの対策が自己責任で必要となります。 もし放電についてお知りになりたければ、Wikipediaの放電・静電気の項を参照するといいでしょう。Plecter LabsはPetit Croutonの不適切な使用と組み立てに対しては責任を負いません。 Warning High-power LEDs (such as the Luxeon brand LED, which is mentioned in this document) are extremely bright. They are considered "class 2 lasers"! You should neither look directly to the beam nor point someone with it when the blade is not attached to the hilt, just like a powerfull lamp or flashlight. Plecter Labs could not be held responsible for any bad use of high-power LEDs. To avoid injuries and retina damage due to the high brightness of those high-power LEDs, simple “emitter plugs” can be built using a piece of blade tubing ended with some decorative greeblies. 警告:ハイパワーLED(このマニュアルに登場するLuxeonブランドのLEDのようなもの)は強烈に輝きます。それらは安全基準クラス2のレーザーとみなされています!LEDからの光を直視すべきではないし、ブレードがつけられていないときのヒルトは強力な電灯やフラッシュライトと同様なので、その状態で誰かに光を向けるべきではありません。Plecter LabsはハイパワーLEDの不適切な使用について責任を負いません。 これらのハイパワーLEDによる怪我や網膜へのダメージを避けるために、(ヒルトをブレードを挿していないときには)ブレードの端材から作れる簡単な「エミッタープラグ」を用いるべきでしょう。 Sound section サウンドセクション The Plecter Labs sound board is unique. It has been developed in the purpose of improving the quality of DIY sabers sound FX in a significant way. During too many years, sound modules were obtained from sacrificed toys and remained low quality. Master Replica FX sabers broke the line with better sounds and good dynamics. However, the low resolution motion sensors used as well as closed electronics made those boards impossible to adjust in term of sensitivity or sound contents. Plecter Labs製の音源ボードは比類なきものである。それは自作・改造ライトセーバーの音響効果の著しい品質向上を目的として開発されてきた。長い間、犠牲となったオモチャから流用されていたライトセーバーの発音装置は品質が低いままだった。マスターレプリカ社製FXライトセーバーはより良い音と動作のための道を開いたものの、しかしながらモーションセンサーの精度は低く、感度を調節することも出来ず、音色を変えることも出来なかった。 We have monitored several attempts for building an embedded sound module playing custom changeable sounds, often based on chipcorders. Using bulky parts, those were often unreliable and hard to fit in a hilt. Not to add those chipcorders were designed for digital answering machines, and therefore feature a bad restitution quality (voice sample rate - 8 KHz). 音色が自作できて変えられる発音装置をつくる試みが幾つか知られているが、それらはボイスレコーダーを基としたものだった。サイズがかさばり、ヒルトに入れにくいものになるのが普通であった。ボイスレコーダーはデジタル応答装置のためにデザインされており、音声解像度も低かった(サンプリングレートは8Khz)。 Plecter Labs decided to process the internal motion sensors and the sound generation on the same board which requires some non-volatile memory. Second, we needed a simple way to upload or download sound contents or configuration of the saber through a simple and standard way. To avoid any plugging problem with a small connector and an easy-to-loose cable, we opted for a high-end flash memory card in the SD format (now microSD). Plecter Labsは不揮発メモリを搭載し、モーションセンサーと発音装置をひとまとめにした音源ボードを製作することを決意した。それにはセーバー用の音声や設定ファイルを簡単かつ一般的な方法で書き込める単純な方法が必要だった。外れやすい小さいコネクターを接続することにまつわる諸問題を避けるため、SDフォーマットされた最高仕様のフラッシュメモリーカード(現在はmicroSD)を適当とした。 Page-4 4ページ目 Inserted in a USB card reader like the one we sell, the card is seen as a USB storage key and it takes a few seconds only to transfer files to or from the card, on Mac or PC, without the need of any custom piece of software. Plecter Labsのwebストアでも販売しているUSBカードリーダーにSDカードを差し込めば、MacでもPCでも特別なソフト無しに数秒のうちにUSBストレージとしてカード内部にアクセスすることが出来る。 Petit Crouton V2.0 Features Maximum Ratings Petit Crouton V2.0の仕様と諸元 ・Dimensions 48x23.5x7.5 mm (with the microSD card). ・寸法:48x23.5x7.5 mm (microSDカード装着時) ・Power supply 5.5 to 11 V / 2.5A (with the High-power LED). 2 li-ion cells (18650 or 14500) batteries recommended. ・使用電力 5.5~11V / 2.5A(ハイパワーLED使用時)。2本のリチウムイオン電池(18650もしくは14500)の使用推奨 ・Idle current consumption 3 mA (deep sleep mode) ・待機電力 3mA(ディープスリープモード) ・2 A high-power LED drive ・2AのハイパワーLEDを制御 ・Speaker 4 to 8 ohm. ・スピーカー 4~8Ω ・Audio output Power 2W ・オーディオ出力 2W ・Accent LEDs 2 ・アクセントLED 2個まで ・32 stages sequence with stop and loop instructions (using either 0 or 65535 for the delay) ・ストップ、ループ指示(ディレイ値に0か65535を用いる)機能付き32段階のシーケンサー ・Accent LEDs pad current source 18 mA max per pad ・アクセントLED端子電力 端子毎に18mA ・Handles momentary or latching for blade activation ・モーメンタリ又はラッチングスイッチでスイッチオン ・Blaster Blocking Lockup Fx ・ブラスター防御・つばぜり合い効果音 ・Blade Flickering Fx ・ブレードの明滅効果 ・Blade Shimmering on Clash ・衝撃時に発光チラツキ ・Flash on ClashTM (FoCTM ) ・Flash on ClashTM 衝撃時にフラッシュ効果(FoC) ・Anti Power Off technology (A-POPTM) ・誤操作による電源OFFの防止機構(APOP)あり ・WAV file support WAV形式音源ファイルサポート ・12 bit sound ・12Bit サウンド ・SD card support up to 2GB, FAT16 or FAT32 (beta). Sandisk and Kingston brands preferred. ・SDカード:最大2GB、FAT16又はFAT32フォーマット。サンディスク製又はキングストン製推奨 ・Hum resume defines if you come back to where the hum has been interrupted or not. Interesting for certain hums. Not sample accurate but resumes the hum in a ballpark of 11ms from where it's been interrupted by a fx sound ・ハム音のレジューム機能:ハム音が遮られたところから続けて再生したい場合設定する。明確なハム音を流したい場合に。正確なサンプリングではないが効果音で遮られてからおよそ11ミリ秒後にハム音再生が再開する。 ・Anti power off delay (offd) variant of our Anti Power Off technology (APOP) use an adjustable delay when cycling the the activation switch. ・Anti power off delay (offd) (電源ボタン長押による電源OFF) Anti Power Off technology (APOP)の一種で、起動スイッチの長押時間を設定できる。 ・Led current parameter now takes mA. To get 2A you would enter 2000, for 1.5A 1500 etc ・LED向け電流設定値がmAに。2Aを出力したい場合は2000、1.5Aなら1500と記述する。 ・Motion sensing thresholds now go up to 1023 (ls, hs, lc) multiply your former CF configurations by 4. ・動作検知閾値(ls, hs. lcパラメーター)範囲が1023に。 以前のCFの設定範囲の4倍。 ・General sensitivity (i) is now an integer between 0 and 99. Same kind of value than on CFv5. Previously entered as float number (0.65) but is now 65. ・総合感度パラメーター i の型が0か99までの整数型(integer)に。CFv5と同様になった。以前は0.65のように浮動小数点型だったが、65と設定するように。 ・Wiring is very similar to current CF, down to the accent LEDs location and FoC pad. ・配線方法が現在のCFに近くなって、アクセントLEDとFoCパッドの位置も同じに。 ・Shorter than PC 1.6 ・PC1.6よりも短くなった。 ・Mute on the go ・Mute on the go(消音モード) Page-5 5ページ目 Tools and Parts required to install/operate the module 組立と操作に必要な工具と部品 ・an ESD safe soldering station soldering wire (60/40, 1mm OD or eq.) ・静電気対策済みハンダごてとハンダ(60/40、1mm径又は同等品) ・pliers (flat and cutting) ・プライヤー(flat and cutting) ・a Digital Multimeter / DMM (strongly advised, so useful) ・デジタルテスター ・a latching or momentary switch for the blade ignition, and a momentary switch for the auxiliary switch. ・On/Off用にラッチング又はモーメンタリスイッチ。補助効果用にはモーメンタリスイッチ。 ・wire heat shrink ・リード線と熱収縮チューブ ・rechargeable Batteries ・充電池 ・recharge port (canon 2.1mm socket) ・充電用ポート(canon 2.1mmソケット) ・appropriate Battery charger ・充電池毎の専用充電器 ・a USB SD card reader accepting micro SD card or a regular SD card reader with a micro to regular SD card adapter. ・SDカード又はMicroSDカードが装着可能なUSB SDカードリーダー ・a computer ・パソコン ・a digital audio editor software handling WAV files if you wish to create your own sound fonts. ・サウンドフォントを作成したい場合は、WAVファイルを編集できるデジタルオーディオエディタ Page-6 6ページ目 SD card contents, Sound Banks and Slots SDカード収録内容、サウンドバンクとスロット Sounds are stored in the WAV format (16 bits, 22050 samples per second). サウンドデータはWAVフォーマット(16bit、22050サンプル/秒)で収録。 Petit Crouton has a single sound bank, with all the files (including configuration files) stored in the root directory of the SD card. Despite the module uses a 12 bit sound output, we kept the 16 bit format of the sound font, therefore ensuring immediate compatibility with CF sound fonts. You can now drop the contents of a CF sound bank directly onto the root directory of the SD card for the PC 2.0. It will only use the files necessary and ignore the rest. Petit Croutonは一つのサウンドバンクを用いる。設定ファイルを含むすべてのファイルはSDカードのルートディレクトリに収録されている。PCは12ビット出力だけれども、CF用サウンドフォントとの互換性を保つために、16ビット形式にしてある。PC2.0からはCF用サウンドバンクの内容をそのままSDカードのルートディレクトリにコピーすることが出来るようになった。その場合、PCに必要なファイルのみ使われて、残りは無視される。 WAV sound files must comply with the format above or they will be skipped during the boot, leading to sound gaps or board failure. WAV形式ファイルは上記レートでなければならず、これを越えるレートの場合はブート時の読み込みでスキップされて再生されない為、無音が発生したり基板のエラーを引き起こす。 Petit Crouton has a single sound bank, with all the files (including configuration files) stored in the root directory of the SD card. The sound content of a bank is called a Sound Font. Petit Croutonはサウンドバンクを一つだけ持っており、すべてのファイル(設定ファイルを含む)はSDカードのルートディレクトリに格納されている。バンク内の音源ファイルはサウンドフォントと呼ばれる。 A sound bank has 26 sound slots split as below サウンドバンクは下記に示す26個のスロットに分割されている a boot sound (boot.wav) 通電音(boot.wav) a power on sound (poweron.wav) 発光起動音(poweron.wav) a power off sound (poweroff.wav) 発光終了音(poweroff.wav) continuous humming (hum.wav) アイドル時ハム音(hum.wav) 8 clash sounds (clash1.wav to clash8.wav) 8個の衝撃音(clash1.wav to clash8.wav) 8 swing sounds (swing1.wav to swing8.wav) 8個のスイング音(swing1.wav to swing8.wav) 4 blaster blocking sound (blaster.wav) 4個のブラスター防御音(blaster1.wav to blaster4) a blade lockup sound (lockup.wav) 鍔迫り合い音(lockup.wav) force sound (force.wav) フォースアクション音(force.wav) When the power supply voltage is applied to the board, our board “boots” and plays a little logo sound to notify the user, just like a digital camera. This little logo makes sure the Petit Crouton Saber Core started properly and it gives a special identity to the saber and to the loaded sound font. This sound can be of course customized. If the boot sound boot.wav is not on the SD card, a little beep is played instead. If you don’t want any sound when powering the module, create a WAV sound file with 100 ms of silence. ボードに必要な電源が供給されると、ボードが起動し、ちょうどデジカメのようにユーザーにそれを知らせる、ちょっとしたロゴサウンドが再生される。このロゴサウンドはPetit Crouton Saber Coreが適切に起動し、サウンドフォントをロードして、特別な特徴をライトセーバーにもたらしたことを表している。このブート音はもちろんカスタマイズできる。もし通電音であるboot.wavがSDカードに記録されていない場合、小さなビープ音が代わりに流される。もし通電時に何の音も流したくない場合は、無音を100ミリ秒記録したWAV形式ファイルを(boot.wavとして)用いると良い。 The sounds must be all there on the SD card and be named properly (lower case) to have the module operating properly. Same thing for the configuration files (.txt). We advise the user to keep all its sound and configuration files in specific folders on the hard disk on the computer so that changing the saber’s contents remains easy. Use some explicit naming of the folders so that you can easily remember what the sound font and configuration files are doing, for instance [very_sensitive_dark_lord_saber]. 基板が正しく動作するためには、音源データが正しく名付けられて(全て小文字)、SDカードに配置されていなければならない。設定ファイル(confi.txt)も同様である。セーバーの設定を簡単にするために、音源データや設定ファイルをパソコンの適当な名前をつけたフォルダに保存しておくことを勧める。たとえば「かなり敏感設定のダークロードセーバー」とか、設定がわかり易い名前のフォルダーにしておくと、後で内容を思い出しやすいだろう。 Page-7 7ページ目 Creating Your Own Sounds 効果音の作り方 It’s a great personal satisfaction to build up your own soundfont. However, it’s not so easy. Please read our online tutorial about that particular topic. 自分用にサウンドフォントを創り上げるのはとても楽しいけれども簡単ではない。やり方はPlecterLabsサイトのチュートリアルを参照のこと。 Installing a Sound Font on the SD card SDカードへのサウンドフォントの記録方法 Although editing the configuration files (text files) can be done directly onto your microSD card, changing the SOUND FILES (.wav of ANY kind) requires you to format the microSD card! This is not a recommendation, it is A REQUIREMENT YOU MUST FORMAT THE SD CARD prior to changing any sound files! 設定ファイル(テキストファイル)はMicroSD上で直接編集できるけれども、音源ファイル(WAV形式とか)を変更するときはMicroSDカードをフォーマットする必要がある。これは単なる推奨ではない。音源ファイルを変更するときは必ずSDカードをフォーマットしなければならない! 1. First thing backup the SD card on the hard disk. Easy to do, however most people don't bother doing so and end losing their initial configuration. 1.まず最初に、ハードディスク上にSDカードのバックアップをとっておく。簡単なことだけれどもやらなかったばっかりに、初期設定を失ってしまう人が多い。 2. Unzip the sound font archive in a directory of your hard disc. 2.サウンドフォントの書庫をハードディスクのディレクトリに解凍する。 3. Take all the WAV sounds. If the sound font zip archive comes configuration files that are supposed to match the theme of the sound font, you can take it as well, but make sure the settings won’t harm anything (especially the highpower LED current). 3.WAV形式サウンドを全部選択する。もしサウンドフォントの書庫に設定ファイルが同梱されてる場合は、サウンドフォントに合わせた設定が行われいるだろうからそれを使ってもよいが、(特に高出力LEDについて)設定内容が不適当でないことを確認しておく。 4. Copy the files in desired sound bank and overwrite the files 4.選択したものを内容を変えたいサウンドバンクに上書きコピーする。 5. Copy the whole SD card (Ctrl+a, Ctrl+c) to a temporary folder of the hard drive. 5.SDカードの全体をハードディスクの一時フォルダにコピーする(ctrl + Aで全体を選択、ctrl + Cでコピー、ctrl + Vで貼付け)。 6. Format the SD card in FAT (FAT16 or FAT32) 6.SDカードをFAT(FAT16形式またはFAT32形式)でフォーマット。 7. Select the whole content of the temporary directory on the hard drive and copy it in one run to the SD card (Ctrl+a, Ctrl+c, Ctrl+v on the SD drive) 7.先ほどの一時フォルダの内容を全てコピーし、SDカードに貼り付ける。 Page-8 8ページ目 Board Overview 基板全体図 (基板写真及び各部名称) High-Power LED Pads 高出力LED端子 Accent LED pads アクセントLED端子 Aux. Switch 補助スイッチ端子 Ignition Switch 起動スイッチ端子 FoC pad FoC端子 3.3v pad 3.3v出力端子 MCU メモリコントロールユニット Power Supply Pads 電源端子 Speaker Pads スピーカー端子 User’s Notes 自由帳 (メモなどを自由に書き込める空白) Page-9 9ページ目 Wiring and Operating the Module 配線と使用方法 The board must be powered with an appropriate battery pack. We highly recommend the use of good quality li-ion battery packs made of 14500 or 18650 cells and including protection PCBs. The AW brand makes superior quality batteries while the Ultrafire remains a cost effective solution. PC基板は仕様に応じたバッテリーパックで給電されなければならない。保護回路付きの高品質な14500ないし18650リチウムイオン電池で構成されたバッテリーパックを強く推奨する。価格面からはUltraFireブランドの電池がよいけれども、AWブランドの方が高品質である。 Unless you have a convenient way to open the hilt and access the inside of the saber (Graflex base for instance), we strongly recommend the use of a directly connected battery pack (with a “recharge port”) vs. removable cells. Moreover, for dueling sabers, directly wired battery packs have more reliable connections compared to spring action battery holders. セーバーの中身にアクセスしにくい構造のヒルト(グラフレックスがベースとか)の場合、電池を取り出し可能にするよりは、回路に直付のバッテリーパック(充電ポート付き)にすることを強く推奨する。擬斗に用いるセーバーの場合はなおさらで、直接配線されたバッテリーパックはバネ付きホルダの電池よりも接触が途切れる心配がない。 A 2-cell li-ion will provide a nominal voltage of 7.4V to the board. The board isn’t compatible with a 3-cell solution without some modifications of the electronics. Ni-MH battery packs are simply not recommended since they have a bigger energy storage/volume ratio and cost of li-ion cells isn’t an issue anymore. 2個のリチウムイオン電池は通常7.4vの電圧をPC基板に供給する。PC基板は何らかの工夫なしには3個のリチウムイオン電池を使用することができない(訳注:PCの対応電圧は5.5~11V)。ニッケル水素電池は供給電圧の割にはサイズが大きくなり、リチウムイオン電池の価格ももはや問題にならないので推奨しない。 General Power Switch Recharge Port 主電源スイッチと充電ポート Despite the PC board has a very low idle current use (3mA) when the blade is off and board is in deep sleep mode, long term storage of the hilt on a shelf or display case requires the electronics to be fully shut off. To avoid the use of an additional general power switch, we use the recharge port for that very purpose. A pin 2.1 mm “Canon”socket is a popular choice. Two of those pins are connected when nothing is inserted in the socket. Contact is disrupted when a plug is inserted. PetitCroutonボードはブレードが発光せず、ボードがディープスリープモードにあるとき、非常に低いアイドル電流(3mA)に抑えられているけれども、ヒルトを長期間、棚やショーケースに保存している場合、電気回路への通電を完全にカットすることを推奨する。我々は主電源スイッチを設ける代わりに、その目的で充電ポートを用いるようにしている。2.1mm径の"Canon"ソケットがよく選ばれている。ソケットに何も挿入されていないときは2つのピンが接続されている。プラグが挿入されると接続が遮断される。 Along the years, the “kill key” technique has been developed a fake plastic plug is decorated to look like an actual part of the hilt. When inserted, it cuts the power supply to the board in the recharge port. Of course, the port recharges the internal battery pack when an actual charger plug is inserted. 数年にわたって、キルキーという手法が開発されてきた。それは、ヒルトのパーツに似せたプラスチック製のダミープラグである。キルキーが挿入されると、充電ポートからボードへの電源供給経路が断たれる。もちろん、充電ポートは実際の充電プラグを挿し込むと、内部のバッテリーパックに給電する。 Below, 2 examples of decorative kill keys (February 2006 and July 2010) 下の2つはパーツに似せたキルキーのサンプル画像 キルキーのサンプル画像 The Kill Key must be made out of a non-conductive material (PVC, Nylon etc). The left picture above shows a kill key made out of a sacrificed male plug (metal) but it’s provided only as a reference picture and plastic should be used as a rule of the thumb. キルキーは絶縁素材(ポリ塩化ビニルやナイロン)で作成されなければならない。左の写真ではキルキーがメタル製のオスプラグから流用されて作られているが、これはあくまでサンプルで、経験則としてプラスチックを使うべきである。 Page-10 10ページ目 Here’s the usual wiring of the recharge port. Please note that not all recharge ports have the exact same pin out. User must understand the principle of wiring a recharge port and must be able to identify the different pins of a socket. ここに一般的な充電ポートの配線を示す。すべての充電ポートがこの例と同じとは限らないことに注意して欲しい。使用者は充電ポートへの配線の原則をよく理解し、異なるソケットのピンを見分けられるように成るべきである。 The idea is fairly simple the positive of the battery pack goes to the recharge port central pin (referred as tip) and to the positive of the board. It’s not affected by the kill key. The negative of the battery pack goes to the pin of the recharge port that is connected to the outer sleeve of the socket. The last pin, referred as switched negative pin and goes to the negative of the board. 考え方は実に単純で、バッテリーパックのプラス極からは充電ポートの中心のピンに、そしてそこからボードのプラス極へ配線する。このピンはキルキーに影響を受けない。バッテリーパックのマイナス極と充電ポートの外側の覆いとつながているピンに接続する。残ったピンはスイッチとして働き、これはボードのマイナス極と接続する。 (充電用ポートと充電用プラグの画像) When nothing is inserted in the port, the negative of the battery pack is internally connected to the switched negative tab, hence powering the board. When a Kill Key is inserted in the port, the negative of the board is no longer connected to the negative of the battery pack the board is fully powered down. When a charger plug is inserted in the recharge port, the charging voltage is reaching both leads of the battery pack while the negative of the board is still unconnected from the circuit, preventing damages to the electronics and ensuring only the battery pack is connected to the charger for proper charge. ポートに何も挿されていないとき、バッテリーパックのマイナス極はポート内部でマイナス極同士接続され、ボードに電力が供給されることになる。キルキーが挿入されると、ボードのマイナス極はバッテリーパックのマイナス極と繋がらなくなり、ボードへの電力供給が断たれる。充電プラグが挿されるとバッテリーパックの両極への接続に充電電圧がかかるものの、ボードと回路との接触は断たれており、過大電流によるボードへのダメージは避けられて、バッテリーパックに適切な充電を行うのみとなる。 In the previous picture the green-black drawn switched doesn’t need to be wired per say, it only illustrates the recharge socket internal switch. 上の画像で緑と黒で描かれたスイッチは実際に接続する必要がなく、充電ソケット内部のスイッチをイメージしたものである。 Page-11 11ページ目 General wiring 一般的な配線方法 The board doesn’t need so many connections for basic operation. Aside of the recharge port / power supply detailed above, only a pair of switches, the high power LED and the speaker are required to be soldered to get 90% of the features the PC board proposes. 基本機能を使うのであれば、ボードはそんなにたくさんの配線を必要としない。PetitCroutonの提供する機能の9割を利用するのには、上記の充電ポートとバッテリーパックの他、一組のスイッチ、ハイパワーLEDとスピーカーをハンダ付けすれば良い。 配線例の画像 NEVER change the high-power LED while Petit Crouton Saber Core is in idle mode. If you need to install another high-power LED (changing the color for instance) you must totally power the saber off. 決して、Petit Crouton Saber Coreが待機モードになっているときに、ハイパワーLEDの交換を行ってはならない。もし別のハイパワーLEDを(色を変えたいとかで)接続する必要がある場合、完全にセーバーの電力を落とさなければならない。 User’s Notes 自由帳 (メモなどを自由に書き込める空白) Page-12 12ページ目 Animated Accent LEDs 明滅可能なアクセントLED There are many ways to “pimp” your saber hilt using additional small LEDs further referred in this document as Accent LEDs. ヒルトに小さなLED(このドキュメントでアクセントLEDと呼ばれる)を追加することで、セーバーに"惹きつけさせる"色んな表示方法がある。 Petit Crouton features a 32 stage sequencer that allows the user to setup a blinking animated sequence for up to 2 LEDs. The board outputs 3.3V / 18mA max per accent LED pad. User must ensure the used accent LEDs have a forward voltage (Vf) lower or equal to 3.3V. Petit Croutonの機能として、2つのLEDに対して32段階の明滅方法を設定できるようにしている。ボードはアクセントLED端子分に最大3.3V/18mAの電力を出力する。アクセントLEDを用いる場合、その順電圧が3.3V以下であることを確認しなければならない。 (アクセントLEDの接続説明画像) Accent LEDs Resistor Footprints アクセントLED用抵抗接続端子 Accent LEDs PADs アクセントLED用プラス極端子 Accent LEDs Ground Return アクセントLED用接地(マイナス極) On the picture above, the red arrows point to the positive pads of the accent leds, use small gauge wire to send those signals to the positive of the LEDs. Flat/Ribbon cable can be very handy for that purpose. Then both negatives of the LEDs return to a single pad pointed by the blue arrow (ground return). 上の画像では、赤い矢印がアクセントLEDのプラス極との端子を示している。細いリード線を使ってLEDのプラス極へと接続する。Flat/Ribbon cableが接続しやすいだろう。2つのLEDのマイナス極は青い矢印で示されている端子(グランド/接地)にハンダ付けする。 The resistor pads on the PC2 are pre-bridged. You will need to use an external resistor for the accent LEDs PC2の抵抗用端子はすでに配線済みになっている。アクセントLED用に別途、抵抗を用意する必要がある。 Calculating resistors for LEDs LED用抵抗の計算法 R = (Vsupply - Vled) / LedCurrent 抵抗値 = (供給電力 - LED順電圧) / LED消費電流 In our case, Vsupply is the voltage the board provides to power the accent LEDs, ie 3.3V. The Vled is the forward voltage of the LED, usually referred as Vf in the datasheet. The led current has to be decided by the user, depending on the brightness and the maximum rating of the used LED. 5 to15 mA are fairly common for most accent LEDs. この場合、供給電力はボードがアクセントLEDに供給するものだから、3.3Vとなる。順電圧はLEDの順方向電圧であり、データシートでは普通、VFとして示されている。LED消費電流は利用目的によって決められ、使うLEDの最大許容値と光らせたい明るさで左右される。5~15mAが大抵のLEDで適正となっている。 As an example, let’s consider a 1.6 volt LED (red) at 10 mA 例えば1.6VのLED(赤)を10mAで用いる場合を考えると、 R = (3.3 - 1.6) / 0.01 = 170 ohm (→ 150 ohm in the classic E12 resistor serie) 抵抗値 = (3.3 - 1.6) / 0.01 = 170Ω(→旧E12系列の150Ω) Be sure not to drive too much current in the LED (18 mA max). If you wish a good brightness with a low current, use high efficiency LED (generally coming in a transparent “crystal” coating). LEDには過大電流を流してはならない。低い電流でもっと輝きを得たい場合、高効率LEDを用いると良い(たいていは透過クリスタルコートされている)。 Please see further in this document for the sequencing of the accent LEDs. アクセントLEDの明滅制御については、このドキュメントで後述しているので参照のこと。 Page-14 14ページ目 Main Configuration File 設定ファイル The config.txt configuration file is a simple text file to be edited with windows notepad. 設定ファイルであるconfig.txtは単なるテキストファイルであり、Windowsのメモ帳で編集できる。 It is composed of 26 parameters that must all be present in the file. Otherwise, the module will use default parameters. 設定ファイルは26のパラメーターで構成されており、それがすべてファイル内に存在していなければならない。 The text file accepts comments on a stand alone line (not mixed with a parameter line). The comment symbol is the C language double slash ‘//’ as the very first characters of the line. テキストファイルは一行で終わるコメント行(パラメーター行と分けなければならない)を含めることが出来る。コメントを示すシンボルはC言語のようにダブルスラッシュ(//)で、行頭に置く。 To modify the file, insert the SD card in the USB card reader, and then browse the contents with windows file explorer (on E for instance). Double-click on file config.txt the notepad opens. You can directly save the file on the SD card. Once the configuration is over, simply remove the card from the reader after having it “ejected” (right click on the reader device in windows explorer, contextual menu, eject). Put the card back in the saber and test you new setup! ファイルを変更するにはSDカードをUSBカードコントローラーに挿入し、Windowsエクスプローラーで参照する(例えばE ドライブとして現れる)。config.txtをダブルクリックするとメモ帳が起動する。そのまま保存すればSDカードに書き込まれる。保存が終わったら、Windowsで取り出し操作(カードデバイスを右クリックして表示されるコンテキストメニューから”取り出し"を選ぶ)を行って、カードリーダーから抜けば良い(訳註:Windows上でSDカードは大抵の場合、取り出し操作を行わなくてもそのまま引き抜ける)。そしてそのカードをセーバーに入れれば新しい設定を確認できる! The configuration file MUST BE LESS than 512 bytes. If the size is bigger, the file will be skipped without further analysis and defaults parameters will be used. The basic configuration file of Petit Crouton is about 220 bytes, with a few comment lines for an easier reading. Make sure not to add too many comments in the file. If you are not sure of the file size, check it in Windows file Explorer, with a right click on the file, then “properties” in the contextual menu. 設定ファイルのサイズは512バイト以下でなければならない。そのサイズを超えると、ファイルは一切解釈されず、規定値が用いられる。Petit Croutonの基本設定ファイルは読みやすくするためのいくつかのコメント行を含めても220バイトである。ファイルにはあまりたくさんのコメントを入れないほうが良い。もしファイルサイズがわからない場合は、Windowsエクスプローラー上でファイルを右クリックして、表示されるコンテキストメニューからプロパティを選んで調べる。 Make sure you have no space characters at the beginning of the line, or between the ‘=’ sign and the value of a parameter. 行頭や設定名と項目を繋ぐ”=”の間にも空白を置いてはならない。
https://w.atwiki.jp/tactical_warrior/pages/21.html
ACT1 Woodland レベルキャップ:12 パーティ数:6 ACT1 Woodland Battle AreaThe Trivial Plain2 vs Badger 2 vs 1 2 vs 2 Little Flags 3 vs 3 2 vs Badgers(赤) The Forest's EdgeCoyotes I Coyotes II Badger Woodland Panic Coyotes III(青) The Pit III(赤) The GladeAnimal Pack I 4 vs bear Animal Pack II The Foresters The Stand Nature's Finest(青) The Stand II(赤) The AcademyNovice Archibald Bases I Men Of Poison Masters Bases II(青) Merry Men(赤) The VillageLittle Rumble The Arrows I The Pit I Modest Rumble The Arrows II The Pit II Large Rumble(青) The TournamentClost Quarters Barbarians Full Battle Bear CaveBjorn Bears I Bears II Sandy ShoreBattle of Sand Monk Challenge Grand Master The Dueling GroundsMongrel Logan Sigmund Dane The CragThe Crow The Pidgeons The Falcons The Eagles Training GroudsPractice I Practice II Practice III Practice IV Practice V GateGate Of Progress I(The Forest's Edgeの上 / GOLD) Gate Of Progress II(The Gladeの右上 / GOLD) Gate Of Progress III(The Villageの右下 / GOLD) Gate Of Bears(マップ左上 / BLUE) Gate of Training Valley(マップ左下 / BLUE) Gate Of the Sea(マップ右上 / BLUE) Gate of Duelist(マップ右下 / BLUE) Gate of Crags(The Dueling Groundsの右下 / BLUE) ShopThe Outpost (The Trivial Plain隣) The Armory (The Tournament隣) The Village Shop (The Village隣) The Academy shop (The Academy隣) Lemuel's Knick Knacks (Sandy Shore隣) Clear Bonus 注意 ミッションのEXPは、出撃ボーナス(1人当り),生存ボーナス(1人当り),撃破ボーナス(レベルキャップ修正の値も含めた全員分の概算合計)で参考値 注意 アイテム報酬は一例です。「価値のみ固定でランダム」だと思われます。 Battle Area The Trivial Plain 最初のバトルエリア。特に難しいものはないので、上から順番にクリアしていけば大丈夫だろう。ミッションを二つクリアすれば次のバトルエリアがオープンするので、簡単なものを探して交互にクリアしていくのも良い。 2 vs Badger Basoc VerrLow E1 P2 Reward Item Lether Cap Stale Bread Parchment of skill 2 vs 1 Basic VeryLow E1 P2 EXP+25,20,12 Reward Warrior Barbarian LV2 Bash 2 Great Fortitude 2 Barbarian LV4 Whirlwind 3 Great Stamina 3 XP+150 LV4のほうがオススメ。WhirlWindは消費スタミナが高いが周囲8マスへの範囲攻撃は強烈だ。 2 vs 2 Basic VeryLow E2 P2 EXP+25,20,24 Reward Warrior Archer LV1 Long Sword 1 Arrow Volley 2 Alchemist LV1 Cane 2 Flame potion 1 XP+150 ここではどちらでも良いが、範囲魔法攻撃のFlame potionは攻略の要なので序盤から確保しておきたい。アーチャーと錬金術師は以降も仲間にできる。 Little Flags Flags Low E3 P3 EXP+24,34,27 Reward Item Tattered tunic Cup of Vinegar Lether Cap 3 vs 3 3体のバーバリアンうち1体のみレベルが高い。さらに所有しているスキルDevastateが、高威力でありながら3回攻撃で非常に危険。味方のバーバリアンのWarcryでスタミナを削れば、発動を封じることができるかもしれないので試してみよう。 Basic Medium E3 P3 EXP+36,50,72 Reward Gold Key 2 vs Badgers(赤) Basic VeryHigh E3 P2 EXP+75,60,45 Reward Item Bottle of Poison Cup of Wine Lether Sandals The Forest's Edge 小動物とのバトル。コヨーテにはFlame Potionが良く効くので、まとめてガンガン燃やしていこう。アナグマの遠距離攻撃は、クリティカル時にstun効果があり非常に鬱陶しい。 Coyotes I Basic E2 P1 EXP+45,30,12 Reward Item Stale Bread Tattered Tunic Parchment of Skill Coyotes II Waves E3 P3 EXP+18,16,18 Reward Item Book of Skill Bottle of Poison Lether Cap 攻撃に毒を付加するBottle of Poisonが良さそうだが、1ターン当り4ダメージしか与えらず、頼れるほどの能力は残念ながらない。 Badger Basic E4 EXP+37,30,36(9*4) Reward Warrior Archer LV1 Long sword 2 Range Finder 1 Barbarian LV3 Whirlwind 2 Great Stamina 3 XP+250 今の仲間にいない方のクラスを味方にしよう。Range Finderのオートクリティカル能力は重宝する。オートクリティカル後に高威力のPowerShotで狙撃するのが、アーチャーの基本戦法だ。 Woodland Panic Waves E11 P3 EXP+27,25,33 Reward Blue Key Coyotes III(青) Waves E? P4 EXP+30,30,68 Reward Gold Key The Pit III(赤) Waves Reward Item(価値3) The Glade このバトルエリアも引き続き動物との戦いだが、小動物に混じって新登場するのがBearだ。バーバリアンと似たタイプのユニットと考えていいだろう。 Animal Pack I Basic Low E7 P3 EXP+27,25,63 Reward Warrior Barbarian LV3 Bash 2 Great Fortitude 3 Archer LV2 Long Sword 1 Power Shot 3 XP+150 4 vs bear Basic E1 P4 EXP+22,22,54 Reward Item Stale Bread Cup of vinegar Lether Cap Animal Pack II Basic E7 P3 EXP+36,33,88 Reward Item Scone Fresh Bread cup of wine The Foresters Basic Medium E4 P3 EXP+36,33,84 Reward Item Fresh Bread Scone Emblem of Fists The Stand Waves High E7 P4 EXP+37,50,105 マップ中央の狭い空間に味方が密集した状態で戦闘が始まる。体力のある仲間を岩の間に配置して敵を足止めしつつ、弱い味方を守りながら戦おう。 Reward Warrior Archer LV5 Long Sword 3 Combat Training 3 Range Finder 1 Archer LV2 Long Sword 1 Arrow Volley 3 EXP+35 Grant Nature's Finest(青) Basic High E7 P5 EXP+32,35 Reward EXP+300 クマの攻撃は強烈だが、スタミナを盗んで動きを制限して対処しよう。 The Stand II(赤) Waves Very High E10 P5 Reward Item(価値3) The Academy Novice Basic E3 P3 EXP+18,16 Reward Warrior Alchemist 3 Poison Potion 3 Potion Stock 2 Archer 3 Posion Arrow 3 Bow Mastery 2 EXP+250 Archibald Basic E2 P1 EXP+90,60,36 Reward Blue Key Bases I Flags High E3 P3 EXP+45,50,75 Reward EXP+200 Men Of Poison Basic High E4 P4 EXP+27,75,120 錬金術師4人が相手。Poison攻撃を仕掛けてくるため、長期戦は不利だ。手早く攻めよう。 Reward Gold Key Masters VeryHigh Bases II(青) Flag High E4 P4 EXP+37,50,79 Reward Item Emblem of Fists Book of Skill Skullcap Merry Men(赤) Basic VeryHigh E4 P4 EXP+32,65 Reward Item Woolen Vest Studded Tunic Combat Gloves The Village Little Rumble Basic Low E3 P3 EXP+27,25,54 Reward Warrior Alchemist LV5 Cane 3 Flame Potion 3 Potion Stock 1 Alchemist LV3 Cane 2 Vial of Burning 2 EXP+250 divide The Arrows I Basic Medium E4 P4 EXP+30,30,96 Reward ; Blue Key The Pit I Waves High E8 P1 EXP+112,75,35 たった1人で、次々現れるコヨーテ達を迎撃するバトル。ここは、体力と攻撃力に優れたバーバリアンが適任だろう。途中1回だけコヨーテではなくアナグマが登場したりする。 Reward Item Lether Tunic Skullcap Lether Gloves Modest Rumble Basic High E5 P4 Reward ; Warrior The Arrows II Flags VeryHigh E5 P4 Reward Item The Pit II Waves VeryHigh E10 P2 EXP+46,73 Reward EXP+300 Large Rumble(青) Basic VeryHard E5 P4 EXP+45,60,136 Reward Item Cup Of Wine SkullCap Emblem Of fists The Tournament ファイナルバトルエリア。3つのバトルのうち2つをクリアした時点でACT1クリアとなり、ACT2へ強制移動する。2つ目のバトルに挑む前に、やり残したことがないか確認しておこう。 Clost Quarters Basic VeryHigh E2 P2 ※クリア後The Forest's Edgeにバトル「The Pit III」追加 Reward EXP+600 Barbarians Basic E5 P4 EXP+38,51,122 ※クリア後The Academyにバトル「Merry Men」追加 Reward Item Cup of wine leather Glove Emblem of Fists Full Battle Basic VeryHigh E8 P6 ※クリア後The Gladeにバトル「The Stand II」追加 Reward Warrior Monk LV8 Pummel 2 Ancient Combo 4 Disrupting Palm 4 Knight LV3 Ghostly Strike 2 Sacrifice 3 EXP+250 初登場のMonkとKnightだが、Sacrificeは倒されたときに発動するスキルであり、効果もそれほどでもない。一方のMonkは、相手スキルをランダムで使用不可にするDisrupting Palmが非常に使い勝手が良い。どちらかというと後者がオススメだ。 Bear Cave 6人出撃のステージあり。5人でも何とかなるが、6人揃えてきてから挑戦しても良いだろう。 Bjorn Basic Medium E1 P2 Bear Caveに来たはずなのに、初戦の敵はBarbarianだ。だがこのBarbarianが非常にクセモノで、Swipe、Roar、Bear Enduranceなどの通常のBarbarianは持っていないはずの強力なスキルを習得している。 自軍出撃数が2と少ないのも辛い。 Reward Item Cup Of Wine Scorn Fresh Bread Bears I Basic High E2 P4 EXP+27,36,130 2戦目の敵は正真正銘クマだ。 Reward Item Fresh Bread Book of Skill Leather Tunic Bears II Basic E5 P6 初戦のBarbarian、Bjornが再登場。 Reward Warrior Son of Bjorn Badger of Bjorn EXP+250 Bjornの息子とアナグマ、どちらかを仲間にできる。Bjornの息子はBear Enduranceを習得しており、他にも特殊なスキルを覚えてくれるのかもしれない。 Sandy Shore Battle of Sand Basic Medium Reward Item Monk Challenge Waves High E4 P3 Reward EXP Grand Master Basic High E4 P4 Reward Item The Dueling Grounds すべて1対1のタイマンバトル。と言われると人間相手だと思いがちだが、初戦いきなりコヨーテである。 Mongrel Basic Low E1 P1 EXP+57,38,7 Reward EXP+100 Logan Basic Medium E1 P1 EXP+90,60,24 スキルDevastateを持つバーバリアン1体だが、障害物を利用して逃げながらPoison potionを投げ続ければ無傷でも撃破可能だ。 Reward Item Fresh Bread Lether Tunic Skullcap Sigmund Basic High E1 P1 EXP+95,63,25 アーチャー一体のみ。 Reward EXP+200 Dane Basic High E1 P1 EXP+112,75,30 チャンピオン1体。 Reward Warrior Healer LV2 Qucik Shot 3 Staff Sling 1 Alchemist LV6 Amnesia Potion 2 Poision Potion 2 Noxious Fumes 4 EXP+250 divide ヒーラーを序盤で仲間にできるチャンス。ヒーラーのクセに持っているのが両方とも攻撃系スキルだが、レベルアップすれば回復スキルはすぐ習得できる。 ※クリア後、The Trivial Plainに「2 vs Badgers」というバトルが追加される。 The Crag The Crow Basic VeryLow E2 P2 EXP+25,20,17 Reward Item Stale Bread Ring of Abrasion Parchment of Skill The Pidgeons Basic Medium E2 P2 Reward Item The Falcons Basic Medium E5 P4 EXP+37,150,141 Reward Warrior Jungleman LV5 Crippling Jabs 3 Javelin Fury 1 Javelin Sting 3 Jungleman LV3 Falcon 3 Vitality 2 The Eagles Basic VeryHigh E4 P5 Reward Item Training Grouds Practice I Basic VeryLow E2 P2 Reward EXP+100 Practice II Basic VeryLow E2 P2 Reward Item Practice III Basic Low E3 P3 Reward EXP+100 Practice IV Basic Medium E1 P1 Reward Warrior Barbarian LV9 Bash 4 Great Fortitude 4 Great Stamina 3 Archer LV8 Long Sword 1 Arroy Volley 4 Critical Aim 4 Recovery 1 Practice V Basic High E2 P2 Reward EXP+300 Gate Gate Of Progress I(The Forest's Edgeの上 / GOLD) Gate Of Progress II(The Gladeの右上 / GOLD) Gate Of Progress III(The Villageの右下 / GOLD) Gate Of Bears(マップ左上 / BLUE) The Gladeのバトルを5つクリアすると表示される。 →Bear Caveへ Gate of Training Valley(マップ左下 / BLUE) 追加トレーニング →Training Groudsへ Gate Of the Sea(マップ右上 / BLUE) バーバリアンとモンクとのバトル →Sandy Shoreへ Gate of Duelist(マップ右下 / BLUE) 1対1のバトルのみ →The Dueling Groundsへ Gate of Crags(The Dueling Groundsの右下 / BLUE) ファルコン使いに対する困難な戦い →The Cragへ Shop The Outpost (The Trivial Plain隣) 名前 価値 cost Stale Bread 1 Scone 3 Cup of Wine 3 The Armory (The Tournament隣) 名前 価値 cost Leather tunic 2 Helm 5 Sturdy Belt 3 The Village Shop (The Village隣) 名前 価値 cost Skullcap 2 Leather Tunic 3 Lether Gloves 3 The Academy shop (The Academy隣) 名前 価値 cost Parchment of skill 1 Ring of Greater Abrasion 6 Oil of Fury 3 Ring of Greater Abrasionが強力そうだが、ACT2以降も入手機会は多い。わざわざcost6を払ってまで入手する必要はないと思われる。 Lemuel's Knick Knacks (Sandy Shore隣) 名前 価値 cost Emblem of Fists 2 Band of Pummelling 9 Stone of Strength 3 Band of Pummellingは入手機会が少なく(管理人はこの店でしか見たことがない)、能力もなかなかだが、cost9は高すぎる。 Clear Bonus 村人からのお礼 (Easy)Stone of Strength (Medium)Stone of Strength (Hard)Lether Sandals 使わなかった鍵のお礼 (Easy ・Blue Key=1)Wooden Falcon (Easy ・Blue Key=1)Stone of Strength (Medium・Blue Key=1)Stone of Strength 使わなかった複数の鍵のお礼 (Easy ・Blue Key=2)Book of Expertise カウンタ 今日: - 昨日: - 合計: -
https://w.atwiki.jp/0x0b/pages/40.html
実行コンテキスト (Execution Contexts) 制御が ECMAScript の実行可能コードに転送される時に、制御は 実行コンテキスト に入る。アクティブな実行コンテキストは論理的にスタックを形成する。この論理的スタック上の実行コンテキストの頂点が、実行される実行コンテキストである。 10.1 定義 (Definitions) 10.1.1 Function オブジェクト (Function Objects) Function オブジェクトには 2 種類ある プログラム関数 は、ソーステキスト内に FunctionDeclaration で定義される。あるいは、 FunctionExpression かコンストラクタとしての組込み Function オブジェクトを使用して動的に生成される。 内部関数 は、 parseInt や Math.exp のような、言語の組込みオブジェクトである。実装は、本仕様に記述されない実装依存の内部関数を提供してもよい。これらの関数は ECMAScript 文法に記述される実行可能コードを含まない。従ってそれらは実行コンテキストのこの議論から除外される。 10.1.2 実行可能コードの種類 (Types of Executable Code) ECMAScript の実行可能コードの種類は 3 つある グローバルコード は ECMAScript の Program として扱われるソーステキストである。個々の Program のグローバルコードは FunctionBody 部分として解析されるソーステキストを含まない。 eval コード は組込み eval 関数に提供されるソーステキストである。より正確には、組込み eval 関数のパラメータが文字列なら、それは ECMAScript の Program として扱われる。個々の eval 呼び出しのための eval コードは、文字列パラメータのグローバルコード部分である。 関数コード は FunctionBody 部分として解析されるソーステキストである。個々の FunctionBody の関数コードは、ネストされた FunctionBody 部分として解析されるソーステキストを含まない。関数コードはまた、コンストラクタとして組込み Function オブジェクトを使用する際提供されるソーステキストもあらわす。より正確には、 Function コンストラクタに提供される最後のパラメータは文字列に変換され FunctionBody として扱われる。 Function コンストラクタにひとつ以上のパラメータが供給されれば、最後の一つを除いた残りのパラメータすべてが文字列に変換され、カンマを区切りに連結される。その結果の文字列は最後のパラメータで定義される FunctionBody のための FormalParameterList として解釈される。 Function の個々のインスタンス化のための関数コードはネストされた FunctionBody 部分として解析されるソーステキストを含まない。 10.1.3 変数の実体化 (Variable Instantiation) 各実行コンテキストは 変数オブジェクト (variable object) に結び付けられている。ソーステキスト内に宣言された変数と関数は変数オブジェクトのプロパティに追加される。関数コードについては、パラメータが変数オブジェクトのプロパティに追加される。 どのオブジェクトが変数オブジェクトに使われるか、どの属性がプロパティに使われるかは、コードの型に依存する。しかし、後の振る舞いは総括的である。実行コンテキストに入ると、プロパティは次の順に変数オブジェクトに結び付けられる 関数コードでは FormalParameterList で定義された仮引数ごとに、変数オブジェクトにプロパティを生成する。その名前は Identifier で、属性はコード型によって決定する。パラメータ値は呼出側によって Call の引数として供給される。呼出側が仮引数より少ないパラメータ値を供給するならば、余分な仮引数は値 undefined を持つ。 2 つ以上の仮引数が同じ名前のために同じプロパティを共有する場合、該当するプロパティは、後出のパラメータに供給された値を与えられる。この後出のパラメータ値が呼出側から供給されない場合、該当するプロパティの値は undefined である。 ソーステキスト順で、コード中の各 FunctionDeclaration 毎に、変数オブジェクトにプロパティを生成する。その名前は FunctionDeclaration の Identifier で、値にはセクション 13 に記述される Function オブジェクトの生成で返される結果が設定され、属性はコードの型によって決定する。変数オブジェクトが既にこの名前のプロパティを持っている場合、その値と属性を置換する。意味論的に、このステップは FormalParameterList プロパティの生成に続かなければならない。 コード中の各 VariableDeclaration あるいは VariableDeclarationNoIn 毎に、変数オブジェクトにプロパティを生成する。その名前は VariableDeclaration または VariableDeclarationNoIn 中の Identifier で、値は undefined 、属性はコードの型により決定する。変数オブジェクトが既にこの名前のプロパティを持っている場合、プロパティの値と属性は変更されない。意味論的に、このステップは FormalParameterList と FunctionDeclaration のプロパティ生成に続かなければならない。宣言される変数が、宣言された関数や仮引数と同じ名前を持っている場合、変数宣言は特に既存のプロパティを妨害しない。 10.1.4 スコープ連鎖と識別子の解決 (Scope Chain and Identifier Resolution) 各実行コンテキストは スコープ連鎖 (scope chain) に関連付けられている。スコープ連鎖はオブジェクトのリストで、Identifier の評価の際に検索される。制御が実行コンテキストに入るとき、コード型毎にオブジェクト集合の初期値を伴うスコープ連鎖が生成され、組み込まれる。実行コンテキスト内における実行の間、実行コンテキストのスコープ連鎖は with 文(12.10) と catch クローズ(12.14) によってのみ影響を及ぼされる。 実行中、構文的生成規則 PrimaryExpression Identifier は次のアルゴリズムで評価される スコープ連鎖内で次のオブジェクトを取得する。一つもなければ、ステップ 5ヘ。 Result(1) の HasProperty メソッドを呼び、プロパティとして Identifier を渡す。 Result(2) が true ならば、基準オブジェクトが Result(1) でプロパティ名が Identifier である Reference 型の値を返す。 ステップ 1 へ。 基準オブジェクトが null でプロパティ名が Identifier である Reference 型の値を返す。 識別子評価の結果は常に、識別子文字列と等しいメンバ名成分を持つ Reference 型の値である。 10.1.5 Global オブジェクト (Global Object) 制御が任意の実行コンテキストに入る前に生成される、一意的な グローバルオブジェクト (セクション15.1) が存在する。最初はグローバルオブジェクトは次のプロパティを持つ Math, String, Date, parseInt 等のような組込みオブジェクト。これらは属性 { DontEnum } を持つ。 ホストの定義する追加プロパティ。これはグローバルオブジェクト自身を値とするプロパティを含めてよい; たとえば、HTML 文書オブジェクトモデルにおけるグローバルオブジェクトの window プロパティは、グローバルオブジェクトそれ自身である。 制御が実行コンテキストに入り、ECMAScript コードが実行されれば、グローバルオブジェクトに追加プロパティを追加しても、初期のプロパティを変更してもよい。 10.1.6 Activation オブジェクト (Activation Object) 関数コードによって制御が実行コンテキストに入るとき、 Activation オブジェクトと呼ばれるオブジェクトが生成され実行コンテキストに結び付けられる。 Activation オブジェクトは属性 { DontDelete } のプロパティ arguments で初期化される。このプロパティの初期値は下に述べる arguments オブジェクトである。 Activation オブジェクトは変数の実体化を目的とした変数オブジェクトとして使用される。 Activation オブジェクトは純粋に仕様のメカニズムである。 Activation オブジェクトへのアクセスは ECMAScript プログラムには不可能である。 Activation オブジェクトのメンバへのアクセスは可能だが、 Activation オブジェクト自身へのアクセスはできない。基準オブジェクトが Activation オブジェクトである Reference 値に呼出操作が適用されるとき、その呼出の this 値として null が使われる。 10.1.7 this アクティブな実行コンテキストそれぞれに結び付けられる this 値がある。this 値は呼出側と実行されるコード型に依存し、制御が実行コンテキストに入るときに決定される。実行コンテキストに結び付けられる this 値は不変である。 10.1.8 arguments オブジェクト (Arguments Object) 関数コードによって制御が実行コンテキストに入るとき、 arguments オブジェクトが作成され次のように初期化される argument オブジェクトの内部 Prototype プロパティの値は、オリジナルの Object prototype オブジェクトで、 Object.prototype (セクション15.2.3.1) の初期値である。 属性 { DontEnum } のプロパティ callee を作成する。このプロパティの初期値は実行されている Function オブジェクトである。これは再帰する匿名ファンクションを許す。 属性 { DontEnum } のプロパティ length を作成する。このプロパティの初期値は呼出側から供給された実際のパラメータの数である。 0 以上 length プロパティの値未満の整数 arg それぞれについて、属性 { DontEnum } のプロパティ ToString(arg) が作成される。このプロパティの初期値は対応するパラメータの呼出側に供給される実際の値である。最初の実際のパラメータ値が arg = 0、2 番目は arg = 1, 以下同様である。arg が Function オブジェクトの仮引数の数より小さい場合、このプロパティは Activation オブジェクトの対応するプロパティとその値を共有する。このことは、このプロパティの変更が Activation オブジェクトの対応するプロパティを変更すること、そしてその逆を意味する。 10.2 実行コンテキストの開始 (Entering An Execution Context) 各関数とコンストラクタの呼出は、新しい実行コンテキストを開始する。関数がそれ自身の再帰的呼出であっても、各リターンは実行コンテキストを終了する。投げられた例外が受け取られない場合は、一つ以上の実行コンテキストを終了してよい。 制御が実行コンテキストを開始するとき、スコープ連鎖が生成・初期化され、変数の実体化が行われ、this 値が決定される。 スコープ連鎖の実体化、変数の実体化、this 値の決定は、開始するコード型に依存する。 10.2.1 グローバルコード (Global Code) スコープ連鎖が作成され、グローバルオブジェクトのみの構成で初期化される。 変数の実体化が行われ、変数オブジェクトにグローバルオブジェクト、プロパティ属性 { DontDelete } が用いられる。 this 値はグローバルオブジェクトである。 10.2.2 Eval コード (Eval Code) 制御が eval コードの実行コンテキストを開始するとき、前のアクティブな実行コンテキストは、 呼出コンテキスト として参照され、スコープ連鎖、変数オブジェクト、 this 値の決定に使用される。呼出コンテキストがなければ、スコープ連鎖、変数の実体化、this 値の決定の初期化は、グローバルコードとして行われる。 スコープ連鎖が初期化され、呼出コンテキストのスコープ連鎖と同じオブジェクト、同じ順序になるように構成される。これは with 宣言および catch クローズによって呼出コンテキストのスコープ連鎖に追加されるオブジェクトを含む。 変数の実体化が行われ、呼出コンテキストの変数オブジェクト、プロパティ属性 { } が用られる。 this 値は呼出コンテキストの this 値と同じである。 10.2.3 関数コード (Function Code) スコープ連鎖が初期化され、 Activation オブジェクトに Function オブジェクトの Scope プロパティに蓄積されたスコープ連鎖内のオブジェクトが続くように構成される。 変数の実体化が行われ、変数オブジェクトに Activation オブジェクト、プロパティ属性 { DontDelete } が用いられる。 this 値は呼出側が提供する。呼出側が提供する this 値がオブジェクトでない場合(null である場合を含む)、 this 値はグローバルオブジェクトとする。 式 (Expressions) 11.1 基本式 (Primary Expressions) Syntax PrimaryExpression this Identifier Literal ArrayLiteral ObjectLiteral ( Expression ) 11.1.1 this キーワード (this Keyword) this キーワードは実行コンテキストの this 値を評価する。 11.1.2 識別子参照 (Identifier Reference) 識別子は、セクション 10.1.4 で述べたスコープ規則を使用して評価される。この識別子評価の結果は常に Reference 型の値である。 11.1.3 リテラル参照 (Literal Reference) リテラルはセクション 7.8 に述べるように評価される。 11.1.4 Array 初期化子 (Array Initialiser) Array 初期化子は、 Array オブジェクトの初期化を記述する式で、リテラル形式で書かれる。それは配列要素をあらわす 0 個以上の式のリストで、それぞれ角括弧 "[ ]" で囲まれる。要素はリテラルである必要はない; それらは Array 初期化子が評価される度に評価される。 配列要素は要素リストの開始、中間、末尾で省略もできる。要素リスト中で AssignmentExpression の先行しないカンマは、欠けた配列要素が Array の長さに寄与し、続く要素のインデックスを増加させる。省略された配列要素は定義されない。 Syntax ArrayLiteral [ Elisionopt ] [ ElementList ] [ ElementList , Elisionopt ] ElementList Elisionopt AssignmentExpression ElementList , Elisionopt AssignmentExpression Elision , Elision , Semantics 生成規則 ArrayLiteral [ Elisionopt ] は、次のように評価される 式 new Array() と同様に、新規に配列を生成する。 Elision を評価; 存在しなければ、数値 0 を用いる。 Result(1) の Put メソッドを、引数 "length" と Result(2) で呼出す。 Result(1) を返す。 生成規則 ArrayLiteral [ ElementList ] は、次のように評価される ElementList を評価。 Result(1) を返す。 生成規則 ArrayLiteral [ ElementList , Elisionopt ] は、次のように評価される ElementList を評価。 Elision を評価; 存在しなければ、数値 0 を用いる。 Result(1) の Get メソッドを、引数 "length" で呼出す。 Result(1) の Put メソッドを、引数 "length" と (Result(2)+Result(3)) で呼出す。 Result(1) を返す。 生成規則 ElementList Elisionopt AssignmentExpression は、次のように評価される 式 new Array() と同様に、新規に配列を生成する。 Elision を評価; 存在しなければ、数値 0 を用いる。 AssignmentExpression を評価。 GetValue(Result(3)) を呼出す。 Result(1) の Put メソッドを、引数 Result(2) と Result(4) で呼出す。 Result(1) を返す。 生成規則 ElementList ElementList , Elisionopt AssignmentExpression は、次のように評価される ElementList を評価。 Elision を評価; 存在しなければ、数値 0 を用いる。 AssignmentExpression を評価。 GetValue(Result(3)) を呼出す。 Result(1) の Get メソッドを、引数 "length" で呼出す。 Result(1) の Put メソッドを、引数 (Result(2)+Result(5)) と Result(4) で呼出す。 Result(1) を返す。 生成規則 Elision , は、次のように評価される 数値 1 を返す。 生成規則 Elision Elision , は、次のように評価される Elision を評価。 (Result(1)+1) を返す。 11.1.5 オブジェクト初期化子 (Object Initialiser) オブジェクト初期化子は Object の初期化を記述する式であり、リテラルのような形式で書かれる。プロパティ名とその値の 0 個以上の組のリストを { } で囲む。値はリテラルである必要はない; オブジェクト初期化子が評価される度に、それは評価される。 Syntax ObjectLiteral { } { PropertyNameAndValueList } PropertyNameAndValueList PropertyName AssignmentExpression PropertyNameAndValueList , PropertyName AssignmentExpression PropertyName Identifier StringLiteral NumericLiteral Semantics 生成規則 ObjectLiteral { } は、次のように評価される 式 new Object() と同様に新規にオブジェクトを生成する。 Result(1) を返す。 生成規則 ObjectLiteral { PropertyNameAndValueList } は、次のように評価される PropertyNameAndValueList を評価。 Result(1) を返す; 生成規則 PropertyNameAndValueList PropertyName AssignmentExpression は、次のように評価される 式 new Object() と同様に新規にオブジェクトを生成する。 PropertyName を評価。 AssignmentExpression を評価。 GetValue(Result(3)) を呼出す。 Result(1) の Put メソッドを、引数 Result(2) と Result(4) で呼出す。 Result(1) を返す。 生成規則 PropertyNameAndValueList PropertyNameAndValueList , PropertyName AssignmentExpression は、次のように評価される PropertyNameAndValueList を評価。 PropertyName を評価。 AssignmentExpression を評価。 GetValue(Result(3)) を呼出す。 Result(1) の Put メソッドを、引数 Result(2) と Result(4) で呼出す。 Result(1) を返す。 生成規則 PropertyName Identifier は、次のように評価される Identifier と同じ文字シーケンスで構成される文字列リテラルを形成する。 Result(1) を返す。 生成規則 PropertyName StringLiteral は、次のように評価される StringLiteral の値を返す。 生成規則 PropertyName NumericLiteral は、次のように評価される NumericLiteral の値を形成する。 ToString(Result(1)) を返す。 11.1.6 グループ化演算子 (The Grouping Operator) 生成規則 PrimaryExpression ( Expression ) は、次のように評価される Expression を評価。これは Reference 型でもよい。 Result(1) を返す。 NOTE このアルゴリズムは、 Result(1) に GetValue を適用しない。 delete や typeof のような演算子に括弧のついた式を適用できるようにすることがこれについての主な動機である。 11.2 左辺式 (Left-Hand-Side Expressions) Syntax MemberExpression PrimaryExpression FunctionExpression MemberExpression [ Expression ] MemberExpression . Identifier new MemberExpression Arguments NewExpression MemberExpression new NewExpression CallExpression MemberExpression Arguments CallExpression Arguments CallExpression [ Expression ] CallExpression . Identifier Arguments ( ) ( ArgumentList ) ArgumentList AssignmentExpression ArgumentList , AssignmentExpression LeftHandSideExpression NewExpression CallExpression 11.2.1 プロパティアクセス演算子 (Property Accessors) ドット記法を用いて、プロパティは名前によりアクセスされる MemberExpression . Identifier CallExpression . Identifier または括弧記法で MemberExpression [ Expression ] CallExpression [ Expression ] ドット記法は次の構文的変換で説明される MemberExpression . Identifier の振る舞いは次と同等である。 MemberExpression [ identifier-string ] 同様に CallExpression . Identifier の振る舞いは次と同等である。 CallExpression [ identifier-string ] identifier-string のところは Identifier として同じ文字シーケンスを構成する文字列リテラルである。 生成規則 MemberExpression MemberExpression [ Expression ] は次のように評価される MemberExpression を評価。 GetValue(Result(1)) を呼出す。 Expression を評価。 GetValue(Result(3)) を呼出す。 ToObject(Result(2)) を呼出す。 ToString(Result(4)) を呼出す。 基準オブジェクトが Result(5) でプロパティ名が Result(6) である Reference 型の値を返す。 生成規則 CallExpression CallExpression [ Expression ] は全く同じ方法で評価されるが、ステップ 1 では CallExpression が評価される。 11.2.2 new 演算子 (The new Operator) 生成規則 NewExpression new NewExpression は、次のように評価される NewExpression を評価する。 GetValue(Result(1)) を呼出す。 Type(Result(2)) が Object でなければ、例外 TypeError を投げる。 Result(2) が内部 Construct メソッドを実装しなければ、例外 TypeError を投げる。 引数なしで Result(2) の Construct メソッドを呼出す。(引数値に空リストを提供する。) Result(5) を返す。 生成規則 MemberExpression new MemberExpression Arguments は、次のように評価される MenberExpression を評価する。 GetValue(Result(1)) を呼出す。 内部に引数値リストを持つ Arguments を評価する。 Type(Result(2)) が Object でなければ、例外 TypeError を投げる。 Result(2) が内部 Construct メソッドを実装しなければ、例外 TypeError を投げる。 Result(2) の Construct メソッドを呼び、引数値にリスト Result(3) を提供する。 Result(6) を返す。 11.2.3 関数呼出し (Function Calls) 生成規則 CallExpression MemberExpression Arguments は、次のように評価される MemberExpression を評価。 Arguments を評価し、引数値の内部 List を生成する。(セクション 11.2.4)。 GetValue(Result(1)) を呼出す。 Type(Result(3)) が Object でなければ、例外 TypeError を投げる。 Result(3) が内部 Call メソッドを実装しなければ、例外 TypeError を投げる。 Type(Result(1)) が Reference ならば、 Result(6) は GetBase(Result(1)) 。そうでなければ、 Result(6) は null 。 Result(6) が Activation オブジェクトならば、 Result(7) は null 。そうでなければ、 Result(7) は Result(6) と同じ。 Result(3) の Call メソッドを呼び、this 値に Result(7) 、引数値にリスト Result(2) を渡す。 Result(8) を返す。 生成規則 CallExpression CallExpression Arguments は全く同様に評価されるが、ステップ 1 では CallExpression が評価される。 NOTE Result(3) が Native ECMAScript オブジェクトならば、 Result(8) はけして Reference 型にはならない。 Host オブジェクト呼び出しが Reference 型の値を返すかどうかは、実装依存である。 11.2.4 引数リスト (Argument Lists) 引数リストの評価は値による内部的リスト (セクション 8.8) を生成する。 生成規則 Arguments ( ) は、次のように評価される 値による空の内部的リストを返す。 生成規則 Arguments ( ArgumentList ) は、次のように評価される ArgumentList を評価。 Result(1) を返す。 生成規則 ArgumentList AssignmentExpression は、次のように評価される AssignmentExpression を評価。 GetValue(Result(1)) を呼出す。 唯一の項目が Result(2) である内部的リストを返す。 生成規則 ArgumentList ArgumentList , AssignmentExpression は、次のように評価される ArgumentList を評価。 AssignmentExpression を評価。 GetValue(Result(2)) を呼出す。 Result(1) より 1 大きい長さ、Result(1) の項目の末尾に Result(3) を続けた項目を持つ、新しい内部的リストを返す。 11.2.5 関数式 (Function Expressions) 生成規則 MemberExpression FunctionExpression は、次のように評価される FunctionExpression を評価。 Result(1) を返す。 11.3 後置式 (Postfix Expressions) Syntax PostfixExpression LeftHandSideExpression LeftHandSideExpression [LineTerminator 無し] ++ LeftHandSideExpression [LineTerminator 無し] -- 11.3.1 後置増分演算子 (Postfix Increment Operator) 生成規則 PostfixExpression LeftHandSideExpression [no LineTerminator here] ++ は、次のように評価される LeftHandSideExpression を評価。 GetValue(Result(1)) を呼出す。 ToNumber(Result(2)) を呼出す。 演算子と同じ規則で (セクション 11.6.3)、Result(3) に値 1 を加える。 PutValue(Result(1), Result(4)) を呼出す。 Result(3) を返す。 11.3.2 後置減分演算子 (Postfix Decrement Operator) 生成規則 PostfixExpression LeftHandSideExpression [no LineTerminator here] -- は、次のように評価される LeftHandSideExpression を評価。 GetValue(Result(1)) を呼出す。 ToNumber(Result(2)) を呼出す。 演算子と同じ規則 (セクション 11.6.3) で、 Result(3) から値 1 を引く。 PutValue(Result(1), Result(4)) を呼出す。 Result(3) を返す。 11.4 単項演算子 (Unary Operators) Syntax UnaryExpression PostfixExpression delete UnaryExpression void UnaryExpression typeof UnaryExpression UnaryExpression UnaryExpression UnaryExpression UnaryExpression ~ UnaryExpression ! UnaryExpression 11.4.1 delete 演算子 (The delete Operator) 生成規則 UnaryExpression delete UnaryExpression は、次のように評価される UnaryExpression を評価。 Type(Result(1)) が Reference でなければ、 true を返す。 GetBase(Result(1)) を呼出す。 GetPropertyName(Result(1)) を呼出す。 Result(3) の Delete メソッドを呼び、削除するプロパティ名として Result(4) を渡す。 Result(5) を返す。 11.4.2 void 演算子 (The void Operator) 生成規則 UnaryExpression void UnaryExpression は、次のように評価される UnaryExpression を評価。 GetValue(Result(1)) を呼出す。 undefined を返す。 11.4.3 typeof 演算子 (The typeof Operator) 生成規則 UnaryExpression typeof UnaryExpression は、次のように評価される UnaryExpression を評価。 Type(Result(1)) が Reference でなければ、 ステップ 4 へ。 GetBase(Result(1)) が null ならば、 "undefined" を返す。 GetValue(Result(1)) を呼出す。 次の表にしたがって、 Type(Result(4)) から決定される文字列を返す TypeResult Undefined"undefined" Null"object" Boolean"boolean" Number"number" String"string" Object (native and doesn t implement Call)"object" Object (native and implements Call)"function" Object (host)Implementation-dependent 11.4.4 前置増分演算子 (Prefix Increment Operator) 生成規則 UnaryExpression ++ UnaryExpression は、次のように評価される UnaryExpression を評価。 GetValue(Result(1)) を呼出す。 ToNumber(Result(2)) を呼出す。 演算子と同じ規則 (セクション 11.6.3) で、 Result(3) に値 1 を加える。 PutValue(Result(1), Result(4)) を呼出す。 Result(4) を返す。 11.4.5 前置減分演算子 (Prefix Decrement Operator) 生成規則 UnaryExpression -- UnaryExpression は、次のように評価される UnaryExpression を評価。 GetValue(Result(1)) を呼出す。 ToNumber(Result(2)) を呼出す。 演算子と同じ規則 (セクション 11.6.3) で、 Result(3) から値 1 を引く。 PutValue(Result(1), Result(4)) を呼出す。 Result(4) を返す。 11.4.6 単項 + 演算子 (Unary + Operator) 単項 + 演算子は項を Number 型に変換する。 生成規則 UnaryExpression + UnaryExpression は、次のように評価される UnaryExpression を評価。 GetValue(Result(1)) を呼出す。 ToNumber(Result(2)) を呼出す。 Result(3) を返す。 11.4.7 単項 - 演算子 (Unary - Operator) 単項 - 演算子は項を Number 型に変換し、反転する。 +0 の否定は -0、 -0 の否定は +0 を生成することに注意。 生成規則 UnaryExpression - UnaryExpression は、次のように評価される UnaryExpression を評価。 GetValue(Result(1)) を呼出す。 ToNumber(Result(2)) を呼出す。 Result(3) が NaN ならば、 NaN を返す。 Result(3) の否定; つまり、同じ大きさで符号が逆の数を算出する。 Result(5) を返す。 11.4.8 ビット否定演算子 (Bitwise NOT Operator) ( ~ ) 生成規則 UnaryExpression ~ UnaryExpression は、次のように評価される UnaryExpression を評価。 GetValue(Result(1)) を呼出す。 ToInt32(Result(2)) を呼出す。 Result(3) にビット補数を適用する。結果は符号付き 32 ビット整数である。 Result(4) を返す。 11.4.9 論理否定演算子 (Logical NOT Operator) ( ! ) 生成規則 UnaryExpression ! UnaryExpression は、次のように評価される UnaryExpression を評価。 GetValue(Result(1)) を呼出す。 ToBoolean(Result(2)) を呼出す。 Result(3) が true ならば、 false を返す。 true を返す。 11.5 剰除演算子 (Multiplicative Operators) Syntax MultiplicativeExpression UnaryExpression MultiplicativeExpression * UnaryExpression MultiplicativeExpression / UnaryExpression MultiplicativeExpression % UnaryExpression Semantics @ を上に定義される演算子の一つとして、生成規則 MultiplicativeExpression MultiplicativeExpression @ UnaryExpression は、次のように評価される MultiplicativeExpression を評価。 GetValue(Result(1)) を呼出す。 UnaryExpression を評価。 GetValue(Result(3)) を呼出す。 ToNumber(Result(2)) を呼出す。 ToNumber(Result(4)) を呼出す。 Result(5) と Result(6) に、指定された演算 (*, /, %) を適用する。下記のノート (セクション 11.5.1, 11.5.2, 11.5.3) を参照。 Result(7) を返す。 11.5.1 * 演算子の適用 (Applying the * Operator) 演算子は乗算を行い、項の積を生成する。乗算は可換的である。有限数精度? ( finite precision ) のため、 ECMAScript において、乗算は常に結合的なわけではない。 浮動小数点数乗算の結果は、 IEEE 754 倍精度計算規則により決定される どちらかの項が NaN ならば、結果は NaN である。 結果の符号は、両方の項が同じ符号を持つならば正符号であり、異なる符号を持つならば負符号である。 0 による無限大の乗算の結果は、 NaN になる。 無限大による無限大の乗算の結果は、 infinity である。符号は 上にあげた規則で決定する。 0 以外の有限数による無限大の乗算の結果は、符号付き無限大である。符合は上にあけた規則で決定する。 無限大でも 0 でも NaN でもない残りのケースでは、積が算出され、 IEEE 754 直近への丸めモードを使用して、直近の表現可能な値へ丸められる。大きさが表せないほど大きいならば、演算はオーバーフローし、結果は適切な符合の無限大となる。大きさが表せないほど小さいらば、演算はアンダーフローし結果は適切な符合の 0 となる。 ECMAScript 言語は、 IEEE 754 に定義される段階的アンダーフロー (gradual underflow) のサポートを必須とする。 11.5.2 / 演算子の適用 (Applying the / Operator) / 演算子は乗算を行い、項の商を生成する。左項が被除数で右項が除数である。 ECMAScript は整数除算を行わない。項と除算演算結果の全ては倍精度浮動小数点数である。乗算の結果は、 IEEE 754 算術規定により決定される どちらかの項が NaN ならば、結果は NaN である。 結果の符号は、両方の項が同じ符号を持つならば正符号であり、異なる符号を持つならば負符号である。 無限大の無限大による除算の結果は、 NaN である。 無限大の 0 による除算の結果は、無限大になる。符号は 上にあげた規則で決定する。 無限大の 0 以外の有限数による除算の結果は、符号付き無限大である。符合は上にあけた規則で決定する。 有限数の無限大による除算の結果は、 0 である。符合は上にあけた規則で決定する。 0 の 0 による除算の結果は、 NaN である; 0 の任意の他の有限数による除算の結果は 0 である。符合は上にあけた規則で決定する。 0 以外の有限数の 0 よる除算の結果は、符号付き無限大である。符合は上にあけた規則で決定する。 無限大でも 0 でも NaN でもない残りのケースでは、商が算出され、 IEEE 754 直近への丸めモードを使用して、直近の表現可能な値へ丸められる。大きさが表せないほど大きいならば、演算はオーバーフローし結果は適切な符合の無限大となる。大きさが表せないほど小さいらば、演算はアンダーフローし結果は適切な符合の 0 となる。 ECMAScript 言語は、 IEEE 754 に定義される段階的アンダーフロー (gradual underflow) のサポートを必須とする。 11.5.3 % 演算子の適用 (Applying the % Operator) % 演算子は、言外の除算から項の剰余を算出する; 左項が被除数で右項が除数である。 NOTE C および C++ において、剰余演算子は整数項のみを受け付ける; ECMAScript においては、浮動小数点数項も受け付ける。 % 演算子により算出されるような浮動小数点数の剰余演算の結果は、 IEEE 754 で定義される "reminder" 演算と同様ではない。 IEEE 754 "remainder" 演算は、切り捨て除算 (truncating division) からではなく丸め除算 (rounding division) から剰余を算出し、したがってその振る舞いは有用な整数剰余演算子のそれとは類似しない。代わりに ECMAScript 言語は % を浮動小数点数演算上で定義し、 Java 整数剰余演算子のそれに類似する方法で振る舞う; これは C ライブラリ関数 fmod と比較される. ECMAScript 浮動小数点数剰余演算の結果は、 IEEE 算術の規則で決定される どちらかの項が NaN ならば、結果は NaN である。 結果の符号は、被除数の符号と等しい。 被除数が無限大、または除数が 0 、 あるいはその両方ならば、 結果は NaN である。 被除数が有限数 かつ 除数が無限大ならば、結果は被除数と等しい。 被除数が 0 かつ 除数が有限数ならば、結果は被除数と同じである。 無限大でも 0 でも NaN でもない残りのケースでは、被除数 n と除数 d から浮動小数点数の剰余 r は、数学的関係 r = n - ( d * q ) によって定義される。 q は整数で n/d が負なら負、正ならば正であり、大きさは n と d の真の数学的な商の大きさを超えない可能な限り大きい。
https://w.atwiki.jp/oimoricom/pages/12.html
おいでよどうぶつの森.comについて おいでよどうぶつの森というゲームのコミュニティサイトである。 管理人は複数いる。 このサイトの管理者は他ゲームのコミュニティサイトも作っている。 住民について 大抵ネット初心者である。 .com住民は気さくな人から偏見持ちの困ったさんまで様々(どこでも同じようなものだが) 知ったかぶりが非常に多い(どこでも同じようなものだが) 困ったさんが多い。 管理人さん副管理人さんお勤めご苦労です。実生活も頑張ってください。