Java-Gaming.org Hi !
Featured games (81)
games approved by the League of Dukes
Games in Showcase (513)
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]
  ignore  |  Print  
  4k contest is where?  (Read 8859 times)
0 Members and 1 Guest are viewing this topic.
Offline zulo

Junior Duke




Java games rock!


« Posted 2005-01-29 16:20:08 »

hi wheres the 4k contests website? when did this contest start?when does it end?
Offline oNyx

JGO Coder


Medals: 2


pixels! :x


« Reply #1 - Posted 2005-01-29 16:26:29 »

This year's 4k contest was started over at suns forums (as usual).

http://forum.java.sun.com/thread.jspa?threadID=579342&tstart=0

Spin off thread over here:
http://www.java-gaming.org/cgi-bin/JGNetForums/YaBB.cgi?board=announcements;action=display;num=1103678522

Woogley's page about the contest:
http://woogley.net/java4k.html
(not really *the* official page since is was build as an after thought to fill the gap)

Growing list of games is here:
http://woogley.net/games.html

It started around xmas (dec 13th actually) and it ends end of february. So there is still around a month left.

弾幕 ☆ @mahonnaiseblog
Offline woogley
« Reply #2 - Posted 2005-01-29 16:56:06 »

Quote
(not really *the* official page since is was build as an after thought to fill the gap)

heh "after thought" is about right. Although I do plan on keeping these games as an archive and host the official site next yaer unless there are some serious objections to that o_O;
Games published by our own members! Check 'em out!
Legends of Yore - The Casual Retro Roguelike
Offline oNyx

JGO Coder


Medals: 2


pixels! :x


« Reply #3 - Posted 2005-01-29 20:04:56 »

The thing is you aren't allowed to redistribute the games unless you got the permission from the author.

So... for avoiding any problems everyone should add a readme file, which contains something like...
*snip*

I think it would be nice if we would come up with a nice format for that readme. I just made a draft...

5 previews later... grml... curse you yabb Tongue

http://kaioa.com/k/4kreadmedraft.txt

Any suggestions?

弾幕 ☆ @mahonnaiseblog
Offline zulo

Junior Duke




Java games rock!


« Reply #4 - Posted 2005-01-30 19:00:58 »

what program do you guys use to create the most effectively compressed .jar files? what about war files?

i have my game up and running with fullscreen hehe and its already 3861bytes Tongue
+ a method for custom drawing lines and bufferedimage
Offline mlk

Junior Duke




Muppet!


« Reply #5 - Posted 2005-01-31 01:47:19 »

ASAIK war and jar are both just zip files.

To make 'em:
kzip. Try playing the the "block" option (I found /b128 shrank the file by a good few bytes).
7zip. Use it to make .zip files, not .7z files. Smiley

Offline zulo

Junior Duke




Java games rock!


« Reply #6 - Posted 2005-01-31 14:29:13 »

and what class file reducer do you use?
I have tried JOGA and ProGuard3.2 but it seems they only work with .jar files and i would like a utility that can be run from a bat file so i dont have to run the gui every time i recompile:)
my game is now 5156bytes zipped with 7-zip program..7-zip gives me 5byte better compr. then kzip hehe
Offline mlk

Junior Duke




Muppet!


« Reply #7 - Posted 2005-01-31 20:14:05 »

ProGuard 3.2:
At the commandline:
1  
java -jar "e:\proguard3.2\lib\proguard.jar" @pgtm.pro

The pgtm.pro file:
1  
2  
3  
4  
5  
6  
7  
8  
9  
10  
11  
12  
-injars       Mlk3D.jar
-outjars      Mlk3Do.jar
-libraryjars  <java.home>/lib/rt.jar
-printmapping proguard.map
-overloadaggressively
-defaultpackage ''
-allowaccessmodification

-keep class Mlk3D extends java.awt.Frame  {
    public static void main(java.lang.String[]);
    public int compare( Object, Object);
}


My complete build process:
1  
2  
3  
4  
5  
6  
// cpp -P Mlk3D.jp -o Mlk3D.java && javac -source 1.4 -target 1.4 Mlk3D.java
// zip  Mlk3D.jar Mlk3D.class
// work: java -jar "z:\proguard3.0.1\lib\proguard.jar" @pgtm.pro
// home: java -jar "e:\proguard3.2\lib\proguard.jar" @pgtm.pro
// echo y | unzip  Mlk3Do.jar
// kzip /y /b128 Mlk3D.jar Mlk3D.class

