FAQ Search
Memberlist Usergroups
Profile
  Forum Statistics Register
 Log in to check your private messages
Log in to check your private messages
Moonpod Homepage Starscape Information Mr. Robot Information Free Game Downloads Starscape Highscore Table
Oct/Nov/Dec-05: Development HEL
Goto page Previous  1, 2, 3, 4, 5, 6  Next
Post new topic   Reply to topic    Discussion Pod Forum Index -> Developer Diary View previous topic :: View next topic  
 Author
Message
Moonpod Developer Diary RSS feed -RSS Feed
Fost
Pod Team
Pod Team


Joined: 14 Oct 2002
Posts: 3734



PostPosted: Tue Jan 03, 2006 9:18 am    Post subject: Reply with quote

I'm back Smile

Anticheese wrote:
(Hamish, You accedentally typed a ] instead of a p in your first paragraph)

I just fixed that. I think the HTML hack should work still, but you never know! A wise choice to wait until I got back really Smile

Code_Crank_Call wrote:
is the Eidolon shuttle the same desiighn as the second level ship in starscape

Yes, intentionally, I see it as an earlier design of the shuttle, that JJ would have been aware of. It had to be built and textured from scratch, and fitting it into the collision space available was a bit of a nightmare. I'm glad the end result is still recognisable as being a Starscape design Smile


Last edited by Fost on Wed Jan 04, 2006 9:43 am; edited 1 time in total
Back to top
View user's profile Visit poster's website
Anticheese



Joined: 17 Nov 2005
Posts: 159
Location: New Zealand



PostPosted: Tue Jan 03, 2006 9:09 pm    Post subject: Reply with quote

Good to see someone takes notice Wink
Back to top
View user's profile MSN Messenger
Doom III



Joined: 20 Apr 2004
Posts: 117



PostPosted: Wed Jan 04, 2006 5:54 pm    Post subject: Reply with quote

Hamish wrote:
Well I haven't made your teammates take any damage at all right now. I have been thinking about friendly fire, it would add some gameplay variety trying to avoid hitting friendlies and who doesn't love killing their teammates sometimes. I think it could work if they had alot of health and it was very forgiving, but I'll see when I stick it in the game.


nooo! team mates are always bad when you can kill them

they just get in the way Sad


war angel video looks amazing Smile some big companies could learn a few things from how that vid is put together

i was expexting a dull indie video ~cos all indie trailer vids are boring even for good indie games~

am blown away Smile
Back to top
View user's profile
imadoki



Joined: 04 Jan 2006
Posts: 24
Location: Canada



PostPosted: Sun Jan 08, 2006 2:06 am    Post subject: What programming language? Reply with quote

Hi Hamish,

First of all, War angels looks like an amazing game. Also, to everyone at MoonPod, keep up the good work.

Ok, so I have a couple of questions.
1. Hamish, what programming language are you using? Is it Blitz Basic or something similar?
2. To the both moonpod's artist and Hamish, how do you guys create those amazing explosion fx? I really need to learn how to create explosions.

Thanks.

Cheers.
Back to top
View user's profile
Konedima
Grammar Police
Grammar Police


Joined: 25 Oct 2003
Posts: 1068
Location: Sydney, Land of Censorship



PostPosted: Sun Jan 08, 2006 10:34 am    Post subject: Re: What programming language? Reply with quote

imadoki wrote:

1. Hamish, what programming language are you using? Is it Blitz Basic or something similar?

One would presume C++, a professional language, not some kiddie souped up BASIC that even I can program.
Back to top
View user's profile Visit poster's website
Hamish
Pod Developer
Pod Developer


Joined: 15 Mar 2005
Posts: 570
Location: Auckland, NZ



PostPosted: Sun Jan 08, 2006 11:02 am    Post subject: Reply with quote

The game is actually programmed in kiddie souped-up BASIC that even Konedima can program in, Blitz Basic 3D precisely.

My explosions are a whole lot of static sprites positioned, scaled and rotated at runtime rather than a traditional pre-rendered animated effect. I have the main explosion flash, a whole lot of sparks, some debris, some smoke and the crater it leaves on the ground. It's hard to give a simple answer on how to make them because they're a blend of programming or artwork. I've written some more on it in this thread (with pictures)

http://moonpod.com/board/viewtopic.php?t=1706
Back to top
View user's profile MSN Messenger
Fost
Pod Team
Pod Team


Joined: 14 Oct 2002
Posts: 3734



PostPosted: Sun Jan 08, 2006 12:41 pm    Post subject: Re: What programming language? Reply with quote

imadoki wrote:
2. To the both moonpod's artist and Hamish, how do you guys create those amazing explosion fx? I really need to learn how to create explosions.


