[Development] DarkBASIC is Terrible, and Space Invaders!

posted in Retro Grade
Published February 09, 2013
Advertisement
Hello all! I have had a very long absence (Okay, it was only a month, however I still feel bad tongue.png).

If you couldn't tell from the title, the first basic game I will be creating is Space Invaders!

I love Space Invaders, and allows me to flex some new graphics programming muscles, including (but not limited too smile.png):

  • Projectiles
  • Efficient Collision Detection (There will be 20 - 25 Space Invaders Per Level)
  • File Loading (I need to load the maps from a file)
  • State Machines
  • And Pre-Visualization!

I'm in the process of planning, however I will start official programming tomorrow!

And now to explain my long absence:

In the time being, I have:

  • Learned BASIC
  • Learned DarkBASIC
  • Learned far more about JavaScript

Yes, I have learned DarkBASIC.

I have been wanting to learn DarkBASIC for some time. Originally I believed DarkBASIC was a quick way to prototype games and program graphics.

And wow, was I wrong.

Although DarkBASIC has probably helped me become a better quality, the only real redeeming quality I've seen is learning BASIC. It's a great beginner language, however it can only really achieve 2001 level graphics. It's more for learning basic graphics programming (Even then, it's procedural programming syntax is horrendous. Imagine C, however you must use:REM User-Defined typeType myType string$ REM You can't have functions in objects, making them more like glorified containers.EndTypeREM For some reason, you must also use "End" to show DarkBASIC where your program ends, and you mayREM only declare functions after your program ends.EndREM A functionfunction myFunction(x#, y#) returnValue = x# + y#EndFunction returnValueREM The returnValue goes after EndFunction (God knows why)
this code)

I imagined it as a mix of Basic, PHP, and a bad version of C.

There are so many bugs, and the people who work at "The Game Creators" don't even know how to code. They hire a new programmer to fix bugs because there sole goal is making money off new programmers who believe DarkBASIC is a good way to get into graphics.

Spoiler: It Isn't.

There are literally no redeeming quality's of this language.

Also, when you create Sprites / Images, Three-Dimensional Objects, or almost anything important involving graphics, they don't allow you to name it (At least with variable you only have to put symbols after their names or use a terribly inefficient AS command). You give every object a number.

What?

A Number. How are you supposed to tell what different objects do?

And this is why I hate DarkBASIC. It makes its users write terrible code (I don't believe it's possible to write good code using the "number" system), and advertises itself as a "professional game engine" that will help its users.

I'm abandoning DarkBASIC for normal BASIC (From what I've seen, the Graphics Libraries for plain BASIC are even better, never-mind Visual Basic), and programming Space Invaders in C++.

Also, Hooded is still on Hiatus (Sorry sad.png)

Cheers smile.png!
1 likes 4 comments

Comments

Navyman

My favorite language is C++, but BASIC can be used to rapidly prototype a project.

February 09, 2013 05:15 PM
superman3275

My favorite language is C++, but BASIC can be used to rapidly prototype a project.

I agree that BASIC is good for prototyping, however DarkBASIC is a very bad way to prototype your game.

February 09, 2013 06:10 PM
eppo

I recently recommended a beginner to look at DarkBASIC. Won't be doing that again.

What dialect/implementation do you mean exactly by "plain BASIC"?

February 13, 2013 02:09 PM
superman3275

I recently recommended a beginner to look at DarkBASIC. Won't be doing that again.

What dialect/implementation do you mean exactly by "plain BASIC"?

BASIC is actually a family of different Dialects / Languages, so I'll go with Visual BASIC. By Plain BASIC, I meant a form of BASIC designed for General Purpose programming rather than a specific purpose (Game Programming).

February 14, 2013 03:30 AM
You must log in to join the conversation.
Don't have a GameDev.net account? Sign up!
Advertisement