Discuss Scratch

obu007e
Scratcher
14 posts

Scratch 3.0 をハック(動作や構造を解析すること)しよう!

2725jc wrote:

U-Y-Scratch wrote:

PCを買い換えたら、「サムネイルをセット」ボタンが出てきました。そのため、アカウントでなく端末に紐図けられていると考えます。
それはどういうことでしょうか。サムネイルは鯖ではなく各自のローカルに保存されているということでしょうか
「サムネイルをセット」というボタンはこの前行われたscratchのアップデートで追加された機能です。このボタンを押すことでサムネイルをセットすることができます。共有する前にこのボタンを押しておくことでサムネをセットした状態で共有できますが、1回も押さなかった場合、 1番最初の中心にscratch catがいる状態のサムネイルになります。
TNTSuperMan
Scratcher
100+ posts

Scratch 3.0 をハック(動作や構造を解析すること)しよう!

#902の進捗について載せてもいいですかね?

今は、商標など色々な問題を考慮してレスポンスJSONのプロパティ名をscratchteamからadminにしたり、
scratch-wwwをフォークしたりと、再現と言えるほどScratchと同じではないみたいな状況なんですが、
ScratchのAPIの仕組みについてある程度学びを得ることができました。
そして、最近はゲーム作ってみたり投票サービス作ってみたりで更新が停滞してます。

ちなみに、どうせBunなのでとフレームワークをElysiaに変えました。

これってどうですかね?
syhisa5656
Scratcher
35 posts

Scratch 3.0 をハック(動作や構造を解析すること)しよう!

https://scratch.mit.edu/projects/1236151672/editor/
jsonファイルに変換して、「shadow=false」のところをすべて「shadow=true」にしたら
ブロックや背景などほぼすべてが隠されました。

Last edited by syhisa5656 (Nov. 5, 2025 05:46:19)

bambibambambi0081
Scratcher
4 posts

Scratch 3.0 をハック(動作や構造を解析すること)しよう!

そういえば実際Shadowってどこで使われてるんでしたっけ
Ryouse1
Scratcher
24 posts

Scratch 3.0 をハック(動作や構造を解析すること)しよう!

https://turbowarp.org/1201938491?size=960x720 これもハッキングブロック使われてるんですけど、実はproject.jsonが160MBもあるんです。なぜでしょう
kikkubo-do
Scratcher
3 posts

Scratch 3.0 をハック(動作や構造を解析すること)しよう!

Scratchのコードは、json、コスチューム(見た目)、音(音楽)の3つに分けてあるのを知りましたが、これについて、jsonファイルをエディットする方法はないのですか?
chona2021
Scratcher
71 posts

Scratch 3.0 をハック(動作や構造を解析すること)しよう!

#926
これを使って簡単にエディットできます。
また、少し面倒くさいですが、
・プロジェクトをファイルに保存する。
・保存したファイル(.sb3)を.zipに変換する。
・.zip形式に変換されたファイルを展開(解凍)する。
・解凍されたファイルの中にある.json形式のファイルをメモ帳で開く。
・編集する。
・.zip形式で圧縮する。
・.zip形式を.sb3形式に変換しなおす。
と言う方法もあります。
e1bfd762321e409cee4a
Scratcher
100+ posts

Scratch 3.0 をハック(動作や構造を解析すること)しよう!

こちらの指摘を受け、利用規約を読み直して微妙と自己判断したので削除

Last edited by e1bfd762321e409cee4a (Dec. 7, 2025 12:46:14)

abee
Scratcher
1000+ posts

Scratch 3.0 をハック(動作や構造を解析すること)しよう!

それは、明らかに制限を回避するために使われていると思われますが、それを広めることは、今まで曖昧にされていたJSONハッキングを規制する理由になりうるかもしれません。
YU1000
Scratcher
82 posts

Scratch 3.0 をハック(動作や構造を解析すること)しよう!

>>>#924
このプロジェクトで試してみました。
Shadowをtrueにすると、何故かブロックが表示されなくなりました。(すでに直してあります)
ですが、私も詳しいことは、分かりません。むしろ、私も教えてもらいたいです。
bambibambambi0081
Scratcher
4 posts

Scratch 3.0 をハック(動作や構造を解析すること)しよう!

YU1000 wrote:

>>>#924
このプロジェクトで試してみました。
Shadowをtrueにすると、何故かブロックが表示されなくなりました。(すでに直してあります)
ですが、私も詳しいことは、分かりません。むしろ、私も教えてもらいたいです。
一応存在は知ってて遊んだことがあるのですが、その時に面白いのを見つけたので返信ついでに置いておきます、定義の本体についてる少しくらい定義ブロック(プレビュー?)のShadowを消して取り出すと、見た目スタックブロックのハットブロックができます。上部分は定義の本体のアレにしかくっつこうとしません。
pura314
Scratcher
100+ posts

Scratch 3.0 をハック(動作や構造を解析すること)しよう!

