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.

DarkBASIC Professional Discussion / I just cant make a game...

Author
Message
tokyomage
15
Years of Service
User Offline
Joined: 26th Sep 2010
Location: on your roof
Posted: 16th Feb 2012 01:03 Edited at: 16th Feb 2012 01:04
Hi guys

I have had dark basic pro for literaly, 6 months so far and I cant make a single game with all the stuff i have for it all ready. I have probably started well over 10 game projects in these 6 months and never finished due to well, i just dont know.

I dont know if its the fact that working alone is making me to stressed about doing all the work, or the fact that I just think about how i cant implement things. I also believe i may be starting too advanced and should try something different.

So if possible, could you maybe give me some tips on how you guys make them without confronting these problems?

Thanks,tokyomage

.....the feel of solitude hurts inside....
=PRoF=
23
Years of Service
User Offline
Joined: 17th Mar 2003
Location: Milton Keynes, UK
Posted: 16th Feb 2012 01:15
My best advice would be to plan everything out on paper first, down to the tiniest details.

I find it helps to keep a to do list of current bit's your working on.

Comment every line of code you write, with useful comments that will help you remember what that line does.

Sometimes it helps to go work on the graphics when code isn't coming as easily as you'd like.

If you get stuck implementing something, you can always ask for help here

Hope that helps

WLGfx
18
Years of Service
User Offline
Joined: 1st Nov 2007
Location: NW United Kingdom
Posted: 16th Feb 2012 01:30
Quote: "If you get stuck implementing something, you can always ask for help here "


That as well as starting a separate side project to test those ideas. I do that often, but commenting your code does always help a lot. Once you've gotten the side project working, it's likely a re-write in to your main project but at least you have a better idea where you're at and can improve on it again.

Quote: "So if possible, could you maybe give me some tips on how you guys make them without confronting these problems?"

As above... Side projects to test something...

