small 2D shooter with some impressive effects

Advanced game related topics
Dare
Addict
Addict
Posts: 1965
Joined: Mon May 29, 2006 1:01 am
Location: Outback

Post by Dare »

Thanks for the code release, mp303. Nice code, approach & style.
Dare2 cut down to size
u9
User
User
Posts: 55
Joined: Tue May 09, 2006 8:43 pm
Location: Faroe Islands
Contact:

End of an era

Post by u9 »

Well it finally sounds like this thread is coming to an end. It’s an end of an era one might say. mp303 I'd like to congratulate you on receiving a staggering 120 replies (oh.. 121 with this one) on this small demo hehehe. Any publicity is good publicity some say ;)
The most likely way for the world to be destroyed, most experts agree, is by accident. That's where we come in; we're computer professionals. We cause accidents. (Nathaniel Borenstein)
http://www.wirednerd.com
mp303

Re: End of an era

Post by mp303 »

u9 wrote:Any publicity is good publicity some say ;)
it's a proven fact - just look at McDonald's sales! ;)
robert1352
User
User
Posts: 34
Joined: Tue Mar 14, 2006 8:17 pm

cool !!!!!!!!!!!!!

Post by robert1352 »

Man that game rocks!!!!!!!!!!! Did you make your own sprites?? If so you need to write some toutorials !!!!!!!!!!!!!! My hats off to you good job :lol:
Amiga5k
Enthusiast
Enthusiast
Posts: 329
Joined: Fri Apr 25, 2003 8:57 pm

Post by Amiga5k »

(I can't believe this thread wasn't been locked LONG ago...)

Now that that's been said...

I think that it is easily possible to write a very well-organized procedural game and equally possible to write a bloated, slow, resource hungry OOP game. Most of the blame or accolades should go to the programmer, either way.

Now, OOP does have some nice features that help keep things 'compartmentalized', which makes it easier to work in large groups of programmers. Multiple levels of indirect access to objects (objects referring to objects, which refer to other objects, which refer to still other objects, etc) is one of the thing that can make OOP bloated and slow. Unfortunately, with super fast processors, cheap memory and broadband, there's not much incentive anymore to program "lean and mean". Ask yourself why just about anything put out by Microsoft is such a freaking huge install when similar programs written not too long ago (when memory, etc was not so cheap..and "lean and mean" was the programmer's motto) are 1/10th as large.

I would be fine with OOP added to PB (as MP303 has said, many of the 'hooks' are already in place), but would not be too upset if it never was added, too. I have BlitzMax if I feel OOP is really needed.

One other thing I'd like to say, though, is that the name 'BASIC' is really unfair (and inaccurate) nowadays. Most modern dialects of BASIC have 'high level' features previously not available in BASIC and will continue to get better and better.

Essentially, each individual programmer has to ask themselves what features they MUST have in a language and then choose the language that has those feature and that they are most comfortable with.

Hey, some people even like FORTH! ;) (Which is quite similar to BrainF**k, BTW).

I'd like to see more graphics and sound related improvements done. If they don't require OOP, then I'm OK with that.

Russell
*** Diapers and politicians need to be changed...for the same reason! ***
*** Make every vote equal: Abolish the Electoral College ***
*** www.au.org ***
surfer_ix
New User
New User
Posts: 5
Joined: Wed Sep 20, 2006 9:54 am
Location: France

What a mess !

Post by surfer_ix »

I think no one is cheeky.
It's all a matter of misunderstanding.
I've been programming for a living for 10 years, and I'll never consider myself as "being an expert" of something.
But as far as I know (as I do either), OO programming helps you but you can do without it.
OO Programming is well-suited for team and self-development (= one person).
PureBasic is well suited for 1 people, but you can do a lot of things *much quicker* than anything else.
I'm using Delphi every day and I can tell you I've bought PureBasic because it wraps a lot of problems you have when you want to create a game.
Correct me if I'm wrong but PureBasic has been done for game programming. Nevertheless it's been so well designed that we can do a lot more with it (including accessing Databases, which is kind of strange to me, because it's far beyond the scope I'm planning to use PB).

What is OO programming ? Have you listened to (one of) the creator of php ? He just said that when he created v.5 of php he had a few things to do because OO is just like "encapsulating functions into objects". This is more time-consuming (with VTables and so on).

And I'm pretty convinced that if you organize properly what you want to do, you can create separate files : each file would represent an object, and for each file every function in it would begin with the name of the object (i.e. Alien.pb => AlienMove(), AlienDraw(), AlienCheckCollision() and so on). The only drawback is that you would have to pass a structure containing the variables of the object (a pointer to a structure to be more precise). It shouldn't be that hard. But anyway, hey, ain't that a good idea to finish your game ?
surfer_ix
New User
New User
Posts: 5
Joined: Wed Sep 20, 2006 9:54 am
Location: France

Post by surfer_ix »

@amiga5k : I'd like to see more graphics and sound related improvements done either !
MaxNorris
New User
New User
Posts: 4
Joined: Fri Aug 11, 2006 1:21 am
Location: Columbus, Ohio
Contact:

Post by MaxNorris »

In reply to the original post way back, very nice job.

Lol and I agree, I can't believe this didn't get locked either. But hey, since the soapbox hasn't been smashed yet..

Personally, I'm an OOP fan myself. Been using that style since the Turbo Pascal for DOS days, but to be honest, it's just a different style. I really don't see anything that cannot be done in a "linear" fashion that an OOP program can do. It's just a matter of adjusting your thinking. (But I still like OOP better..)

