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.

Newcomers DBPro Corner / I'm the Stereotypical new user that I've read about with some very simple questions!

Author
Message
Robbee101
18
Years of Service
User Offline
Joined: 28th Jun 2006
Location: England
Posted: 13th Feb 2007 01:23
Hi there coders!

I'll get straight to the point, I just want the opinions of people who know more than me what the learning process was like?

I mean how long it took to learn to make pong or whatever, then how long it took to make your finest creation yet.
That sort of thing, I truly intend to keep up with coding and I've got my best mate doing it aswell which obviously helps, we are both very enthusiastic at making a game.

We've been reading through some of the tutorials that are stickied at the top of this board (Fps tutorial and the pong one) and it seems to make sense but any other direction would be helpful if you have suggestions?

We've had some previous experience with the Clickteam products, making a very ambitious game for a couple of years but we are both completely new to coding and so at this stage all looks so complicated so we need some inspiration!

i.e knowledge that our hard work will pay off!

Any suggestions/opinions are most certainly helpful.
Thanks,
Rob.
Sixty Squares
18
Years of Service
User Offline
Joined: 7th Jun 2006
Location: Somewhere in the world
Posted: 13th Feb 2007 02:53 Edited at: 13th Feb 2007 02:53
For me learning DarkBasic was fun! Sure, at first I was making some pretty bad projects but I eventually got the hang of it! It's not that hard so long as you take the process slowly and don't try to rush ahead of yourself Personally, it took me about 3 years to get to where I am now, but that's just me. I just recently discovered this forum as well. Others have taken a lot less time to get to where I am. It took me about 1 month to make my first game, which was about a UFO that moves forward and has a limited amount of gas to spend. You try to stay ahead of the opponents and not run out of gas at the same time.

Getting to the point, DarkBasic shouldn't be too hard for you to learn. Once you've got the basics, it should roll downhill from there, learning new things every day (if you search).

-Good luck!

Pillarofire
20
Years of Service
User Offline
Joined: 31st Dec 2003
Location: Good Question, <looks around.>
Posted: 13th Feb 2007 07:31
DarkBASIC is an excellent language to learn coding and the basics of 2D & 3D games. I've been coding for about 3-4 years now. I started with Microsoft's Visual Basic 6.0, which is great for creating business applications that never seemed to enthuse me much. Games and simulations on the other hand supplied a lot more exitement when I had completed a task or a project. DarkBASIC allows simplified access to common DirectX commands, as well as an entire engine, so doing the same tasks using VB as opposed to DarkBASIC would have been much more daunting. Thus I felt much more comfortable spending hours reading the DarkBASIC help files and pouring through these forums to find the solutions I needed.

As far as an ambitious game, I would love to make the next killer RPG or even a hit RTS, but; as much as I hate to say it, I am very doubtful that I will do so, using DarkBASIC. However, using DarkBASIC has made me much more keenly aware to the entire process of game development (which I am obviously still learning) that I consider the investment of time and money to be quite well spent.

If you're new to coding and you want to start a career making games or even a hobby, I recommend starting with DarkBASIC until you can tackle simple projects effectively and then advance to C++. DarkBASIC allows you to create some very exiting things, very simply, and has the expandability to provide more complexity. DarkBASIC is still a programming language, so it will still force you to construct logical code. Thus moving to a more complex programming language (C++) will most likely be much easier (was for me), and you will already have a foundation of knowledge about 3D objects, 3D cameras, texturing etc. After becoming very familiar with DarkBASIC you could purchase the DarkSDK, learn C++, and then begin to create great games using the powerful C++ language.

This might sound like a sales pitch but is honestly all my personal opinion. In any case C++ is my favorite language, but I always code in DarkBASIC for pleasure. And yes I think coding is fun.

About game development; obviously there is a lot more to making a game then coding a program. Coding a complex engine would take alot of knowledge about many different things, and is most effeciently created utilizing the skills and knowledge of multiple coders. They might be able to code an awesome 3D engine, but that means squat to a user if they have no good media. Everything takes time and knowledge and skill to create. Without being a wizard coder, a genious artist, a computer scientist, an excellent musician, an excellent mathematician, and having eons of time; it is highly unlikely that a few people will create a novel game that remains competitive in the industry. I wish someone would prove me wrong, but I think I'm right. Don't let that discourage you, just realize the reality; if you want to make games for a living, it will take specialization in one area of game developent to be competitive in the industry. If you simply want to spend spare time making games, then it will likely take much time and much hard work as well as alot of knowledge and honing of several different skills.

