Sorry your browser is not supported!

You are using an outdated browser that does not support modern web technologies, in order to use this site please update to a new browser.

Browsers supported include Chrome, FireFox, Safari, Opera, Internet Explorer 10+ or Microsoft Edge.

Author
Message
Crucible
13
Years of Service
User Offline
Joined: 25th Aug 2012
Location: Clovis, California
Posted: 25th Aug 2012 18:54
Hello all,

I am currently s student in a game dev class and our assignment for the weekend is to choose an engine for game development.

My options are:

DarkBasic Professional
GameMaker 8.1 Standard
Construct Classic
FreeBasic
Small Basic
and FPS Creator Free

I do not want to do some cheap drag and drop stuff I want to learn actual programming so FPS Creator and Construct Classic are out. What I am asking is, would DBP be a good option? Can I create full featured games that I could possibly make money off of or release on Steam is they are good enough?

Any feedback in helping me choose would be great. I have learned hello world in FreeBasic, DarkBasic Professional, Small Basic, and GM, and they all seem relatively easy to learn/understand.

DarkBasic Professional:


FreeBasic:
print "Hello World"

Small Basic:
TextWindow.WriteLine("Hello World")

GameMaker 8.1 Standard:
show_message("Hello World")

Seppuku Arts
Moderator
21
Years of Service
User Offline
Joined: 18th Aug 2004
Location: Cambridgeshire, England
Posted: 25th Aug 2012 21:56 Edited at: 26th Aug 2012 00:53
Quote: " Can I create full featured games that I could possibly make money off of or release on Steam is they are good enough?"


If you're skilled enough and your game is good enough, then yes. Bear in mind, although Dark Basic Pro is relatively easy to understand and cuts out a certain amount of work for you, you're still doing a lot the work yourself, as you've got to code the game, test it, debug it and create the media. Of course there's media you can download and buy that can be used commercially.

As for Steam? Check out Evochron Mercenary. It was made in Dark Basic Pro, there's other examples of where Dark Basic Pro has been used to create some pretty decent content.

I think as a learning tool, Dark Basic Pro is a great place to start. I doubt if you get a game industry job that they'll expect you to code using Dark Basic Pro, but from Dark Basic Pro there are certain skills you can transfer over should you choose to learn another language. Bear in mind too, there is also Dark GDK and Dark GDK.NET, which are basically Dark Basic Pro for C++ and Dark Basic Pro for .NET (C#/Visual Basic), so should you need to learn C++ or C# (which are more industry standard), you've got something you'll be familiar with from haven't learned to use Dark Basic Pro.

If you're allowed to, there's no harm in starting Dark GDK/C++ right away, but it will be more complicated. Dark GDK has a free version, whilst Dark GDK.NET doesn't.


Should you ever need help or support, these forums are really good for that in my opinion.

I hope that helps (obviously you're going to get a DBP bias here )

MrValentine
AGK Backer
15
Years of Service
User Offline
Joined: 5th Dec 2010
Playing: FFVII
Posted: 26th Aug 2012 00:28
As our honourable president has said... Take up DBPro to learn the fundamentals... Then once it all clicks jump onto GDK for either C++ or C#/.NET This path should prove beneficial... And I suppose the challenges on your course material only asks for code logic and working samples...

Have a look at the Hands on Dark Basic Pro books I and II on the store... (click the logo at the very top left) and I doubt any of the other options have such books available for them... I could be wrong but then I have not investigated them...

Also welcome to the forums!

We are all always happy to help!

Crucible
13
Years of Service
User Offline
Joined: 25th Aug 2012
Location: Clovis, California
Posted: 26th Aug 2012 14:49
Yeah I was playing around with the engines today and DBP is amazing! I think for sure I am going to stick with it. I went to the library today and got DarkBasic for the Absolute Beginner by, Jerry Lee Ford Jr. Its pretty neat, but doesnt really go in depth.

TheComet
18
Years of Service
User Offline
Joined: 18th Oct 2007
Location: I`m under ur bridge eating ur goatz.
Posted: 26th Aug 2012 19:24
Well, the first thing you should learn about it is all of the variable types, data structures, arrays, then move on to looking at some coding styles. The most important things are the following:

Correct commenting!

There are 3 different ways to make comments in DarkBASIC:



The keyword rem is the standard way BASIC does it, you'll see a lot of people on these forums not doing it that way though. You also have the possibility to make longer comments like this:



Variables!



Note that floating point variables always have a # symbol indicating that they are floats, and string variables always have a $ symbol indicating that they are strings. You'll see a lot of people (including on these forums) not doing this. It still compiles, but it's not the "standard way" to program in BASIC.

User Defined Types (UDTs)



See how the different variables we defined between the type and endtype tags can now be used as a sub group of the variable myVar? This is very useful for keeping your code clean and organized, so try to use as many of these as you can.

You can have UDTs inside UDTs as well:



Arrays!



Very useful if you ever want to have more than 1 thing in your game. For example, we could have more than one player (multi player game). In that case it would look like this:



Arrays can also have more than one dimension:



UNFORTUNATELY DarkBASIC Pro doesn't support arrays in UDTs, so this here won't compile:



Subroutines!

Subroutines help organize your code into groups and let you re-use code. Here's an example:



Feel free to copy/paste and run that.

Functions!

Functions are much like subroutines, the only difference is that they can pass values between each other as well. Example:



TheComet

"if you don't understand recursion than you probably don't understand recursion." ~Jerico2day
miso
16
Years of Service
User Offline
Joined: 16th Jun 2010
Location: Budapest, Hungary, 127.0.0.1
Posted: 26th Aug 2012 23:00 Edited at: 27th Aug 2012 02:14
Quote: "UNFORTUNATELY DarkBASIC Pro doesn't support arrays in UDTs, so this here won't compile:"


@TheComet

You can create some kind of linked list, if you really need that.
(and there are other workarounds too)

[DBPRO]+Matrix Utils Example

It's a quick example I made, where the last 4 bytes of data is a memory adress link to the next data. When adress is 0, then you reached the end of the heap. Deleting an item is simple too, just readress an item, and delete the element between the two. Same adress manipulation with sorting or rearranging.

No place like 127.0.0.1 .

Login to post a reply

Server time is: 2026-07-08 10:16:10
Your offset time is: 2026-07-08 10:16:10