New j4k contest anytime soon?

I agree with every single statement in that post, jbanes. :slight_smile:

Especially about the 4k limit. 2k is too small for anything sensible. 8k is starting to approach ā€œreal gameā€ size instead of ā€œfun challengeā€ size.

I agree with jbanes too.

[quote]Nobody gets within the limits because they found some secret switch on 7zip as opposed to doing something brilliant in their code.
[/quote]
To me finding that secret switch is part of the 4k fun.

To me finding that secret switch is part of the 4k fun.
[/quote]
Thatā€™s my secret switch. Hands off :wink:

Mucking about with obfusticators and various zip programs is all part of the fun. Iā€™m pretty happy with my java 1.4.2 jar crushing script. However I probably need to figure out a new solution for java 1.5 :slight_smile:

@swpalmer - I run my compression script after every build, so putting it in the online submission system wouldnā€™t really help me fine tune my jar size. Nice idea though :slight_smile:

I didnā€™t realize people put much value on the packaging phase. I just donā€™t see that as a ā€œfunā€ part of these sorts of contests. Its the algorithms and neat-o hacks that I like.

Just for the recordā€¦ I have done hardware design (itā€™s been a while now) and worked with constrained devices. For example I have built and programmed devices like 68HC11 microcontroller based ā€œrobotā€ kits (http://www.mcmanis.com/chuck/robotics/controllers/miniboard.htm) and had all sorts of fun with those things. In fact, I have a modified RC car with one of those boards sitting on the shelf in front of me :). I also have a Lego RCX robotics kit, that I program in Java even :).

Anyway, I was just throwing out some ideas, I think the main thing is to have a bit of consitency in terms of the format of the submissions and how they are executed, and it seems people are generally in agreement with that. I wonder if I will be able to enter this time aroundā€¦ work is as busy as everā€¦ but surely I have time to write 4k of code :wink:

Thereā€™s a bit of a hitch with the pack200. The only way (I can find) to make it work, with either applets or webstart, is to write a pile of stuff into .htaccess (assuming you have Apache), so that the server provides myapplet.jar.pack.gz with appropriate header, when the plug-in/webstart asks for myapplet.jar. Of course this totally fails to work, when accessing the applet direct from disc, rather than via a suitable configured server.

Soā€¦ I can deploy my 4k app on my own server, but canā€™t provide a downloadable executable if using pack200. Woogley mentioned a jnlp ā€˜snifferā€™ program as a possible solution. I guess we host our own entries, & woogley runs his sniffer over them to check that they are no more than 4k. However, since this has to be done online, itā€™s a bit tricky to confirm Iā€™ not a dirty rotten cheat & surrupticiously (canā€™t even spell the word) loading other resources.

Maybe thereā€™s a way to make this work directly from disc & iā€™m too thick (or too tired) to see it. Maybe there isnā€™t a way to do it (but I could still be too thick or too tired). Maybe I should stop writing tripe & get some sleep.

Alan (ZZZzzzzzzzā€¦)

To run a pack200 applet from my harddrive, I just double click on the html page. I have jre 1.5.05 as my errrrr, jre.

I tried executing a pack200 applet from my geocities site and it didnā€™t work, not a surprise. Like the Alan indicates, there are setup issues with apache.

I have some space on myjavaserver.com (ie javalobby) I havenā€™t used, Iā€™ll try it on there if I can find my passwordā€¦ ie Iā€™m thinking if anyone would allow you to host pack200 applets, they would.

Edit; myjavaserver.com didnā€™t work either. They seem to have stopped responding to messages on the ā€˜suggestionā€™ forum too. Hmmmmmā€¦ :-\

How about supplying a download that includes the html run it?

two thingsā€¦ I am able to tell if you use online resources at runtime by running it locally with my modem turned off and watching for IOExceptions in the command window :stuck_out_tongue:

the other thing is donā€™t even worry about using pack200ā€¦ you will see why when I post the official thread

I think the mechanism is to specify myappletorapp.jar as the archive (or webstart resource). Webstart then queries the server, stating that it can accept jars & pack.gz in the MIME type. The server looks for the pack.gz MIME type and if present, returns myappletorapp.jar.pack.gz instead of myappletorapp.jar.

Now if I happen to have an unpacked jar in the same directory on my harddisc, then the applet/app runs, because the unpacked jar is picked up in preference. Possibly Applets also run if I have the un-jared classes in the same directory, which is pretty likely. (I tried to run Nonnusā€™s Combat4k jar from last year, which failed because of a lack of a manifest. It ran fine when I un-jared the classes into the same directory).

However, it seems that Woogley is unflustered, so Iā€™ll park the whole pack200 thing for now & get back to thinking about content. :slight_smile:

Alan

I think Iā€™m going to try to enter this time around.

This was the recommendation of 2 judges from last year, IIRC :).