But in my experience, hard work usually always pays off. Good luck.
Phaelax
DBPro Master
21
Years of Service
User Offline
Joined: 16th Apr 2003
Location: Metropia
Posted: 13th Feb 2007 12:13
When I started with DBC 1.07, I didn't have much experience in the way of games. The only programming I had done up to that point was in Pascal and maybe some ascii games in QBasic. It took a few weeks to get used to the language, learning the commands and not having to look something up in the manual constantly. Though I was thrilled with my first work, a walking cube on a matrix, fortunately for me there wasn't a whole lot more done with DBC yet at that point, so I didn't have hear "oh look, another noob made a cube on a matrix demo".

I didn't make a pong for quite some time. Hmm now that I think about it, I've never made a pong game. My first game was pacman in QB, but then I did breakout/arkanoid in DB followed by tetris and minesweeper.

DB may not be the best language if you want to break into the gaming business, but its a great learning tool. It allows you to play with various concepts and ideas without worrying about all the extra overhead of C++/DX complexity. Once you've learned some of the concepts about game programming, such as collision and billboarding (among others), then you could always move onto C++.


Ooooo, I take it back, my first game wasn't pacman, it was a side-scroller I made using SEUCK on an Amiga500.

Robbee101
18
Years of Service
User Offline
Joined: 28th Jun 2006
Location: England
Posted: 14th Feb 2007 02:57
Hey, thanks for all the responses!
it's really interesting to hear what peoples opinions and experiences are of the language.

I think it's fair to say I am interested in the games industry and I know what you mean Pillarofire, when you say you need multiple skills to make a good looking game as I've seen several games that are actually quite good concepts but the graphics or animations let them down.

