When I
started programming and development for the Nintendo 3DS, I was really annoyed.
The tools provided by Nintendo are not really sufficient and there are tons of
things a developer needs to do by himself.
Developing
all these tools by yourself take up a huge amount of energy, time and money. This
would not be a problem if you are a big developer/publisher knowing you will
release at least a few big retail titles (you will earn back the year you
invested in creating a framework).
But for a
indie developer this is almost undoable. You basically have to work for a year
or so to create a framework. And when that is done, you cannot really make any
money since a framework is not a sellable game. You still have to build that on
top of the framework.
And this is
why Goodbye Galaxy games has not released anything yet on the Nintendo 3DS.
Anyway, I
have been very busy the last few months building a framework and tools so I can
easily create games for the system. Hopefully we will announce some games
really soon :)
The biggest
thing I was missing are emulators (or simulators) that would allow me to run
roms on my computer. Now obviously most readers only know emulators and roms as
something bad. But official developers also use emulators to quickly check
their own games.
Sure you
can use official development kits for this, but it’s not always efficient to do
so. You see, loading your game code into a devkit takes up quite some time.
Before anybody panics and thinks the devkits are slow; they are not. But it
still takes up between 30 to 60 seconds.
This does
not sounds like much but here is how the process goes during development :
-
Wait
30-60 seconds to boot game
-
Check
if enemy is standing in the correct spot
-
Nope,
he needs to be bit more to the left
-
Make
change in code
-
Wait
for compiling code
-
Wait
30-60 seconds to boot game
-
Nope,
still needs a bit more to the left
-
Wait
for compiling code
-
Wait
30-60 seconds to boot game
As you can
see this becomes quite annoying quickly.
And this is
where emulators come in. Doable click on the rom icon and ‘BOOM!’ your game is
running on your screen. No more waiting!
So next to
a framework I wanted to build something that I could use to quickly prototype
with. And I came up with my own awesome BASIC interpreter. It works a bit more
like Visual Basic as in the fact that it has sub routines and functions and no
line-numbers.
It also is
more than just a interpreter there is a complete suite build around it. You can
basically load in any kind of graphics asset file into the library (just like
you can do in Adobe flash) and then use
it in your game.
And the
best part of course; you can run your code straight from the program by
pressing ‘run’. It even comes with a debugger (although many improvements could
still be made).
When you’re
done you can save the pre-compiled data + assets into something that you can
save on a SD card or read as a QR code. Making it super easy to test it out on
real hardware.
The
program/app on the 3DS that can read the pre-compiled data and assets, works a
bit like the Petit Computer DSiWare app (except you cannot write code within
the app).
And now for
the title of this blog post; I’m thinking about releasing the program/app in
the Nintendo 3DS eshop for maybe a small amount (2$ or something?). And release
the programming-software for the PC for free.
This way,
just like with Petit Computer, anybody who would like to create little games
for the 3DS could do so! This could be an amazing break through!
We had all
these talks about piracy and homebrew the last few weeks. And the problems with
homebrew is that most of these hacks later get abused for piracy means.
Now image
you can just use your retail 3DS to make games for, and you don’t need to hack
it! No need for a R4 card! No need for weird custom hardware or tools! No need
for piracy!
Would that
not be amazing ?
The reason
for this blog post is to see how many people would actually want to use this.
Since it will still take quite some effort to create something really perfect
(debugger needs work, the overall editor functionalities could be expanded,
there’s no 3D engine at the moment only 2D games that can have a different Z
axe for a 3D effect).
So let me
know what you guys think!
Here are
two screenshots of the suite :