From http://www.woogley.net/j4k/mlk/Mlk3D.html

Offline Abuse

JGO Knight


Medals: 13


falling into the abyss of reality


« Reply #8 - Posted 2005-01-31 22:11:25 »

Only 1 obfuscator mlk  Shocked

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

Junior Duke




Muppet!


« Reply #9 - Posted 2005-01-31 22:19:35 »

Uh?

Yeah, I never been bothered to figure out the rest Cheesy

I keep playing to write some funky ant task that will use each of the combernations (proguard/kzip,jax/kzip,jax/7zip...) and then delete all but the smallest, but I'm lazy  Wink


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

JGO Coder


Medals: 2


pixels! :x


« Reply #10 - Posted 2005-01-31 22:26:33 »

jax->jarg->kzip should produce the smallest (or at least pretty small) files.

Well, I can't be arsed to use jax. Didn't got it working the last time I tried.

弾幕 ☆ @mahonnaiseblog
Offline zulo

Junior Duke




Java games rock!


« Reply #11 - Posted 2005-02-02 08:19:42 »

could you also / someone please post the smallest code you know for just initiating an fullscreen application with bufferstrategy? I believe i have alot of "correct" stuff in there on how to do fullscreen..like checking what modes are available on the computer etc..
Offline Abuse

JGO Knight


Medals: 13


falling into the abyss of reality


« Reply #12 - Posted 2005-02-02 10:03:59 »

The *smallest possible* has to be written in bytecode.

In Java, you want something like :-

1  
2  
3  
4  
5  
6  
7  
8  
GraphicsDevice gd;
(gd = getDevice()).setFullScreenWindow(this);
gd.setDisplayMode(new DisplayMode(1024,768,16,60));

// the rest of your init code...
// (you will run into problems if you try and create the BufferStrategy immediately after the DisplayMode has been changed)

createBufferStrategy(2);


I gotta say, im amazed how poor *all* the obfuscators are at producing size optimal code.
I guess that is the next size optimisation step for the 4K contest entrants - write your own bytecode optimiser - I estimate a further saving of 1-2% (beyond the most optimal implementation possible in straight Java)

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

JGO Coder


Medals: 2


pixels! :x


« Reply #13 - Posted 2005-02-02 14:41:44 »

Quote
[...]
I guess that is the next size optimisation step for the 4K contest entrants - write your own bytecode optimiser - I estimate a further saving of 1-2% (beyond the most optimal implementation possible in straight Java)


1.5 Webstart compression (pack200/gzip) yields much more. 4442 byte (jarg/kzip) vs 3342 byte (jarg/p200/7z gzip) Smiley

弾幕 ☆ @mahonnaiseblog
Offline Abuse

JGO Knight


Medals: 13


falling into the abyss of reality


« Reply #14 - Posted 2005-02-02 14:59:52 »

Surely the overhead to launch a Webstart app is going to eat all that gain.

p.s.

Beyond automated bytecode optimisation tools, we could start writing in assembly.
It gives you soooo many more options.

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

JGO Coder


Projects: 1


"Java Games? Incredible! Mr. Incredible, that is!"


« Reply #15 - Posted 2005-02-02 15:43:46 »

Quote
Surely the overhead to launch a Webstart app is going to eat all that gain.


I believe mlk just stated in another thread that the Webstart descriptor doesn't count.

I just ran pack200 on a Robotron4096 jar. 4,087 bytes down to 3,468! That's over 500 bytes saved! Shocked

Quote
Beyond automated bytecode optimisation tools, we could start writing in assembly.
It gives you soooo many more options.


Erm... knock yourself out. Unfortunately, I don't think you'll gain much more than a good bytecode optimizer will give you. Not to mention that the JAR compression is actually going to work against you as you reduce redundancy.

So Abuse, when do we get to see your entry? The world is holding their breath waiting! :-)

Java Game Console Project
Last Journal Entry: 12/17/04
Offline Abuse

JGO Knight


Medals: 13


falling into the abyss of reality


« Reply #16 - Posted 2005-02-02 16:49:21 »

Surely the webstart descriptor has to count if your app. will *only* work when using webstart Huh

