Game Programming and Development Tools

To Program in What?????? – jesterhawk

jesterhawk

Member

Posts: 32
From: Hurst, TX, USA
Registered: 03-30-2002
Hello,

I have been surveying the game development arena and trying to determine what would be the best tool to use. The game I am working on designing is an RPG that I would like to have a nice 2d/3d look and feel. One person I spoke to online suggested DarkBASIC. However, I am not sure. It has a lot of features, but I want to make sure that when I spend the money I get the best I can.

Could you all inform me what tool you use to create software and why? Maybe list some pros and cons you have discovered.

Thanks
Jesterhawk

------------------
---------------------
Jesterhawk

CobraA1

Member

Posts: 926
From: MN
Registered: 02-19-2001
That depends on a lot. Some languages are common, some are easy to use, some are powerful, some are portable, some are just plain crazy (brainf***, anybody?). There's also some pre-built engines and game-making programs floating around, although none are as powerful as doing the programming yourself.

So, what do you like? Power? Ease of use? Portability? Object-oriented programming? There's a lot of options.

C/C++ tends to be the most popular language, BTW.

jesterhawk

Member

Posts: 32
From: Hurst, TX, USA
Registered: 03-30-2002
quote:
Originally posted by CobraA1:
That depends on a lot. Some languages are common, some are easy to use, some are powerful, some are portable, some are just plain crazy (brainf***, anybody?). There's also some pre-built engines and game-making programs floating around, although none are as powerful as doing the programming yourself.

So, what do you like? Power? Ease of use? Portability? Object-oriented programming? There's a lot of options.

C/C++ tends to be the most popular language, BTW.



I prefer in the following order:

1) Power
2) Ease of Use
3) Portability

I am looking to create a windows based game at first because that is what I use at home. I would like the programming to now get in the way of telling the story that is wrapped in the RPG, but I do want the power to create the environment and game I desire. Now C/C++ would be great if I could find something where I don't need a really high learning curve to program (I have tried using Visual C++ and been lost). I am also a bit on a budget right now. I have seen Borland's C++ Builder, but couldn't afford the price tag. I have Delphi, but an older version that does not handle graphics well and the upgrade is $400. So, I get a bit stuck. Again any advice would be greatly appreciated.

Love in Christ,
Pat

------------------
---------------------
Jesterhawk

CobraA1

Member

Posts: 926
From: MN
Registered: 02-19-2001
Hmm . . .

I'm a Java fan myself.

BlueJ + Sun's JDK are what I'm using.

Try jEdit for editing C/C++ files, it's a pretty powerful code editor, and I don't think you'll get as lost as in VC++.

Perhaps using jEdit to edit, VC++ to compile?

GameDev.net has tutorials and book recommendations you can look at.

Specis

Junior Member

Posts: 7
From: Scotland
Registered: 08-14-2002
Not pimping or anything but you could look into Blitzbasic or Blitz3d.
CobraA1

Member

Posts: 926
From: MN
Registered: 02-19-2001
C++ has power and portability; both were on jesterhawk's list. I'm not sure about power, but I'm sure that Blitz Basic is Windows-only, so it's not portable. He also seemed to be concerned about money; there are several free C/C++ compilers and IDEs available.

Blitz Basic would fit the bill for ease-of-use, and maybe power, so jesterhawk: take a look around. Find what you like. BlitzBasic has a demo version, so you can try before you buy! $50.00 is also MUCH cheaper than VC++. I'm surprised most programmers have it.

jesterhawk: Ultimately, it's up to you, we can only offer advice.

RAN-SUN-SAN

Member

Posts: 27
From: Finland
Registered: 10-09-2002
Well Iīm not actually a coder, but...

Iīm using Conitecīs 3D GAMESTUDIO A5 which you can find from:

http://www.conitec.net

click on 3D GAMESTUDIO!

Well it uses an own code C-SCRIPT which is easier to use than C++! C-script is a simplified version of C++! Anyway C++ code can also be added by DLL files to the game.

Then I also like the fact that you can START with a STANDARD version that costs only 49$! It hasnīt got all features, but you can learn the programming with it. The code youīve made can later be used if you upgrade to COMMERCIAL version (199$) or PROFESSIONAL version (1250$).
Also the engine is constantly uppgraded with new features!

a 30 day trial version can be downloaded, before you decide to buy or not!

Krylar

Administrator

Posts: 502
From: MD, USA
Registered: 03-05-2001
The current version of Blitz Basic is Windows-only (DirectX 7+), but there is a new version of Blitz called "Blitz Maxx" that is supposed to be openGL. No idea on the release date of this though. Thus, if you go with that it should be platform independent.

Blitz is easy to use and quite powerful. Also, note that with the openGL version it'll likely be even stronger.

-Krylar

------------------

rijel

Member

Posts: 14
From:
Registered: 11-18-2002
I tried DarkBasic. Its Ok, but I stopped useing it. Game Maker is GREAT. It has a scripting language like C. I read that Visual Basic is good. C++ is hard to learn but very powerful. I wouldn't recommend Flash. Blitz is very nice. C is nice to learn because other laguages are based on it. Game Maker,C,C++ and Blitz are all great laguages to learn.
rijel

