Java-Gaming.org    
Featured games (81)
games approved by the League of Dukes
Games in Showcase (499)
Games in Android Showcase (118)
games submitted by our members
Games in WIP (567)
games currently in development
News: Read the Java Gaming Resources, or peek at the official Java tutorials
 
    Home     Help   Search   Login   Register   
Pages: [1] 2 3 ... 11
  ignore  |  Print  
  Daedalus - no escape  (Read 59766 times)
0 Members and 1 Guest are viewing this topic.
Offline deathpat
« Posted 2012-03-19 21:01:49 »



Hello all,

some months ago, I decided myself to try to program a game I had in mind for quite some time. I'm originally a web developper, and have a pretty good knowledge in java so I naturally choosed this language, ignoring all the "java is slow !!" I was hearing here and there Smiley
And so I naturally discovered this forum, which in turn made me discover LWJGL. Then I had no doubt that I would be able to do what I had in mind with java.

I started this project in october 2011, with zero knowledge in opengl. I had a previous little game experience 10 years ago using C and directX ( the game was a brick breaker .. ) but I was a very beginner in programming at this time (during my studies ...).

Ok, enough bla bla, let's talk about the game ! Smiley
The game I had in mind from the begining was a mix of quake3 and Alien breed ( the first ones on amiga Smiley ). I took the top down view and the 2Dness from alien breed and the FPS/multiplayer aspect from quake3. So my idea was that any player that is used to an FPS will have absolutly no difficulties to handle my gameplay. I also had the idea to implement a fog of war so that you can't see behind a wall and some dynamic lights/shadows Smiley

A beta demo is available from here:

http://www.daedalus-thegame.com/

If you have any issue running the game, please tell me ! Smiley

The game has been greenlit !!!



The latest trailer :
<a href="http://www.youtube.com/v/eB6qkobjRdQ?version=3&amp;hl=en_US&amp;start=" target="_blank">http://www.youtube.com/v/eB6qkobjRdQ?version=3&amp;hl=en_US&amp;start=</a>

In game screenshots:







I'm also developping in parallel a map editor:



The controls :

defaults for FR:
- forward : Z
- backward : S
- strafe left : Q
- strafe right : D

for others :
- forward : W
- backward : S
- strafe left : A
- strafe right : D

for all :
- walk/run : shift
- fire weapon : left mouse click
- melee attack : right mouse click
- next/previous weapon : mouse wheel
- 1 to 6 : direct weapon select
- flashlight toggle : F
- see scores : TAB

You can now change the controls as well as the display settings in the options of the game.

- press F5 to see the FPS counter / server ping time

Ok I think that's all for now, I'm waiting for your comments !!

cheers,
deathpat.

PS : please forgive my english, I'm french Smiley

PPS : the todo list :

- screens:
   - options screen
      - controls
      - display
   - multiplayer screens
      - join game screen ( select server, enter IP address .. )
      - create game screen ( server name, internet game, ports, pure server )
      - lobby ( select maps, frag limit, game type)
- network :
   - handle lag for internet play
- map/entities:
   - animated sprites
   - animatable entities
      - with animated sprites
      - moving sprites
   - non grid aligned elements
   - interactive elements
      - doors (require animatable entities)
      - buttons ...
      - pickable elements ( weapons, ammo, medikit ... )
   - temporary elements ( dead body, blood )
- weapons:
   - shoot animation
   - melee weapons ( knife, hands ... )
   - enhanced weapons
   - manage ammo
- players:
   - animatable
   - different animations when moving
   - on death animation (replaced by blood explosion)
   - different player skins
- game types:
   - deathmatch
   - team deathmatch
   - capture the flag

- map editor:
   - advanced creation mode/brushes
   - modify entities
   - delete entities
- particle system
   - blood
   - smoke
   - explosions

... and certainly more Smiley

work in progress : D A E D A L U S
Offline 65K
« Reply #1 - Posted 2012-03-19 21:39:43 »

Looks pretty nice so far.
Especially the lighting. I'm developing a somewhat similiar 2D top-down shooter as well, but still with pure Java2D.
Also, my multiplayer mode is so far usable only for a LAN environment.
You need some evil creatures.
Keep doing.

Offline Jimmt
« League of Dukes »

JGO Kernel


Medals: 133
Projects: 4
Exp: 3 years



« Reply #2 - Posted 2012-03-19 22:21:52 »