Hamish sums up the techniques pretty well in that thread, but I thought it might be handy to show it in complete detail:

Here's the complete particle script and textures used for the smallest explosion in Starscape (the one when you blow up a small fighter)

smallExplosion:
Code:
EFFECT
{
   name         smallExplosion
   maxEmitters      5
   maxParticles   50
   particle
   {
      appearance
      {
         type      ANIM_SPRITE      //Animated Sprite Type
         sprite
         {
            spriteFile         data\particles\sprites\shroom\shroom.spr
            width            64
            height            64
            numFrames         16
         }
         startFrame            0
         endFrame            15
         forceRotate            true
         loop               no
         relativeDrawPlane      1
         randomStart            no
         randomPlayDirection      no            
         randomPlayRate         20,20      //frames per second
         
         colorKeys
         {
            numKeys         3
            key0         255,255,255,0      //red, green, blue, time=0->1
            key1         255,255,255,0.8
            key2         0,0,0,1   
         }
         scaleKeys
         {
            numKeys         3
            key0         1,1,0      //red, green, blue, time=0->1   
            key1         0.4,0.4,0.2
            key2         1.4,0.8,1
         }
      }
   }
   
   controller
   {
      type   OMNI_DIRECTION
      inertia   0.92
   }
 
   emitter
   {
      type            SIMPLE_PARTICLE
      randomStartOffsetX   -4,4      //game units
      randomStartOffsetY   -4,4      //game units
      centreFirstParticle   yes
      randomStartVel      50,60         //gu per sec
      randomStartOri      0,359          //degrees where zero is screen up
      randomNumCreated   6,6
      randomLife         1,1      //seconds
      randomEmissionRate   -1,-1   //seconds
      ownerRelative      false
      sfx
      {
         sfxName               data\sfx\explosions\medExplosion.wav
         sfxVolume            0.85
         allowMultipleSfx      yes
      }
      event 
      {
         type               EMITTER_CREATE_PARTICLE
         chanceOfTriggering      1
         delay               0
         triggerEffect0         smallDebris 
         triggerOneOnly         yes
      }
   }
}


The small explosion effect also launches the smallDebris effect:

Code:
EFFECT
{
   name         smallDebris
   maxEmitters      5
   maxParticles   25
   particle
   {
      appearance
      {
         type      ANIM_SPRITE      //Animated Sprite Type
         sprite
         {
            spriteFile         data\particles\sprites\Debris\Debris.spr
            width            8
            height            8
            numFrames         16
         }
         startFrame            0
         endFrame            15
         loop               yes
         relativeDrawPlane      2
         randomStart            yes
         randomPlayDirection      yes            
         randomPlayRate         16,16      //frames per second
         
         alphaKeys
         {
            numKeys         3
            key0         255,0      //red, green, blue, time=0->1
            key1         255,0.75   
            key2         0,1   
         }
      }
   }
   
   controller
   {
      type   OMNI_DIRECTION
      inertia   1
   }
 
   emitter
   {
      type            SIMPLE_PARTICLE
      randomStartOffsetX   -5,5      //game units
      randomStartOffsetY   -5,5      //game units
      centreFirstParticle   yes
      randomStartVel      100,200      //gu per sec
      randomStartOri      0,360         //degrees where zero is screen up
      randomNumCreated   12,17
      randomLife         1,1.5      //seconds
      randomEmissionRate   0,0   //seconds
      ownerRelative      false
      sfx
      {
         sfxName               data\sfx\collision\smallimpact.wav
         sfxVolume            0.8
         allowMultipleSfx      no
      }
   }
}


The textures:

Debris is a tiny 16 frame spinning triangle I rendered out of blender.


