A (hopefully) easy sprite question

Root / Programming Questions / [.]

Hi, Very new to SmileBASIC (but not at all new to BASIC itself). I'm using the language on the Nintendo Switch with my son. Is there some way to design your own sprites or edit the pre-existing ones? Thanks

I know that on the 3ds, there was a suite of builtin programs for editing sprites and backgrounds and stuff. I just checked on the Switch and there doesn't seem to be any, that's really weird. You may have to get one of the popular ones by browsing online projects, I'm sure someone has made a really good one. BTW, you'll get faster help if you join the discord (if you're into that sort of thing, no pressure): https://discord.gg/xnqfXfw

Thanks for the quick reply! Ok, yeah, it's a shame if it's not possible to make your own sprites on the Switch. There seem to be quite a lot of strawberry sprites in the higher end of the sprite numbers :D I presumed they were there so that you could put your own designs in those slots. I will browse some of the available projects, as you suggest and perhaps I'll be able to find out more about the possibilities from there.

I thought there was one pre-existing on the switch, but that they handled it slightly differently. It’s been a while since I’ve touched my switch so I might be making things up in my brain, or maybe I downloaded one and just completely forgot, but I thought if you pressed like either ctrl or shift on the keyboard that you could navigate to it that way. I’ve just pulled out my switch, and here’s how I got to what I have: First, I went on the main menu and pressed “make a program”. Then, pressing the minus button I pulled up the on-screen keyboard. This usually hasn’t been useful for me because I like to use a USB keyboard when coding on the switch, but you need this on-screen keyboard to access the tool (there may be another way but this is the only way I know/it’s the most convenient). Then you can press Ctrl (on the top of this keyboard) and a bunch of fancy buttons will replace the keyboard itself. Once you are here, all you need to do is press the green button that says “GAHAKU.PRG” and that will open up the built-in sprite editor. I believe there was also a keybind associated with one of the function keys on like a USB keyboard, but I changed up my keybinds and it’s been long enough that I don’t remember what they are. If you’re just looking to design sprites, that’ll probably get you there. But if for example you did find a good program for editing sprites that you’d rather use, SmileBASIC tends to be pretty flexible with its menus. All the buttons when you press CTRL on the screen keyboard can actually be changed, so for example I bet you could even probably swap a different program with Gahaku if you wanted, although I don’t remember exactly how at the moment ;)

Thanks rando! That's amazing, I'll try that out tonight. I think as I'm quite new to this I don't quite understand how you would be able to use a different program and somehow link it to SmileBASIC (can you download other sprite editing programs from the Nintendo eShop or something?)

Also, yeah, up to now have been using a USB keyboard for this.

GAHAKU.PRG is a program written in SmileBASIC (there's a way to view its source code, but I don't remember), not an external program. It's attached to one of the few hot keys that runs a SmileBASIC program as a "tool". Another tool is SBSMILE.PRG, which allows you to view pretty much all the fancy elements like sprites, BG tiles, and music/sounds. I haven't used GAHAKU much myself, but you'll want to get familiar with saving/loading your work because it's easy to exit the program without doing so. I remember doing that a few times myself...

Great, thanks for that. I will take a look for both.

It doesn't seem like there's much documentation out there or you really have to search hard for it. I found this: https://sup4.smilebasic.com/en/lib/exe/fetch.php?media=smilebasic4electronicmanual.pdf Which details that with a USB keyboard you can press F9 apparently for the SmileTool and F10 for the Gahaku tool Would be nice to get in-depth tutorials or documentation these tools