Home Search First Look Rules Help TheDaddy.org BlogLogin/Register
By bye hackers
Programming - 1 to 15
Return To Techy Corner

General*
Windows Bob - the best!
Mon 25th Feb '08 11:19AM
4213 Posts
General's Avatar
Member Since
7th Apr '03
Recently and without warning I've developed the urge to start writing code again. One thing I've always intended to do, but not got around to was writing a couple of simple arcade games.
What is stumping me at the moment is what to write them in. I'm currently passable in C++, Java, Java script and Python.

C++ is the logical thing to use, but as I'm Linux only at home I would end up writing code that I couldn't share with my most of my Mac and Windows using forum buddies.

So that leaves me with something platform independent. I'm pretty good at Java and Java Script, but they aren't really the best languages to be writing games in and I would like to develop my skills at something I hadn't already done a lot of.
Flash would be a good choice, but as I understand it you need the Macromedia development environment to write anything and that's not available for Linux.

My final constraint is that whatever I use I would like to build some saleable skills in the process so I don't want to learn anything esoteric which isn't used in the real world.

Help me out geeky forum types!
    

Spanners*
Misses his big brother :(
Mon 25th Feb '08 11:56AM
4597 Posts
Spanners's Avatar
Member Since
7th Apr '03
I'd say Java all the way mate. It's as powerful and flexible as C++ with very similar command constructs, it's platform independent and still a very marketable skill.
Is there a specific reason you don't think it's up to the task?
    

General*
Windows Bob - the best!
Mon 25th Feb '08 12:13PM
4213 Posts
General's Avatar
Member Since
7th Apr '03
Mainly just because I'm already pretty good at Java and I was hoping to use the project to learn something new.
The only black mark against Java is that it doesn't scale for projects bigger than little web games so I was thinking of C++ just because it would be a taste of what proper games are written in, but then I guess if you aren't programming Open GL or DirectX then you aren't doing anything like commercial game dev anyway.

EDIT: I've just done a bit of reading up and I hadn't realised the performance enhancement available in Java since the last time I had done any serious programming. Jave used to be 20-40 times slower than C++ and now apparently it is more like 1.5 times slower.
    

Spanners*
Misses his big brother :(
Mon 25th Feb '08 4:00PM
4597 Posts
Spanners's Avatar
Member Since
7th Apr '03


General was bold enough to comment:
EDIT: I've just done a bit of reading up and I hadn't realised the performance enhancement available in Java since the last time I had done any serious programming. Jave used to be 20-40 times slower than C++ and now apparently it is more like 1.5 times slower.


Oh yeah I've been using Java 1.6 in work quite a bit lately and it's very good and very quick.
    

Agentgonzo
There's no pee in catheter!
Mon 25th Feb '08 6:07PM
811 Posts
Agentgonzo's Avatar
Member Since
8th Aug '06
My first reaction would have been flash, but you've ruled that out already.

If you want to do platform independent things, then java + openGL is probably the best way to go. There are pretty much only two major graphics platforms that are marketable, those being OpenGL and DirectX, though the concepts behind them both are similar, so once you know what is going on, what the slow steps of the rendering cycle are likely to be and all that, then you can transfer your skills from one to the other (or another entirely) fairly easily.

Mono (.Net environment for linux) is getting pretty well developed these days, which means that you can use any of the .Net framework languages and still be a bit "platform independent" - though if you are going to do .Net, choose C# and VB is just a bad language to start with and C++ for .Net is nasty* (for instance, there are two different "new" and "delete" operators, one for managed and one for unmanaged memory, and thus two different pointer dereferencers (those being the * and the ^)).



*Someone once said that creating C++ from C was like making an octopus by nailing 4 legs to a dog. I view the interfaces between C++ and .Net as worse.
  

Diziet
optical moose
Mon 25th Feb '08 6:14PM
2522 Posts
Diziet's Avatar
Member Since
20th Jul '05
slightly off topic because i know bugger all about programming, but can i play your games once they're finished?

General*
Windows Bob - the best!
Mon 25th Feb '08 10:24PM
4213 Posts
General's Avatar
Member Since
7th Apr '03


Diziet was bold enough to comment:
slightly off topic because i know bugger all about programming, but can i play your games once they're finished?



Of course you can Diz!

If only you could still get VRML browsers you could play the last game I wrote. Farmer Palmers Robot Rampage where you had to stop robots stealing apples by blowing them up with a WWII artillery piece!

Cheers for all the advice chaps I really appreciate it. I would be up for having a crack at a flash game if there was a Linux development environment, but as it is I think I'll stick with Java and see how I get on.

I think I had got the idea that I should use C++ because it's what commercial devs use but frankly who cares.

EDIT: OOO C# looks quite good. It's like C with the good bits nicked from Java.
    

Agentgonzo
There's no pee in catheter!
Tue 26th Feb '08 10:28AM
811 Posts
Agentgonzo's Avatar
Member Since
8th Aug '06


General was bold enough to comment:

EDIT: OOO C# looks quite good. It's like C with the good bits nicked from Java.


There are some woefully bad design decisions in C# (hello, static function variables???) but on the whole it's quite good.
  

General*
Windows Bob - the best!
Tue 26th Feb '08 1:43PM
4213 Posts
General's Avatar
Member Since
7th Apr '03
I've got the latest JDK with Netbeans (Not sure if it's any good or not).
Wish me luck!
    

Demian*
Oh Lordy, Plegaleggole
Thu 28th Feb '08 5:57PM
4678 Posts
Demian's Avatar
Member Since
7th Apr '03
As someone who's also learning Java, I wish you the best of luck. I found the transition from old-skool code to purely OOP to be most confusing, but probably worthwhile in the end. I've also got a long-standing interest in games writing so please keep us updated with your thoughts on the process.

I once tried to learn Flash and I've never seen a less intuitive system for doing anything, so you're well off out of that particular headache.

I wish I'd kept copies of my old QBasic games folders. At one time I had people all round my office playing Sim Cucumber. I didn't even hold the hi-score
  

General*
Windows Bob - the best!
Thu 28th Feb '08 9:46PM
4213 Posts
General's Avatar
Member Since
7th Apr '03
I love's me some Java.
I really like OOP. At the start it seems like more work writing accessor methods and the like, but it is really helpful when you write big programs to stop them getting totally out of hand plus it makes it really easy to plan what you are going to write with UML.
    

Spanners*
Misses his big brother :(
Fri 29th Feb '08 8:30AM
4597 Posts
Spanners's Avatar
Member Since
7th Apr '03


Demian was bold enough to comment:
I once tried to learn Flash and I've never seen a less intuitive system for doing anything, so you're well off out of that particular headache.


Seconded!

Yeah I agree OOP is a fantastic thing. It took me a little while to get my head around proper uses for inheritance but I'm now a firm believer. And PHP5 is the first version to support OOP so it's opened a whole new door for me web-wise

I also think a great bonus for Java is the API - http://java.sun.com/javase/6/docs/api/
Fully comprehensive and so easy to browse if you're looking for some specific functionality
    

General*
Windows Bob - the best!
Mon 3rd Mar '08 2:14PM
4213 Posts
General's Avatar
Member Since
7th Apr '03
IT HAS BEGUN!

By which I mean I wrote a breakout game in Java at the weekend which was great fun.

I've just been reading up on XNA

http://msdn2.microsoft.com/en-us/xna/default.aspx

I must say that I am hugely impressed. I really like the way that you can write games for Xbox and Windows through one common application and compile for either.
I was also very pleased to see that the XNA Xpress software is free.

I think after my next Java project I will install XNA express and have a bash at writing a game in C#. It will mean having to work on XP (Boo!), but once development on a Mono XNA framework (It's coming apparently) is complete then perhaps my dreams of cross platform development will come true once more.
    

Oooood
Aubergine Mincemeat
Wed 5th Mar '08 10:38AM
242 Posts
Oooood's Avatar
Member Since
15th Apr '03
Do it General.
About 4-5 months ago I dusted off my old programming mentality and started some work in c#. It's great.

Only problem I have is I sometimes research programming on a mac. I'll be damned if I can find a '#' button on my keyboard anywhere.
 

General*
Windows Bob - the best!
Mon 17th Mar '08 1:19AM
4213 Posts
General's Avatar
Member Since
7th Apr '03
I had some free time this weekend and I've managed to get my breakout game into a passable state.

All I have to do now is get some webspace to host it and package it up into a JAR file.
In the mean time if anyone is interested in having a go on it then PM me your email address and I will email it to you.
    

Bookmark With: Post to DiggDigg   Post to DeliciousDelicious   Post to RedditReddit   Post to FacebookFacebook   Post to StumbleuponStumbleupon
Return To Techy Corner

Time Zone is Greenwich Mean Time You are Visible
Html Tags are On Smileys are On
Anonymous Posting is Not AllowedGeneral is The Daddy