The daedalus window closes as soon as it opens...
Games published by our own members! Check 'em out!
Legends of Yore - The Casual Retro Roguelike
Offline deathpat
« Reply #3 - Posted 2012-03-19 22:27:07 »

65K : thanks, you have to post your game in the showcase Wink And you're right about evil creatures Smiley

Jimmt : can you please look into your home folder in /.shoot/0.1.3/err.log and post the content ? you should find a nice stack trace Smiley

work in progress : D A E D A L U S
Offline kappa
« League of Dukes »

JGO Kernel


Medals: 77
Projects: 15


★★★★★


« Reply #4 - Posted 2012-03-19 22:35:18 »

Screenshots look great.

The daedalus window closes as soon as it opens...

same here, java console shows this

1  
2  
3  
4  
5  
6  
7  
8  
9  
10  
11  
12  
13  
14  
15  
16  
java.lang.RuntimeException: Cannot compile shader /shaders/blurh.frag :
0(49) : error C7516: OpenGL does not allow constant arrays
0(56) : error C7516: OpenGL does not allow constant arrays

        at com.deathpat.shoot.util.ShaderUtils.createShader(ShaderUtils.java:18)

        at com.deathpat.shoot.util.ShaderUtils.createProgram(ShaderUtils.java:34
)
        at com.deathpat.shoot.model.renderer.Shader.create(Shader.java:20)
        at com.deathpat.shoot.engine.LightingEngine.init(LightingEngine.java:129
)
        at com.deathpat.shoot.engine.Engine.init(Engine.java:94)
        at com.deathpat.shoot.Shoot.main(Shoot.java:26)
Exception in thread "main" java.lang.NullPointerException
        at com.deathpat.shoot.engine.Engine.dispose(Engine.java:119)
        at com.deathpat.shoot.Shoot.main(Shoot.java:41)


hope that helps.
Offline deathpat
« Reply #5 - Posted 2012-03-19 22:50:43 »

that helps a lot thanks Smiley
it seems that some graphic cards don't support const arrays in shaders ... so I removed the const ...
I just reuploaded the jar so if you have some time to try again it would be great !

thanks

work in progress : D A E D A L U S
Offline Jimmt
« League of Dukes »

JGO Kernel


Medals: 133
Projects: 4
Exp: 3 years



« Reply #6 - Posted 2012-03-19 23:47:33 »

It still doesn't work.
Offline kappa
« League of Dukes »

JGO Kernel


Medals: 77
Projects: 15


★★★★★


« Reply #7 - Posted 2012-03-19 23:52:04 »

Ah nice, works now.

Very nice start, its runs really smooth here and looks beautiful. Looking forward to seeing where this goes.

@Jimmt - please do try to provide a reason or tip why it doesn't work (like the output of the console or logs), not very helpful to the developer otherwise.
Offline deathpat
« Reply #8 - Posted 2012-03-20 00:16:17 »

@kappa : glad it worked for you, thanks for your comment Wink

@Jimmt : as kappa said, if you could provide the error log it would help a lot !

work in progress : D A E D A L U S
Offline DruLeeParsec

Junior Member


Medals: 2
Projects: 1



« Reply #9 - Posted 2012-03-20 00:18:00 »

That looks amazing for only 4 to 5 months of study.  It makes me think I should have started PlanetBall using openGL via LWJGL.  Great job for such a quick learning curve.
Games published by our own members! Check 'em out!
Legends of Yore - The Casual Retro Roguelike
Offline ra4king

JGO Kernel


Medals: 347
Projects: 3
Exp: 5 years


I'm the King!


« Reply #10 - Posted 2012-03-20 05:53:28 »

Shocked this is beautiful! Runs really smoothly here. I'm amazed you did all this in 4-5 months.

The amount of information in the debug modes is really really cool, I played around with a lot of stuff.

I wish you all the best and good luck with this! Smiley

Offline Swattkidd7

Junior Member





« Reply #11 - Posted 2012-03-20 07:29:05 »

Window opens up and then it crashes before I can see anything, I opened the .shoot/1.3/ folder but there was only the config file, no error logs.

Wish it would work though because it looks amazing, especially for 4/5 months!
Offline deathpat
« Reply #12 - Posted 2012-03-20 09:06:04 »

Hi,

thanks all for your comments !

