Java-Gaming.org Hi !
Featured games (90)
games approved by the League of Dukes
Games in Showcase (767)
Games in Android Showcase (230)
games submitted by our members
Games in WIP (854)
games currently in development
News: Read the Java Gaming Resources, or peek at the official Java tutorials
 
    Home     Help   Search   Login   Register   
Pages: [1]
  ignore  |  Print  
  Izalys World (Java 2D run and jump game)  (Read 37331 times)
0 Members and 1 Guest are viewing this topic.
Offline sunburn
« Posted 2015-06-13 09:22:40 »

Hi dear Java developpers Smiley

I finished Izalys World, the 2D run and jump game I started in 2011. I made the code, graphics and musics. For graphics I used some dry pastels and a Wacom Tablet. Musics are recorded with a synth and an electric guitar using Cubase.

I hope you'll enjoy it. Every feedback (good and bad) is welcome Smiley

Features :
-HD graphics
-OpenGL support
-gamepad support
-game configuration and score per level stored in the user directory
-easy installer for Windows
-6 levels, 1 boss

For more information and downloads you can check http://izalysworld.olympe.in and the Facebook page if you like it : https://www.facebook.com/izalysworld .





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


Offline PocketCrafter7

Senior Devvie


Medals: 6
Projects: 2
Exp: 2 years


One man's bug is another man's feature


« Reply #1 - Posted 2015-06-13 09:24:28 »

Looks nice! You spent 4 years on a single game, that's amazing, I usually get bored within 3 - 4 months...

Nothing is difficult in this world. It is just how you look at it.
Offline KaiHH

JGO Kernel


Medals: 592



« Reply #2 - Posted 2015-06-13 10:19:55 »

Really nice artwork!
However, I cannot get past the screen where you select a level you want to play.
Once I select (any) level, all I get is a black screen. Sad
I have Windows 7 and jdk1.8.0 Update 45 and an OpenGL 4.5 card.
Games published by our own members! Check 'em out!
Legends of Yore - The Casual Retro Roguelike
Offline SHC
« Reply #3 - Posted 2015-06-13 14:41:21 »

I'm having the same problem as Kai. If I run it in fullscreen, I can't even get to the fullscreen, and in windowed mode, it crashes with an exception after I select the level.

1  
2  
3  
4  
5  
6  
7  
8  
9  
10  
11  
12  
13  
14  
15  
16  
17  
18  
19  
20  
21  
22  
23  
24  
25  
26  
27  
28  
29  
30  
31  
32  
33  
34  
35  
36  
37  
38  
39  
40  
41  
42  
43  
44  
45  
46  
47  
48  
49  
50  
51  
52  
53  
54  
55  
56  
57  
58  
59  
60  
61  
62  
63  
64  
65  
66  
67  
68  
69  
70  
71  
72  
73  
74  
75  
76  
77  
78  
79  
80  
81  
82  
83  
84  
85  
86  
87  
88  
89  
90  
91  
92  
93  
94  
95  
96  
97  
98  
99  
100  
101  
102  
103  
104  
105  
106  
107  
108  
109  
110  
111  
112  
113  
114  
115  
116  
117  
118  
119  
120  
121  
122  
123  
124  
125  
126  
127  
128  
129  
130  
131  
D:\Izalys World>java -jar izalysWorld.exe
Jun 13, 2015 8:06:44 PM net.java.games.input.DefaultControllerEnvironment getControllers
WARNING: Found unknown Windows version: Windows 8.1
Jun 13, 2015 8:06:44 PM net.java.games.input.DefaultControllerEnvironment getControllers
INFO: Attempting to use default windows plug-in.
Jun 13, 2015 8:06:44 PM net.java.games.input.DefaultControllerEnvironment getControllers
INFO: Loading: net.java.games.input.DirectAndRawInputEnvironmentPlugin
java.io.IOException: mark/reset not supported
        at java.util.zip.InflaterInputStream.reset(Unknown Source)
        at java.io.FilterInputStream.reset(Unknown Source)
        at com.sun.media.codec.audio.mp3.JS_MP3FileReader.getAudioFileFormat(JS_MP3FileReader.java:226)
        at com.sun.media.codec.audio.mp3.JS_MP3FileReader.getAudioInputStream(JS_MP3FileReader.java:131)
        at com.sun.media.codec.audio.mp3.JS_MP3FileReader.getAudioInputStream(JS_MP3FileReader.java:93)
        at javax.sound.sampled.AudioSystem.getAudioInputStream(Unknown Source)
        at game.system.media.MultiMediaObject.createClipFromWav(MultiMediaObject.java:52)
        at game.system.menu.AbstractMenu.<init>(AbstractMenu.java:35)
        at game.system.menu.mainmenu.MainMenu.<init>(MainMenu.java:38)
        at game.system.menu.mainmenu.MainMenuScreen.<init>(MainMenuScreen.java:19)
        at game.system.engine.GameEngine.processNextFrame(GameEngine.java:238)
        at game.system.engine.GameEngine.display(GameEngine.java:644)
        at jogamp.opengl.GLDrawableHelper.displayImpl(GLDrawableHelper.java:691)
        at jogamp.opengl.GLDrawableHelper.display(GLDrawableHelper.java:673)
        at com.jogamp.opengl.awt.GLCanvas$11.run(GLCanvas.java:1421)
        at jogamp.opengl.GLDrawableHelper.invokeGLImpl(GLDrawableHelper.java:1277)
        at jogamp.opengl.GLDrawableHelper.invokeGL(GLDrawableHelper.java:1131)
        at com.jogamp.opengl.awt.GLCanvas$12.run(GLCanvas.java:1435)
        at java.awt.event.InvocationEvent.dispatch(Unknown Source)
        at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
        at java.awt.EventQueue.access$500(Unknown Source)
        at java.awt.EventQueue$3.run(Unknown Source)
        at java.awt.EventQueue$3.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
        at java.awt.EventQueue.dispatchEvent(Unknown Source)
        at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
        at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
        at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
        at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
        at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
        at java.awt.EventDispatchThread.run(Unknown Source)
