Star Gauge 0.3.1a (Updated May 15th)

UPDATED:

I found a rather large bug that may explain the performance problems some were having, mostly the ATi people. Actually, it was effecting everyone greatly, but those with really good video cards would have still found performance acceptable…now they’ll find it great :slight_smile:

The bug was causing static objects to be rendered with immediate mode calls :expressionless: big performance hit, both for the card and the CPU.

With the fix in, I have doubled the number of visible asteroids and still have almost twice the FPS of before (worst case was 50 FPS on my box, now in the same spot with twice the roids, I get 90 FPS) :slight_smile:

Let me know if it helps those that were having FPS problems.


Here’s the latest version of the Star Gauge engine (I still can’t call it a game just yet, but it’s getting close). Version 0.3 alpha

This version has 3D sound and music using FMOD! :slight_smile:

Though, there is a downside to that, sound is only available on Windows machines at the moment, Linux or Apple users should uncheck the enable sound checkbox on startup…I’ll get it working for the others, just not yet, sorry.

There are substatial improvements to the game play and graphics. Your ship is easier to control, the enemies aren’t super hard and everything is nicely textured (especially your ship, press 1-8 to see yourself).

You are actually almost on a mission in this version (still more to do, but getting there).

You are on the edge of a dense asteroid field. You have to take out 2 groups of fighters, the second group has a scout out ahead. You have upgraded firepower (superior to the enemy, but not god-like). You also have 4 missles at your command.

Tips:

  • Never play chicken with the enemy for to long
  • Use the left and right arrows (or A and D) to bank your ship till you are aligned with your target, you will cover more of his surface area with your shots (better chance of a hit)
  • Your ship can travel at 200m/s but 75m/s IS optimal for fighting the enemy. To fast and they are to hard to hit, to slow an you are to easy to hit (your ships default speed is 75m/s)
  • If you collide with an asteroid or a ship, pick up speed quickly or you will be an easy target (unless you are away from the enemy)
  • When the enemy is far off, speed up to reach them, then slow down to around 75 again.
  • Collision = dmg, watch where your going

Good luck on your mission.

Read the instructions in the setup window for controls.

Star Gauge Webstart

More info:

New in this version (0.3.0a, May 10, 2005)

  • Improved graphics
  • Sound FX and Music with FMOD
  • Texturing of models
  • Level scripting (still more to do)
  • More performance improvements (of course!)
  • Improved particle system
  • Improved AI
  • In cockpit console updates (collision warning, missles)
  • Improved collision detection (mesh planes)
  • Loading screen with progress bar
  • More bug fixes

Has anyone been able to run it yet?

I have tried it on a seperate PC to see if the fmod.dll problem was fixed, and it worked…but I would really appreciate a third party test :slight_smile:

Thanks

Everything’s fine (XP - NV6600), but too hard for me…

You should try to improve the radar to add a sense of 3d : it’s usable only when you are flying on the same plane than your ennemies… (i’m not sure to explain it very well).

Something else : I think you should improve the sense of “up and down”, (may be with more visible static objects) because I get lost as soon as i move the mouse too fast… May be it’s just the learnig curve a little bit too steep for me…

don’t take my remarks too hard : i’m waiting for gameplay improvements : i’d love to chase those flying saucers around the asteroid field… (a la “Flying Guns”) :wink:

Lilian

oh and a last thing : the web start console keeps coming in front of your window… (during loading)