Mental arithmetic? Me? (That's for computers) I can't subtract a fart from a plate of beans!
Warning! May contain Nuts!
Burning Feet Man
18
Years of Service
User Offline
Joined: 4th Jan 2008
Location: Sydney, Australia
Posted: 16th Feb 2012 02:38 Edited at: 16th Feb 2012 02:40
Two things really pushed my DBpro'ing along. One was the Indigo Editor. It's fan-friggin-tastic, and Balid has been doing a really good job at adding features (on demand I might add!!) and fixing bugs. If you use Indigo, see how you go for a few months, and if you end up loving it (and you will) remember to throw Balid a donation.

The second part of my puzzle was Dropbox. Dropbox gave me the flexibility to DBpro at work, at home, on my laptop, on my game PC, where ever! I'm not saying load your source of your AAA+ title into the cloud; but to have access to all of your test code, your trial and errors, it's just too good not to have. There's nothing worse than having your code locked away, inaccessible, when instead you could have logged into Dropbox to grab all your files with a click of a button.

Those two things really helped push my coding alone. Oh, and I almost forgot, bookmark this link;

www.google.com/#hl=en&output=search&sclient=psy-ab&q=site:forum.thegamecreators.com+dbpro&fp=1

It's a google search that's ready to go. With a click of a button you'll be searching TGC forums, and by using the right keywords and with a bit of luck, this should solve a LOT of your problems.

The only other advice I can give is persistence. Keep at it! Understand that a painter paints for enjoyment, people make music for the love of it. You must enjoy coding and problem solving if you are to make it as an indie developer.

Oh, and don't forget community! Get in touch with the local game making scene, this in itself will be a HUGE eye opener and will inspire you through the roof.

Help build an online DarkBASIC Professional help archive.
DarkBasic Help Wikia
zeroSlave
17
Years of Service
User Offline
Joined: 13th Jun 2009
Location: Springfield
Posted: 16th Feb 2012 03:10 Edited at: 16th Feb 2012 03:12
Quote: "I also believe i may be starting too advanced and should try something different."


I believe it may be partly this. Not so much that it is too advanced as far as the programming, but maybe it's just too much in terms of the amount of work you have in front of you. Maybe you are getting tired of doing the same thing. There are tons of games in the WIP section of the forum that had great starts, tons of motivation, and just sort of petered off because there was just always more for the person to do, and never an end in sight. Or maybe they just got tired of working on the same thing. Or maybe they started getting overwhelmed with the 1000s of lines of code. I know I'm guilty of these things. I have tons of half coded games on my HDD that 'plan' on getting back to.

Try trimming down some of your ideas. Instead of having 20 levels to do, try only doing two levels. Instead of having 10 guns, only have 3, etc. Or possibly work on an idea that is smaller in scope than what you have planned. Instead of Chess, do Checkers, etc.

I know you CAN do it, you've just got to keep at it. Best of luck to ya!

My green thumb grew the tree my Trojan War horse was crafted from. With roses in our pockets we rally round the tombstones. Ashes to ashes, we all fall down.
Millenium7
21
Years of Service
User Offline
Joined: 13th Dec 2004
Location:
Posted: 16th Feb 2012 05:29
I can certainly relate. Project i'm working on (have resumed now) was put on hold for a while. The reason I leave a project is when i'm not on a roll. If however I know exactly what I should be working on and how to go about it, no problem. For example I get all my menu code done, netcode done, scripting done, but there's no actual gameplay coded in, where do I go from here?

That's somewhat where I was at, however I hit a breakthrough. I decided to start on the AI side of things. I managed to branch it out significantly, what I now have is a much expanded script engine that supports an unlimited amount of custom maps/weapons/characters/units/particle effects/etc. It should have been a simple task of writing some AI routines and running through preloaded objects. But hell that's boring and it requires mundane changes to code every time I want to add/fix/remove/change something. Instead it's now a script engine that allows dynamic maps, unit's can be spawned at will by various means and will have all relevant data loaded and applied automatically. I.e. I can place something as simple as 'square trigger x100,x200,y100,y200 - effect: spawn 4 crawlers - team 2' in a map's configuration file. Without recoding anything I can execute the program and now when I walk between those coordinates, 4 AI units will spawn for team2 within that location and start attacking me. The 'crawler' unit is unknown to my game code, so it goes looking for a configuration file relating to a 'crawler' unit. It finds it, loads all data such as health/weapon/attack rate/movement speed/object model/animation data. It uses this data to create however many of these units when requested, and apply AI routines to them, no matter how many or what type there are at once

This sort of thing interests me, it's a new and powerful concept and it gets a bunch of work done. After it's finished I can move on to weapon handling or something else. I've ticked a major box. It's about structuring your work in a way that you can tackle it without sitting idle thinking about it too much. You need to stay in motion
Pincho Paxton
23
Years of Service
User Offline
Joined: 8th Dec 2002
Location:
Posted: 16th Feb 2012 13:53 Edited at: 16th Feb 2012 13:53
I have about 20 projects on hold. I think you can learn a lot just from starting projects. I don't worry about it. In reality there should always be a programmer, and an artist working together. It's a struggle on your own, but it's still fun just to have a partly working program. Say you went to college, they train you on Autocad, you always end up just drawing a few lines on the screen, and that's the lesson for today. Well starting projects is like individual lessons. It improves your knowledge. And that part is still fun.

zenassem
23
Years of Service
User Offline
Joined: 10th Mar 2003
Location: Long Island, NY
Posted: 16th Feb 2012 17:15 Edited at: 16th Feb 2012 17:17
When I actually FINISH game I'll be sure to let you know!!!

Honestly,, the only things I sorta-finished were a "Flood-It" and a "Naughts & Crosses" game... both of which I had no personal intent to work on. They were responses to posts that sort-of finished themselves in trying to illustrate a concept. Go figure! Although fairly simple games, I can say I put in at least 4-6 hours into each,, and that was with knowing I could program everything needed before even starting.


So my advice to you,, in order to get that feeling of completing some projects under your belt...

START smaller!!!


Pick a project that you can finish in a day,, or a long weekend. It's like writing an Essay over starting an Epic Novel!
=P

.oO()Oo.oO (I'm not a real programmer,, I just play one on the Forums!!!) Oo.oO()Oo.
Millenium7
21
Years of Service
User Offline
Joined: 13th Dec 2004
Location:
Posted: 16th Feb 2012 18:16 Edited at: 16th Feb 2012 18:19
I propose an exercise

think of something adaptable that can be used in multiple games, then think of how you can code it in such a way that it can work by itself without a lot of intervention

For example, a netcode function that deals with the chat system and a chat window. One where you can literally copy and paste it into any program and run it continuously from your main loop (without conditions). In an ideal world it should
- automatically determine who is server/client. And have the server forward client messages onto all other clients
- store the chat log
- present a chat window
- fade or hide the chat window after a certain time if no messages received
- receive and display messages to chat window
- allow the user to type and send messages

It's possible to code it in such a way that it does not require any parameters, and call be called every loop without any 'if' statements or conditions. The conditions are inside the function itself, to decide when/where/how things happen. It should include it's own internal timers to decide how long to display any windows/dialogs
If you can do this you don't need to recode it for any future projects. Have enough functions doing different things in the same way, and you might finish more projects
Burning Feet Man
18
Years of Service
User Offline
Joined: 4th Jan 2008
Location: Sydney, Australia
Posted: 16th Feb 2012 22:12
Or even a keyboard & mouse subroutine and update function. Make the perfect Keyboard.DBA & Mouse.DBA file that you possibly can, that will tailor to everyone of your projects needs. Write it in a fashion so that it will work whilst only 25% done, and as you need more and more functionality, add that functionality so that it won't break the games already using the working 25%.

As most new comers find out, scancode(), keystate(0) & mouseclick() just don't cut it! To point you in the right direction; here is a list of some real functionality that most games require.

Keyboard & Mouse:
Press
Release
Hold
Toggle

Mouse:
Quick Click
Long Click
Double Click
Scroll up
Scroll down

Code up a library of .DBA tools which work for you. Sure, you can search these forums for someone who's already provided these, but I tell ya, sitting here with 90% of my keyboard & mouse code finished, knowing that I wrote it all by myself, you get a really warm fuzzy feeling, but more importantly, you fully understand what's going on in your code.

Not only that, my games are now coming along faster than ever, cause I'm not re-writing the same damn code!!!

Help build an online DarkBASIC Professional help archive.
DarkBasic Help Wikia
tiresius
23
Years of Service
User Offline
Joined: 13th Nov 2002
Location: MA USA
Posted: 17th Feb 2012 20:11
I don't think someone starting out programming should be writing tools / libraries of code to help them with future projects. A lot of times you have to try different methods, see what works and what doesn't, and learn more about programming in general before tackling those things. That, and it is BOOOORRING.

tokyomage,
I think zeroSlave has the right idea. Go to the Newcomers corner. Do some tutorials that guide you along to a final project. Figure out what your favorite genre of games are, and make a super-small-watered-down version of one of those games so it keeps your interest. Whatever you do, don't give up! (Unless you find out you hate programming.)


A 3D marble platformer using Newton physics.
Naphier
15
Years of Service
User Offline
Joined: 2nd Oct 2010
Location: St Petersburg, Florida
Posted: 17th Feb 2012 21:36
Motivation... its fickle.
I was working pretty diligently on a project up until 3 weeks ago.
I've got 80% of my game documentation done, 30% of the artwork, and 5-10% of the code done. I'm having a difficult time with shaping some of the logic to work within the confines of DBPro syntax (mind you I'm also trying to avoid using plugins yet to try to keep things simple).

Then I got distracted by a vacation, a load of work at work, and a renewed desire to produce artwork and develop my artistic skills...

This is one of my toughest problems: distraction / persistence.

Things that help:
Deadlines - sometimes - the key here is to set small goals. If you're stuck, make your goal "work on game documentation 3 times this week". If you can't keep yourself accountable try having a buddy keep you accountable for making your goals. Just make sure to keep them small and easily achievable when you are in a lull.

Goals / milestones / mini-milestones
I have so many things I want to do I have to chart them out.
I don't necessarily end up doing them all because others take priority and time, unfortunately, is finite.
Something that has helped me here is charting progress. If I see I have to work out only 15 more minutes this week, it seems achievable (again the goal needs to be small enough for you to feel it can be easily conquered - prevent yourself from being overwhelmed).

In my game documentation I use a multipage spreadsheet to chart all of the functions I need to write (pseudo, full code, and testing), all the artwork and music I need, and other related tasks (finish a tutorial that shows me how to do something, etc). Here I ave to keep things on separate sheets in the spreadsheet so that when I go to look at them there isn't a ridiculous list that overwhelms me. I also set up counters in the spreadsheet to tell me at what % completion of a task I'm at. For me it is really satisfying to see the mark hit certain levels (50% woot... 80%... so close!).
Making tasks and goals small and manageable is highly important to the human mind. For years I was overwhelming myself with tasks and not really getting anywhere because I'd try to strap myself down and just get it done, tough it out. I think many people's minds react very adversely to that.
Also I have to restrict myself a little when I'm on a solid roll. Otherwise I forget to sleep and then after I actually get to sleep I go back and look at the work I did the night before and realize it is crap, or the really great idea I had was taking me way from the goal and going to take too long to implement.

The next thing that is really important to me is rotating to different tasks. Work on media when a piece of code is being stubborn (going into the right brain mode can really help relieve stress and problem solving!). And if the media isn't flowing well try going to the code or maybe take a break with a commitment to come back in a few days, but this would be a good time to look at your goals an break them down into more manageable chunks.

And sometimes you just need to sit and veg and watch Code Monkeys.

I've been studying personal motivation for a long time and find these methods to work pretty good for me.

Some good internet resources I've found are http://litemind.com/ and http://lifehacker.com/

Read up on motivation techniques and especially goal setting. There's no magic key unfortunately. You have to experiment and find what works for you.

Good luck. I hope this helps. I understand the plague you're under.

Millenium7
21
Years of Service
User Offline
Joined: 13th Dec 2004
Location:
Posted: 18th Feb 2012 05:27
Quote: "I don't think someone starting out programming should be writing tools / libraries of code to help them with future projects. A lot of times you have to try different methods, see what works and what doesn't, and learn more about programming in general before tackling those things. That, and it is BOOOORRING"


I disagree my good sir

Firstly at least in my case, it's much more interesting actually getting a 'smart' concept out on code, than it is to have a character walking around. Comes down to personality, some like others don't

Second, it teaches good programming principles. I've learned more by attempting to jot down theory into functions and subroutines than just pumping out a quick FPS or shooter game.
For instance, I notice a lot of games that suffer from some simple common issues. Such as moving faster diagonally than forward/sideways, or movement & animation speed tied to framerate

Both of which can be sorted with a decent function.
Movement for instance should not be written as
if pressing up then inc PlayerPosZ,1
if pressing left then inc PlayerPosX,1
This would cause you to move ~50% faster diagonally
If sticking with digital input (i.e. keyboard) you need to multiply the speed by 0.707
If using analogue input you need to determine angle and distance from the center, otherwise a joystick will again move ~50% faster when pointing diagonally

These are the sorts of things that aren't apparent when you start coding, but down the track you notice them and then go to 'fix' them. It's a lot more difficult to fix than it is to recode if you are heavily invested. As this may mean altering code in several different area's. THATS boring

Here is my function to handle both keyboard and 360 controller for movement, and is framerate independent. This was coded from the very start of my project
The Weeping Corpse
14
Years of Service
User Offline
Joined: 19th Sep 2011
Location: United Kingdom
Posted: 19th Feb 2012 00:49
I've been coding business applications and security systems for over 20 years and I dabbled in AMOS and STOS for the Amiga and Atari ST long time ago LOL. Maybe I can offer you some advice.

Planning

When you get a new idea DO NOT go to your computer immediately and start coding. You MUST plan things on paper or maybe use a planning software designed for the job. Even something a simple as windows notepad will help. Attempting to turn your idea directly into code is fraught with problems and you WILL need to go back into old code and make drastic changes, then you will lose interest, get bored and jump to your next idea, rinse and repeat. This is a long and lonely road, DON'T GO DOWN THAT ROAD.

Planning things on paper or in notepad will allow you to discover errors in your logic long before you type a single letter of code in the DB editor.

Start simple

Trying to write a full feature first person shooter as your first project wont work. I know you don't want to hear this but start with a 2D project. My advice - a simple breakout style game or something along the lines of pong. Such a game may sound easy to code but trust me fella, slow down and think. It has massive learning opportunities, such as game loop, character control (the bat), collision detection (the bat, ball and bricks), physics (the bounce), scoring system, menu design, sound fx, everything that goes into a more advanced game is still needed here and you will learn so much from this. Don't worry about fancy graphics, that doesn't matter right now, get a finished project that works. If you do this you will get such a rush of happiness inside, trust me, it's an amazing feeling to start with a blank sheet of paper and finish with a playable game

When you've done that, NOT BEFORE, start two new projects and alternate you time between the two. My advice - a pac-man clone and a galaxian type game. They add several new gaming elements to the mix such as enemies, path finding around the maze, multiple collision detection (the bullets, aliens and ghosts), wave formations, character animation. (TIP bezier curves are awesome for designing alien attack patterns).

Other Stuff

Build a code library. Put all your useful functions and procedures into a library that you can reuse in future projects. Document the reason for each function in a comment header and explain what the input parameters are for in as much detail as you can, and also explain the output parameter. I can't stress this enough, COMMENTS COMMENTS COMMENTS. Going back to edit code you wrote 6 months ago is hell, unless its commented. I find some of my comment headers are larger than the actual code lol.

Mini projects. When you want to try something new create a sub-directory off you main game directory and write a quick and dirty test application (I call it a test bed). This prevents you from contaminating your main project. When you are happy with the test bed code move it into your main game and add any supporting code into the library.

Backup. At the end of every coding session BACKUP your work or one day you WILL be crying into your own hands, been there lol, don't want to go there again. You will become lazy and forget. Setup a windows schedule to run a .BAT file to xcopy your entire game folder into a separate location ON A SEPARATE DRIVE or an external drive. Also create a desktop short cut so you can run the .BAT when ever you want. I had a .BAT file to zip an entire folder and email it to myself, but cant find it right now. If i do I'll post it here.

Do all this and you will be on the right track.
Quel
17
Years of Service
User Offline
Joined: 13th Mar 2009
Location:
Posted: 19th Feb 2012 02:15
I don't like to make a list because it kinda scares me away to see how much is ahead of me

But i've been into this stuff for more than 10 years, so i kinda know what's coming even without listing the tasks.

The very important thing is, that whatever you do, you need SOME kind of development in the project every day, or you lose interest. Let it be tiny fine tunings to the HUD or whatever, but if you suddenly realize that a full week has went without any progress, bamm, the game is dead.

I also haven't accomplished anything since some QBasic basicness around the very early 2000's, but recently (in the past 1,5 year or so) i experienced quite an upturn, maybe due to my new method which is making demos and partial projects like standalone advanced particle systems and such, one of those every week, and it just all became so intense and entertaining... and now i have a ton of stuff, i basically just need to have one more hard breath, and there's a nice game!

Also, compete against time sometimes, i haven't had i completed game for ten years, but this Christmas i suddenly realized it was only a week until the big day and i don't have any presents, so i just... made a really complex family board game which we played on our big screen TV all night. I was only able to pull this one off because of the near deadline and the importance of its success, any other given time of the year, it would have just become an other half-completed junk of mine.

-Mental Hybrid: A unique heavy story based shoot'em ~40% (primary project)
-CoreFleet: An underground commander unit based RTS (canned) ~15%
Seppuku Arts
Moderator
21
Years of Service
User Offline
Joined: 18th Aug 2004
Location: Cambridgeshire, England
Posted: 19th Feb 2012 16:22 Edited at: 19th Feb 2012 16:22
It's very easy to get overwhelmed and it feels like a really big job. All you need to do is look at my early projects - I was 14/15 at the time and found it near impossible to really get anywhere. There were several reasons for this, but the one word that can some up all of these reasons 'unrealistic'. I wasn't the world's strongest programmer, I wasn't that great at making media and when I did it was slow and the media never really seamlessly transferred into my projects.

A lot of my projects have ended up in the gutter and I'm 22 without a finished project. That doesn't mean it'll take you years to get where I am, it just means I was an unrealistic teenager, went to University and have only just cracked on with something.


So what would I suggest? Assess your own skills and plan ahead and think realistically about your abilities. If you're doing it all on your own you will want a method that's manageable. There's no use trying to create a large and complicated RPG with loads of different characters to interact with because 3D Modelling takes time and the more your code grows complex the more code you've got to keep on top of, so if it's complicated then it will become overwhelming. If (still hypothetically speaking) you want to work on an RPG, there's nothing wrong with a simple RPG with a limited number of characters. You can replace the word 'RPG' with 'RTS', 'FPS' or whatever genre you're developing for.

Can't 3D model very well? Either go for something minimalist and basic, use placeholders until you can 3D model or get media from the TGC store.

Can't make music? There's websites with royalty free music and some offer that music for free, even for commercial use.

Can't Texture? There's texture resources out there, some of them free.

That leaves you with maps and programming. Download Cartography shop, you could make something pretty basic pretty quick in there. There's also MapScape, which is like C-Shop.

That should take some weight off of your shoulders. The rest of your assessment is to understand how much you know about programming and how much of it you can handle. Whatever genre you're going for, stick to the simplest method first and then once you've got the right amount of confidence and skill then you could knock it up a notch.

I will use my projects as an example:
Ultimate Goal: Epic RPG.
Unrealistic because it'd require a lot of media and would be complex coding wise.

Alternative Goal: Not-so-epic RPG.
Initially I entered the 'NaGaCreMo' on this forums with the goal of completing a simple RPG demo in 1 month. The media...very basic. I made basic maps in Cartography Shop and instead of 3D models I found some pre-made sprites and used them instead. Once that was done, I stepped it up a notch and used my own sprites. I stepped it up a notch again, now it's using 3D models and stepped it up a notch after that by improving on the engine (which I'm still doing). However, there would be nothing wrong at all if I continued with the initial plan of 2D sprite place holders. I could even be nearly finished with that system and getting ready for another project. I chose to step it up because I am confident that I can do it.

I guess sometimes you need to prove to yourself that you can accomplish a goal in order to give you the confidence to carry on. I guess my motto should be, "just make life easy for yourself".


Suicidal Sledder
21
Years of Service
User Offline
Joined: 17th Aug 2004
Location: Tikrit, Iraq
Posted: 19th Feb 2012 17:00
Look for friends that can help make some of your media. Like you mentioned it is way too easy to overload yourself with trying to model, texture, find music, find sounds, make the GUI, etc... plus trying to code everything together.

I guess I got lucky since my little brother is studying graphic arts so if I need some loading screens or some artwork for a 2D game or whatever I just email him. But anyway try to find some other people either in person or online that would be willing to collaborate with you. They will enjoy the opportunity to put their skills in practice with a "real" project.

Also as mentioned above use place holders until you can get some higher quality media. Even if it is just a MAKE OBJECT CUBE. Too many people get caught up in GRAPHICS GRAPHICS GRAPHICS!!!!! that they think if it doesnt just pop off the screen then it isnt a good game. I cant tell you how many times I have been disappointed after pecking away 2,000 lines of code and I show my latest and greatest to one of my friends and they are just like "Um, whats with the gimpy looking gun?" or "Why is the main menu white arial on a plain black background?"

Get what I am saying? Dont think that just because someone doesnt appreciate the dozens of hours you spent typing out countless lines of code that is meaningless to the layman, that it isnt good stuff. After all you are a programmer not a developement team.

Hope that helps and good luck!

Sadly, programming is only a hobby for me right now. As it turns out, driving a 70 ton, 7 million dollar Abrams tank requires less qualification than pecking away at a keyboard. Who'da thunk it?

WLGfx
18
Years of Service
User Offline
Joined: 1st Nov 2007
Location: NW United Kingdom
Posted: 19th Feb 2012 20:11
My guess is "tokyomage" is busy completing a game. I've not seen a reply on here and everybody has joined in almost so far.

Mental arithmetic? Me? (That's for computers) I can't subtract a fart from a plate of beans!
Warning! May contain Nuts!
CumQuaT
AGK Master
16
Years of Service
User Offline
Joined: 28th Apr 2010
Location: Tasmania, Australia
Posted: 20th Feb 2012 01:19
@WLGfx - after starting 10 different projects, the thought of actually writing something down or planning anything is probably too intimidating.

It really is just planning. Even having a rough plan. Don't ever underestimate just how complex and difficult it can be to make a good video game. Game designers have to be a programmer, a designer, a physicist, a psychologist, an anthropologist, a painter, a builder, a mathematician and much more just to be able to do an average game. So buy a new notebook from the grocery store and get writing!


Seppuku Arts
Moderator
21
Years of Service
User Offline
Joined: 18th Aug 2004
Location: Cambridgeshire, England
Posted: 21st Feb 2012 03:21
I think another thing to note is:

Bugs.

They're annoying and they can be a major turn off, especially when they keep occurring. I think defeating bugs requires planning and a bit of education. (it seems the word 'plan' occurs a lot and coding is something that works best when planned).

If you keep your code organised, so one action isn't relying on bits of code everywhere you can spot any problems that may occur and if they do, figure out where the problem is. The one major thing that reduced my confidence was thinking something was perfectly logical and that I'm perfectly capable of doing it and then a bug I can't seem to understand stares at me in the face. The good thing is that it's a great learning experience, the bad thing is, you might question your ability as coder or your ability to actually finish it.

If you keep it simple, I believe you're less likely to encounter bugs. Build confidence, then increase your difficulty level.


WLGfx
18
Years of Service
User Offline
Joined: 1st Nov 2007
Location: NW United Kingdom
Posted: 21st Feb 2012 15:47
It's not a bug, it's a feature!

This is true if the particular feature / bug doesn't cause a disastrous crash. ie Jet-Set-Willy had a bug / feature with the swinging rope. And there's tons more features that programmers have left in over the years... he he

Mental arithmetic? Me? (That's for computers) I can't subtract a fart from a plate of beans!
Warning! May contain Nuts!
Naphier
15
Years of Service
User Offline
Joined: 2nd Oct 2010
Location: St Petersburg, Florida
Posted: 21st Feb 2012 22:28
Quote: "It's not a bug, it's a feature!"


The programmer's motto...
You just don't understand how to use it....
::goes insane and attacks "spaghetti features"::

ooh that would be fun art

SoftMotion3D
AGK Developer
20
Years of Service
User Offline
Joined: 24th Aug 2005
Location: Calgary,Alberta
Posted: 22nd Feb 2012 15:27
Quote: "I've Had DarkBasic for 6 months "


LOL! You cant just jump in and make a game untill you understand how gameflow works.. I have had db for over 10 years and now have finaly started poping out applications and am now working on my first game. To get to this point? I have a big grave yard folder i like to call it of started projects that all failed but i learned something each time from each one of them.

Once you build up your grave yard you get more and more experence of what you can and cant do Along the way figuring out some of those things that stopped those projects in the first place.

Id say dont give up of coarse but dont expect to stay focused on a single project. Chances are that if you lose interest in continuing with a project then the fun factor of it is not there anyways.

These forums are great! Dont forget that when you get code stuck as alot of people can help guide you.

Burning Feet Man
18
Years of Service
User Offline
Joined: 4th Jan 2008
Location: Sydney, Australia
Posted: 23rd Feb 2012 00:28
O-er, "The Grave Yard", I like that name!!! I've named mine a much more polite "Non-Active Projects", but I'm definitely going to go with your naming scheme!

Also, everyone be sure to have backups in place! Don't get burnt and sort out your backup solution tonight! Currently I'm changing from Dropbox to SpiderOak, and so far SpiderOak is looking pretty wicked!

Help build an online DarkBASIC Professional help archive.
DarkBasic Help Wikia
=PRoF=
23
Years of Service
User Offline
Joined: 17th Mar 2003
Location: Milton Keynes, UK
Posted: 23rd Feb 2012 00:42
Mine is called "Sleeping projects", and contains multiple versions (coz I keep rewriting stuff again and again) of various projects which have been placed on a back burner for a while (I've currently been working on Snakerunner for 13 years now :/ )

@Burning Feet Man:
You make a good point about backing up. I can whole-heartedly recommend Project Locker and Tortoise SVN for that

SoftMotion3D
AGK Developer
20
Years of Service
User Offline
Joined: 24th Aug 2005
Location: Calgary,Alberta
Posted: 23rd Feb 2012 18:29
Quote: "Burning Feet Man"


Good point.... i never mentioned how many projects i actualy lost in my graveyard folder either due to not backing stuff up..... if your coding daily....backup daily!!

tokyomage
15
Years of Service
User Offline
Joined: 26th Sep 2010
Location: on your roof
Posted: 25th Feb 2012 18:34
Hello everyone. I cant express how much I am
overjoyed to see a whole community helping me
with this problem, its just wonderful.

In other news I have recently been trying to
start simple, placing everyones idea combined to
something easy, and fun. I hope I can get this game
out soon and with ease.

So to everyone that has replied to me (I have read everyones post)
I just want you to know that you really helped me
in terms of coding!

-Tokyomage

.....the feel of solitude hurts inside....
TheMechanic
15
Years of Service
User Offline
Joined: 7th Jun 2011
Location:
Posted: 25th Feb 2012 23:20
Hi dude,

you could always try to solve problems using DB PRO if your struffling with creating a game, try: http://projecteuler.net/
Burning Feet Man
18
Years of Service
User Offline
Joined: 4th Jan 2008
Location: Sydney, Australia
Posted: 26th Feb 2012 09:33
Nice site TheMechanic, I'm going to sign up now! Personally I've been using Khan Academy for the past year, and loving that website to absolute bits. Almost hitting the ripe age of 30, I'm needing so remember so much basic maths that I took for granted back in school!

Tokyomage, really glad you're giving things a go! Remember that a lot of us here are yet to code a game that anyone else plays. I've been learning DBpro for 3 years now, and although one day I'll get a game finished (heh) that others can play, I'm really pushing myself to get beta's released over the next 10 years. Not tomorrow, not in a week, but over years.

So relax! Enjoy your coding time. If you hit a problem that you can't solve, save it for tomorrow.

Help build an online DarkBASIC Professional help archive.
DarkBasic Help Wikia
TheComet
18
Years of Service
User Offline
Joined: 18th Oct 2007
Location: I`m under ur bridge eating ur goatz.
Posted: 26th Feb 2012 12:22
Haha, project euler is awesome I've solved a lot of it already and it's starting to get ridiculous because I have to deal with numbers OVER NINE THOUS- err, more like 1000^1000.

TheComet

Libervurto
20
Years of Service
User Offline
Joined: 30th Jun 2006
Location: On Toast
Posted: 26th Feb 2012 18:33
Quote: "My best advice would be to plan everything out on paper first, down to the tiniest details."

I actually think this is a bad idea for a beginner. Planning every detail is very difficult unless you know exactly what you are doing. Beginners waste a lot of time planning things that wont work. I think there's a lot to be said for just diving in head first, especially when learning. You will make a lot of mistakes but you will learn faster and wont have unforeseen problems from bad planning.

I would suggest not programming at all for a couple of days, I know what it's like, you can feel guilty for your lack of progress on a project but try to kill these thoughts. Remember this is a hobby not your job, don't stress yourself out about it. Even just a good nights sleep can spring your coding brain back to life.

I think the best way to improve your knowledge and ability is to modify other people's code. Search the forums and find something amazing that you want to learn about and tinker with the code. It will take a while to work out what everything in the code does, but it is great experience, it's quicker than starting your own project, and you will learn proper practises and nifty tricks from veteran coders.

Join DNG today! We are a game development team open to all. Visit our Headquarters to learn more.
Dar13
18
Years of Service
User Offline
Joined: 12th May 2008
Location: Microsoft VisualStudio 2010 Professional
Posted: 26th Feb 2012 19:59
Quote: "OVER NINE THOUS- err, more like 1000^1000"

We really need a bignum plugin for DBPro, or at least an interface to GMP/MPIR.

Penfold
22
Years of Service
User Offline
Joined: 3rd Dec 2003
Location: RED postbox houses of parliment
Posted: 26th Feb 2012 23:59
Let me tell you a little story.. you may not want to know but I'm going to tell you anyway..

Way back in 1989 a little boy whos father didnt have a great deal of money to spare couldnt afford to buy the little fella a brand new amiga or even a moderatly priced zx spectrum +2. However one weekend at the local carboot the little chap happened across a stall with a very odd looking zx81 spectrum computer. it was a strange little thing that didnt even have real keys (microswitches under a plastic sheet ). This guy all of the age of 10 didnt realise that the whopping 1k memory that this thing had would lead him into a new and wonderful world. After several minutes of we'll call it father-son bonding time. The massive sum of £6 was handed over (about £20 these days) and to the little boys surprise a box including a bunch of cables an old cassette player and a file/folder with about 8 cassettes and a how to manual was taken home.

Needless to say this wasnt the end of the exciting story. After 4 hours of trying to get one of the cassettes to load (volume control was ever so important I later found out) and a few tears the little boy sat down with the big fat how to manual and started to flick through. *Hello World* followed in just a few minutes and not long after the first of several very bad text adventures was made.

Over the course of the next five or six years 2 more replacement zx81s were bought including a fantastic 6k ram pack. The cunning ability to load games was found and the first real games were played on those ancient beasts.

Needless to say when it was his 16th birthday he was given a brand new zx spectrum with more ram than he could possibly use and an internal (joy) cassete player/recorder. This is when the fun really started.

...anyway to cut an long story short. you dont have to start big with games. try small first and then add to it. Text adventures are a good place to start because they require only a small amount of knowledge to get started. Optionally ou could start try simple 2d or 3d commands to get basic shapes like spheres and cubes to appear on the screen and then get them to move..and then get basic keyboard control of one of them.. then you could figure out how to make to tell if two objects have hit it each other so you can chase the other objects around and keep score (sounds like gears of war already !!)

'Ooh 'eck chief'...'crumbs'
CumQuaT
AGK Master
16
Years of Service
User Offline
Joined: 28th Apr 2010
Location: Tasmania, Australia
Posted: 27th Feb 2012 09:30
I actually just covered this very topic in my most recent blog entry.


Penfold
22
Years of Service
User Offline
Joined: 3rd Dec 2003
Location: RED postbox houses of parliment
Posted: 27th Feb 2012 11:14
I know I'm going to get flamed along the way for some (nny amount) of reasons. But your going to have to make a decission how you want to learn.

Although many people say plan ahead do oodles of notes, this may just not be you and if you completely new you just want to get stuck in while your fired upand ready to go. Many of these people say that they started with a jump right in style but learnt so much from what they did wrong - surely this isnt a bad thing.

Ultimatley how you do this will be up to you. The following points should be looked at.

1. How good am I? Do I know the basics? Should I be looking at other peoples code snippets and trying to get those to work in my own way or can I make my own basic code without assistance.

2. If I'm oood enough - should I be looking at making a small app or game first? which requires little or no planning? OR is this still a little too much for me and i should ge the basics sorted.

3. Am I good enough for a small to large game that will require some pre-planning. Is it going to be a lot of effort to plan out just to find my skills still arent quite up to the task and I need to go back to something basic. ( theres no reason you cant plan something big as long as is within yours or your groups means t ocomplete).

4. I'm amazing and I'm not just being big headed, I can code to an acceptable level and my skills are more than adequate. I can plan my game with ease and have only to look up specific solutions t0 problems I have.

I myself fit somewhere between 2 and 3... you should try to do something that is within your means to egin with. as said before pong and space invaders style games are a great learning point.

'Ooh 'eck chief'...'crumbs'
Santman
14
Years of Service
User Offline
Joined: 15th Sep 2011
Location: Inverness
Posted: 27th Feb 2012 21:46
Well now, this was an interesting thread to start. I'm going to throw my oar in and say quite controversially....I never really plan much out! Lol. I have to date writen a full length vampire novel (self published only to date) and am about half way through a simple game....the novel started as a few bored scribblings that turned into "hmmm....I wonder if I could write a book". The game started as an idea that turned into "hmmmm....I wonder if I could write a game". Now....the two are converging and I'm soon to start a project that will hopefully be new and very successful (everything crossed). I think that people make two main mistakes:

A) as covered, trying to single handedly make a Skyrim or Mass Effect beater (remember - these games have teams of hundreds and wopping budgets....and Skyrim uses fallout's engine, which was oblivions, which was morrowinds) - mass effect 3 uses dragon age 2's engine, which was mass effect 2/dragon age's, which was mass effect's. So, in effect, both these engines have had DOZENS of coders working on them for ALMOST SEVEN YEARS EACH!!! And lets not even mention anything using an Unreal, Quake or Id engine (10+ years!!!!). And possibly the most successful game of all time (profit wise) - Lemmings. One man, stunningly simple concept....roaring, world changing success!!! Think appropriate to your scope.

B) Don;t get bogged down in the mire of planning and staring at non functional code for hours. If your AI bot keeps walking off a cliff, code a prettier landscape. Or a new special effect. Or design a new element. If you do nothing but plan and debug....you'll never do anything other than plan and debug!!!

And to my friend CumQuaT....am I wrong in thinking your own very promissing project almost disappeared for one of those reasons?
CumQuaT
AGK Master
16
Years of Service
User Offline
Joined: 28th Apr 2010
Location: Tasmania, Australia
Posted: 28th Feb 2012 00:40
Quote: "And to my friend CumQuaT....am I wrong in thinking your own very promissing project almost disappeared for one of those reasons?"


Never! Haha. After investing nearly two years of full-time development on Malevolence, I'd never give up! The first model of our engine was re-written four times before we were happy with it! (and that was about 28k lines of code!)


Libervurto
20
Years of Service
User Offline
Joined: 30th Jun 2006
Location: On Toast
Posted: 28th Feb 2012 04:30
Quote: "... you don't have to start big with games. try small first and then add to it. Text adventures are a good place to start because they require only a small amount of knowledge to get started..."

This is good advice, have fun with what you already know - don't just see it as a tiny step towards your dream game. You can make a fun game from very few commands. Then when you get bored or feel limited, move onto the next thing and learn more.

Join DNG today! We are a game development team open to all. Visit our Headquarters to learn more.
Alien002
15
Years of Service
User Offline
Joined: 25th May 2011
Location:
Posted: 28th Feb 2012 18:02
my advice is the more time you spend programming the better you will become. try to make different style of games or even parts / snippets of games.

Don't give up , you will find things that you can't do now. for me minmax search tree is the last problem for a connent 4 game ai. if you haveing a problem 1 way try a different way of doing things. as the old saying goes there is more than 1 way of skinning a cat.

over 15 years of programming i have not finished 1 game but i have learned a lot trying different thing out.

Login to post a reply

Server time is: 2026-07-10 08:48:18
Your offset time is: 2026-07-10 08:48:18