java.lang.NullPointerException
        at game.system.media.MultiMediaObject.playClip(MultiMediaObject.java:76)
        at game.system.menu.AbstractMenu.manageKeys(AbstractMenu.java:101)
        at game.system.engine.GameEngine.processNextFrame(GameEngine.java:246)
        at game.system.engine.GameEngine.display(GameEngine.java:644)
        at jogamp.opengl.GLDrawableHelper.displayImpl(GLDrawableHelper.java:691)
        at jogamp.opengl.GLDrawableHelper.display(GLDrawableHelper.java:673)
        at com.jogamp.opengl.awt.GLCanvas$11.run(GLCanvas.java:1421)
        at jogamp.opengl.GLDrawableHelper.invokeGLImpl(GLDrawableHelper.java:1277)
        at jogamp.opengl.GLDrawableHelper.invokeGL(GLDrawableHelper.java:1131)
        at com.jogamp.opengl.awt.GLCanvas$12.run(GLCanvas.java:1435)
        at java.awt.event.InvocationEvent.dispatch(Unknown Source)
        at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
        at java.awt.EventQueue.access$500(Unknown Source)
        at java.awt.EventQueue$3.run(Unknown Source)
        at java.awt.EventQueue$3.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
        at java.awt.EventQueue.dispatchEvent(Unknown Source)
        at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
        at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
        at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
        at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
        at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
        at java.awt.EventDispatchThread.run(Unknown Source)
java.lang.NullPointerException
        at game.system.media.MultiMediaObject.playClip(MultiMediaObject.java:76)
        at game.system.menu.AbstractMenu.manageKeys(AbstractMenu.java:101)
        at game.system.engine.GameEngine.processNextFrame(GameEngine.java:246)
        at game.system.engine.GameEngine.display(GameEngine.java:644)
        at jogamp.opengl.GLDrawableHelper.displayImpl(GLDrawableHelper.java:691)
        at jogamp.opengl.GLDrawableHelper.display(GLDrawableHelper.java:673)
        at com.jogamp.opengl.awt.GLCanvas$11.run(GLCanvas.java:1421)
        at jogamp.opengl.GLDrawableHelper.invokeGLImpl(GLDrawableHelper.java:1277)
        at jogamp.opengl.GLDrawableHelper.invokeGL(GLDrawableHelper.java:1131)
        at com.jogamp.opengl.awt.GLCanvas$12.run(GLCanvas.java:1435)
        at java.awt.event.InvocationEvent.dispatch(Unknown Source)
        at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
        at java.awt.EventQueue.access$500(Unknown Source)
        at java.awt.EventQueue$3.run(Unknown Source)
        at java.awt.EventQueue$3.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
        at java.awt.EventQueue.dispatchEvent(Unknown Source)
        at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
        at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
        at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
        at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
        at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
        at java.awt.EventDispatchThread.run(Unknown Source)