[quote]java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at com.sun.javaws.Launcher.executeApplication(Unknown Source)
at com.sun.javaws.Launcher.executeMainClass(Unknown Source)
at com.sun.javaws.Launcher.continueLaunch(Unknown Source)
at com.sun.javaws.Launcher.handleApplicationDesc(Unknown Source)
at com.sun.javaws.Launcher.handleLaunchFile(Unknown Source)
at com.sun.javaws.Launcher.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.UnsatisfiedLinkError: no fmod in java.library.path
at java.lang.ClassLoader.loadLibrary(Unknown Source)
at java.lang.Runtime.loadLibrary0(Unknown Source)
at java.lang.System.loadLibrary(Unknown Source)
at com.vorax.audio.SoundEngine.init(SoundEngine.java:57)
at com.vorax.audio.SoundEngine.(SoundEngine.java:42)
at com.vorax.audio.SoundEngine.(SoundEngine.java:26)
at com.vorax.VoraxEngine.initialize(VoraxEngine.java:384)
at com.vorax.VoraxEngine.start(VoraxEngine.java:396)
at Exigent.main(Exigent.java:75)
… 11 more
[/quote]

can start with sound disabled, but as soon as the loader screen is done, it crashes out with no warning or error messages

Nothing interresting in the log:

[quote]true
Loading lens flares
Caching image: fx/Halo3.png
Caching image: fx/HardGlow2.png
Caching image: fx/BigGlow3.png
Caching image: fx/Streaks4.png
VSync is off
no errors
GL Init completed
Starting Vorax Engine
Caching Images
Caching image: skies/stars1_front.png
Caching image: skies/stars1_back.png
Caching image: skies/stars1_bottom.png
Caching image: skies/stars1_left.png
Caching image: skies/stars1_right.png
Caching image: skies/stars1_top.png
Caching image: models/dark_metal.jpg
Caching image: models/grey_leather.jpg
Caching image: models/screen1a.jpg
Caching image: models/screen_holder.jpg
Caching image: models/radar.png
Caching image: fx/hud1.png
Caching image: fx/star.png
Caching image: fx/targeting_hud1.png
Caching image: images/status.png
Caching image: images/crosshair1.jpg
Loading environment textures
Loading HUD
Loading Target HUD
Caching image: jar:file:C:/Documents%20and%20Settings/Brian%20Matzon/Application%20Data/Sun/Java/Deployment/cache/javaws/http/Dvorax.thebodclan.com/P80/DMwebstart/RMExigent.jar!/models/shp_redmetal1.jpg
Caching image: jar:file:C:/Documents%20and%20Settings/Brian%20Matzon/Application%20Data/Sun/Java/Deployment/cache/javaws/http/Dvorax.thebodclan.com/P80/DMwebstart/RMExigent.jar!/models/shp_engine1.jpg
Caching image: jar:file:C:/Documents%20and%20Settings/Brian%20Matzon/Application%20Data/Sun/Java/Deployment/cache/javaws/http/Dvorax.thebodclan.com/P80/DMwebstart/RMExigent.jar!/models/shp_hull1.jpg
Caching image: jar:file:C:/Documents%20and%20Settings/Brian%20Matzon/Application%20Data/Sun/Java/Deployment/cache/javaws/http/Dvorax.thebodclan.com/P80/DMwebstart/RMExigent.jar!/models/shp_wing1.jpg
Caching image: jar:file:C:/Documents%20and%20Settings/Brian%20Matzon/Application%20Data/Sun/Java/Deployment/cache/javaws/http/Dvorax.thebodclan.com/P80/DMwebstart/RMExigent.jar!/models/shp_metal1.jpg
Caching image: jar:file:C:/Documents%20and%20Settings/Brian%20Matzon/Application%20Data/Sun/Java/Deployment/cache/javaws/http/Dvorax.thebodclan.com/P80/DMwebstart/RMExigent.jar!/models/shp_redmetal2.jpg
Caching image: jar:file:C:/Documents%20and%20Settings/Brian%20Matzon/Application%20Data/Sun/Java/Deployment/cache/javaws/http/Dvorax.thebodclan.com/P80/DMwebstart/RMExigent.jar!/models/dark_metal.jpg
Caching image: jar:file:C:/Documents%20and%20Settings/Brian%20Matzon/Application%20Data/Sun/Java/Deployment/cache/javaws/http/Dvorax.thebodclan.com/P80/DMwebstart/RMExigent.jar!/models/grey_leather.jpg
Caching image: jar:file:C:/Documents%20and%20Settings/Brian%20Matzon/Application%20Data/Sun/Java/Deployment/cache/javaws/http/Dvorax.thebodclan.com/P80/DMwebstart/RMExigent.jar!/models/radar.png
Caching image: jar:file:C:/Documents%20and%20Settings/Brian%20Matzon/Application%20Data/Sun/Java/Deployment/cache/javaws/http/Dvorax.thebodclan.com/P80/DMwebstart/RMExigent.jar!/models/screen1a.jpg
Caching image: jar:file:C:/Documents%20and%20Settings/Brian%20Matzon/Application%20Data/Sun/Java/Deployment/cache/javaws/http/Dvorax.thebodclan.com/P80/DMwebstart/RMExigent.jar!/models/screen_holder.jpg
Setup universe
Loading level: models/level1.obj
Caching image: jar:file:C:/Documents%20and%20Settings/Brian%20Matzon/Application%20Data/Sun/Java/Deployment/cache/javaws/http/Dvorax.thebodclan.com/P80/DMwebstart/RMExigent.jar!/models/astrorock2.jpg
Caching image: jar:file:C:/Documents%20and%20Settings/Brian%20Matzon/Application%20Data/Sun/Java/Deployment/cache/javaws/http/Dvorax.thebodclan.com/P80/DMwebstart/RMExigent.jar!/models/astrorock5.jpg
Caching image: jar:file:C:/Documents%20and%20Settings/Brian%20Matzon/Application%20Data/Sun/Java/Deployment/cache/javaws/http/Dvorax.thebodclan.com/P80/DMwebstart/RMExigent.jar!/models/Mars.jpg
Caching image: jar:file:C:/Documents%20and%20Settings/Brian%20Matzon/Application%20Data/Sun/Java/Deployment/cache/javaws/http/Dvorax.thebodclan.com/P80/DMwebstart/RMExigent.jar!/models/shp_square1.jpg
Caching image: jar:file:C:/Documents%20and%20Settings/Brian%20Matzon/Application%20Data/Sun/Java/Deployment/cache/javaws/http/Dvorax.thebodclan.com/P80/DMwebstart/RMExigent.jar!/models/shp_strip2.jpg
Caching image: jar:file:C:/Documents%20and%20Settings/Brian%20Matzon/Application%20Data/Sun/Java/Deployment/cache/javaws/http/Dvorax.thebodclan.com/P80/DMwebstart/RMExigent.jar!/models/shp_grid2.jpg
Caching image: jar:file:C:/Documents%20and%20Settings/Brian%20Matzon/Application%20Data/Sun/Java/Deployment/cache/javaws/http/Dvorax.thebodclan.com/P80/DMwebstart/RMExigent.jar!/models/shp_tile_basic.jpg
Caching image: jar:file:C:/Documents%20and%20Settings/Brian%20Matzon/Application%20Data/Sun/Java/Deployment/cache/javaws/http/Dvorax.thebodclan.com/P80/DMwebstart/RMExigent.jar!/models/shp_grid1.jpg
Caching image: jar:file:C:/Documents%20and%20Settings/Brian%20Matzon/Application%20Data/Sun/Java/Deployment/cache/javaws/http/Dvorax.thebodclan.com/P80/DMwebstart/RMExigent.jar!/models/shp_strip1.jpg
x=2.0075107, y=2.6858544, z=-2.0336437
Level loaded
SHIP POS: x=2745.1758, y=63.042835, z=3051.0347
SHIP POS: x=4326.629, y=63.042835, z=4576.406
SHIP POS: x=900.40735, y=250.94174, z=1886.0875
SHIP POS: x=900.40735, y=250.94174, z=1886.0875
SHIP POS: x=1157.2872, y=63.042835, z=1707.0171
SHIP POS: x=1157.2872, y=63.042835, z=1707.0171
SHIP POS: x=4376.7744, y=63.042835, z=4406.6387
SHIP POS: x=4376.7744, y=63.042835, z=4406.6387
SHIP POS: x=845.9469, y=-121.80031, z=1538.5063
SHIP POS: x=845.9469, y=-121.80031, z=1538.5063
no NativeFmod in java.library.path
NativeFmod library not found : NativeFmod.dll, libNativeFmod.so, libNativeFmod.jnilib or NativeFmodCe.dll
NativeFmod may not be well installed.
Exit !!!
[/quote]

