Final Frontier alpha demo

Community Forums/Showcase/Final Frontier alpha demo

Nebula Productions(Posted 2005) [#1]
Final Frontier is a Space-Shooter that I and a friend are developing during the last few months. It brings you into space and lets you fight huge battles in teams or run up to break the higscore. We are working on it only from time to time so that it will take quite a long time until we will be finsihed, if we ever will...
Eerything is not really finished yet but I think you will still have some fun!











Download:
http://files.filefront.com/Final_Frontier/;3949905;;/fileinfo.html

C&c welcome


puki(Posted 2005) [#2]
Post edited

Aha, all sorted.


Nebula Productions(Posted 2005) [#3]
When I remove them, I only see that white square with the red cross in it...

Edit: fine you made them work as well^^
Thanks for your help


puki(Posted 2005) [#4]
Edit:

All sorted - Largeness


Picklesworth(Posted 2005) [#5]
Nice GFX in there.
Very amusing to play with 400 other AI players :) Seems like a very big movie space battle. (Except that I die)


Dreamora(Posted 2005) [#6]
Very nice looking :-)

Mr. Picklesworth: Thats good this way ... films in which the "good side" wins are enough out there ;)


Braincell(Posted 2005) [#7]
The download is so slow , I doubt anyone other than blitz showcase collectors such as myself will have the patience to leave it downloading for 2 hours. Screenies look nice, and if I like it , I might host it for you on my site which has no bandwidth limit.


Picklesworth(Posted 2005) [#8]
It's not the download that I found slow. It's getting to the download.


Erroneouss(Posted 2005) [#9]
Look nice! Trying out now! I love these kinds of games!


Braincell(Posted 2005) [#10]
This is definatelly the best space shooter i've seen so far made in blitz. And even in its alpha stage it has valuable gameplay. Its fairly tricky swicthing between the engine modes. The mouse movement is very strange or overly smoothened and that is the only downside to it, but the graphical part of this demo is really really polished! Only that in 16bit mode (which i entered by accident) you can see the sprites which should resemble the hue around the planets as clipping through the planet, probably due to the z buffer difference.

I might upload it to my site later for others to download.


Defoc8(Posted 2005) [#11]
very impressive :] - makes me want to go back to coding
my own space game.. hehe, which id been developing for
a long period of time & which has zero gameplay :]...
well done + goodluck...


Nebula Productions(Posted 2005) [#12]
Thanks for your answers!
Yeah, Lenn you can host it if you want.

I have some problems you might help me with:

When you get hit, you should see a kind of frame poping up and fading out again. When you have few enemys (<30) this works as it should, but the more enemeys there are the less it works. The frame pops up for just 1/10 second and disapears immediately after it. The function doing this is however not linked to the AI or something. Perhaps Blitz simply gets problems handling more than 200 ships...

The planet atmospheres:
Well the code should work in 16Bit as well, so I have to do a workaround, but thats something I will do later, because the glow doesnt work in 16Bit as well.
The code is simply this
SpriteViewMode pl\atmo,2
So no Z-Buffer or anything^^

The Glow:
This was the only piece of code we did not develop ourselves. It was taken from Blitzcoder (by Bouncer). It looks really nice, but as if you perhaps noticed it eats the fps^^. So if you know a faster one that is easy to implement, tell me.

The performance:

As you see the game is not optimised or anything. At the moment we use no single surface system for the sprites and the text. Is there a dll out there, that simply modifies the commandos like createsprite so that I dont have to rewrite/modify hole bunches of code.

I once tried to implement meshtrails (they look so cool in Homeworld), but I dont get all these createsurface etc. commands. I looked for the code here in the libary and implemented it but the result was very poor looking and it cost that much performance, that I threw them out. The rocket example which was on Blitzcoder seems to have a much better performance, but I was not able to implement it (I admit that it is difficult to implement code you dont understand).

Mr. Picklesworth you said the good ones always loose?
When I tested it the good ones won 9 out of 10 battles (in easy mode of course) with me doing nothing or being coded out of the teams! I was curious if I should strenghten the red ones... crazy stuff

Post your higscores!


Braincell(Posted 2005) [#13]
Here is a new download link!

Glow: I dont think i've seen any other code, maybe there was the Dream filter but it also takes some resources but you could try it out. I'm sure you can google it out.

I didnt play with more than 10 enemies so i cant say if i loose the red frame. I'll try it out later and tell you if i dont.

About single surface particle systems: It's fairly simple really. Create a mesh, create a surface, and add quads to it! You add quads by adding 4 vertices and then adding 2 triangles by connecting the vertices clockwise to the viewer. However since your sprites point at the player all the time you'd have to rotate each one constantly and since the 4 verts cannot be attached to a pivot on their own you'd have to use some math to make them face the player. I'm talking about the "space debree" particles, for which you currently have glowing star-like objects which i think should really be some stone-like objects! So in terms of that space debree you might be ok sticking with the sprites you are using now, or create very small very low-poly 3d objects that float around and look like stones. Also I hope you have the code to hide the sprites which are too far out or out of view.

When it comes to meshtrails like in HomeWorld i also think that would be cool. Here's a very long explanation on how you could do it. Once you learn the AddVertex, VertexCoords, VertexColor and AddTriangle commands, it's very easy! I'm using those commands quite a lot nowdays. Anyway, like in a particle system, you should create an array with vertex handles essentially, and perhaps make it two dimensional like this (4, number_of_quads) so each quad has 4 verts and then you iterate through each quad by increasing the second number, or if you want two quads to use same verts you can use (2, inbetween_quads) where you refer to the 'line' made up of 2 verts between quads provided you are connecting one quad onto the next one as the ship moves. It's what i use anyhow, hope you understand. Then as the ship moves, you give each quad a time for its alpha to decrease to 0 so after a ship passes through, you create the quad with the trail and use UpdateTrail() to decrease the alpha of each vertex each loop as time goes by. Once the vert reaches zero, move the quad (by moving the 4 vertices using VertexCoords) right behind the ship, set its alpha (using VertexColor and preferably EntityFX flag of 2+1+32). The vertices on the left side should have U=0.0 and on the right side U=1.0 (which u set using AddVertex). Then the texture will be streched between them and you can use v=0.0 on all vertices because you only want the texture to strech horizontally as a trail and remain the same as the trail fades away along its length. Hope you understand this, if you dont, read up on the commands and learn them well then read again and ask questions! Also, for best results, so that the trails fade on their sides and look nice, load a png with flag 2 (or 2+4), eg: LoadTexture("trails1.png", 2) and have the png masked in your editor (eg photoshop) gradually towards the sides so the masked area fades away. The most important part would be keeping track of which verts have faded fully, and where to reconstruct them (right behind the ship). You can also use Types instead of arrays to store info about verts, if you find it easier. You also need to decide on how many verts/quads you want the trails to be and the rate at which they disappear, but you'll have to figure those visual things out by yourself! :)

On my PC the good guys always win.

Have fun finishing this game!


Nebula Productions(Posted 2005) [#14]
I tried out the dreamfilter once and its not the same effect. When I remember correctly it doubles the objects and changes colors, in fact it is more being drunken and not a glow. The star sprites will probably stay as they are because it is supposed to look a bit like StarTrek and I find that stones dont look that good...
I already had a look at some examles of how this vertex stuff works, but sa said before i didnt get it. Is there no tutorial out there.
I will only be here for 2weeks and will then go on holiday, so dont expect major changes in the near future. The bigger problem is probably that I will have to work for my exams next year (which means from october or so on), but I will try to do as much as I can (lets hope that there isnt such a game like World of Warcraft that keeps me buisy for quite a while^^ as it still does with my friend who has done some of the difficult stuff like the physics and the aming system)


Braincell(Posted 2005) [#15]
Well the stars in startrek look like they are moving around them when they are in warp speed. In your game now, it looks like stars are about the size of 10cm which is ridiculous. If it was warp speed, then it would be ok. Floating space debree that looks like small stones looks nice in many AAA space games. You can make them look good if you know how. 10cm stars just look silly...

You should be able to work out the basics from the blitz 3d documentation and contained examples on how to use the commands i mentioned up there. Then when you do, i'm sure you'll be able to figure out what i just said in my previous post and make the trails. There probably are some tutorials out there but i'm not sure how any could help you. You can also ask questions here if something from the docs isnt clear to you and i'll explain. You have to do the searching on your own as well as learning because that is one big part of making a game - work (which is good fun).


Baystep Productions(Posted 2005) [#16]
Alpha demos? I'm down for it. Sign me up for beta!


Defoc8(Posted 2005) [#17]
that rocket demo that you grabbed from bc..may have
been my old trail code from "sol". i think i passed this
along to specis at one point...anyway, sure they are
homeworld style trails, camera aligned tristrips..
using cylindrical billboarding logic...you wont be able
to render 200 ships with this effect..the amount of data
that would have to be passed to the card would cause massive
stall..

ok..if you want to know how theyre done..heres the basic
idea...
- you create a tristrip for your trail with correct uvs
- set..which should be interpolated 0.0 to 1.0 along the
- the len of the strip...you should also enable vertex
- alpha and apply a similar approach to setting the strips
- vertex alpha values..though this should be the other way
- around...1.0 to 0.0...you should store these values
- somewhere so that you dont have to read them from the
- tristrip later..
- the texture mapped to your trail should be repeated..
- uv tiled...the amount you do this should be based on
- the average trail len..you will need to experiment..
- you should use a multiplier when setting trail alpha
- values..based on the engine power...so max engine power
- would be 1.0 and min 0.0...so if the ship is idle,
- we multiply our prerecorded alpha values by this value
- this gives us the actual vertex alpha required..which in
- this case would be zero for all the verts...hiding the
- trail..
- the more power applied the engines..the brighter the
- trail will render...
- to align the verts can use some standard vector maths..
- you get the vector from the cam to the engine and the
- the vector of the engine trail - which is basicall the
- direction the the trail leaves the engine..
- using these two vector..get the cross product, producing
- a new vector at right angles to original vectors..
- this is the up vector of the trail..so we can set the
- top vertex of the trail head to this position..scaled
- by trail rad...the bottom point for this segment can
- then be found by negating this vector..simple ye ;)
- before you apply this logic to trail head..you should
- first shift all positions of the trail verts on place
- the right..this keeps the trail following the ship..

- ok perhaps that wasnt very clear..but there should be
- enough info there to start on your own trail system +
- optimise this logic...

- have fun ;) + goodluck


Braincell(Posted 2005) [#18]
Wow we sure seem to be trying to make him add trails!