Allowing jars that weren't self-executing was a slight but acceptable flex in the rules - allowing a whole webstart descriptor fo free is a *huge* change, and opens the door for many possible abuses.

For starters you can specify command line parameters for free if the webstart descriptor isn't included.

Quote

Erm... knock yourself out. Unfortunately, I don't think you'll gain much more than a good bytecode optimizer will give you. Not to mention that the JAR compression is actually going to work against you as you reduce redundancy.


Thats what I initially thought - however, I disassembled my game last year, and straight away could see dozens of simple optimisations that would cumulatively save 50-100 bytes.

Beyond that it would require code restructing, to take better advantage of the single byte %load_# instructions

I'm not saying it'd be easy, but there is definitely space to be saved there =)

Quote
So Abuse, when do we get to see your entry? The world is holding their breath waiting!


Coding all day at work doesn't fill me with enthusiasm to code at home in the evenings/weekends =/


If I take a week off work, then maybe =)
(still got 1 or 2 ideas Kev hasn't pre-empted Wink)

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

JGO Coder


Medals: 2


pixels! :x


« Reply #17 - Posted 2005-02-02 17:13:29 »

>Surely the webstart descriptor has to count if your app. will >*only* work when using webstart Huh

The html doesn't count if it's an applet. (Was that different in the past?)

>For starters you can specify command line parameters for
>free if the webstart descriptor isn't included.

Parameters aren't allowed if their purpose is to carry some data. They are allowed for changing the default behaviour like using 16bit instead of 32bit.

弾幕 ☆ @mahonnaiseblog
Offline jbanes

JGO Coder


Projects: 1


"Java Games? Incredible! Mr. Incredible, that is!"


« Reply #18 - Posted 2005-02-02 17:47:14 »

Quote
Parameters aren't allowed if their purpose is to carry some data. They are allowed for changing the default behaviour like using 16bit instead of 32bit.


I believe the rule was that the game must be capable of being run without parameters. e.g. If I downloaded your webstart JARs and created my own webstart file with no settings, it should still run. This rule was put in place to ensure that options could be used, but that no massive data sets were being space shifted out of the JAR file. :-)

Java Game Console Project
Last Journal Entry: 12/17/04
Offline luisoft

JGO Coder


Projects: 6


Java games rock!


« Reply #19 - Posted 2005-02-10 14:46:20 »

Hey woogley, I wanna add my games to the 4k Game contest. How do I submit my games?

See link
http://luisoft.o-f.com/projects/games/main.html

Tks,
Offline luisoft

JGO Coder


Projects: 6


Java games rock!


« Reply #20 - Posted 2005-02-11 15:29:53 »

woogley or anybody else... what do I need to submit my games? Huh
Offline Morre

JGO Knight


Medals: 2
Projects: 10


I'm Dragonene on IRC.


« Reply #21 - Posted 2005-02-11 19:45:44 »

I think you can just post a reference to the game in all official places;
1) http://forum.java.sun.com/thread.jspa?messageID=2954234 - Official JDC Forums thread
2) http://www.java-gaming.org/cgi-bin/JGNetForums/YaBB.cgi?board=announcements;action=display;num=1103678522 - Official JGO Forums thread
3) This forum (JGO, "Your games here").

You probably don't want to write all the info in all the places, though... just give a reference, as stated above. I'm not sure, but by doing this I've gotten one entry (only one before last update) on the "official" contest site: http://woogley.net/games.html

Offline c_lilian

Senior Duke


Projects: 1


Java games will probably rock someday...


« Reply #22 - Posted 2005-02-12 06:46:58 »

Quote
>Surely the webstart descriptor has to count if your app. will >*only* work when using webstart Huh

The html doesn't count if it's an applet. (Was that different in the past?)

>For starters you can specify command line parameters for
>free if the webstart descriptor isn't included.

Parameters aren't allowed if their purpose is to carry some data. They are allowed for changing the default behaviour like using 16bit instead of 32bit.



So will the rules be updated ?

"The game must be playable on command line OR via JWS (or both of them)"

My game in Pack200.GZIP + JNLP file is smaller than a single jar, meaning i could put more code inside, but this couldn't be played anymore on command line (java -cp... doesn't undestand Pack.gz format).


Lilian

Pages: [1]
  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 (46 views)
2014-10-17 03:59:02

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

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

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

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

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

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

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

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

BurntPizza (82 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!