It’s because this is a site dedicated to people who want to use Java, for whatever reason. What’s the point in saying, “don’t bother with Java! Problem solved!” to people using java-gaming.org as a resource? It’s ridiculous.
Cas
It’s because this is a site dedicated to people who want to use Java, for whatever reason. What’s the point in saying, “don’t bother with Java! Problem solved!” to people using java-gaming.org as a resource? It’s ridiculous.
Cas
@princec
It’s in General Discussions and it’s one paragraph in his post in a multi paged thread, so no reason to shout STFU at him.
@dezzroy
STFU!!!
Not finishing a game because of fiddling around is one thing, I personally have problems to stay motivated to work on my game because I’m afraid that I will be unable to find people to play it.
There are sooo incredible huge number of games available on the internet, how in the world could I reach and interest people for my particular game ?
Sure, I could create a website for it or submit it to dedicated game-sites but it will still be ‘unfindable’ among the thousands of other games available.
One could argue that the game should stand out so much that it will draw enough attention to itself, but that is, of course, incredible hard, especially if this is just your second or third game.
I guess this just the problem with internet, with the whole world as competitor, it is just impossible to impress anyone anymore, because whether you’re making software, games, music, graphics or whatever, one search at Google will make you realise that your idea/implementation/… is far from original and at least ten people have already created something very similair en perhaps even better than you will ever be able to.
So why would one bother anymore ?.. This whole thing discourages me a lot… I like the process of creating a game but I don’t like to spend months on something that will have no chance to be noticed.
Why months and not weeks - or even days? Why is it the Flash guys can do this, and we can’t?
Cas
Flash is more content oriented. Maybe we can create a framework for java games that works faster than flash in terms of development speed. I didn’t look into Java game frameworks like Slick since I like to use Flash for the client side :persecutioncomplex:…
We need (for 2D, something like this for 3D is of course possible too):
@LoadFrom(file="sprite.png", w=10, h=10, offset=10,originX=Origin.CENTER,originY=Origin.BOTTOM,
animations={@Anim("fire",start=12,end=20, durationMs=500,mirror=Mirror.X), //mirror mirrors the animation (assumes right orientation as default)
@Anim("walk",start=0,end=12, durationMs=400,mirror=Mirror.X,repeat=-1)} //repeat=-1 -> loop
)
@RigidBody(width="5",height="8",originX=Origin.CENTER,originY=Origin.BOTTOM)
class Player extends Sprite {
Direction dir=new Direction(RIGHT);
boolean blockActions=false;
@LoadFrom(file="gun.png",originX=Origin.LEFT,originY=Origin.CENTER)
Sprite gun;
@LoadFrom(file="fire.wav")
Sound fireSound;
@LoadFrom(file="step.wav")
Sound stepSound;
@Override
public void init(){
gun.x=3;
gun.y=4;
this.addTransformed(gun); //transforms position depending on sprite transform (when mirroring)
playAnim("walk",dir);
}
@Override
public void update(){
if(blockActions)
return;
switch(Keyboard.pressedButton){
case "F":
playAnim("fire",dir,true);//last param adds anim on anim stack (prev anim gets temporarily stopped and new anim is played, works only for non looped anims)
Stage.add(new Bullet(gun.pos(),dir));
break;
case "LEFT":
vel.x=-5;
dir.set(LEFT);
break;
//...
}
}
@OnAnimationStart("fire")
public void fireAnimation(){
fireSound.play();
blockActions=true;
}
@OnAnimationEnd("fire")
public void fireAnimation(){
blockActions=false;
}
@OnAnimFrames(anim="walk",frames={2,5})
public void step(){
stepSound.play();
}
}
Stage.add(new Player(12,100));
Cas,
[quote]What’s the point in saying, “don’t bother with Java! Problem solved!” to people using java-gaming.org as a resource? It’s ridiculous.
[/quote]
That’s absolutely true, it’s ridiculous.
I realize there are benefits if more programmers build games with Java: we, as a collective, learn more through the shared experiences of our members. Also, it sends a message to those that could augment our palette of software tools and provide new platforms–the message being Java is a good technology and deserves to be improved, refined, and ubiquitous. This direction helps not only Java, but all of us that use it.
Now that I’ve done so much legwork, I could make a simple game in Java as quickly as I could in Flash. The thing is, I am not interested in making Chess or Mario Bros.
I hope programmers will come to JGO as I did and get up to speed such that Java is as an attractive an option, if not more, than Flash.
I’m not going to bash Flash It does what it does well. I used to make cartoons in Flash. At the time, I thought ActionScript was lame, but making animation and graphics, adding sounds and effects, all in one place was tremendous.
That’s why the Flash guys can do it so quickly. They can’t practically do wizardry with AI and diverse data acrobatics nor take advantage of the powerful functionality of libraries such as Java has. However, they can whip up graphics, animations, and pop in sounds and music ridiculously easily. They’re constrained to some basic math and logic that govern a relatively rich video and audio experience. Fast and fast.
I sure as hell wouldn’t want to do a 2D GTA, Rage or The Sims in Flash though.
;D Okay, I’ll STFU now about Flash. For the record, Java is great and can do anything Flash can. There are reasons I chose Java over C/C++/Python/Flash/etc. for my game creation needs.
Jack_E, make games for your friends 8) You’ll get feedback, and they may even help you think of cool things that could be in the game you didn’t. I love getting intoxicated with my friends and writing down the most outlandish features and things I could put into my game. Some of them even make it in!
I think Flash is more smooth than Java, but I am not sure. At least GameMaker seems to be. Did you see this http://www.java-gaming.org/topics/solving-stuttering-with-fixed-timesteps-once-and-for-all/24975/view.html ? The GameMaker sample runs smooth the rest does not :’(. This is one of those hurdles that come with Java… We need to solve this kind of stuff to make java more popular…
I reckon my stuff runs perfectly smooth…
Cas
[TrollMode]
Huh…Isn’t ActionScript prototype based OO?
[/TrollMode]
@Cas: Well, my experiments with JME3 seems to run smooth on my system too. But why can’t we help Saucer to get his java things smooth like his GameMaker sample? Did you try http://www.box.net/shared/6crbm32djhs3627lt93k ? there is a sample named after you
@AS3: OO in AS3 looks like Java. This is why I like AS3…
I’d say this is mainly because their toolset is a lot stronger. You can pretty much create whole applications without even writing any code, do it all through gui, click a button and you have it all built and ready to go. The flash tools also work painlessly with most art packages like photoshop. Even if you have no prior experience with the tools you can create something interesting by just playing with it for a few minutes and share it with the world. Lastly deployment and end user experience is excellent and painless.
Java has no comparable clientside toolset, especially not one supported by a dedicated company like Adobe or Unity3d. Sure there is Eclipse which is really cool but its target audience is different. Deployment is massively painful on Java (even with a proper IDE) and the problems with Applet and JWS are commonly known. Its also a pain to get executable or even batch scripts to work for downloadable apps.
The only tool I’ve seen recently that even moves remotely in this direction is probably the jMonkeyEngine 3.0 SDK thing (Based on Netbeans) where they have stuff like one click deployment and some GUI editing bits but even then it looks like it’ll take years (if ever) before its even close to the level of polish and usability of the Flash and Unity3D tools.
@kappa: The tooling is superior, but I think the frameworks might be too. (I am really not sure if this is really the case, but I guess the 2d ones are). Flash developers use stuff like flixel, flashpunk and now Starling, I think these are very nifty specialized libs.
I think a 2D scene graph like structure without the need to draw by yourself would help very much. This is something I miss when casually looking at slick or libgdx. (edit: as Nate pointed out I looked too casually :))
That used to be the case. Today, it is irrelevant.
Sitting in Brighton, UK’s biggest center of Flash developers (possibly Europe’s?), when I go to Flash events and Flash conferences and Flash pub-socials … the majority have long ago switched over to being completely coding-based development.
The toolset won the hearts and minds of many of the creative people who actually wanted to make stuff, and persuaded them to start with Flash. I still contest that the only difference today is that people who use Java to make games mostly don’t actually want to make a game, they’re just playing.
Note when you cited the relative power of the Java language as part of your initial argument you encouraged such responses as part of the discussion.
Lwjgl doesn’t have to be 3d, but moving into 3d lowers the number of possible contestants due to lower number of developers knowledgable about 3d games development. True that 2d games are just as relavent in a lwgjl 16k contest, and the 16k limit would have a huge impact on what’s possible in a 2d game. In general I think 16k lwjgl contest would be cool.
Edit: or lwjgl 8k and I’m not saying I would participate, and it should not run concurrently with the 4k. I think it’d be better if someone made a proof of concept then threw down the gauntlet ‘here’s my 8/16k wath you got huh?’
Interesting that so many are saying Flash is the superior platform. Isn’t Adobe dropping support for it and moving to HTML5?
While Java still has a ton of problems on the desktop I’d say it has a brighter future on the mobile than Flash does.
16k is like an NES game - I would like that
16k and not applet only and I would try =P
Mobile Adobe AIR will not be dropped, I think they want to establish AIR as some kind of Java for rich interactive mobile applications - something Java halfheartedly always wanted to be.
Well I am a rambling old fool so I occasionally forget what I’ve written not 5 minutes ago and contradict myself. Though I wouldn’t say the original post made any recommendation to use any other platform.
I dunno, 16k is big enough to not have to do any bytecode optimisation at all really as the bytecode will be proportionally small compared to the amount of graphics and sounds you can fit in 16kb. In other words - it’s easier to lose a sound effect or a sprite than rewrite an entire class to save 256 bytes. That’s what I’d like to see. 16kb is still so small that nobody is going to make a magnum opus or do any stunning 3D models or incredible sprite artwork, but it’s large enough that you can code properly without thinking too hard about the actual bytecode.
And DEFINITELY NO APPLETS. Applets are SHIT. End of. See Kev’s latest example to get an idea of just how shit. It’s dead technology - move on!
Cas
I dont see the counterargument to applets here.
First, the example is a rather simple game. This can be made in HTML5/JS, which fits well to this point. Going above that, the limitations kick in.
What should be the alternative for a JAVA game then, the Webloader? This is even more freaky to a casual user.
It looks like an app that wants to erase your harddisk rather than a slick launcher. Plus it often does not work propperly.
And downloading a jar is a nogo for a casual game.
For a really big game that needs a stationary installment (with Windows users as target), a classic installer (exe with a nice desktop icon) is the most pleasant way.
Minecraft made a nice example how to implement such a system in a pleasant way for the casual user.
Be it from the web or as downloadable.
BTW: Java has one advantage over Flash here: its possible to use the right-mouseclick. For some gametypes this
adds to a lot to the controloptions.
Two reasons why an LWJGL16k contest will never work:
In 16k I imagine you could make a pretty impressive game. And you could potentially spend a pretty impressive amount of time doing so. I can see a lot of people looking at how good the competing games are and losing interest before they’re even half-way to the size limit.
Making a game in 4k of Java is clearly insane. (Same for making a game in 48 hours.) Anyone who completes such a game has earned the respect of the entire internet (well, a certain subset of it). Making a game in 16k of Java using an external game library? It just sounds too easy.
Just my humble opinion, obviously.
Simon