Programming is an art which takes years to master. I've been programming over 25 years now and I'm not as good as I'd like to be.
The problem is that a lot of newbie posts on forums are from people who think that now they've got Dark Basic, they will be able to write Quake or Doom in a few weeks. It's just not that easy!
This isn't a dig at you - or anyone else for that matter - it's just the way things are.
OK, I could write an acceptable pong game to match the arcade machine version in a few hours - as could many of the programmers who post here.
But for a newcomer to programming, I think that even pong is far too difficult if you haven't mastered the basics. Like learning a spoken foreign language, it's not easy - regardless of what anyone might have told you.
Although you say you aren't a total newbie, what programming experience do you have? If you are pretty good at another programming language then it's probably just the 3D side of things you're struggling with.
If you've not done any programming before using DB, then you may be missing the essential 'building blocks' knowledge. What level are you currently at?
For a complete beginner, I would start with writing non-graphical stuff like that number guessing game where the computer picks a number and you have to guess what it is. The computer tells you if your guess was too high or too low.
As pathetic as it is, you will learn a lot about the basics of programming by doing menial stuff like this.
To teach yourself about strings, write a version of hangman.
Before anyone will spend time filling all the blanks in for you, you'll have to let us know what level you are at the moment.
Do you understand what variables, strings, arrays, subroutines (procedures) and functions are? If you do, then the rest isn't so hard if you are prepared to keep with it!
One of the things I see with far too many DB programs is a total lack of layout and planning. It's just too easy to start writing a game with no previous thought about the layout. Anyone make software flowcharts as part of the design process any more? Nope - me neither - but you had to years ago!
Programs are no more than a list of instructions telling the computer what to do. Each instruction is carried out in sequence starting with the first and then the next. If not told otherwise, the computer does all the instructions and when the last one is done, the program ends.
GOTO was introduced so you could jump to different sections of your code and repeat things, though these days, avoid GOTO like the plague - you shouldn't ever need it.
These days we have procedures and functions and to make code re-usable so you don't have to keep re-typing it in, you should put as much as you can in them.
For example, create a procedure called InitVars which contains all your variable initialisations. At the start of your program, just use Gosub InitVars.
When you game restarts, you simply Gosub InitVars and you're ready to start again! Your main program as Louiz says contains a 'Main Loop' which goes round and round gosub'ing and calling functions.
OK, OK, I'll stop now. Said far too much already!
TDK_Man