Discuss Scratch
- Discussion Forums
- » 日本語
- » Scratch 3.0 をハック(動作や構造を解析すること)しよう!
- yukku
- Scratcher
1000+ posts
Scratch 3.0 をハック(動作や構造を解析すること)しよう!
ハッキング!?scratchでいうハッキングとは、トピック名にある通り「動作や構造を解析すること」です。[b][i][u][/u][/i][/b][s][/s]君の心をハッキング。
[big][/big]結論:@ninnikumanをフォローしろ!
wikiの日本語フォーラムに関する注意書きに
と書いてあるように、敬語で話しましょう。 公共の場所ですから、トピックで特にルールが決められていない限り、基本的には「です・ます調」の敬語で話しましょう。
↑こういう線の下に宣伝とか書いてる人がよくいるけど、こういう線より下の文章には「署名」って名前がついていて、設定を行うと自動で投稿にくっついてきます。詳しいこととか設定方法はこのページにあるので確認してみてください。
この「署名」以外で関係ないこととかをするのは基本禁止なのでそういうことやりたいと思ったら署名でやってください。
日本語フォーラムの使い方っていうプロジェクトを作ったのでどうぞ。
- KimiruHamiru
- New to Scratch
500+ posts
Scratch 3.0 をハック(動作や構造を解析すること)しよう!
わたしなりにまとめてみました。 だれも気づいていないようだが…
「どれかのキー」がエンターキーを含むようになった
2019/07/末頃のScratch3.0オンラインエディタの更新で、
[どれかの v]キーが押されたときブロックと
<[どれかの v]キーが押された>ブロックが、「enterキーに反応」するようになった。過去バージョンでは「enterキーに反応」しなかった。
オフラインエディタの対応予定は未定だが、慣例的にはオンラインエディタ更新から一か月後遅れ程度で更新される場合が多い。
実用上のヒント
2019/09/01時点では、両ブロックの「選択候補ドロップリスト」に、“enterキーに相当する候補”が日本語英語問わず追加されていない。
このため、
[どれかの v]キーが押されたときブロックに関しては、エンターキーが押されたことを「特定」する手段がない。
一方、
<[どれかの v]キーが押された>については、キー指定部分に値ブロックが利用できるので、「“enter”という文字列が設定された値ブロック」を利用すれば、
つまり、
[変数 v]を[enter]にするなどと書けば、実用上、エンターキーが押されたことを「特定」できる。
もし<(変数)キーが押された>なら
[ニャー v]の音を鳴らす
end
- inoking
- Scratcher
1000+ posts
Scratch 3.0 をハック(動作や構造を解析すること)しよう!
これは署名と呼ばれるもので投稿本文とは関係ありません。
Scratch は「世界最大の子ども向けコーディングコミュニティーで、シンプルなビジュアルインターフェースを持ったコーディング言語」
つまり「子ども SNS」ではない
・「傾向」とは単に一定の基準で作品を並びかえただけのもので、ランキングでもなんでもない、ナンバーワンよりオンリーワンを目指してみては?
・「フォロー」とは他の Scratcher が何をしているかを簡単に確認するためのもので、「フォロワー」は「ファン」ではない
・「スタジオ」とは特定のテーマに沿って作品をまとめたり、共同制作したりするための場所
・「星」や「ハート」などを何かの見返りとすることは Scratch チームによって禁止されている
- apple502j
- Scratcher
1000+ posts
Scratch 3.0 をハック(動作や構造を解析すること)しよう!
Pythonで「sb3」というライブラリを作ってみました。(Py3.6+対応)
sb3ファイル・sprite3ファイルをパースできます。
インストール: pip3 install sb3
sb3ファイル・sprite3ファイルをパースできます。
import sb3 project, assets = sb3.open_sb3("my_game.sb3") print(f"ステージのスクリプト数: {len(project.targets[0].block_info.scripts())}スクリプト") print(f"User Agent:{project.meta.user_agent}")
インストール: pip3 install sb3
署名は、ディスカッションフォーラムの機能である。署名は、その人のすべての投稿の下部に追加される。署名は、BBCodeで記述できる。 署名を追加/変更/削除したい場合は、ディスカッションフォーラムのホームの一番下に行き、「Change your signature」を押す。署名の大きさは150pxまでである。これには、改行、画像を含む。- Japanese Scratch-Wiki 「署名」
- apple502j
- Scratcher
1000+ posts
Scratch 3.0 をハック(動作や構造を解析すること)しよう!
Scratch 3.0のもうすぐきそうな更新は、
・登録画面の変更
・ペイントエディター
が中心になりそうですね。
とくに登録画面が変わったら市販本がやばそう。
https://github.com/LLK/scratch-www/pull/3396 <- 画像アリ
・登録画面の変更
・ペイントエディター
が中心になりそうですね。
とくに登録画面が変わったら市販本がやばそう。
https://github.com/LLK/scratch-www/pull/3396 <- 画像アリ
署名は、ディスカッションフォーラムの機能である。署名は、その人のすべての投稿の下部に追加される。署名は、BBCodeで記述できる。 署名を追加/変更/削除したい場合は、ディスカッションフォーラムのホームの一番下に行き、「Change your signature」を押す。署名の大きさは150pxまでである。これには、改行、画像を含む。- Japanese Scratch-Wiki 「署名」
- iteyashigassan
- Scratcher
14 posts
Scratch 3.0 をハック(動作や構造を解析すること)しよう!
こっちのほうがいい
だれも気づいていないようだが…
<[([enter] と []) v] キーが押された>
Last edited by iteyashigassan (Nov. 23, 2019 23:47:06)
- apple502j
- Scratcher
1000+ posts
Scratch 3.0 をハック(動作や構造を解析すること)しよう!
https://github.com/LLK/scratch-vm/pull/2322
ひさしぶり?のプルリクです。またバグ修正。
リスト改名が反映されないバグの修正です。
このコードにたどり着くまでけっこう時間かかりました… ステージモニター関連のコード全部、そしてその元データが来るvm-listener-hoc、パース処理の部分から、vmが原因と。あとは検索ですね。
ひさしぶり?のプルリクです。またバグ修正。
リスト改名が反映されないバグの修正です。
このコードにたどり着くまでけっこう時間かかりました… ステージモニター関連のコード全部、そしてその元データが来るvm-listener-hoc、パース処理の部分から、vmが原因と。あとは検索ですね。
署名は、ディスカッションフォーラムの機能である。署名は、その人のすべての投稿の下部に追加される。署名は、BBCodeで記述できる。 署名を追加/変更/削除したい場合は、ディスカッションフォーラムのホームの一番下に行き、「Change your signature」を押す。署名の大きさは150pxまでである。これには、改行、画像を含む。- Japanese Scratch-Wiki 「署名」
- apple502j
- Scratcher
1000+ posts
Scratch 3.0 をハック(動作や構造を解析すること)しよう!
「連絡先」ページに更新が入るようです。https://github.com/LLK/scratch-www/pull/3719
署名は、ディスカッションフォーラムの機能である。署名は、その人のすべての投稿の下部に追加される。署名は、BBCodeで記述できる。 署名を追加/変更/削除したい場合は、ディスカッションフォーラムのホームの一番下に行き、「Change your signature」を押す。署名の大きさは150pxまでである。これには、改行、画像を含む。- Japanese Scratch-Wiki 「署名」
- takkun0530
- Scratcher
100+ posts
Scratch 3.0 をハック(動作や構造を解析すること)しよう!
Apple502jさん
それはお知らせ・ニュースのほうがいいのでは?
それはお知らせ・ニュースのほうがいいのでは?
- hclhcl
- Scratcher
100+ posts
Scratch 3.0 をハック(動作や構造を解析すること)しよう!
削除
Last edited by hclhcl (May 20, 2021 07:37:34)
- ttnr
- Scratcher
62 posts
Scratch 3.0 をハック(動作や構造を解析すること)しよう!
Scratchって、A~Z,0~9,space,矢印キー(デフォで選択できるやつ)以外のキーはできないのかな…。
そしてtxt,pngなどを読み込みと書き出しもできたら、テキストエディタとか作れるのに。
っと思ったらここを見つけました。
と、いうことで、内部にも精通してそうな皆様に質問です。
他のキーはできないのですか?
そしてtxt,pngなどを読み込みと書き出しもできたら、テキストエディタとか作れるのに。
っと思ったらここを見つけました。
と、いうことで、内部にも精通してそうな皆様に質問です。
他のキーはできないのですか?
- apple502j
- Scratcher
1000+ posts
Scratch 3.0 をハック(動作や構造を解析すること)しよう!
Enterキーもできます。(ただし、変数ブロックや「() と ()」などを使って「enter」を入力しないといけません)
署名は、ディスカッションフォーラムの機能である。署名は、その人のすべての投稿の下部に追加される。署名は、BBCodeで記述できる。 署名を追加/変更/削除したい場合は、ディスカッションフォーラムのホームの一番下に行き、「Change your signature」を押す。署名の大きさは150pxまでである。これには、改行、画像を含む。- Japanese Scratch-Wiki 「署名」
- kakurenbo
- Scratcher
500+ posts
Scratch 3.0 をハック(動作や構造を解析すること)しよう!
一部の記号(?, !, ", etc…)にも反応する様です。
Last edited by kakurenbo (March 5, 2020 02:22:18)
そう、私です。
- yaakiyu
- Scratcher
82 posts
Scratch 3.0 をハック(動作や構造を解析すること)しよう!
(回数::control)をカウントしながら() 回繰り返す{について
[変数 v] を (回数::control) にする
}::looks control
apple502jさんが「実は隠しブロックですが存在しているのです…」
とここで言っているのですが、
どうやってだすのですか?ハック関連のことだと思ったのでここに書きましたが、トピ違いでしたら移動します。
—言いたいこと—
活動減ります
(これは署名ですって書いている人何人いるんだろう…)
どうも、yaakiyuです。
pc変えないので環境をここに書きます。
My browser / operating system: Windows NT 10.0, Chrome 80.0.3987.149, No Flash version detected
- apple502j
- Scratcher
1000+ posts
Scratch 3.0 をハック(動作や構造を解析すること)しよう!
https://scratch.mit.edu/projects/208445070/ このプロジェクトにあるので、急ぎでほしい人はここから。
これはプロジェクトの中身が入っているJSONファイルをいじると出てきます。「もし」ブロックをプロジェクトに置いて、「control_if」を「control_for_each」に書き換え、引数の変更などを行うと(詳細はめんどくさいので略します)このブロックとなります。
これはScratch 2.0のベータ版で追加され、その後すぐに削除されましたが、実装コードは残っています。(そしてScratch 3.0へ受け継がれました。)
これはプロジェクトの中身が入っているJSONファイルをいじると出てきます。「もし」ブロックをプロジェクトに置いて、「control_if」を「control_for_each」に書き換え、引数の変更などを行うと(詳細はめんどくさいので略します)このブロックとなります。
これはScratch 2.0のベータ版で追加され、その後すぐに削除されましたが、実装コードは残っています。(そしてScratch 3.0へ受け継がれました。)
署名は、ディスカッションフォーラムの機能である。署名は、その人のすべての投稿の下部に追加される。署名は、BBCodeで記述できる。 署名を追加/変更/削除したい場合は、ディスカッションフォーラムのホームの一番下に行き、「Change your signature」を押す。署名の大きさは150pxまでである。これには、改行、画像を含む。- Japanese Scratch-Wiki 「署名」
- yaakiyu
- Scratcher
82 posts
Scratch 3.0 をハック(動作や構造を解析すること)しよう!
ありがとうございます。
もう一つ
これもどうやってだすかわかりません。教えてください。
もう一つ
(カウンター::control)サイトを落とすときに使われるらしいのですが
カウンターに足す::control
これもどうやってだすかわかりません。教えてください。
Last edited by yaakiyu (March 5, 2020 09:31:36)
—言いたいこと—
活動減ります
(これは署名ですって書いている人何人いるんだろう…)
どうも、yaakiyuです。
pc変えないので環境をここに書きます。
My browser / operating system: Windows NT 10.0, Chrome 80.0.3987.149, No Flash version detected