Easy to deal with, Woogley may have already done so. I could do that on JGF now, but Iā€™m a lot more concerned with fixing the meory leak these days.

Actually, I tihkn you have that the wrong way around. Webstart: run once, and quit. Now cached. Applet: run once, and quit, try and reload and you find the secondary-files form the webserver have NOT been cached. Youā€™re screwed. Applet fails to run.

[quote=ā€œswpalmer,post:63,topic:25185ā€]

Yep. c.f. previous comment about webstart and caching. But, in my case, it was judged in phases (on airplane, at conference centre (with internet), in hotel (without internet) :)) so different things preferred at different times.

This was my very strong recommendation from last time too. Frankly, I find it sad that this is even being debated, given that we, as judges, made such a huge point of this last year. There were arguments back then, and we replied, and I got the impression some people still werenā€™t convinced, but ā€¦ you know, we actually did try and work through every game, weā€™re developers ourselves, we can fix a lot of crap, and we still found it extremely difficult in more than a few cases.

There were also several other major recommendations we made. No-oneā€™s thought to email me to ask for input this time around, so Iā€™m hoping Woogley got all those comments and has taken them into account. If not, TBH I canā€™t be bothered to go through it all all over again. Weā€™re not exactly hard to find or contact, if people canā€™t even be bothered to ask, Iā€™m fed up trying to tell them.

Great attitude!

People who canā€™t be bothered to try to get things to run shouldnā€™t be judges.
I enter the competition to try to squeeze a fun game into 4k, not to worry about how some moody judge will like my packaging.

last year there was about a month of wasted time debating the rules - not this year. the contest is running almost the exact same way as last year with only a few minor changes such as no command lines. gamers should be able to click a game link in java unlimited and then immediately be playing a game. itā€™s fine if you zip your files and the user has to unzip it, but it should never get to the point of using the command line. the only games that really need to be zipped are applet-based games because they need an HTML file and a JAR file to run. Most application-based games can get away with just living inside one JAR file.

This isnā€™t about the judges, itā€™s about the players. Look at the download numbers for games in Java Unlimited - and thatā€™s AFTER the contest. Itā€™s not just judges and java devs playing these games, you have some gamers googling around for games who know nothing about the command line and barely anything about unzipping

Fine

Does this include executable zips, or is webstart compulsary. Are you supporting pack.gz archives serverside or do we need to use regular zip archives only? Are the judges going to judge the entries directly from java unlimited, or do I need to provide a downloadable version that runs offline. Offline running from harddisc with no server means no pack200.

Are you directly supporting applets, or only indirectly via downloading a zip with the relevant files. It wonā€™t be possible to use pack200 on the latter, as you need server support to send the archive with the correct MIME type. Running directly from disc doesnā€™t cut it with pack.gz archives.

I donā€™t really care whether pack200 is in or out, but will need to know when the rules are published, whether it is indirectly prohibited by the rules regarding how the game is to be executed.

Thanks
Alan :slight_smile:

youā€™ll be getting the full set of rules on launch day. but like I said earlier, do not worry about pack200 at all. Also, the only person that will be running the entries offline is me, and thatā€™s just to validate that no online resources are used. everybody else including the judges will be running them through Java Unlimited the exact same way as normal players.

the reason that pack200 is out for at least this year is because java 1.4.2 is the minimum compatibility requirement. Next year the minimum will most likely be java 5, in which case pack200 will be allowed. This also means next year could be the most impressive year to date since pack200 reduces JARs almost 50% more. The reason for this is that I log on Java Unlimited what java version a user is running (provided the browser provides the information), and Iā€™ve also been looking at Webstartā€™s signature when it downloads the resourcesā€¦ after rounding it off it comes to this:

[] 75% of users are running Java 1.4
[
] 15% are running Java 5
[] 5% are running Java 1.3
[
] 5% are running MSJVM (Java 1.1) or Java 1.2

Iā€™m not sure what the official percentages are over the entire web, but this is how it is on my site. Most likely next year will yield more Java 5 users. Until then, no pack200.

edit: for those who are randomly curious of how these stats are found, this is what webstartā€™s signature looks like:

[quote]but like I said earlier, do not worry about pack200 at all.
ā€¦
the reason that pack200 is out for at least this year is because java 1.4.2 is the minimum compatibility requirement.
[/quote]
Iā€™m glad you clarified this, because ā€˜donā€™t worry about itā€™ could mean anything, either affirmative or negative.

Iā€™m not happy about excluding pack200, but if thatā€™s the rules then so be it. I wouldā€™ve liked to see more discussion about it though, as several of us have clearly stated we favor it. I thought last year jre 1.5 was required, but hardly anyone required it. Why the change?

edit;

[quote]This isnā€™t about the judges, itā€™s about the players. Look at the download numbers for games in Java Unlimited - and thatā€™s AFTER the contest.
[/quote]
I disagree with this too. This contest is about the challenge. Thatā€™s all. If no one participated then there wouldnā€™t be any games to 1) judge or 2) download.

@Woogley

Thanks for the clarification. Iā€™m quite happy to stay with 1.4.2. I was planning to anyway, before the extra available compression of pack200 tempted me to the dark side ;D

Alan

As Blah wrote ā€œā€¦you know, we actually did try and work through every game, weā€™re developers ourselves, we can fix a lot of crap, and we still found it extremely difficult in more than a few cases.ā€

It is absolutely ridiculous to put the responsibility of making things work on the judges! Itā€™s not THEIR entry! Thatā€™s the crappy attitude. People that canā€™t be bothered to make things work properly, shouldnā€™t be contestants. That seems to make a lot more sense.

Amoung the suggestions from last year: Have a warm up phase where people (including judges) can provide feedback, explaining what happens when they try to run it on their system. This gives contestants the opportunity to work out glitches that they did not encounter with their own system. I think it is particularly important because of the cross-platform nature of the contest. If the entry still doesnā€™t work after that, then it will be reflected in the score.

I disagree with this too. This contest is about the challenge. Thatā€™s all. If no one participated then there wouldnā€™t be any games to 1) judge or 2) download.
[/quote]
The This I was referring to in that quote was about the reason the command lines were excluded, it wasnā€™t defining the meaning of the contest.

this is a good idea, although last year most entries were posted here at JGO and received quite a bit of feedback before the judging. either way itā€™s a good idea to have people test your games out - ā€œproofread,ā€ if I may :stuck_out_tongue:

By the way, whoever was asking why the minimum java requirement was changed: I want devs to have equal opportunity in the contest. Some devs either have 1.4 compilers or they may have 1.5 but donā€™t want to lose compatibility with earlier versionsā€¦ or whatever. The point is, when java 4K sets the minimum requirement to Java 5 - everyone will HAVE to use Java 5 because of the pack200 advantage. If we have a mixed version development, most 1.4 based games will be DOA due to the tighter size constraints of not having pack200. Itā€™s a matter of which java platform is currently more available - this year itā€™s java 1.4.