I just figured out that I was disabling the error log when in debug mode ( assuming it is run in a console .. Smiley ) .. so it's normal to not have any err.log file Smiley
I reuploaded the jar, now the error log is written in every cases in case of crash. Otherwise it is possible to run the jar in a console to see the exception Wink

@Swattkidd7 : if you can try again in a console or download again the jar to have the err.log file, it would be nice, thanks Wink

work in progress : D A E D A L U S
Offline Swattkidd7

Junior Member





« Reply #13 - Posted 2012-03-20 09:14:38 »

Ahh ok I got the error log this time, here it is.

1  
2  
3  
4  
5  
6  
java.lang.IllegalStateException: Function is not supported
   at org.lwjgl.BufferChecks.checkFunctionAddress(BufferChecks.java:58)
   at org.lwjgl.opengl.GL30.glGenFramebuffers(GL30.java:1155)
   at com.deathpat.shoot.engine.LightingEngine.init(LightingEngine.java:159)
   at com.deathpat.shoot.engine.Engine.init(Engine.java:94)
   at com.deathpat.shoot.Shoot.main(Shoot.java:26)
Offline deathpat
« Reply #14 - Posted 2012-03-20 09:35:45 »

This is bad news, it means that your video card does not support opengl 3.0 and it's a prerequisite for the game to run. I'm using the frame buffer object from opengl 3.0 . I could have use the extension that is present in older versions of opengl to do this but anyway if the card doesn't support opengl 3.0, I think it will not be fast enough to run the game Sad

work in progress : D A E D A L U S
Offline Swattkidd7

Junior Member





« Reply #15 - Posted 2012-03-20 09:38:37 »

Damn, I had a laptop which played Call of duty world at war on high settings perfectly fine, but it broke and the warranty sent me a new one (this one) and now it cant play this 2D Java game  Cranky Clueless
Offline deathpat
« Reply #16 - Posted 2012-03-20 09:47:22 »

If it is the same laptop as before ( same video card ) maybe it is just a problem with the drivers ? Can you still run call of duty with your current setup ?

work in progress : D A E D A L U S
Offline kappa
« League of Dukes »

JGO Kernel


Medals: 77
Projects: 15


★★★★★


« Reply #17 - Posted 2012-03-20 10:34:31 »

This is bad news, it means that your video card does not support opengl 3.0 and it's a prerequisite for the game to run.

Its a good idea to show an error dialog and explain to the user why it doesn't work.
You could use something like the code below to check for OpenGL 3.0 support.

1  
2  
3  
if (!GLContext.getCapabilities().OpenGL30) {
    // show error dialog and quit as OpenGL 3.0 not supported
}
Offline deathpat
« Reply #18 - Posted 2012-03-20 12:55:42 »

For sure, my error handling is almost non existent Smiley Thanks for the tip to test the capabilities, I will add this soon Wink

work in progress : D A E D A L U S
Offline deathpat
« Reply #19 - Posted 2012-03-21 00:45:59 »

For info I've been able to test successfuly on linux ( just had to change the resolution in the config.xml, otherwise it was running at desktop resolution in windowed mode )
So I've edited the first post to include links to linux and mac jars Smiley

work in progress : D A E D A L U S
Offline Swattkidd7

Junior Member





« Reply #20 - Posted 2012-03-21 06:04:14 »

If it is the same laptop as before ( same video card ) maybe it is just a problem with the drivers ? Can you still run call of duty with your current setup ?

Oh no its a different one, looks like the upgraded my processor and memory but shook me a bit on the graphics card
Offline Preston

Senior Member


Medals: 4



« Reply #21 - Posted 2012-03-21 08:34:28 »

"OpenGL 3.0 support fail"

