LoginLogin

New to Smilebasic, but wondering how to make a counting program

Root / General / [.]

legofordmnCreated:
If you're talking about the SmileTool, yes. In the GRP editor, hold L.

Yes, there’s a rectangular “Paint” button at the bottom-left corner of the touch screen that fills in large, empty areas on your GRPs when you tap on them. Edit: I entirely forgot what an eye dropper was for editing tools

Also, is there a way to change the color of the text?

These are really questions you should ask in chat because of how small and simple they are, but the command for changing the color of console text is
COLOR
.

In what chat?

http://smilebasicsource.com/chat it’s right up there at the top-right corner lol

thx

Is there a color eyedropper technique or something similar when you are designing textures, maps, etc.
What do you mean by this? Do you mean in the smile tool, or just changing the graphic pages manually?

Is there a color eyedropper technique or something similar when you are designing textures, maps, etc.
What do you mean by this? Do you mean in the smile tool, or just changing the graphic pages manually?
i think he means the thing when you hold L in the sprite editor. i think it said spoit or something next to it.

also how are you guys taking screenshots? that's been bugging me a teensy bit.

also how are you guys taking screenshots? that's been bugging me a teensy bit.
Press SELECT

Then upload them here, or use that camera icon when typing a message on here on your 3ds.

For taking Screenshots, you need the Smile-basic Version 3.6.0 or later. (You can check Version here: Upper scren right coner on SB main-menu.) The Screenshots will be saved on the SD-card. You can take a look by using "Nintendo 3Ds camera" (for example). In Smile Basic (3.6.0) you can't show the Screenshots.

Is there a way you can change the size of text?

You can't directly scale text displayed with PRINT.I think? (Edit: you couuuuuld, with WIDTH 16, if you only want to double the size of all displayed text.) But! The command GPUTCHR has parameters that let you select scale. This command draws text on the graphics screen.

I am trying to make the very first version of Minecraft into a reality for the old 3DS. Any ideas? Because I don't know how I am supposed to do this.

If you don't know how to do it, the best thing to do would be to focus on smaller projects you can manage until you do know how to do what you want to do. Jumping in and trying to make Minecraft before making anything else is not going to end well. You'll end up frustrated and if you keep relying on asking questions here, you'll eventually hit a dead end as questions will eventually become too complicated to really answer without writing a full fledged tutorial (Which not a lot of people will want to do). I recommend getting an understanding of SmileBASIC by starting with some very simple text based games, then once you have that down move on to something a bit more advanced like sprites or graphics (Two different things in SmileBASIC). Also look at the code of other games you like and try to figure out how they work, you'll probably learn something new. Finally, SmileBASIC has a built in reference guide. Tap the question mark on the top right of the keyboard while the text cursor is on a blank line of code to view a list of all commands (Change pages with the circle pad) and then look for commands you think are what you're looking for. If you press the question mark while the text cursor is on a certain command, you'll get an extensive guide on how that command works, including examples of it in use. It's super useful. Hope this helps!

Creating Minecraft is a challenging task even for the people who have had 2 to 3 years of experience. If you really want to create something like Minecraft, I suggest making a Terraria-like game. That is something that SmileBASIC has the readily available tools to create. Learn about how to create maps with functions like BGLOAD and how to handle collisions with the tiles that make up the world. This kind of game has resources on the site that can teach you these things, and if you want to see these things working in action, you can check them out with a game like Celestrium, https://smilebasicsource.com/page?pid=1025, or even my own old terrain generator, https://smilebasicsource.com/page?pid=1177. These are by no means beginner projects but they are far simpler than trying to learn and fiddle around with a complicated pre-existing 3D library.

Oof. I made a small 3d engine a while ago thinking I could turn it into a sluggish, underdeveloped form of Minecraft. Ho-man, do I have a lot to learn...

Let's be honest here. Here is the easiest way to get MineCraft on 3DS.
  • Buy a "New" style 3DS
  • Buy some eShop Cards or associate a Credit Card with the "New" 3DS
  • Buy Minecraft from the 3DS eShop
Total cost: ~ $240 (plus tax) and a few hours. Why is the 3DS version of MineCraft exclusive to the "New" style 3DS? Well I would assume that they needed the extra RAM and processing power to make it work. Please remember that the people making "New" exclusive MineCraft have access to all of the 3DSs hardware, and are generating compiled code from either assembly or a lower level compiled language like C or C++. In Smile Basic, you don't have access to the 3D accelerator, you don't have access to all the memory on the system, and all of your code is interpreted (byte-code compiled at best, not sure of the exact details). This means that Smile Basic programs simply cannot do everything a regular 3DS game can do. Or at least not in real time. Even if you decide to do all the texture mapping and 3D math yourself, Smile Basic doesn't have a very good fill rate. Just try to make a program that pixel plots each point on the screen, with a random color. How many frames per second do you get? I am guessing single digits, maybe all the way up to 15. That is without any actual game in there, just plotting pixels on the screen. There is a reason Sim.3D uses the triangle primitive, isn't texture mapped, and has a rather limited polygon budget. Lets also sit back and remember that there is a full team of people working on these things, not just one lone-wolf programmer churning things out over the course of a weekend. Yes Notch made the original version largely by himself, but while I am no Minecraft guru, I believe it took years and was largely a buggy mess for quite a bit afterward. Wasn't that part of the charm of the original Minecraft? A bunch of YouTubers showing off what they could do in this rather inscrutable game that came with no instructions or direction? And frankly all of these developers working on it now likely have a minimum of a Bachelors Degree in a Computer Science related field, and years of experience. So lets come back down to Earth, and start from the start. That is what SmileBasic is for, learning to program, and small tiny one-off programs. SmileBasic is actually pretty terrible for creating large projects. There is not a good library system. There is no sort of struct/type/class system, and there are no reference (pointer) types. The counting program was a good idea. You should just build off of that. Slowly. Very slowly. In fact here are some things to research: Looping: For, While and, Repeat Until versions, Conditionals: If/Then/Else, Functions/Subroutines using DEF, and Arrays. But that is just syntax.There are lots of things that aren't related to a specific language like say: Recursion, Big O notation, Boolean logic, Searching, Sorting, Graph Algorithms, stack vs heap memory allocation, etc. etc. etc (you don't have to research those yet). After the number counting game you should try something like Guess the Number, Hangman, Tic Tac Toe, or Battleship. You have a long way to go, but the journey is a good one, don't rush through it, take time to stop and smell the roses/learn the basics. Or to put it more succinctly, you can't make a reasonable version of Minecraft on the 3DS using SmileBasic. The hardware/software combination simply isn't up to the task. Something 2d like Terraria, sure, 3D like MineCraft, no. You should be aiming for something with Super Nintendo/Genesis level graphics.