That being said, and I don't know if this was ever suggested, but a lot of users seem to like PureBasic for the gaming aspect. How about releasing a seperate product? A helper library of sorts that can be linked into different compilers? If you want the full blown PureBasic system, you can get that. If you just want a spiffy sprite/audio engine for say Delphi or C++, you can get the library version instead. (I personally don't like it nor recommend it, but I've seen that DarkBasic has something similiar, the DBSDK, a linkable version of their runtime for other compilers.)
surfer_ix
New User
New User
Posts: 5
Joined: Wed Sep 20, 2006 9:54 am
Location: France

Right

Post by surfer_ix »

I'm a OOP professionnal.
I like it and can't do without it as a professionnal.
I've used the DirectX wrapper component for Delphi (made by a very clever Chinese guy (the Delphi's community never had news from him for years, we still don't know if... he's alive !)). The component is called DelphiX and I've made my own full sprite engine 100 % object oriented. I've worked on it for days and days, and I've linked Delphi with fmod, and onve I had my full menu made with sprites, a very nice menu, there was just the game to program left to do (= not the hard part, but the fun part).

When I saw BlitzBasic I tried to use it and I saw it was much more easy than OOP Delphi.
Then... I saw PureBasic, tried it for 2 days and finally, after getting the cracked version (which is kind of a compliment, to find a cracked version of a program (this means the program is so much interesting that someone has spent some time to crack it)), I've decided to buy it (like I do with almost everything (including games)) because the creator of PureBasic must be rewarded for such a great product.

The compiler is amazingly fast even on my very old PC.

Most of all : programming games in ten times easier than any other languages I've tried (except BlitzBasic because the pointer syntax in PureBasic, with the '\' doesn't help to make the code "readable". It could have been like almost all the other languages "->" or "." or even ".." to show this is a pointer but the "\"... anyway).
Amiga5k
Enthusiast
Enthusiast
Posts: 329
Joined: Fri Apr 25, 2003 8:57 pm

Post by Amiga5k »

Delphi is an interesting language, and has advanced Pascal right up there with C++ (and beyond). For anyone who is interested, there is a free (open source) version of a Pascal environment which is very very similar to Delphi called Free Pascal (or Lazarus) available here:
http://www.freepascal.org/ (They even have one for AmigaOS 4.0!)
http://www.lazarus.freepascal.org/

For full cross-platform GUI apps, I'd even suggest using it over PB (Although for games I'd still stick with PB) because of its consistant cross-platform command set, full OOP support and excellent IDE\Visual Design ('ala Visual Studio..kinda).

Russell
*** Diapers and politicians need to be changed...for the same reason! ***
*** Make every vote equal: Abolish the Electoral College ***
*** www.au.org ***
DevilDog
Enthusiast
Enthusiast
Posts: 208
Joined: Thu Aug 04, 2005 9:32 pm
Location: Houston, Tx.

Post by DevilDog »

I also have been programing in OOP for the last handful of years and professionally since 1987 so next year will be 20 yrs.

There is no doubt at least to me that programming in OOP is easier when doing very large multi-person applications. Currently I'm coding in VB.Net/ASP.Net 2.0 for a living.

That said, if there was a way I could make money programming in PB I would rather do so (hopefully that won't be to far in the future).

So would I like to see PB get OOP?

Sure, if you can still create:

1. extremely tiny exe's
2. extremely fast exe's
3. machine code exe's with no run-time
4. cross-platform applications (for the most part)

It would also be nice if the price and licensing for PB remained similar to what it is now. There is no better bargain in my opinion.
When all is said and done, more is said than done.
techjunkie
Addict
Addict
Posts: 1126
Joined: Wed Oct 15, 2003 12:40 am
Location: Sweden
Contact:

Post by techjunkie »

Nice!! :D

Ehhh... Bonk? I used to own the domain bonk.nu, but now I own the domains bonka.se and bonka.net. Bonk.net was allready taken... :cry:
Image
(\__/)
(='.'=) This is Bunny. Copy and paste Bunny into your
(")_(") signature to help him gain world domination.
User avatar
Psychophanta
Addict
Addict
Posts: 4997
Joined: Wed Jun 11, 2003 9:33 pm
Location: Lípetsk, Russian Federation
Contact:

Post by Psychophanta »

Hi mp303, i enjoy the handle way of the ship. :wink:
http://www.zeitgeistmovie.com

While world=business:world+mafia:Wend
Will never leave this forum until the absolute bugfree PB :mrgreen:
dige
Addict
Addict
Posts: 1254
Joined: Wed Apr 30, 2003 8:15 am
Location: Germany
Contact:

Post by dige »

The FX are really impressiv!
chen
Enthusiast
Enthusiast
Posts: 338
Joined: Fri Dec 23, 2005 2:20 pm
Location: Quebec, Canada
Contact:

Post by chen »

DevilDog wrote:
So would I like to see PB get OOP?

Sure, if you can still create:

1. extremely tiny exe's
2. extremely fast exe's
3. machine code exe's with no run-time
4. cross-platform applications (for the most part)
I love OOP a lot, but if the change means to lose some of these features I
prefer PB stay as procedural language.
It would also be nice if the price and licensing for PB remained similar to what it is now. There is no better bargain in my opinion.
I do not agree in this point. Fred needs to change the marketing strategy
in his benefit and our benefit too.

Nobody can think to make some kind of business with this strategy
and at the end when Fred and team come into economic problems, they
naturally will look for other income sources risking the
development of PB.

If you dont believe me, wait some months.
Locked