Member

Posts: 14
From:
Registered: 11-18-2002
I got the homepages for most of them.

Game Maker:www.cs.uu.nl/people/markov/gmaker/
C++:www.cprogramming.com
Blitz: www.blitzbasic.com

For C I think you have to buy a book. :rolleyes

CobraA1

Member

Posts: 926
From: MN
Registered: 02-19-2001
Game Maker's nice for quick 2D games, but it's not quite as powerful as having a real programming language, and it won't do any 3D at all. With some tricky programming you can do basic isometric 2D for a SimCity 2000-like look.
rijel

Member

Posts: 14
From:
Registered: 11-18-2002
True, but on the Game Makers web site, they have a 3-d game. I think that it
takes alot of time to build a 3-d game with Game Maker, but it can be done.
CobraA1

Member

Posts: 926
From: MN
Registered: 02-19-2001
Brent Cowan seems to be making a 3D engine, but I have yet to test it, so I don't know if it's any good.

It's probably possible to make a DLL that interfaces GameMaker to a 3D engine of some kind.

CobraA1

Member

Posts: 926
From: MN
Registered: 02-19-2001
Took a look - it's kinda 3D, but it cheats for the rotations - it stores the rotated wall as a series of images of the wall from different angles. It could pass as a raycasting engine if the player didn't know about how it really works.

He's got an updated version of his "3D" engine at http://www.geocities.com/freegadgets/3d_engine.html. and it is editable!

There's a program to make the rotated textures for walls also.

It looks easy to make a game with it, though - if you can handle not having any special effects at all - not even lighting.

[This message has been edited by CobraA1 (edited November 22, 2002).]

Christian
Member

Posts: 400
From: Australia
Registered: 09-15-2002
It's really simple. Probably all the Blitz Basic programmers in the world are on this board. If you're coding to muck around and don't care if the end result is not sellable, or your skills are not marketable, then it may be a good option ( seriously ). If you want to write something of commerical quality, C++ is the only option. You may have to buy a book or two, but you'll find the web is bursting with C++ programmers who can help you.
Mack

Administrator

Posts: 2779
From:
Registered: 01-20-2001
quote:
Originally posted by christian:
Probably all the Blitz Basic programmers in the world are on this board.

Nah, I think they're all on this one:

http://www.blitzcoder.com/

Christian
Member

Posts: 400
From: Australia
Registered: 09-15-2002
LOL - yes, but they don't look that different. I wonder why.... :P
rijel

Member

Posts: 14
From:
Registered: 11-18-2002
The problem with C and C++ is you have to learn Direct X or something like that.
Christian
Member

Posts: 400
From: Australia
Registered: 09-15-2002
quote:

The problem with C and C++ is you have to learn Direct X or something like that.

LOL - why be a programmer if you're scared to learn how it is done ?

The problem with not using C++ is that your game is less likely to be any good :0)

rijel

Member

Posts: 14
From:
Registered: 11-18-2002
Direct X is hard.
CobraA1

Member

Posts: 926
From: MN
Registered: 02-19-2001
quote:
Originally posted by rijel:
The problem with C and C++ is you have to learn Direct X or something like that.

OpenGL and SDL are also available; you don't have to use DirectX.

OpenGL is pretty easy to learn, and I recommend NeHe's tutorials or a good book for learning it.

quote:
Originally posted by christian:
The problem with not using C++ is that your game is less likely to be any good :0)

I disagree. A good game requires time, dedication, skill, and if you're not a loner, a good team. If you (or your team) can make a good game in C/C++, it will show even if you decide to use another language. I do not see choice of language being a major hinderance to creating a good game.

[This message has been edited by CobraA1 (edited December 11, 2002).]

Christian
Member

Posts: 400
From: Australia
Registered: 09-15-2002
A good programmer can create something in any language, but if you're a good programmer, you'd use that ability to choose the best tool for the job. How many games in your local store do you think were written in C or C++ ? Most of them. Yes, I can write a game in Python. Do you think it will be any good ?
rowanseymour

Member

Posts: 284
From: Belfast, Northern Ireland
Registered: 02-10-2001
I would also reccomend C++ (see me and Christian do agree on a few things :P) is you wanna get into 3D gaming stuff - there are a lot of resources out there for C++ game programming.

But I do reckon the next big thing will be games on cell phones and PDAs, and a lot of these are running JAVA natively, so despite my hang ups with JAVA, I would recommend it as well.

My friend's Nokia has virtual pool in JAVA - and it rocks.

------------------
Rowan / GODCENTRIC Christian Demoscene

Klumsy

Administrator

Posts: 1061
From: Port Angeles, WA, USA
Registered: 10-25-2001
you should see japanese cellphones, they are way ahead..
you cn run java and other stuff of course, but also they come with high 512kbps bandwitdh, some of them have 3d accelerator chips inside hte cell phone.. and they have been doing video conferencing with them for a number of years already..

------------------
Karl /GODCENTRIC
Visionary Media
the creative submitted to the divine.
Husband of my amazing wife Aleshia
Klumsy@xtra.co.nz