At this stage the Darkbasic code sort of makes sense, I mean I can understand what most of the commands and outcomes are (of what I've seen) but I don't think I am looking at it in the right way for some reason.
I suppose what I mean is I understand each individual part of the code and what each section means, but lets say I was writing a 1000 line program, next time I go to it; how would I remember where I was or what to do next?
do you start to think differently ? like you check off in your mind different parts of the program that are finished and parts that arn't OR do you just quickly run the program and see what needs attention then code those parts?

With "The Games Factory" and "Multimedia Fusion" that I used for a while it's listed like a timeline, I've heard that Darkbasic lists things in order of when they are to be done

i.e Making Toast would be bread in toaster, butter toast etc

but to what extent is this and what does it mean exactly ?



Again, cheers for the responses, I'll show them to my mate tommorrow.

Rob.
Pillarofire
20
Years of Service
User Offline
Joined: 31st Dec 2003
Location: Good Question, <looks around.>
Posted: 15th Feb 2007 00:49
Quote: "next time I go to it; how would I remember where I was or what to do next?"


My programming instructors tell me that that's what comments are for. But usually if you write good code (modular code), then you will usually be able to tell very quickly what you were doing, and why, because it will be broken into small and manageable parts.

Quote: "I've heard that Darkbasic lists things in order of when they are to be done"


Well I've never used Clickteam products so I can't unfortunately make an accurate comparison, but I can tell you that programming DarkBASIC is basically telling the computer what to do (programming in general). So you are listing things in order of when they are to happen; because each command will be performed in a logical order, which is always first line first, second line second, ... until the compiler reaches a branching statement.

You need to think of DarkBASIC as a programming language. To use DarkBASIC effectively you first need to learn what programming is, and how to do it. I'm sure there are tutorials for this around this forum. There are even books on this subject. But I think the best way to learn is to sit down and do it. I would suggest you pick a very simple task and try to code the solution to that task. For instance, a task would be:

Task 1: Display the "block.bmp" image to the screen where I click the mouse.

This task would be very simple for an experienced user, but might be very difficult to a new user without any knowledge about DarkBASIC or game programming. Thus in order to complete this task one is required to attain certain pieces of knowledge before they can even have an idea about how to solve the problem. They need to know things like:

- what is an image?
- how do I manipulate images?
- what is the screen? (ok maybe not...)
- how do I know when the mouse is being clicked?
- how do I know where the mouse is being clicked?
- how do I use all these things in DarkBASIC?

- and probably other things that they still have no idea that they even need to know them. But which are usually learned as a result of learning the before mentioned.

Once they've done some research (read: F1 + extensive reading), they will have some theory and a good idea how to complete the task. And puting those newly aquired ideas together yeilds more exiting ideas. Completing and advancing with more interesting and difficult tasks will likely teach them alot about what they need to know to make their hit ambitious game. Now thats good for me because then I can play it.
RUCCUS
19
Years of Service
User Offline
Joined: 11th Dec 2004
Location: Canada
Posted: 15th Feb 2007 01:40
Expanding a bit on what Phaelix pointed out;

Think of programming as a recipe. Instead of a recipe for a desert, its for a program. The compiler (the thing that takes your code and makes a program) is like the chef reading the instructions on the recipe. The commands you tell the compiler to perform are like the steps the chef has to take on the recipe. The chef will always do these steps in order from 1st to last, unless told otherwise (enter goto's, functions, and gosub's, methods of skipping a bunch of steps to perform a task and then going back after the added task is complete).

Youre completely right in saying Dark basic does things in order, for example, using some very basic commands "PRINT" and "WAIT KEY", you could write a basic program like this:



If you read through that code, it shouldnt be too hard to grasp. The print command tells the compiler to output text to the screen, the text it outputs depends on what you put in the quotes after the print command. So, PRINT "Hello" will display "Hello" on the screen when you run your program.

The next command used is WAIT KEY, this command is also pretty self explanatory, it "WAITs for a KEY" to be pressed, any key, and then continues on with the program once the key has been pressed. You could think of this as telling a chef to "wait for the water to boil" before continuing.

After displaying some more text, allowing the user to press a key, and then displaying some more text again, the wait key command is called once more in the above program and is followed by the END command. The end command, again, is pretty self explanatory. When called, it closes your program, deleting any resources it was using as well (which is a good thing).


The best way to learn is to read and then experiment, its been proven time and time again. Read some of TDK ( a member on these forums)'s tutorials (located in a post at the top of this board) to get a good start, and after every tutorial is completed, go back and try to experiment with what you've learnt, making a small mini program.

If you ever have a problem remembering what a command does, or are wondering if there is a command in dark basic to do something you need, you can press F11 to open the Index, which contains a list of (most) of the commands in dark basic proffesional, and a description of how they work (albeit a fairly poor one). Usually the index can solve a lot of problems as the description given is good enough.

If all else fails, resort to the forums, and post a question about the problem you're experiencing, including source code if possible of what you've tried so far (anything helps), a description of what you need to happen, and people will usually help out as soon as possible.


Welcome to the community,
- RUC'

Xenocythe
19
Years of Service
User Offline
Joined: 26th May 2005
Location: You Essay.
Posted: 17th Feb 2007 04:54
1. The learning process was very hard, annoying. It sucked. There are so many holes in it where you just wanna give up. You'll never get the best results; the results you dreamed of before you started learning. Never. unless you persevere. After you learn every bit of it, every single command and understand it all. Sprites, 3D Models, Animation control, Music, Controls, Camera, Collision, Vertex Manipulation, etc. All of it. Only then can you truly make your dream game. Because if you dont fill the holes in your game making path, then you'll fall right through. And sometimes you just can't get out.


2. I never made pong, I started with an FPS. Took pretty darn long since I didn't know much.

3. Theres my rpg tutorial at the top too

-Mansoor S.

(Formerly Xenocythe)
Roxas
18
Years of Service
User Offline
Joined: 11th Nov 2005
Location: http://forum.thegamecreators.com
Posted: 19th Feb 2007 08:54
Ruccus you could use Printc its auto parses the prints

Oh amd learning procress was REALLY fun.. I made text games and etc and then asked little questions from forums and then tried to make rpg.. But unfortunally it was crab Well then i tried do Moomin game it was good but after computer formatting i lost it.. Then i tired do again RPG (was more skilled and knew how to handle multiple things) the engine was good but i'm not good 3d modeller so it looked crap but it was actually pretty good maybe little too slow but anyways it was working.. but after comp format i lost it.. Well then i started making more complex things and here i am.. I rigt now doing 2 projects Maple Basic and one Action RPG when im bored of programming the Maple Basic lol


Login to post a reply

Server time is: 2024-09-25 17:24:07
Your offset time is: 2024-09-25 17:24:07