Matzon,

I think you need to clear your cache. That looks like the same trace I was getting yesterday from the console…before the fix.

In webstart, remove the nativefmod library as well as Star Gauge, then it should work.

  • Vorax

yup - that did the trick - works now. Looking great!

Looks nice! Runs at 260+ FPS on my Quadro FX Go700 notebook. The music is really good, graphics are looking nice, but the gameplay is impossible. I don’t think I got in one shot on the enemy ships. Depending on what you’re after, you might want to put in some constraints in the AI to keep the enemy ships visible for a longer period of time or put in smarter weapons so you don’t have to have precise aim. Nice work so far though!

on linux here, full screen does’nt launch gives error, however the loading screen does appear with full screen turned off, but after loading bar completes the game exits without any error! ???

[quote]yup - that did the trick - works now. Looking great!
[/quote]
Glad to hear it, and thanks! :slight_smile:

Although it would not make sense at all, it would
be cool to let vehicles leave a (particle) trace.

Doing so will break the feeling of ‘the void of space’
and it helps to locate and track your enemies.

Such a trail should be quite long: particle-lifetime of ~5s

What do you think?

Note: a bit puzzled by ‘low’ framerate: 20-40fps @ ATi 9700pro :-/

[quote]Looks nice! Runs at 260+ FPS on my Quadro FX Go700 notebook. The music is really good, graphics are looking nice, but the gameplay is impossible. I don’t think I got in one shot on the enemy ships. Depending on what you’re after, you might want to put in some constraints in the AI to keep the enemy ships visible for a longer period of time or put in smarter weapons so you don’t have to have precise aim. Nice work so far though!
[/quote]
It sounds like you were using the up arrow and flying at 200m/s. Your speed is visible on the right side console.