音声合成についてです。
自分は音声合成を利用するにはインターネットが必要と書いてあったので、恐らくどっかのサービスから音をダウンロードしているんだろうと思いました。そこで開発ツールを見たところ、きちんAPI的なものがありました。
(リンクはhttps://synthesis-service.scratch.mit.edu/synth?locale={言語などを入れる}&gender={なんといえばいいかわからないけど種類を入れる}&text={しゃべらせたい内容} で、例えば日本語で「こんにちは」のアルトだったら、https://synthesis-service.scratch.mit.edu/synth?locale=ja-JP&gender=female&text=こんにちは ) それでいろいろ遊んでみると、なぜか(アルト・ねずみ)と(テノール・巨人)の組み合わせは、参照先のリンクが同じでした。そこでコードを調べてみました。
https://github.com/scratchfoundation/scratch-vm/blob/b3266a0cfe5122f20b72ccd738a3dd4dff4fc5a5/src/extensions/scratch3_text2speech/index.js#L144
    get VOICE_INFO () {
        return {
            [ALTO_ID]: {
                name: formatMessage({
                    id: 'text2speech.alto',
                    default: 'alto',
                    description: 'Name for a voice with ambiguous gender.'
                }),
                gender: 'female',
                playbackRate: 1
            },
            [TENOR_ID]: {
                name: formatMessage({
                    id: 'text2speech.tenor',
                    default: 'tenor',
                    description: 'Name for a voice with ambiguous gender.'
                }),
                gender: 'male',
                playbackRate: 1
            },
            [SQUEAK_ID]: {
                name: formatMessage({
                    id: 'text2speech.squeak',
                    default: 'squeak',
                    description: 'Name for a funny voice with a high pitch.'
                }),
                gender: 'female',
                playbackRate: 1.19 // +3 semitones
            },
            [GIANT_ID]: {
                name: formatMessage({
                    id: 'text2speech.giant',
                    default: 'giant',
                    description: 'Name for a funny voice with a low pitch.'
                }),
                gender: 'male',
                playbackRate: 0.84 // -3 semitones
            },
            [KITTEN_ID]: {
                name: formatMessage({
                    id: 'text2speech.kitten',
                    default: 'kitten',
                    description: 'A baby cat.'
                }),
                gender: 'female',
                playbackRate: 1.41 // +6 semitones
            }
        };
そこでわかったことは、(アルト・ねずみ)と(テノール・巨人)の組み合わせでは、参照先のリンクが同じなのはなぜかというと、もともとは同じ音声を使っていますが、その音声に対して“playbackRate”(再生速度)を変えさせる、という操作をさせて、ねずみ・巨人の音声を出しているから、ということです。とても興味深かったです。なにかに使えるかも?

追記:そのプロジェクトを作ってみました。 → https://scratch.mit.edu/projects/1260854641/

Last edited by pura314 (Jan. 1, 2026 11:49:45)

-popcorn_yummy-
Scratcher
36 posts

Scratch 3.0 をハック(動作や構造を解析すること)しよう!

bambibambambi0081 wrote:

そういえば実際Shadowってどこで使われてるんでしたっけ
 (どこかの場所 v)へ行く
の「どこかの場所」のところみたいに周りより色が濃いところshadowが使われています。

Last edited by -popcorn_yummy- (Feb. 16, 2026 06:13:58)

purokisi3351
Scratcher
2 posts

Scratch 3.0 をハック(動作や構造を解析すること)しよう!

スタジオをフォローするsite-apiを知ってる人はいませんか?
-popcorn_yummy-
Scratcher
36 posts

Scratch 3.0 をハック(動作や構造を解析すること)しよう!

bambibambambi0081 wrote:

YU1000 wrote:

>>>#924
このプロジェクトで試してみました。
Shadowをtrueにすると、何故かブロックが表示されなくなりました。(すでに直してあります)
ですが、私も詳しいことは、分かりません。むしろ、私も教えてもらいたいです。
一応存在は知ってて遊んだことがあるのですが、その時に面白いのを見つけたので返信ついでに置いておきます、定義の本体についてる少しくらい定義ブロック(プレビュー?)のShadowを消して取り出すと、見た目スタックブロックのハットブロックができます。上部分は定義の本体のアレにしかくっつこうとしません。
shadowを消すのではなくtrueをfalseにするんですよ
bambibambambi0081
Scratcher
4 posts

Scratch 3.0 をハック(動作や構造を解析すること)しよう!

あまりしっかりと検証はしていないですが、最近Json Hack関連のものが色々と壊れていませんか?主にShadow辺りの挙動が変わったのかもしれません
主な例ですが、@Es-2 さんのhttps://scratch.mit.edu/projects/558849188 とかも見た目がすごいことになっています
bambibambambi0081
Scratcher
4 posts

Scratch 3.0 をハック(動作や構造を解析すること)しよう!

bambibambambi0081 wrote:

あまりしっかりと検証はしていないですが、最近Json Hack関連のものが色々と壊れていませんか?主にShadow辺りの挙動が変わったのかもしれません
主な例ですが、@Es-2 さんのhttps://scratch.mit.edu/projects/558849188 とかも見た目がすごいことになっています
少しだけ検証した結果、定義のプレビュー(procedures_prototype)のShadowは外しても外れなくなったようです。
e1bfd762321e409cee4a
Scratcher
100+ posts

Scratch 3.0 をハック(動作や構造を解析すること)しよう!

#936
Sporkによるバグです。
バグトラッカーのP1の5番目をご覧ください。
これらはバグなので、じきに修正されます。
inoking
Scratcher
1000+ posts

Scratch 3.0 をハック(動作や構造を解析すること)しよう!

e1bfd762321e409cee4a wrote:

#936
Sporkによるバグです。
バグトラッカーのP1の5番目をご覧ください。
これらはバグなので、じきに修正されます。
唐突に「Spork」と言われても話が通じません。
ここに書くなら、「『Spork』とは新しいブロックエディターのコードネーム」ぐらいの補足は必要でしょう。

また、GitHub の Issue のことを一般的には「バグトラッカー」とは呼びません。
「バグトラッカー」というと通常 Jira などの BTS (Bug Tracking System) を指します。

そして、Issue に載っているからといって「じきに修正される」とは限りません。

Powered by DjangoBB