The 'shroom' effect is real explosion footage from one of the pyromania cds (They are a pretty cheap investment, although I think you have to be very careful how you use them - like Hamish, I don't like pre-rendered explosions too much). From the original footage, I cut it down to 16 frames, then center aligned each part (originally, the explosion moves vertically in the frame). this way, I have a static explosion, and I can move it around myself using the particle system.


The interesting things to look at in the effects scripts are the colour key, alpha key and scale keys. These are used to tint, fade and scale the sprites over their lifetime. Also of note, is that sound effects are launched here, and (although not shown here) damage can also be applied. This proved to be extremely handy when coming up with weapons - the effects system in Starscape is also the weapon system (although this idea isn't unique to us.)

konedima wrote:
One would presume C++, a professional language, not some kiddie souped up BASIC that even I can program.


The days when programming language matters will come to an end. Already, we've seen the death of machine code in mainstream game programming. That's really what it comes down to - a performance issue. Blitz and many other languages have been narrowing the gap over the past few years drastically (check out some of the radiosity lit landscape demos on the blitz forums). Current CPU speeds, and the fact that most rendering has been shifted onto the GPU, means that we are rapidly approaching the point where you don't have to ask the question: 'which programming languages runs the fastest' but more: 'which programming language is fastest for development'. Actually finishing a game is the hardest thing you can do, and I applaud anyone who manages it (something like 95% of open source or homebrew game projects/Mods are never finished. The best thing you can ask yourself these days is 'what will be the quickest and easiest way for me to implement this functionality'.

Poo Bear codes using C++, but that's because his years of working in the games industry means it's the language he's most familiar with. On Mr. Robot, he's also embraced the lua scripting language as a means to implement a wider variety of gameplay, in a shorter space of time. Games like disney's Toontime online even go so far as to run the main game loop in lua - effectively the game is written in lua. The engine is C++, but the game code is all lua.

Lately, Poo Bear has even been eyeing up D and considering it's use in future projects.
Back to top
View user's profile Visit poster's website
Slyh



Joined: 25 Nov 2004
Posts: 480
Location: Karlsruhe, Germany



PostPosted: Sun Jan 08, 2006 8:03 pm    Post subject: Re: What programming language? Reply with quote

Fost wrote:

smallExplosion:
Code:
EFFECT
{
         scaleKeys
         {
            numKeys         3
            key0         1,1,0      //red, green, blue, time=0->1   
            key1         0.4,0.4,0.2
            key2         1.4,0.8,1
         }
}



The comment is supposed to be something like "scale-x, scale-y, time=0->1", right?

Nice system you're having there...
Back to top
View user's profile
imadoki



Joined: 04 Jan 2006
Posts: 24
Location: Canada



PostPosted: Sun Jan 08, 2006 8:55 pm    Post subject: Reply with quote

Thanks guys for the quick replies and the clear explanations. I myself use C++ and my old Scenegraph based Direct3D engine. I looked at Blitz and found t exciting and from the look of War angels, I had a hint that it was made with Blitz. BTW, it doesn't matter what language you are using, it could be crayons, or oil paints, the talent lies in the creator, not just the tools. Smile

BTW, making complex things in Blitz isn't "easy". MAking something complex in BASIC is anything but. Smile

Again thanks guys. And I wish you guys the best!!!
Back to top
View user's profile
Konedima
Grammar Police
Grammar Police


Joined: 25 Oct 2003
Posts: 1068
Location: Sydney, Land of Censorship



PostPosted: Sun Jan 08, 2006 10:16 pm    Post subject: Reply with quote

Hamish wrote:
The game is actually programmed in kiddie souped-up BASIC that even Konedima can program in, Blitz Basic 3D precisely.

My mistake.
Back to top
View user's profile Visit poster's website
imadoki



Joined: 04 Jan 2006
Posts: 24
Location: Canada



PostPosted: Sun Jan 08, 2006 11:16 pm    Post subject: Reply with quote

Hey guys at MoonPod, I hope this isn't too sensitive a question. I hope you can give me some rough idea via email perhaps. MY email addy is imadokiGames @ gmail . com

I made a game a few years back(2003) and made a measly $1260 selling it online. I was busy doing other stuff, but am back at it. It is obvious that you guys are supporting yourselves from the sales of StarScape... sooo, my questions is, if it is a relatively good game (not as excellent as yours, but ok none the less), do I have a shot at supporting myself... I mean, roughly hw much are you guys earning from StarScape per month. I know this is sensetive info, but any hint would be nice as I am planning on going into game programming fulltime... again, but I hope to have better results than a measly $1260.

Any reply and advice would be highly valued. Thanks.
Back to top
View user's profile
jollyreaper



Joined: 20 Jun 2003
Posts: 181



PostPosted: Sun Jan 08, 2006 11:29 pm    Post subject: Reply with quote

Hamish wrote:
I can, but making 3D objects blow up and fall over and look good while doing so brings up a whole lot more complications. I don't think it's worth doing at this point in the games development.

Replay is an issue I need to think about at the moment. A custom-tailored single player campaign is very impressive and probably makes alot of sales, but the developer work to playtime ratio is very very low. An extreme example, Half Life 2 took 5 years to make and was 10 hours long. That's nearly two work weeks per MINUTE of gameplay.


It depends on the kind of replayability you're shooting for. Online games have the promise of players self-generating content but it never works out the right way. I think Navy Field is a kick-butt game but I don't have time to screw around with leveling. If you're talking about something like Soldat, then you're talking! Soldat kicks butt and you can play it for five minutes or five hours. If you can keep your multiplay like that, you're gold.

Quote:
What I'm thinking of doing is finishing the campaign mode first, then moving onto "high score" mode. When you pick high score mode in the menu, you can select from a bunch of singular maps to play, and submit your high score and other statstics for the map when you beat it/die. This should satisfy the hardcore players who've finished the campaign and want more to do or a harder challenge. I can continue to develop high score maps when the game has been released and put them in further patches. The thing I like most about this idea is I have alot of freedom when I make these maps - I could draw some zombies and make a freeroaming Dawn of the Dead style map, or have a mech arena were you can customise your mech loadout. Things that would be very fun to play and easy to make, but don't have a place in the normal story campaign.


I'm still catching up on the dev diaries so I only have an inkling of what your game is about. It's multiplayer, right? So long as the play mechanics are fun, you should be able to multiplay on the various maps to your heart's content. If you have special game modes, even better. In a top-down environment, things like "capture the flag" should be easier to play.
Back to top
View user's profile
Fost
Pod Team
Pod Team


Joined: 14 Oct 2002
Posts: 3734



PostPosted: Sun Jan 08, 2006 11:39 pm    Post subject: Re: What programming language? Reply with quote

Slyh wrote:
The comment is supposed to be something like "scale-x, scale-y, time=0->1", right?


The comments in a lot of the scripts are a bit like Chinese whispers! Poo Bear put them in the first few scripts, and then I always start by copying an existing script and the comments along with it. So, yeah - that comment is complete rubbish! Sorry, should have checked them a little better. I'm not a programmer, but I'm an expert code copy and paster Wink

imadoki wrote:
I made a game a few years back(2003) and made a measly $1260 selling it online. I was busy doing other stuff, but am back at it. It is obvious that you guys are supporting yourselves from the sales of StarScape... sooo, my questions is, if it is a relatively good game (not as excellent as yours, but ok none the less), do I have a shot at supporting myself...


Sorry, we don't like to talk about sales figures. Personal reasons aside, there's a lot of business reasons to do with publishers too. That said, Starscape was released early in 2003, and we are still going, but at times it has been very, very hard. The thing you have to realise (as we had to). is that selling your game becomes a full time job. You could produce the best game ever, but if nobody knows about it, you won't sell many copies. I think my rough formula has alway been: sales = quality*exposure. By quality, I mean how good the game is (the games buying public are particulary discerning customers, and won't buy a turkey), and exposure is marketing, advertising, getting the word out there. The second you have a game out, marketing eats up lots and lots of time, and makes it hard to produce another game. Still people manage to do it, and another option is to use a portal site like reflexive to dot he hard work for you. Of course, then you are reliant on others, but if you are a lone developer, then I would guess it becomes very hard.

Anyway, the fact that we are still here does prove that you can support 3 people (2 sadly since a few months back) on a game like Starscape, but sometimes you might be living on beans on toast Smile

I honestly would not recommend anybody do what we are doing for the money, you have to do it for the love, because you can make a lot more money for a lot less effort doing pretty much anything else. There are many examples of making it big though, if you just want proof that it's possible, then look at Steve Pavlina. Just don't expect it to be easy, it's gut wrenchingly hard, and you probably need to be looking at 4-5 years before you are comfortable.


Doom and Gloom, but hey - I love my job, and wouldn't want to be anywhere else than I am now.

Back to top
View user's profile Visit poster's website
Fost
Pod Team
Pod Team


Joined: 14 Oct 2002
Posts: 3734



PostPosted: Sun Jan 08, 2006 11:44 pm    Post subject: Reply with quote

jollyreaper wrote:
It's multiplayer, right?

No, War Angels is concentrating on the single player experience, although there's a chance Hamish may add same screen co-op in an update. It's been talked about, but will depend how the rest of the game pans out.
Back to top
View user's profile Visit poster's website
Doom III



Joined: 20 Apr 2004
Posts: 117



PostPosted: Sun Jan 08, 2006 11:48 pm    Post subject: Reply with quote

Fost wrote:
jollyreaper wrote:
It's multiplayer, right?

No, War Angels is concentrating on the single player experience



guess its the same old> gotta concentrate on making one thing good


mp could be cool mebbe but how could it work?


i think with top down you gotta put some kinda visibility thing in

like much fun of fpsses comes from sneaking on people but how dya do that in top down?

triangle filed of view- would that work?
Back to top
View user's profile
Display posts from previous:   
Post new topic   Reply to topic    Discussion Pod Forum Index -> Developer Diary All times are GMT
Goto page Previous  1, 2, 3, 4, 5, 6  Next
Page 3 of 6

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group