Help with USB Gamepad extension implementation
id: 688485
category: Developing Scratch Extensions
posts: 121
May 30, 2023 22:59:03
Help with USB Gamepad extension implementation
view on scratch
view on legacy ocular
RobotChickens
loading
I have been active on this suggestion thread which has been open for over 5 years now with many various supporters along the way. The ST has openly said it is not rejected, yet there has been no visible progress (to my knowledge) on the implementation of USB Gamepad support. A few supporters and I would like to take things into our own hands and make a pull request to the Scratch GitHub for this feature. We are unsure how to proceed and would like some help/advice on the matter. We wouldn't have to start from scratch (haha) because there are already people who have made their own open-source extensions for this. (One of them is on TurboWarp)
To be clear! This is NOT button mapping. The suggestion is to have a separate group of blocks (as a Scratch extension) with analog and rumble support!!
To be clear! This is NOT button mapping. The suggestion is to have a separate group of blocks (as a Scratch extension) with analog and rumble support!!
May 30, 2023 23:38:18
Help with USB Gamepad extension implementation
view on scratch
view on legacy ocular
RobotChickens
loading
Reported to be moved to the Open Source Projects section
my bad
my bad
Jun 1, 2023 16:54:38
Help with USB Gamepad extension implementation
view on scratch
view on legacy ocular
RobotChickens
loading
Bump
Jun 3, 2023 01:32:57
Help with USB Gamepad extension implementation
view on scratch
view on legacy ocular
RobotChickens
loading
bump
Jun 4, 2023 01:22:09
Help with USB Gamepad extension implementation
view on scratch
view on legacy ocular
creeperyeettt
loading
woop
Jun 6, 2023 18:32:31
Help with USB Gamepad extension implementation
view on scratch
view on legacy ocular
RobotChickens
loading
bump
Jun 7, 2023 12:06:33
Help with USB Gamepad extension implementation
view on scratch
view on legacy ocular
creeperyeettt
loading
bump?
Jun 8, 2023 18:06:56
Help with USB Gamepad extension implementation
view on scratch
view on legacy ocular
PaperMarioFan2022
loading
Bump
Jun 8, 2023 18:39:48
Help with USB Gamepad extension implementation
view on scratch
view on legacy ocular
crawfishcode
loading
b u m p
Jun 8, 2023 18:44:08
Help with USB Gamepad extension implementation
view on scratch
view on legacy ocular
GIitchInTheMatrix
loading
Have you decided API/lib you're gonna use? That's one of the first things to decide before developing it. And gave you forked the repo already?
Jun 8, 2023 20:44:39
Help with USB Gamepad extension implementation
view on scratch
view on legacy ocular
RobotChickens
loading
(#10)No, I haven't done anything yet. I'm a GitHub noob, sorry. I do have an account though.
Have you decided API/lib you're gonna use? That's one of the first things to decide before developing it. And gave you forked the repo already?
Jun 8, 2023 20:51:19
Help with USB Gamepad extension implementation
view on scratch
view on legacy ocular
creeperyeettt
loading
weewoooweeeooooweeoo
Jun 8, 2023 22:30:24
Help with USB Gamepad extension implementation
view on scratch
view on legacy ocular
GIitchInTheMatrix
loading
Fork the Scratch-vm repo, and set it up locally. From there, ensure you know JS and the blocky lib. You wanna find a good controller lib. LMK when all that's done.(#10)No, I haven't done anything yet. I'm a GitHub noob, sorry. I do have an account though.
Have you decided API/lib you're gonna use? That's one of the first things to decide before developing it. And gave you forked the repo already?
Jun 9, 2023 01:33:02
Help with USB Gamepad extension implementation
view on scratch
view on legacy ocular
crawfishcode
loading
Hey, I have close to no experience with coding languages other than Scratch and I don't know anything about GitHub, is there still any way I can help?Fork the Scratch-vm repo, and set it up locally. From there, ensure you know JS and the blocky lib. You wanna find a good controller lib. LMK when all that's done.(#10)No, I haven't done anything yet. I'm a GitHub noob, sorry. I do have an account though.
Have you decided API/lib you're gonna use? That's one of the first things to decide before developing it. And gave you forked the repo already?
Jun 9, 2023 12:15:09
Help with USB Gamepad extension implementation
view on scratch
view on legacy ocular
GIitchInTheMatrix
loading
Make a GitHub Account, and start learning JS. You can’t jump into frameworks or libraries without knowing how the language works. Also, learn errors and than set up the Scratch environment locally. The Scratch-vm repo in particular. You’ll find in under the scratchfoundation account.Hey, I have close to no experience with coding languages other than Scratch and I don't know anything about GitHub, is there still any way I can help?Fork the Scratch-vm repo, and set it up locally. From there, ensure you know JS and the blocky lib. You wanna find a good controller lib. LMK when all that's done.(#10)No, I haven't done anything yet. I'm a GitHub noob, sorry. I do have an account though.
Have you decided API/lib you're gonna use? That's one of the first things to decide before developing it. And gave you forked the repo already?
Jun 9, 2023 13:30:41
Help with USB Gamepad extension implementation
view on scratch
view on legacy ocular
GIitchInTheMatrix
loading
Actually, important question. Does everyone here know what a PR is?
Jun 9, 2023 13:38:33
Help with USB Gamepad extension implementation
view on scratch
view on legacy ocular
crawfishcode
loading
Uh, no…? Like I said before, I'm a complete noob Actually, important question. Does everyone here know what a PR is?
Jun 9, 2023 13:41:29
Help with USB Gamepad extension implementation
view on scratch
view on legacy ocular
GIitchInTheMatrix
loading
A pull request is basically a request get a feature you write to a service.Uh, no…? Like I said before, I'm a complete noob Actually, important question. Does everyone here know what a PR is?
Jun 9, 2023 15:33:26
Help with USB Gamepad extension implementation
view on scratch
view on legacy ocular
crawfishcode
loading
Wait, so do you write code for a PR, or do you just ask for XYZ to be added?A pull request is basically a request get a feature you write to a service.Uh, no…? Like I said before, I'm a complete noob Actually, important question. Does everyone here know what a PR is?
Jun 9, 2023 15:33:56
Help with USB Gamepad extension implementation
view on scratch
view on legacy ocular
GIitchInTheMatrix
loading
You write the codeWait, so do you write code for a PR, or do you just ask for XYZ to be added?A pull request is basically a request get a feature you write to a service.Uh, no…? Like I said before, I'm a complete noob Actually, important question. Does everyone here know what a PR is?
Jun 9, 2023 15:48:53
Help with USB Gamepad extension implementation
view on scratch
view on legacy ocular
crawfishcode
loading
oh, ok. Do we build off of the code already made by the ST, or do we start from scratch (pun not intended lol)?You write the codeWait, so do you write code for a PR, or do you just ask for XYZ to be added?A pull request is basically a request get a feature you write to a service.Uh, no…? Like I said before, I'm a complete noob Actually, important question. Does everyone here know what a PR is?
Jun 9, 2023 15:49:58
Help with USB Gamepad extension implementation
view on scratch
view on legacy ocular
GIitchInTheMatrix
loading
You build off what they have. You’ll likely have to build a full environment, including scratch-vm and other editor prerequisites before you can work on it, so you can build and run the code.oh, ok. Do we build off of the code already made by the ST, or do we start from scratch (pun not intended lol)?You write the codeWait, so do you write code for a PR, or do you just ask for XYZ to be added?A pull request is basically a request get a feature you write to a service.Uh, no…? Like I said before, I'm a complete noob Actually, important question. Does everyone here know what a PR is?
Jun 10, 2023 03:52:01
Help with USB Gamepad extension implementation
view on scratch
view on legacy ocular
RobotChickens
loading
(#22)I do know about PRs but not so much about environments yet, I'm learning now.-Snip-You build off what they have. You’ll likely have to build a full environment, including scratch-vm and other editor prerequisites before you can work on it, so you can build and run the code.
Could we possibly use the code from TurboWarp's existing extension or other existing gamepad projects?
Jun 10, 2023 14:09:49
Help with USB Gamepad extension implementation
view on scratch
view on legacy ocular
GIitchInTheMatrix
loading
In theory witj changes.(#22)I do know about PRs but not so much about environments yet, I'm learning now.-Snip-You build off what they have. You’ll likely have to build a full environment, including scratch-vm and other editor prerequisites before you can work on it, so you can build and run the code.
Could we possibly use the code from TurboWarp's existing extension or other existing gamepad projects?
Jun 10, 2023 14:24:24
Help with USB Gamepad extension implementation
view on scratch
view on legacy ocular
PaperMarioFan2022
loading
I think I do, altho I am not quite sure because I haven’t learned how to do JavaScript yet. Actually, important question. Does everyone here know what a PR is?
Jun 11, 2023 20:33:47
Help with USB Gamepad extension implementation
view on scratch
view on legacy ocular
GIitchInTheMatrix
loading
Pulls are something that GitHub{and i think git itself) has anyways, regardless if language.I think I do, altho I am not quite sure because I haven’t learned how to do JavaScript yet. Actually, important question. Does everyone here know what a PR is?
Jun 12, 2023 11:59:58
Help with USB Gamepad extension implementation
view on scratch
view on legacy ocular
creeperyeettt
loading
shouldnt we ask the guy who made turbowarp for his code maybe(#22)I do know about PRs but not so much about environments yet, I'm learning now.-Snip-You build off what they have. You’ll likely have to build a full environment, including scratch-vm and other editor prerequisites before you can work on it, so you can build and run the code.
Could we possibly use the code from TurboWarp's existing extension or other existing gamepad projects?
Jun 12, 2023 13:39:06
Help with USB Gamepad extension implementation
view on scratch
view on legacy ocular
RobotChickens
loading
(#27)It's already on GitHubshouldnt we ask the guy who made turbowarp for his code maybe(#22)I do know about PRs but not so much about environments yet, I'm learning now.-Snip-You build off what they have. You’ll likely have to build a full environment, including scratch-vm and other editor prerequisites before you can work on it, so you can build and run the code.
Could we possibly use the code from TurboWarp's existing extension or other existing gamepad projects?
Jun 12, 2023 14:04:41
Help with USB Gamepad extension implementation
view on scratch
view on legacy ocular
GIitchInTheMatrix
loading
TurboWarp is compiled, while Scratch is interpreted.(#27)It's already on GitHubshouldnt we ask the guy who made turbowarp for his code maybe(#22)I do know about PRs but not so much about environments yet, I'm learning now.-Snip-You build off what they have. You’ll likely have to build a full environment, including scratch-vm and other editor prerequisites before you can work on it, so you can build and run the code.
Could we possibly use the code from TurboWarp's existing extension or other existing gamepad projects?
Jun 12, 2023 17:27:22
Help with USB Gamepad extension implementation
view on scratch
view on legacy ocular
RobotChickens
loading
(#29)Ah, I didn't think about that. There is also this project alreadyTurboWarp is compiled, while Scratch is interpreted.(#27)It's already on GitHubshouldnt we ask the guy who made turbowarp for his code maybe(#22)I do know about PRs but not so much about environments yet, I'm learning now.-Snip-You build off what they have. You’ll likely have to build a full environment, including scratch-vm and other editor prerequisites before you can work on it, so you can build and run the code.
Could we possibly use the code from TurboWarp's existing extension or other existing gamepad projects?
Jun 12, 2023 17:31:49
Help with USB Gamepad extension implementation
view on scratch
view on legacy ocular
PaperMarioFan2022
loading
(#29)There is also this project alreadyTurboWarp is compiled, while Scratch is interpreted.(#27)It's already on GitHubshouldnt we ask the guy who made turbowarp for his code maybe(#22)I do know about PRs but not so much about environments yet, I'm learning now.-Snip-You build off what they have. You’ll likely have to build a full environment, including scratch-vm and other editor prerequisites before you can work on it, so you can build and run the code.
Could we possibly use the code from TurboWarp's existing extension or other existing gamepad projects?
I don’t like how the editor looks on mobile view. PC should be better use for this version of the editor.
Jun 12, 2023 17:37:23
Help with USB Gamepad extension implementation
view on scratch
view on legacy ocular
creeperyeettt
loading
oh yeah sheeptester! i used to make alot of games with that and my xbox controller!(#29)Ah, I didn't think about that. There is also this project alreadyTurboWarp is compiled, while Scratch is interpreted.(#27)It's already on GitHubshouldnt we ask the guy who made turbowarp for his code maybe(#22)I do know about PRs but not so much about environments yet, I'm learning now.-Snip-You build off what they have. You’ll likely have to build a full environment, including scratch-vm and other editor prerequisites before you can work on it, so you can build and run the code.
Could we possibly use the code from TurboWarp's existing extension or other existing gamepad projects?
Jun 12, 2023 17:47:17
Help with USB Gamepad extension implementation
view on scratch
view on legacy ocular
crawfishcode
loading
OMG THIS IS SO LIT(#29)Ah, I didn't think about that. There is also this project alreadyTurboWarp is compiled, while Scratch is interpreted.(#27)It's already on GitHubshouldnt we ask the guy who made turbowarp for his code maybe(#22)I do know about PRs but not so much about environments yet, I'm learning now.-Snip-You build off what they have. You’ll likely have to build a full environment, including scratch-vm and other editor prerequisites before you can work on it, so you can build and run the code.
Could we possibly use the code from TurboWarp's existing extension or other existing gamepad projects?
Jun 12, 2023 21:37:40
Help with USB Gamepad extension implementation
view on scratch
view on legacy ocular
crawfishcode
loading
Maybe we could take the code from this page, tweak it a little, and put it in the PR? I noticed that there are some features that I would like added missing.(#29)Ah, I didn't think about that. There is also this project alreadyTurboWarp is compiled, while Scratch is interpreted.(#27)It's already on GitHubshouldnt we ask the guy who made turbowarp for his code maybe(#22)I do know about PRs but not so much about environments yet, I'm learning now.-Snip-You build off what they have. You’ll likely have to build a full environment, including scratch-vm and other editor prerequisites before you can work on it, so you can build and run the code.
Could we possibly use the code from TurboWarp's existing extension or other existing gamepad projects?
Jun 12, 2023 21:59:07
Help with USB Gamepad extension implementation
view on scratch
view on legacy ocular
RobotChickens
loading
(#31)Of course, we aren't using the editor, only the code from the GitHub.(#29)There is also this project alreadyTurboWarp is compiled, while Scratch is interpreted.(#27)It's already on GitHubshouldnt we ask the guy who made turbowarp for his code maybe(#22)I do know about PRs but not so much about environments yet, I'm learning now.-Snip-You build off what they have. You’ll likely have to build a full environment, including scratch-vm and other editor prerequisites before you can work on it, so you can build and run the code.
Could we possibly use the code from TurboWarp's existing extension or other existing gamepad projects?
I don’t like how the editor looks on mobile view. PC should be better use for this version of the editor.
Jun 12, 2023 22:12:56
Help with USB Gamepad extension implementation
view on scratch
view on legacy ocular
GIitchInTheMatrix
loading
It's designed for a much different version of the Scratch editor, and i don't think the ST accepte PR's if they use code from extensions/mods.Maybe we could take the code from this page, tweak it a little, and put it in the PR? I noticed that there are some features that I would like added missing.(#29)Ah, I didn't think about that. There is also this project alreadyTurboWarp is compiled, while Scratch is interpreted.(#27)It's already on GitHubshouldnt we ask the guy who made turbowarp for his code maybe(#22)I do know about PRs but not so much about environments yet, I'm learning now.-Snip-You build off what they have. You’ll likely have to build a full environment, including scratch-vm and other editor prerequisites before you can work on it, so you can build and run the code.
Could we possibly use the code from TurboWarp's existing extension or other existing gamepad projects?
Jun 13, 2023 02:32:39
Help with USB Gamepad extension implementation
view on scratch
view on legacy ocular
RobotChickens
loading
(#36)Ok then, we'll have to start from the beginning then.It's designed for a much different version of the Scratch editor, and i don't think the ST accepte PR's if they use code from extensions/mods.There is also this project alreadyMaybe we could take the code from this page, tweak it a little, and put it in the PR? I noticed that there are some features that I would like added missing. Ah, I didn't think about that.
Jun 13, 2023 14:36:59
Help with USB Gamepad extension implementation
view on scratch
view on legacy ocular
GIitchInTheMatrix
loading
Not really, Writing controller support from the bottom up is tough, Just use a controller lib and Blockly.(#36)Ok then, we'll have to start from the beginning then.It's designed for a much different version of the Scratch editor, and i don't think the ST accepte PR's if they use code from extensions/mods.There is also this project alreadyMaybe we could take the code from this page, tweak it a little, and put it in the PR? I noticed that there are some features that I would like added missing. Ah, I didn't think about that.
Jun 18, 2023 12:07:35
Help with USB Gamepad extension implementation
view on scratch
view on legacy ocular
misaPuding
loading
(#36)i don´t know if ST accepts PR´s at all
-snip-
It's designed for a much different version of the Scratch editor, and i don't think the ST accepte PR's if they use code from extensions/mods.
Jun 18, 2023 12:18:39
Help with USB Gamepad extension implementation
view on scratch
view on legacy ocular
GIitchInTheMatrix
loading
I believe I've seen a few.(#36)i don´t know if ST accepts PR´s at all
-snip-
It's designed for a much different version of the Scratch editor, and i don't think the ST accepte PR's if they use code from extensions/mods.
Jul 1, 2023 12:42:02
Help with USB Gamepad extension implementation
view on scratch
view on legacy ocular
crawfishcode
loading
Can you help us make the PR?I believe I've seen a few.(#36)i don´t know if ST accepts PR´s at all
-snip-
It's designed for a much different version of the Scratch editor, and i don't think the ST accepte PR's if they use code from extensions/mods.
Jul 2, 2023 12:15:16
Help with USB Gamepad extension implementation
view on scratch
view on legacy ocular
crawfishcode
loading
Can you help us out with the PR, GlitchInTheMatrix?
Jul 2, 2023 16:31:00
Help with USB Gamepad extension implementation
view on scratch
view on legacy ocular
crawfishcode
loading
Can you help us out with the PR, GlitchInTHeMatrix?
Jul 2, 2023 16:32:04
Help with USB Gamepad extension implementation
view on scratch
view on legacy ocular
crawfishcode
loading
oh shoot, it didnt load all the posts on my pc, so i thought they didn't send, sorry
Jul 13, 2023 17:49:51
Help with USB Gamepad extension implementation
view on scratch
view on legacy ocular
GIitchInTheMatrix
loading
Only after it's been programmed. Best for it to be a tenporary org that is used to add itCan you help us make the PR?I believe I've seen a few.(#36)j
-snip-
It's designed for a much different version of the Scratch editor, and i don't think the ST accepte PR's if they use code from extensions/mods.
i don´t know if ST accepts PR´s at all
Aug 30, 2023 12:07:03
Help with USB Gamepad extension implementation
view on scratch
view on legacy ocular
RobotChickens
loading
bump
Aug 30, 2023 12:10:56
Help with USB Gamepad extension implementation
view on scratch
view on legacy ocular
creeperyeettt
loading
we cant make a pull req using turbowarp right?
theres a user by the name of sheeptester who made a controller mod maybe we can ask him
theres a user by the name of sheeptester who made a controller mod maybe we can ask him
Aug 30, 2023 14:10:02
Help with USB Gamepad extension implementation
view on scratch
view on legacy ocular
GIitchInTheMatrix
loading
(#44)Both are mods, so the source won't work as well on Scratch as other extensions, Sheeptester is, IIRC, based off Turbowarp, which uses a compiler instead of an interpreter.
we cant make a pull req using turbowarp right?
theres a user by the name of sheeptester who made a controller mod maybe we can ask him
Sep 1, 2023 11:02:31
Help with USB Gamepad extension implementation
view on scratch
view on legacy ocular
EngineerRunner
loading
AFAIK you can't just use a turbowarp extension on Scratch.
those are the 3 types of extensions, with the last 2 being the ones you can load into turbowarp. however, scratch only supports core extensions, so you'd have to make most of it yourself.
those are the 3 types of extensions, with the last 2 being the ones you can load into turbowarp. however, scratch only supports core extensions, so you'd have to make most of it yourself.
Sep 1, 2023 14:38:10
Help with USB Gamepad extension implementation
view on scratch
view on legacy ocular
GIitchInTheMatrix
loading
The goal is to add support to Scratch via a pull request. AFAIK you can't just use a turbowarp extension on Scratch.
those are the 3 types of extensions, with the last 2 being the ones you can load into turbowarp. however, scratch only supports core extensions, so you'd have to make most of it yourself.
However, it is true that TurboWarp exclusive extensions can't run in Scratch's VM