java.io.IOException: mark/reset not supported
        at java.util.zip.InflaterInputStream.reset(Unknown Source)
        at java.io.FilterInputStream.reset(Unknown Source)
        at com.sun.media.codec.audio.mp3.JS_MP3FileReader.getAudioFileFormat(JS_MP3FileReader.java:226)
        at com.sun.media.codec.audio.mp3.JS_MP3FileReader.getAudioInputStream(JS_MP3FileReader.java:131)
        at com.sun.media.codec.audio.mp3.JS_MP3FileReader.getAudioInputStream(JS_MP3FileReader.java:93)
        at javax.sound.sampled.AudioSystem.getAudioInputStream(Unknown Source)
        at game.system.media.MultiMediaObject.createClipFromWav(MultiMediaObject.java:52)
        at game.things.player.Player.initSounds(Player.java:226)
        at game.things.common.Thing.<init>(Thing.java:170)
        at game.things.player.Player.<init>(Player.java:120)
        at game.system.worldloader.WorldLoader.addNewThingToArray(WorldLoader.java:202)
        at game.system.worldloader.WorldLoader.getThingArrays(WorldLoader.java:402)
        at game.world.World.loadObjects(World.java:152)
        at game.world.World.loadMap(World.java:120)
        at game.world.World.initWorld(World.java:86)
        at game.world.World.<init>(World.java:77)
        at game.system.engine.GameEngine.loadNextWorld(GameEngine.java:450)
        at game.system.engine.GameEngine.loadWorld(GameEngine.java:363)
        at game.system.engine.GameEngine.processNextFrame(GameEngine.java:257)
        at game.system.engine.GameEngine.display(GameEngine.java:644)
        at jogamp.opengl.GLDrawableHelper.displayImpl(GLDrawableHelper.java:691)
        at jogamp.opengl.GLDrawableHelper.display(GLDrawableHelper.java:673)
        at com.jogamp.opengl.awt.GLCanvas$11.run(GLCanvas.java:1421)
        at jogamp.opengl.GLDrawableHelper.invokeGLImpl(GLDrawableHelper.java:1277)
        at jogamp.opengl.GLDrawableHelper.invokeGL(GLDrawableHelper.java:1131)
        at com.jogamp.opengl.awt.GLCanvas$12.run(GLCanvas.java:1435)
        at java.awt.event.InvocationEvent.dispatch(Unknown Source)
        at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
        at java.awt.EventQueue.access$500(Unknown Source)
        at java.awt.EventQueue$3.run(Unknown Source)
        at java.awt.EventQueue$3.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
        at java.awt.EventQueue.dispatchEvent(Unknown Source)
        at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
        at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
        at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
        at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
        at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
        at java.awt.EventDispatchThread.run(Unknown Source)

Hope this information helps. Really nice artwork by the way.

Offline death_angel
« Reply #4 - Posted 2015-06-13 14:56:01 »

Love the art style  Pointing

I am just a guy
Offline J0
« Reply #5 - Posted 2015-06-13 16:43:21 »

Wow, definitely looks like a reaaaally polished game!
I'm just pointing out a small flaw I found: in the "how to play" menu, you wrote "hearth" instead of "heart", that would be a shame leaving a typo here Lips Sealed
Moreover, you might want to set your frames non-resizable persecutioncomplex
As for the game itself, it won't get past the level selection screen, and the "next" button in the "how to play" menu seems to lead to another bug.
I'd be glad to be able to play this game, hope you update us! Wink

-J0

Offline Herbherth

Junior Devvie


Medals: 3
Projects: 1


@Herbherth


« Reply #6 - Posted 2015-06-13 17:36:41 »

Really nice artwork!
However, I cannot get past the screen where you select a level you want to play.
Once I select (any) level, all I get is a black screen. Sad
I have Windows 7 and jdk1.8.0 Update 45 and an OpenGL 4.5 card.

It also was happening to me, so I downloaded the version with java and worked... maybe it's because the game was made with an outdated java (?), I don't know Wink


Nice game... It reminds me Rayman =D

Offline sunburn
« Reply #7 - Posted 2015-06-13 17:43:36 »

Thank you very much for your feedback ! I upload a new version of the game and update this post as soon as I fix thoses bugs.
Offline Jervac
« Reply #8 - Posted 2015-06-13 17:54:55 »

