宇宙の運命、地球の未来

9歳の男子小学生が、ほぼ1人で作りました。現地で、タイマーの数値をイジるのにシグナルを使うサンプルを教えた他は、「MOONBlockでつくるゲームプログラミング: エンちゃんと遊ぼう!」で事前に独学した範囲で作っています。会場にいた6時間でゼロから組みましたが、最後の方は他のチームにちょっかい出しに行ってた(皆さん、ご迷惑をおかけしました...)ので、実質的な制作時間はさらに短いです。テーマについては、裏技とか、見えないものが隠れてるという解釈をし、敵が光学迷彩な感じに。壮大なゲームタイトルは、upload直前に決めてくれって言ったら、割と即答で返ってきたものですw
Jam year: 
2014
Diversifiers: 
Round and Round
Platforms: 
Web standard (HTML5, Java, JavaScript, Flash)
Tools and Technologies: 
Enchant.JS
Technology Notes: 
MOONBlockで作られています。下の「Installation Instructions:」の内容を、http://moonblock.jp/の「セーブデータ」に上書きすると遊べます。
Installation Instructions: 

[{ "x": 159, "y": -27, "constructorName": "PuppetBlock", "variables": { "name": "アイコン", "fold": "-", "image": "icon0.png", "behavior": { "x": 0, "y": 0, "constructorName": "FrameSequenceBlock", "variables": { "sequence": [48, 55, 54, 53, 52, 51, 50, 49], "times": "0" }, "next": { "x": 0, "y": 0, "constructorName": "MoveBlock", "variables": { "type": "move", "zigzagdirection": "X", "tapdirection": "X", "movedirection": "Up", "dx": "0", "dy": "0" }, "next": { "x": 0, "y": 0, "constructorName": "ListenerBlock", "variables": { "eventType": "enterframe", "fold": "-", "handler": { "x": 0, "y": 0, "constructorName": "IfBlock", "variables": { "condition": { "x": 0, "y": 0, "constructorName": "AndBlock", "variables": { "a": { "x": 0, "y": 0, "constructorName": "PropertyBlock", "variables": { "name": "y" } }, "op": "<=", "b": { "x": 0, "y": 0, "constructorName": "NumberBlock", "variables": { "value": "-37" } } } }, "fold": "-", "thenDo": { "x": 0, "y": 0, "constructorName": "AddBehaviorBlock", "variables": { "fold": "-", "behavior": { "x": 0, "y": 0, "constructorName": "SpecialBlock", "variables": { "type": "die", "biggerdir": "X", "smallerdir": "X", "rotdir": "5" }, "next": null } }, "next": null } }, "next": null } }, "next": null } } } } }, { "x": 1118, "y": -205, "constructorName": "ScoreBoardBlock", "variables": { "fold": "-", "behavior": { "x": 0, "y": 0, "constructorName": "FrameBlock", "variables": { "prop": "x", "value": "10" }, "next": { "x": 0, "y": 0, "constructorName": "ListenerBlock", "variables": { "eventType": "enterframe", "fold": "-", "handler": { "x": 0, "y": 0, "constructorName": "IfBlock", "variables": { "condition": { "x": 0, "y": 0, "constructorName": "AndBlock", "variables": { "a": { "x": 0, "y": 0, "constructorName": "GlobalPropertyBlock", "variables": { "name": "enchant.puppet.Theatre.instance.score" } }, "op": ">=", "b": { "x": 0, "y": 0, "constructorName": "NumberBlock", "variables": { "value": "1000" } } } }, "fold": "-", "thenDo": { "x": 0, "y": 0, "constructorName": "SetTimeoutBlock", "variables": { "time": "0.1", "fold": "-", "thenDo": { "x": 0, "y": 0, "constructorName": "SEBlock", "variables": { "sesrc": "jingle.wav" }, "next": { "x": 0, "y": 0, "constructorName": "GameClearBlock", "variables": {}, "next": null } } }, "next": null } }, "next": null } }, "next": null } } } }, { "x": 1425, "y": 260, "constructorName": "PuppetBlock", "variables": { "name": "こども", "fold": "-", "image": "chara0.png", "behavior": { "x": 0, "y": 0, "constructorName": "DisplayBlock", "variables": { "appeartype": "standAlone", "interval": "30", "initial": "10" }, "next": { "x": 0, "y": 0, "constructorName": "FrameBlock", "variables": { "prop": "scaleY", "value": "2" }, "next": { "x": 0, "y": 0, "constructorName": "FrameSequenceBlock", "variables": { "sequence": [28], "times": "2" }, "next": { "x": 0, "y": 0, "constructorName": "FrameBlock", "variables": { "prop": "y", "value": "255" }, "next": { "x": 0, "y": 0, "constructorName": "MoveBlock", "variables": { "type": "tapChase", "zigzagdirection": "X", "tapdirection": "X", "movedirection": "Left", "dx": "0", "dy": "0" }, "next": { "x": 0, "y": 0, "constructorName": "CollisionBlock", "variables": { "className": "アイコン2", "whenHit": "", "score": "-10" }, "next": { "x": 0, "y": 0, "constructorName": "FrameBlock", "variables": { "prop": "x", "value": "144" }, "next": { "x": 0, "y": 0, "constructorName": "FrameBlock", "variables": { "prop": "scaleX", "value": "2" }, "next": { "x": 0, "y": 0, "constructorName": "TargetHitBlock", "variables": { "className": "アイコン2", "fold": "-", "handler": { "x": 0, "y": 0, "constructorName": "SignalBlock", "variables": { "name": "time_change2" }, "next": null } }, "next": { "x": 0, "y": 0, "constructorName": "ListenerBlock", "variables": { "eventType": "touchend", "fold": "-", "handler": { "x": 0, "y": 0, "constructorName": "NewPuppetBlock", "variables": { "name": "アイコン", "fold": "-", "behavior": null }, "next": { "x": 0, "y": 0, "constructorName": "SEBlock", "variables": { "sesrc": "gameover.wav" }, "next": null } } }, "next": null } } } } } } } } } } } }, { "x": -561, "y": 166, "constructorName": "BackgroundBlock", "variables": { "bgsrc": "spacebg.png" } }, { "x": -313, "y": -65, "constructorName": "TimerBoardBlock", "variables": { "countdir": "countdown", "fold": "-", "seconds": "30", "behavior": { "x": 0, "y": 0, "constructorName": "ListenerBlock", "variables": { "eventType": "timeup", "fold": "-", "handler": { "x": 0, "y": 0, "constructorName": "SetTimeoutBlock", "variables": { "time": "0.1", "fold": "-", "thenDo": { "x": 0, "y": 0, "constructorName": "SEBlock", "variables": { "sesrc": "incorrect.wav" }, "next": { "x": 0, "y": 0, "constructorName": "GameOverBlock", "variables": {}, "next": null } } }, "next": null } }, "next": { "x": 0, "y": 0, "constructorName": "ListenerBlock", "variables": { "eventType": "time_change", "fold": "-", "handler": { "x": 0, "y": 0, "constructorName": "AssignBlock", "variables": { "a": { "x": 0, "y": 0, "constructorName": "PropertyBlock", "variables": { "name": "count" } }, "op": "+=", "b": { "x": 0, "y": 0, "constructorName": "NumberBlock", "variables": { "value": "3" } } }, "next": null } }, "next": { "x": 0, "y": 0, "constructorName": "ListenerBlock", "variables": { "eventType": "time_change2", "fold": "-", "handler": { "x": 0, "y": 0, "constructorName": "AssignBlock", "variables": { "a": { "x": 0, "y": 0, "constructorName": "PropertyBlock", "variables": { "name": "count" } }, "op": "-=", "b": { "x": 0, "y": 0, "constructorName": "NumberBlock", "variables": { "value": "3" } } }, "next": null } }, "next": null } } } } }, { "x": 2443, "y": 25, "constructorName": "PuppetBlock", "variables": { "name": "うちゅうせん", "fold": "-", "image": "enemy01.png", "behavior": { "x": 0, "y": 0, "constructorName": "ColorBlock", "variables": { "color": [0, 0, 0] }, "next": { "x": 0, "y": 0, "constructorName": "DisplayBlock", "variables": { "appeartype": "randomAppearTop", "interval": "20", "initial": "10" }, "next": { "x": 0, "y": 0, "constructorName": "MoveBlock", "variables": { "type": "zigzag", "zigzagdirection": "X", "tapdirection": "X", "movedirection": "Left", "dx": "0", "dy": "0" }, "next": { "x": 0, "y": 0, "constructorName": "CollisionBlock", "variables": { "className": "アイコン", "whenHit": "\"hitAndDie\", ", "score": "10" }, "next": { "x": 0, "y": 0, "constructorName": "ListenerBlock", "variables": { "eventType": "enterframe", "fold": "-", "handler": { "x": 0, "y": 0, "constructorName": "IfBlock", "variables": { "condition": { "x": 0, "y": 0, "constructorName": "ProbBlock", "variables": { "value": "5" } }, "fold": "-", "thenDo": { "x": 0, "y": 0, "constructorName": "NewPuppetBlock", "variables": { "name": "アイコン2", "fold": "-", "behavior": null }, "next": null } }, "next": null } }, "next": { "x": 0, "y": 0, "constructorName": "TargetHitBlock", "variables": { "className": "アイコン", "fold": "-", "handler": { "x": 0, "y": 0, "constructorName": "SEBlock", "variables": { "sesrc": "explosion.wav" }, "next": { "x": 0, "y": 0, "constructorName": "SignalBlock", "variables": { "name": "time_change" }, "next": null } } }, "next": null } } } } } } } }, { "x": 2597, "y": -492, "constructorName": "PuppetBlock", "variables": { "name": "ばくはつ", "fold": "-", "image": "effect0.gif", "behavior": { "x": 0, "y": 0, "constructorName": "FrameSequenceBlock", "variables": { "sequence": [0, 1, 2, 3, 4], "times": "2" }, "next": { "x": 0, "y": 0, "constructorName": "ListenerBlock", "variables": { "eventType": "init", "fold": "-", "handler": { "x": 0, "y": 0, "constructorName": "SetTimeoutBlock", "variables": { "time": "1", "fold": "-", "thenDo": { "x": 0, "y": 0, "constructorName": "AddBehaviorBlock", "variables": { "fold": "-", "behavior": { "x": 0, "y": 0, "constructorName": "SpecialBlock", "variables": { "type": "die", "biggerdir": "X", "smallerdir": "X", "rotdir": "5" }, "next": null } }, "next": null } }, "next": null } }, "next": null } } } }, { "x": 1915, "y": -339, "constructorName": "PuppetBlock", "variables": { "name": "アイコン2", "fold": "-", "image": "icon0.png", "behavior": { "x": 0, "y": 0, "constructorName": "FrameSequenceBlock", "variables": { "sequence": [60, 59, 58, 57, 56, 63, 62, 61], "times": "0" }, "next": { "x": 0, "y": 0, "constructorName": "MoveBlock", "variables": { "type": "move", "zigzagdirection": "X", "tapdirection": "X", "movedirection": "Down", "dx": "0", "dy": "0" }, "next": { "x": 0, "y": 0, "constructorName": "CollisionBlock", "variables": { "className": "アイコン", "whenHit": "\"hitAndDie\", ", "score": "0" }, "next": { "x": 0, "y": 0, "constructorName": "FrameBlock", "variables": { "prop": "speed", "value": "20" }, "next": { "x": 0, "y": 0, "constructorName": "TargetHitBlock", "variables": { "className": "アイコン", "fold": "-", "handler": { "x": 0, "y": 0, "constructorName": "NewPuppetBlock", "variables": { "name": "ばくはつ", "fold": "-", "behavior": null }, "next": { "x": 0, "y": 0, "constructorName": "SEBlock", "variables": { "sesrc": "explosion.wav" }, "next": null } } }, "next": { "x": 0, "y": 0, "constructorName": "ListenerBlock", "variables": { "eventType": "enterframe", "fold": "-", "handler": { "x": 0, "y": 0, "constructorName": "IfBlock", "variables": { "condition": { "x": 0, "y": 0, "constructorName": "AndBlock", "variables": { "a": { "x": 0, "y": 0, "constructorName": "PropertyBlock", "variables": { "name": "x" } }, "op": ">=", "b": { "x": 0, "y": 0, "constructorName": "NumberBlock", "variables": { "value": "357" } } } }, "fold": "-", "thenDo": { "x": 0, "y": 0, "constructorName": "AddBehaviorBlock", "variables": { "fold": "-", "behavior": { "x": 0, "y": 0, "constructorName": "SpecialBlock", "variables": { "type": "die", "biggerdir": "X", "smallerdir": "X", "rotdir": "5" }, "next": null } }, "next": null } }, "next": null } }, "next": null } } } } } } } }]

Source files: 

Team