:-(

Unfortunately I can't run your game. My PC is about 3-4 years old and appearantly the graphics card can't do OpenGL 3. The card has shaders, however.

Would really love to run the demo, because I liked the original Alien Breed on Amiga -- it was one of the most atmospheric games at its time!
Offline pitbuller
« Reply #22 - Posted 2012-03-21 08:59:38 »

Can you explain how you did the lights? I am bit obsessed with lights. How you detect the shadows?
Its feel similar than my box2dlights but with perfect accuracy.
Offline deathpat
« Reply #23 - Posted 2012-03-21 10:33:50 »

@Preston : sorry about that, maybe I will see to use the GL_EXT_framebuffer_object for the FBO, this way older video cards should be able to run the game. But anyway I'm afraid that if the video card doesn't support opengl 3.0, it will not be powerful enough to run the game at a decent frame rate. The thing is that the lighting consumes quite a lot of fill rate Sad

@pitbuller : I basically used the technique described by Orangy Tang for 2D soft shadows :
http://www.gamedev.net/page/resources/_/technical/graphics-programming-and-theory/dynamic-2d-soft-shadows-r2032

But I finally skipped the soft shadows part Smiley The graphical result was enough with hard-edged shadows + a blur effect. And moreover I use the stencil buffer to handle the shadows ( as opposed to an alpha buffer for Orangy's technique ) which is way faster but forbids to have soft shadows.
Here are other articles I gathered about 2d shadows, they all use more or less the same technique :

http://forums.tigsource.com/index.php?topic=8803.0
http://blogs.msdn.com/b/manders/archive/2007/03/14/shadows-in-2d.aspx
http://nottutorials.blogspot.fr/2009/09/dynamic-2d-soft-shadows.html

hope this helps Wink

work in progress : D A E D A L U S
Offline ReBirth
« Reply #24 - Posted 2012-03-21 11:27:05 »

It has really great effects. But I can't play it with myself right? if only there's monster in here... Grin

Offline Tim Spekler
« Reply #25 - Posted 2012-04-03 19:38:13 »

Nice job, especially for the lights  Cool
Waiting for more gameplay now..  Grin
Offline Vladiedoo
« Reply #26 - Posted 2012-04-07 22:41:09 »

This will probably be a really silly question but would something like this be made with a JFrame and Canvas?
Offline ra4king

JGO Kernel


Medals: 347
Projects: 3
Exp: 5 years


I'm the King!


« Reply #27 - Posted 2012-04-07 22:42:11 »

No this is made using OpenGL through LWJGL.

If you want to make this using Java2D (JFrame + Canvas), it's gonna be sloooooow with all that lighting and effects.

Offline Vladiedoo
« Reply #28 - Posted 2012-04-07 22:48:13 »

Thanks for the quick response!
Offline deathpat
« Reply #29 - Posted 2012-04-08 03:10:22 »

@ReBirth : yep, right now it's good to play in LAN but alone it's not very fun Smiley I'm thinking about adding monsters and maybe a solo mode ... but I have a lot to do before that Smiley

@Tim Spekler : thanks !

@Vladiedoo and ra4king : nothing to add, I completely agree with ra4king about Java2D Wink

work in progress : D A E D A L U S
Pages: [1] 2 3 ... 11
  ignore  |  Print  
 
 

 

Add your game by posting it in the WIP section,
or publish it in Showcase.

The first screenshot will be displayed as a thumbnail.

Pippogeek (37 views)
2014-09-24 16:13:29

Pippogeek (29 views)
2014-09-24 16:12:22

Pippogeek (18 views)
2014-09-24 16:12:06

Grunnt (42 views)
2014-09-23 14:38:19

radar3301 (24 views)
2014-09-21 23:33:17

BurntPizza (60 views)
2014-09-21 02:42:18

BurntPizza (30 views)
2014-09-21 01:30:30

moogie (36 views)
2014-09-21 00:26:15

UprightPath (49 views)
2014-09-20 20:14:06

BurntPizza (52 views)
2014-09-19 03:14:18
List of Learning Resources
by Longor1996
2014-08-16 10:40:00

List of Learning Resources
by SilverTiger
2014-08-05 19:33:27

Resources for WIP games
by CogWheelz
2014-08-01 16:20:17

Resources for WIP games
by CogWheelz
2014-08-01 16:19:50

List of Learning Resources
by SilverTiger
2014-07-31 16:29:50

List of Learning Resources
by SilverTiger
2014-07-31 16:26:06

List of Learning Resources
by SilverTiger
2014-07-31 11:54:12

HotSpot Options
by dleskov
2014-07-08 01:59:08
java-gaming.org is not responsible for the content posted by its members, including references to external websites, and other references that may or may not have a relation with our primarily gaming and game production oriented community. inquiries and complaints can be sent via email to the info‑account of the company managing the website of java‑gaming.org
Powered by MySQL Powered by PHP Powered by SMF 1.1.18 | SMF © 2013, Simple Machines | Managed by Enhanced Four Valid XHTML 1.0! Valid CSS!