I strongly recommend you fly at 75kps otherwise they are impossible to hit. I think I need to remove the speed control and add a booster that brings you up to 200 and drops back down after words.

If you wouldn’t mind, could you try it again but don’t touch your speed or if you do…drop it back down to around 60-77 range and see if you find it eaiser.

If you are flying at 75 or so and the enemy is still impossible to keep on the screen, then I think the AI must have a timing issue.

Glad you like it and the music. I did the muisc myself and most of the sound fx. My first attempts at music and I think it came out pretty good. My wife thought I was crazy when I said I would teach myself that as well…and even more worried when I started spending money for it :slight_smile:

PS: You can launch missles (fire and forget) with right mouse button, but you only have 4.

[quote]on linux here, full screen does’nt launch gives error, however the loading screen does appear with full screen turned off, but after loading bar completes the game exits without any error! ???
[/quote]
Sorry Kapta, I’ll get it working for Linux too. It’s the fmod that’s hurting you. I need to create a jnlp and loader for the natives.

[quote]Although it would not make sense at all, it would
be cool to let vehicles leave a (particle) trace.

Doing so will break the feeling of ‘the void of space’
and it helps to locate and track your enemies.

Such a trail should be quite long: particle-lifetime of ~5s

What do you think?

Note: a bit puzzled by ‘low’ framerate: 20-40fps @ ATi 9700pro :-/
[/quote]
Not a bad idea. I may implement that.

As to your FPS, what’s your CPU, RAM and JVM?

Specs:
P4 2.4GHz @ 1.8GHz (FSB: 533->400)
512MB ram (PC2700 / 333MHz @ 250MHz)
ATi Radeon 9700 PRO (128MB)
VM 1.5.0_01