I really like the art and overall look of the game. Whenever I download the linux version i get a file-not-found.txt that says "File not found or deleted from server"
Offline sunburn
« Reply #9 - Posted 2015-06-13 18:24:52 »

Yes, I'm trying to upload a fixed version but it seems uploads won't work today...
Games published by our own members! Check 'em out!
Legends of Yore - The Casual Retro Roguelike
Offline craftm

JGO Coder


Medals: 15
Projects: 1


_Keep Trying


« Reply #10 - Posted 2015-06-13 19:34:32 »

Great game!

The game is running properly for me. The last stage is really good, remember Donkey Kong for SNES.

_ Wink
Offline J0
« Reply #11 - Posted 2015-06-14 21:05:02 »

Tried running the with-java version, turns out to be very laggy... When the... pea? Is that a pea? Walks all is fine, but each time I try collecting a coin, jumping, taking damages, running, pausing, the games seems to sleep for a few seconds (maybe a second and a half, if that helps). I don't feel like a 2D-game like this should ask too many performances, what do you guys think? Is my 4-hearts laptop overrated?
That's a shame because I would enjoy running your game as it recalls me of games I used to play as a kid.

Nice game... It reminds me Rayman =D

Aah, Rayman... Memories... Cheesy

Thank you for taking my post into account Wink

-J0

Offline sunburn
« Reply #12 - Posted 2015-06-15 20:10:10 »

 I fixed those issues :

- Black screen. I forgot to add the parameter when I wrapped the jar in an exe... (shame on me !). It's necessary not to have a black screen with an openGl fullscreen window.
- The menu bug.
- The "hearth" mispelling Wink

I'm working on the "java.io.IOException: mark/reset not supported". I don't have it on my computer, but many people have this issue. The fix seems to use a BufferedInputStream (which supports pause, reset...), but then calling  AudioSystem.getAudioInputStream(inputStream) makes the game freeze as J0 described. Strangely, it only happens when the game is run in a jar on a Windows Os. Not in my Eclipse workspace nor in a jar with Linux.
Offline KaiHH

JGO Kernel


Medals: 592



« Reply #13 - Posted 2015-06-15 20:40:16 »

Works for me now! And I even have music and FX now. Smiley
Two things though:
- whenever I collect a coin (or anything collectable) the game stutters/hangs for about 1/10th of a second. It becomes then barely playable/controllable when collecting many coins in a row (I am suspecting this has to do with the loading/playing of the sounds)
- I cannot abort and return to menu while I am playing a level (neither with ESC nor any other key), except when I issue Windows to close the app using Alt+F4
Besides from that: I'm loving it for the artwork!
Offline sunburn
« Reply #14 - Posted 2015-06-21 11:02:46 »

I finally switched from JavaSound to JOAL. It is much much better : no lag on Windows anymore, sound effects can be played multiple times on Linux. It just took 2 hours with the (excellent) DevMasters tutorial, so it was really worth it.

If I should give one piece of advice from my experience : stay away from JavaSound,it is not as cross platform as it should be. JOAL is not really harder to use and seems more reliable to me (even without using 3d sound of pitch effects).

On last thing : I added the escape key support to display the pause menu (in addition to the start/pause key configured in the startup screen). you'll have to erase the config.properties file in IzalysWorld directory (home folder) to make it work if you already played the game (sorry !).
Offline J0
« Reply #15 - Posted 2015-06-21 19:24:03 »

You should definitely prevent the frames from being resized.
Apart from that, tried the game, 10/10 love it! Pointing
About Rayman, I even tried once making the helicopter thing in your game Grin
Thank you for such a wonderful job Wink

J0

EDIT: I'd love to know how you made the music if you made it yourself! Shocked

Offline sunburn
« Reply #16 - Posted 2015-06-28 09:53:09 »

Thank you very much J0. Yes I absolutely loved the first Rayman. The Sonic games on Genesis and Game Gear, and Rayman on PSX are my top favorites platformers Smiley.

About the music, I first write synth and drums parts with a score editor and export them to a midi file. Then I import this midi file in Cubase (a multi track sound editor) and play those midi parts with some Native Instruments plugins to have some realistic instrument sounds. I finally record guitar tracks (i plug the guitar directly into the sound card, and use the Native Instrument Guitar Rig amp simulator) and export everything to an MP3 file.
Pages: [1]
  ignore  |  Print  
 
 

 
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!