Christian
Member

Posts: 400
From: Australia
Registered: 09-15-2002
I'm told that Java has some decent graphics APIs nowadays, so for a phone that might be a good idea. I've never used Java, but I use C# a lot, so that's basically the same thing.

I once made a joke about java being rubbish when someone on usenet asked why there are no books on graphics programming in Java. I did not notice that the message was crossposted to comp.lang.java. That was fun.....

CobraA1

Member

Posts: 926
From: MN
Registered: 02-19-2001
Yes, most games are written in C/C++, but that just shows that C/C++ is popular, not superior. Ask the makers of Runescape, an online game that's played by over 240,000 people. For a Java game that uses software rendering for 3D, it's pretty impressive. Hardware rendering is available through OpenGL for Java, or through Java3D.

Also, ASM has been used extensively in the past, and even in the present, when speed is needed. Other compiled languages exist also, BTW.

Yes, I'd recommend C/C++, but I wouldn't say that it's impossible (or even hard) to create a good game with another language.

Christian
Member

Posts: 400
From: Australia
Registered: 09-15-2002
Online games are never going to be pushing the hardware envelope. There is no doubt that you can write games in another language, but I don't know of any except ASM that is actually going to be as fast. The Doom and Quake games are written in C, because the speed cost of C++ was too much for them. Can you imagine VB Doom ?
CobraA1

Member

Posts: 926
From: MN
Registered: 02-19-2001
sigh - I wrote up a long response, but decided against it - I'm not about to start a big flame war.

I agree that C/C++ is the best choice in many cases.

In any case, the success of a game depends on a lot of factors, such as audience, gameplay, graphics, etc. Sometimes certain factors are important, sometimes other factors are; what your audience is and what the genre of the game is determins what factors will make a game successful. It's a complex issue, and I'm not really an expert.

Klumsy

Administrator

Posts: 1061
From: Port Angeles, WA, USA
Registered: 10-25-2001
quote:

Online games are never going to be pushing the hardware envelope. There is no doubt that you can write games in another language, but I don't know of any except ASM that is actually going to be as fast. The Doom and Quake games are written in C, because the speed cost of C++ was too much for them. Can you imagine VB Doom ?


yeah i can imagine vb doom on modern computers... some C compilers compile good fast code, though its a bit dated, Delphi produces code that is faster than any MS C/C++ compiler (other than in a few floating point instances, which a postcompile process can fix)
as for the modern day... the best reason to stick with C,C++ is because of the support and that it is already popular (of course VB is an inferior language, not good for a large complicated project anyway).. but there are other language out there, just as fast as C++, which have better programming features for games, and with less likelyhood of stupid bugs that cost companies millions and millions of dollars in lost productivity and devtime for companies that stick with C++ (i am meaning non game), because of game resources out there in C++, its economically wise to do games in C++ at this stage..

however with modern games, where 95% of the processor cycles used by a game is spend inside the OS code/graphcs library (directx, opengl) and 3d card driver code... its insigificant what language you write the game in... i mean if i wrote a good binding of directX to a batch file, i could probably get good results (ok i exagerate)... as far for optomisations go these days, when i code for windows i do certian optomisations, but i no longer optomise per clock cycle, how i would for software 3d back in the olden days, its pointless because the api's i am calling are taking all the processor time, and its normally just hte inner loops you optomise anyway, and that isn't possible..

however my friends who made a realtime raytraacing 3d engine... when most of hte processing (other than bliting and other sad OS communication) is spend inside their app.. well then they go back to optomisation, and use MMX etc assembler intensely , with their MMX assembler they get 2500% speed optomisation over what msvc++ would compile the most omptomised C alogirthm they had..

------------------
Karl /GODCENTRIC
Visionary Media
the creative submitted to the divine.
Husband of my amazing wife Aleshia
Klumsy@xtra.co.nz

CobraA1

Member

Posts: 926
From: MN
Registered: 02-19-2001
BTW, I'd keep an eye on C# - it looks like it might be used for future games . . .

FYI, I am working on a Java game with OpenGL for Java - I'm not sure if it will sell or not, but it provides a basis (model loading, texture loading, base classes, etc) for future games I might create.

As far as graphics go, I have been able to load models into Java, so the concept of using OpenGL for Java for future games is entirely possible.

Klumsy

Administrator

Posts: 1061
From: Port Angeles, WA, USA
Registered: 10-25-2001
yeah i use C# a lot, my main language now for work..
i am waiting for directx 9 with native binding to dotnet.. of course one will have to program very well.. so that in the middle of a game sequence things aren't slowed down with dotnet deciding to do garbage collection.. or when say a new charater or weapon or whatever is introduced, it doesn't slow down while dotnet is compiling the IL into native code!!, but its still possible ad good for windows only games that you don't want to port..
(though with a opengl binding, and with dotnet being ported to MAC and LINUX) maybe it might end up being a big player..

------------------
Karl /GODCENTRIC
Visionary Media
the creative submitted to the divine.
Husband of my amazing wife Aleshia
Klumsy@xtra.co.nz