When I was the only one left in the universe, I had 127FPS

Makes me wonder:
Are you doing frustrum-culling for vehicles?

Interesting. I’ll see if I can do some testing with ATI cards.

It is doing frustum for ships.

Did you try running with sound off? Perhaps the 3D sound is eating to much CPU? What sound card do you have?

Java 5, 1200mhz, Radeon 8500 with latest drivers and getting around 15-25 fps. It doesn’t seem to like ATI cards but it wouldn’t be the first game not liking 'em.
Very nice graphics, especially the models are beautiful. The music is definitely not bad, but it’s a bit too much c64/amiga demo style. It doesn’t really fit to the game’s atmosphere.

misc small things:

  • is the planet supposed to flat(ish)? it would look better as perfectly round
  • “aquiring” should be “acquiring”
  • ship explosions disappear too quickly
  • rolling feels a bit weird
  • the red targeting arrow could be a little clearer
  • bullets movement goes very weird when velocity is 200 m/s
  • the stars are bit too glued to the background, i’d suggest to add some blinking stars here and there

Overall - very very nice. I’m really looking forward what you’re gonna come up with this.

[quote]Interesting. I’ll see if I can do some testing with ATI cards.
[/quote]
I’ve seen my engine being outperformed (factor 2!) by an
GF4MX420 with 1200MHz AMD cpu and 512MB-PC100
compare that to
9700pro, 2.4GHz Intel, 512MB PC2700

::slight_smile:

Makes me wonder… 3Dmark (uses DirectX) scores are fine. My scenes are mostly based on DisplayLists so the bulk of calculations are done by the gpu… for now I blame ATi and it’s OpenGL impl… Fillrate is definitly the bottleneck on my system, appearantly not on a GF4MX420.

:-/

But what do I know…

Anyway, I’ll stop guessing, and assuming.

You could add a debug-text showing stuff like:

“Rendering gui/own-ship took: xx.yyy ms”
“Rendering astroids took: xx.yyy ms”
“Rendering ships took: xx.yyy ms”
“Rendering background took: xx.yyy ms”
“Everything else took: xx.yyy ms”

Ofcourse use hires-timer. With that info we can narrow it down a bit.

Beware of the often non-blocking design of the OpenGL API: you might have done the calls to render everything in 2ms, and then the glFinish() (or auto-swap) suddenly takes 100ms. So for reliable results you have to call glFlush/glFinish (?) inside your benchmark before you take timestamps.

[quote]Java 5, 1200mhz, Radeon 8500 with latest drivers and getting around 15-25 fps. It doesn’t seem to like ATI cards but it wouldn’t be the first game not liking 'em.
[/quote]
Ya, the game definetly seems to be having problems with ATI cards :frowning:

Thanks. With the music I am going from something fast paced to match the action, it works alot better if you are getting 90+ FPS :wink: I will be composing at least 5-7 songs to go with the game. Some slower and more ominous. I think getting a snap shot of a level that probably fits somewhere in the middle of the game, makes it seem out of place, but it is along the lines I am going for though I’ll probably tweak it a bit as the game comes together to get a solid theme.

  • My perspective settings are probably off a bit, can be fixed.
  • My spelling has always sucked…slightly dislexic :wink:
  • Length is a parameter to my explosion class, so I can extend it easily
  • What’s weird about the roll? Controls or the graphics? I like it myself…but I don’t count :smiley:
  • I can tweak out the target arrow
  • That’s a bug because of your FPS, I noticed the lagmultiplier is not being applied to projectiles, but never noticed on my machine – will be fixed
  • I may do some things to animate the background somewhat, but there are no twinkling stars in space :wink:

Thanks! I hav been working on it for over 6 months now. It’s a helluva lot of work to build from scratch in ones spare time and still keep my employer and wife happy :slight_smile: