Java-Gaming.org Hi !
Featured games (83)
games approved by the League of Dukes
Games in Showcase (512)
Games in Android Showcase (119)
games submitted by our members
Games in WIP (576)
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 ... 6
  ignore  |  Print  
  Discuss the future of 4k contest  (Read 25995 times)
0 Members and 1 Guest are viewing this topic.
Offline appel

JGO Wizard


Medals: 51
Projects: 4


I always win!


« Posted 2013-08-29 21:46:24 »

When I took over the java 4k contest from woogley I wanted to make it more user friendly and try to attract casual users. That did work for the first couple of years, but things have changed in the technology world with the introduction of smart gadgets, and a general decline of Java on the desktop for a multitude of reasons. Java4k is primarily now a developers attraction for our close knit community.

Java, webstart and applets, simply is out. You cannot expect it to run on a big chunk of desktops, but primarily it does not play on smart gadgets, phones, tablets, pads etc.

So, does our beloved contest stand at some kind of crossroads? Are my concerns unwarranted? Are there new opportunities?

So, this is really a open thread to discuss the contest in the context of this changing environment.

Thanks.

Check out the 4K competition @ www.java4k.com
Check out GAMADU (my own site) @ http://gamadu.com/
Offline Several Kilo-Bytes

Senior Duke


Medals: 11



« Reply #1 - Posted 2013-08-29 22:36:42 »

You can't use gadgets because every game would play differently on different devices and it would not be fair to judge games based on different feature sets. You might be able to do something with Ouya, since it is specifically designed for games and would have the same feature set for all developers, judges, and players. Everyone would be using the same API. I don't know what the current state of Ouya is though. That may be the contest after the next one.

Javascript games warrant the reputation that is unwarranted for Java outside the browser so they would not be a better alternative. It's marketing...

Edit: Let me state I am not a fan of the idea that a small group of companies should get together in a closed setting and make decisions to push on all downstream users. It is worse that they call it "open source" and "standard", especially when it means closed devices with no interoperability, competition, or opting out for consumers.

Webkit, Android, and Ouya all have these faults. I want my devices to be a person computer no matter what size they are, but the trend is toward the opposite owner-object relationship.
Offline jonjava
« Reply #2 - Posted 2013-08-29 23:23:41 »

I find the 4k contest is a lot akin to the the demoscene subculture. By us - for us kind of thing. Showing off what kind of neat tricks you can pull off with only 4k.

I'm not sure how you define your "casual user", however, to me, a casual would be someone perhaps new to programming who would be interested to see what can be done/learned from by looking at the impressive games (and source codes) made with only 4k of data.

In other words, a casual, I feel, isn't necessarily that much different from those submitting the games themselves.

If by casual you mean people playing farmville on facebook then I'd rather shoot myself.

New opportunities? How do you mean, larger audiences? Hmm. Live Streams? I don't know.

Games published by our own members! Check 'em out!
Legends of Yore - The Casual Retro Roguelike
Offline namrog84

JGO Ninja


Medals: 46
Projects: 4


Keep programming!


« Reply #3 - Posted 2013-08-30 07:21:25 »

As someone who hasn't ever participated in it.  The few times I've tried making a few things. When I was searching for information, such as a decent  starting point template, game loop.  There was a lot of fragmentation and arguments on which one, or quite a few dead links.(Such as I think someone had an online compacter that ran your class through various compression programs in attempt to shrink it, that website is gone now) and while you can still use pack200 and some other things, the information is spread out and is less new user friendly)
In addition to the few resources to help the 'casual' or 'new' user get started at least with some basics.


I think having a more well defined 'new user'/'tutorial'/'how to' wiki/website on some more basics  would help tremendously with attracting new users.  Since some things are handled differently.


Also why are 'applets'  out.  Even though they are less popular and have those silly security popups.  They still function in most places don't they?


Although it would incur a huge 'overhead' to the new user(especially those not familiar with libgdx).  Perhaps allowing libgdx- html5 port to be part of the competition.

Lets say you can only have 4k of source code (not including anything libgdx boilerplate)  and then compile to the GWT-html5 and then it'd make the applet and accessibility a non issue.

"Experience is what you get when you did not get what you wanted"
Offline elamre

JGO Coder


Medals: 17
Projects: 1


hitar!


« Reply #4 - Posted 2013-08-30 07:50:29 »

applets are sooo out. On some browsers java is even disabled by default because of all the security flaws it has.

My projects:
Tower Defence!]http://www.java-gaming.org/topics/iconified/25690/view.html]Tower Defence! [lll.......] 30%!
Lightsnakerider! [llllll....] 60%!
Offline Grunnt

JGO Wizard


Medals: 84
Projects: 8
Exp: 5 years


Complex != complicated


« Reply #5 - Posted 2013-08-30 07:54:32 »

Some thoughts:

First of all: I learned a lot during the 4K contests. The artificial limit on size is also a very pleasant (and enforceable) limit on how complex you can make the game. Excellent for trying out new concepts or ideas.

However, the 4K game contest in its present form is often more about designing a good compression chain than about creative game design. This makes it less newbie-friendly. Without a good compression chain (which can be pretty hard to do) there is no way to meaningfully compete in the contest. Also, as you say, Java on the web is history since the security debacle of Java browser plugins.

So in its current form I doubt it will really have a fruitful future ahead of it. But I do like the 4K contest a lot. Some ideas I had:
- Disallow compression tools and make the JAR limit 10K (so Java10K). Or 9K if you like so we can make "its over 9000!!!!" jokes.
- Make a wrapper that all players and contestants can use to launch the 4K or 9K/10K games. I made a simple wrapper with integrated JRE for my own 4K games. The wrapper with JRE would be some MB's, but you could add all 4K games made to the wrapper in a single downloadable collection without increasing the download size much. It would not be runnable from the web, but it would be quite easy to use.
- Do an Java/Android contest with a size limit?
EDIT: added:
- A contest based on LWGJL may also be nice, although that would perhaps be more about OpenGL than about Java.

In don't really see how to do a contest about Java on the web (compiling to HTML5/Javascript kind of defeats the point of having a Java contest). However, there may be possibilities on the desktop (download-the-collection style) or on Android.

Offline princec

JGO Kernel


Medals: 404
Projects: 3
Exp: 16 years


Eh? Who? What? ... Me?


« Reply #6 - Posted 2013-08-30 09:09:02 »

hehe... http://www.lwjgl16k.org/

That's as far as it's got so far Smiley

The 4k problem is now a bit of an anachronism. When you could be reasonably sure that at least Java developers would have Java applets available on their machines it sometimes worked ok (and thanks to how shit applets and webstart are, it often didn't anyway, but meh). Nowadays though anyone with any sense has totally disabled Java applets in the browser because of the massive attack surface it presents to sophisticated malware.

So you've got 4kb of useless code that can't actually be run.

Solutions...? Well maybe an actual launcher/browser desktop application would do the job. A self-contained VM installation like the ones we use for our games, which can be used to play all of the 4k entries (and they're so small the entire library of 4k games can be downloaded on the fly at startup). You'd have to get relatively clever with security but other than that, if it's enthusiasts who want to play the games, that's probably the best way to go. It also means that you can settle on a precise JVM version. You could also use the same launcher for a lwjgl16 compo too Smiley

Well, that's my 2p.

Cas Smiley

Offline princec

JGO Kernel


Medals: 404
Projects: 3
Exp: 16 years


Eh? Who? What? ... Me?


« Reply #7 - Posted 2013-08-30 09:16:58 »

Hah just realised Grunnt has the same ideas as me Smiley

Cas Smiley

Offline Grunnt

JGO Wizard


Medals: 84
Projects: 8
Exp: 5 years


Complex != complicated


« Reply #8 - Posted 2013-08-30 09:59:00 »

Hah just realised Grunnt has the same ideas as me Smiley

Cas Smiley

Great idea Grin

Offline Abuse

JGO Knight


Medals: 13


falling into the abyss of reality


« Reply #9 - Posted 2013-08-30 11:52:46 »

I can't deny, I liked the standardisation and accessibility (to non-programmers) that enforcing Applets brought to the competition.

We could always go back to the old ruleset, and use runnable jars; or do browsers block the download and execution of those too?

The idea of a self contained app for presenting and running the library of games initially seems appealing..... But I can't help feeling it'd just be duplicating the function of the website. (but with a higher barrier to entry)

As for accessibility re the compilation tool chain; I agree it's the most esoteric part of building 4k apps, there should definitely be an official all in one ant+eclipse package for developing, building & publishing a skeleton app.
I know there have been valuable contributions from numerous people, but i don't think we've yet had a comprehensive 'does everything' solution.
I'd be willing to polish mine up and post it for review.

:edit:
Just checked, and in Chrome you have fewer (and less verbose) warnings downloading & executing an unsandboxed runnable jar than you do launching an unsigned applet.
That's really quite stupid.

Make Elite IV:Dangerous happen! Pledge your backing at KICKSTARTER here! https://dl.dropbox.com/u/54785909/EliteIVsmaller.png
Games published by our own members! Check 'em out!
Legends of Yore - The Casual Retro Roguelike
Offline princec

JGO Kernel


Medals: 404
Projects: 3
Exp: 16 years


Eh? Who? What? ... Me?


« Reply #10 - Posted 2013-08-30 11:54:49 »

Runnable jars was another dreadful Java mistake. At least, running them without some sort of security sandbox and prompting just like applets. I really think it's a bad idea to encourage it.

Cas Smiley

Offline SHC
« Reply #11 - Posted 2013-08-30 12:01:31 »

Runnable jars was another dreadful Java mistake.

Absolutely right! +1. Why can't they directly bind the jvm into the executable like Flash Projectors does? Isn't it better to create cross-platform native executables for distribution in one go?

Offline teletubo
« League of Dukes »

JGO Ninja


Medals: 48
Projects: 4
Exp: 8 years



« Reply #12 - Posted 2013-08-30 12:28:48 »


Solutions...? Well maybe an actual launcher/browser desktop application would do the job. A self-contained VM installation like the ones we use for our games, which can be used to play all of the 4k entries (and they're so small the entire library of 4k games can be downloaded on the fly at startup). You'd have to get relatively clever with security but other than that, if it's enthusiasts who want to play the games, that's probably the best way to go. It also means that you can settle on a precise JVM version. You could also use the same launcher for a lwjgl16 compo too Smiley


That's what I first thougt before reading any messages.
Maybe even an integrated comments/voting section that talks directly to java4k.com

Offline ClickerMonkey

JGO Coder


Medals: 20


Game Engineer


« Reply #13 - Posted 2013-08-30 12:31:46 »

As far as "good compression chain", doesn't anyone use ProGuard? It's gotten my 40k class file down to 4k. It has SO many options and seemingly can do it all.

A few suggestions based on what other people have said:

1. Add a service where a user can upload their class file (where the class name is G or something) and have proguard go through and do its magic. Proguard has a simple command-line interface, you give it a configuration file and run it... super simple. You could even add multiple configurations that yield different results and run all of them and present the user with the smallest one.
2. Create a simple application that runs on all major OS's that has an embedded JVM... you could make the java4k files have their own extension like "j4k" which the application could open and run.

So many options on making java4k available to a wider audience and easier for developers to participate!

Offline pjt33
« Reply #14 - Posted 2013-08-30 14:37:35 »

As for accessibility re the compilation tool chain; I agree it's the most esoteric part of building 4k apps, there should definitely be an official all in one ant+eclipse package for developing, building & publishing a skeleton app.
I know there have been valuable contributions from numerous people, but i don't think we've yet had a comprehensive 'does everything' solution.
One big problem with making a comprehensive solution is that the best zlib-compatible compressors are neither open-source nor written in Java. Or are you volunteering to write a Java compress library which does multiple passes of perfect parsing with random Huffman trees constructed using a good heuristic? (It's one of the projects I have on the back burner, but "on the back burner" means that I don't want to promise anything).
Offline Abuse

JGO Knight


Medals: 13


falling into the abyss of reality


« Reply #15 - Posted 2013-08-30 15:21:23 »

As for accessibility re the compilation tool chain; I agree it's the most esoteric part of building 4k apps, there should definitely be an official all in one ant+eclipse package for developing, building & publishing a skeleton app.
I know there have been valuable contributions from numerous people, but i don't think we've yet had a comprehensive 'does everything' solution.
One big problem with making a comprehensive solution is that the best zlib-compatible compressors are neither open-source nor written in Java. Or are you volunteering to write a Java compress library which does multiple passes of perfect parsing with random Huffman trees constructed using a good heuristic? (It's one of the projects I have on the back burner, but "on the back burner" means that I don't want to promise anything).

I'm not suggesting an optimal solution; just a 'works out of the box' build script that comes with all the necessary dependencies & gets you 'good' results.

There's already been a fairly comprehensive one contributed somewhere (though regrettably I can't remember by whom), but even that required a fair bit of faffing to fill in all the dependencies and get it working.
If I recall correctly its problems stemmed from its attempt at being too clever (downloading the dependencies automatically from the relevant websites), that inevitably broke when the URLs in question became invalid.

Make Elite IV:Dangerous happen! Pledge your backing at KICKSTARTER here! https://dl.dropbox.com/u/54785909/EliteIVsmaller.png
Offline SimonH
« Reply #16 - Posted 2013-08-31 00:25:33 »

I can't think of anything better - Unity 64K? It wouldn't be the same...
I see 4K as a great way to play around with ideas within bounds. I also got a big kick out of trying to do AC, GTA, Far Cry & Skyrim in 4K.
Sure online java's shot itself in the foot then looked down the barrel to see where the bullet came from and shot itself in the face, but it's still a beautiful language to use.
Sod popularity, if we wanted full coverage we'd have to use JS or libGDX or something and the 4K constraint would be null and void.
I say stick with applets for this year. Nothing lasts for ever, so let's make the last days the best!

People make games and games make people
Offline Morre

JGO Knight


Medals: 2
Projects: 10


I'm Dragonene on IRC.


« Reply #17 - Posted 2013-09-08 17:22:31 »

I don't really have a strong opinion on how to solve the issues we're seeing, but I felt I wanted to write something in any case. Warning: Bleariness to follow.

I'd be sad to see the 4k contest go. I can see why it would happen, but I'm also okay with the games being directed mostly at programmers both new and old. I'm holding on to nostalgia a bit, but this contest has meant so much to me. I made my first 4k game almost immediately after I'd started coding (I'd only done HTML/JS stuff before). The game wasn't great, but it was so much fun to make. A few of the regulars on here proceeded to make great, inspiring games - the kind that made me want to improve. Since then, I've finished 18 more games for this contest, and started many more. If it wasn't for the 4k, I don't think I'd have chosen to study computer science. Later, that education got me into the games industry, and I'm now working with something I absolutely love with an amazing bunch of people.

Here's to the 4k!

/Måns

Offline moogie

JGO Knight


Medals: 13
Projects: 6
Exp: 10 years


Java games rock!


« Reply #18 - Posted 2013-09-09 00:01:21 »

Indeed, it would be a sad day when java4k finally "officially" finishes... i am sure that it will still occur by those who have a nostalgic connection to it. I must admit it is one of my highlights of the year. Both to see what others are able to achieve within the constraints, and to see what i am able to achieve.

A pretty out there suggestion:

Whilst not the same accessibility for users as applets pre security dialogs, how about collating and compiling all entries into native code (Excelsior Jet or jcc) and have a native installer. Users (well windows users) are used to downloading and installing and would not rely on java being installed.

This could also be done in parallel to the normal targeted environment (i.e. applets).

Offline appel

JGO Wizard


Medals: 51
Projects: 4


I always win!


« Reply #19 - Posted 2013-09-09 01:57:47 »

Indeed, it would be a sad day when java4k finally "officially" finishes... i am sure that it will still occur by those who have a nostalgic connection to it. I must admit it is one of my highlights of the year. Both to see what others are able to achieve within the constraints, and to see what i am able to achieve.

A pretty out there suggestion:

Whilst not the same accessibility for users as applets pre security dialogs, how about collating and compiling all entries into native code (Excelsior Jet or jcc) and have a native installer. Users (well windows users) are used to downloading and installing and would not rely on java being installed.

This could also be done in parallel to the normal targeted environment (i.e. applets).

There's no plan to end the contest.

Times have changed, indeed, and we need to consider some changes perhaps.

I may omit the judging panel in future contests, simply because it's a whole lot of work and getting more difficult every year to recruit judges. This year I barely was able to recruit judges. I realize the judging panel provides a valuable feedback, but reviewing 70 games is a tedious process for anyone, and honestly I get a bit anxious about it Cheesy

Then there's my personal interest in game programming that has dwindled. I'm currently more focused on work related technologies than hobby related. Although I may return to the game arena later, I'm not quite sure if Java will be my first choice as I like to try out newfangled things.

I'm not quite sure about that installer. How would the contest work? New installer every time a new game is submitted? Or will all games be published at the same time at the end of the contest? So we're all in the dark for 3 months? I think going a installer route is giving up on java on the web, which although may be warranted it does create other problems for the contest. It may be suited for archive purposes, but not for an ongoing contest. Then you might ask, what's the purpose of the website if all the games are in a downloadable installer?

Check out the 4K competition @ www.java4k.com
Check out GAMADU (my own site) @ http://gamadu.com/
Offline SHC
« Reply #20 - Posted 2013-09-09 02:01:35 »

Why not allow external libs like Ludum Dare? Ignore the size of the library.

Offline Jimmt
« League of Dukes »

JGO Kernel


Medals: 136
Projects: 4
Exp: 3 years



« Reply #21 - Posted 2013-09-09 03:23:48 »

Why not allow external libs like Ludum Dare? Ignore the size of the library.
Then you could include all your code in the 'library' - actual game size becomes arbitrary.
Offline moogie

JGO Knight


Medals: 13
Projects: 6
Exp: 10 years


Java games rock!


« Reply #22 - Posted 2013-09-09 04:49:17 »

There's no plan to end the contest.
I understand that... but i guess the writing is on the wall with no viable web delivery methods...

reviewing 70 games is a tedious process for anyone, and honestly I get a bit anxious about it Cheesy
I understand that. I am willing to be a judge, however my game-credentials are pretty non-existent Smiley

Quote
I'm not quite sure about that in nstaller. How would the contest work?
Well I thought that the contest rules would stay the same as last year, i.e. applets, 4k jar. However there would be an alternative for people who do not have java or have turned off applets or scared of the security prompts.... and that would be an native executable version.

Off the cuff thoughts about how it would work would be that when a entrant submits a game, it is automatically compiled to windows and linux natives. From my limited experience with ExelsiorJet, these executables will require an 'embedded' runtime. So to make the total size per entry smaller an "installer" application can exist whose function is to be a launcher of sorts. It would:
1. provide the 'embedded' runtime necessary for all the execuatables.
2. request the latest list of entries from the java4k site.
3. allow the user to download and play a selected game.

An offline compendium of all the entries could be made during and after entry closure by pre-including all the latest native executables.

Offline NegativeZero

JGO Knight


Medals: 30
Projects: 2
Exp: 3 years


Zero but not.


« Reply #23 - Posted 2013-09-09 04:53:58 »

Why not allow external libs like Ludum Dare? Ignore the size of the library.
Then you could include all your code in the 'library' - actual game size becomes arbitrary.

I think he means libraries such as LWJGL, Slick2D and LIBGdx
Offline SHC
« Reply #24 - Posted 2013-09-09 05:04:12 »

Keep a restriction that when submitting, libraries must be separate jars. Won't it suffice?

Offline princec

JGO Kernel


Medals: 404
Projects: 3
Exp: 16 years


Eh? Who? What? ... Me?


« Reply #25 - Posted 2013-09-09 08:09:54 »

Sort of defeats the point of the 4k contest if you let any old arbitrary libraries in. Where do you draw the line?

Cas Smiley

Offline Abuse

JGO Knight


Medals: 13


falling into the abyss of reality


« Reply #26 - Posted 2013-09-09 11:50:50 »

Even with a permitted set of libraries, it'd dramatically increases the scope of the games.

4KB standalone (well, as standalone as the java runtime permits...) is attractive as an artifical limitation precisely because it keeps the scope down; it levels the playing field between those with lots of spare time,  and those with little.

Make Elite IV:Dangerous happen! Pledge your backing at KICKSTARTER here! https://dl.dropbox.com/u/54785909/EliteIVsmaller.png
Offline princec

JGO Kernel


Medals: 404
Projects: 3
Exp: 16 years


Eh? Who? What? ... Me?


« Reply #27 - Posted 2013-09-09 11:57:30 »

Actually I'd say it levels the playing field between those who enjoy making games an enjoyable experience to play versus those who enjoy the experience of making tiny games. It's subtle, but IMHO the end result has usually been a lot of, well, very crap games. There, I said it. All the effort really seems to go into bytecode hackery and dubious coding and smarty-pants geeky stuff and not a whole lot into interesting gaming. This is probably at least a part of the reason finding judges is so hard.

I'd rather play one well made and executed 16kb game that took 4x as long to make than twenty of the typical 4k games.

Cas Smiley

Offline pjt33
« Reply #28 - Posted 2013-09-09 12:29:45 »

IMHO the end result has usually been a lot of, well, very crap games.
Sturgeon's Law strikes again. I don't think that's down to the 4k limit.
Offline teletubo
« League of Dukes »

JGO Ninja


Medals: 48
Projects: 4
Exp: 8 years



« Reply #29 - Posted 2013-09-09 12:30:02 »

All the effort really seems to go into bytecode hackery and dubious coding and smarty-pants geeky stuff and not a whole lot into interesting gaming.

I don't quite agree with that. With the compression toolset you are allowed to use, there's not much of a need to smart-panty-hackery stuff anymore.
I do agree some entries might benefit if more thougt was given to actual gameplay instead of "finishing something", but well, that's the purpose of java 4k. It's not meant to make a game that will be enjoyable for years to come. Crappy entries will exist in every competition no matter how high you raise the byte count - just look at ludum dare.

Pages: [1] 2 3 ... 6
  ignore  |  Print  
 
 
You cannot reply to this message, because it is very, very old.

 

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

The first screenshot will be displayed as a thumbnail.

Longarmx (50 views)
2014-10-17 03:59:02

Norakomi (39 views)
2014-10-16 15:22:06

Norakomi (31 views)
2014-10-16 15:20:20

lcass (36 views)
2014-10-15 16:18:58

TehJavaDev (66 views)
2014-10-14 00:39:48

TehJavaDev (65 views)
2014-10-14 00:35:47

TehJavaDev (55 views)
2014-10-14 00:32:37

BurntPizza (72 views)
2014-10-11 23:24:42

BurntPizza (43 views)
2014-10-11 23:10:45

BurntPizza (84 views)
2014-10-11 22:30:10
Understanding relations between setOrigin, setScale and setPosition in libGdx
by mbabuskov
2014-10-09 22:35:00

Definite guide to supporting multiple device resolutions on Android (2014)
by mbabuskov
2014-10-02 22:36:02

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
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!