Java 4k game Programming Contest  XML
Índice dos Fóruns » Notícias
Autor Mensagem
onolox
Java Ninja

Membro desde: 20/06/2005 20:10:58
Mensagens: 294
Offline


O jogo campeão do ano passado era estilo lemmings, muito legal e viciante. Adoro esse tipo de competição.
pregospan
What is classpath?
[Avatar]

Membro desde: 07/04/2006 16:36:45
Mensagens: 5
Localização: Curitiba - PR
Offline

e ai pessoal...

quem ja fez o seu game heim?

eu fiz um aqui so pra brincar, mas ta dificil de deixar com 4k...



sera que alguem consegue deixar com 4k esse ai...

"Tudo é ensinamento, desde a pequena letra até a biblioteca toda..."
[Email] [WWW]
Grinvon
GUJ Master
[Avatar]

Membro desde: 18/08/2003 22:10:49
Mensagens: 1899
Localização: Em qualquer lugar
Offline

pregospan,

Eu tava pensando em criar um em swing e ou Java2D, mas acho que fica pior para manter o código em 4k, mas quem fizer, será uma arte.

>> Inocêncio.
[MSN] [ICQ]
Sami Koivu
Virtual Machine Man
[Avatar]

Membro desde: 16/09/2004 09:49:27
Mensagens: 574
Localização: Curitiba-PR
Offline

pregospan wrote:e ai pessoal...

quem ja fez o seu game heim?

eu fiz um aqui so pra brincar, mas ta dificil de deixar com 4k...
...
sera que alguem consegue deixar com 4k esse ai...


Olá,

Removi o package (ou seja, deixei no package default), compilei com eclipse sem as informações de debug e compressei com (Send to - compressed folder) do windows e ficou 3 833 bytes. Ou seja, dentro do limite.

O cara que escreveu o jogo que ganhou no ano passado escreveu isto:


Então acho que esse é o caminho. Esqueça da OO. Um ofuscador ajuda renomer os nomes dos campos e métodos e provavelmente até fazer outras coisas que otimizam o tamanho.

Algumas outras coisas que podem ajudar:
*Em vez de utilizar campos, utilize variáveis locais
*Minimize o número de métodos no seu classe (aquele jogo que ganhou tem um método para eventos da interface gráfica, o método main e só).
*Reuse (abuse, até) as variáveis locais, pois as instruções de bytecode que acessam os primeiro 4 variáveis locais são 1 byte, para o quinto variavel local e o resto as instruções são 2 bytes.
*Também seria bom definir os variaveis locais na ordem baseada na frequencia de uso, do jeito que os que são mais utilizados são definidos primeiro, justamente pela razão citada acima. (Não sei se o ofuscador faz isto ou não.)

[]s,
Sami

(Slightly) Random Broken Thoughts on Java Security
[Email] [WWW] [Yahoo!] [MSN]
Sami Koivu
Virtual Machine Man
[Avatar]

Membro desde: 16/09/2004 09:49:27
Mensagens: 574
Localização: Curitiba-PR
Offline

Para os eventos de mouse, teclado, etc, a abordagem do jogo Miners4k parece eficiente em termos de tamanho: Sobre-escrever o método processEvent(AWTEvent) da classe java.awt.Window e faça um switch-case para tratar os vários eventos:



[]s,
Sami

(Slightly) Random Broken Thoughts on Java Security
[Email] [WWW] [Yahoo!] [MSN]
onolox
Java Ninja

Membro desde: 20/06/2005 20:10:58
Mensagens: 294
Offline

Sobre o tamanho, é tamanho do código fonte, portanto retire tudo que não é necessário, como espaços, novas linhas, crie varáveis de uma letra...
dudaskank
GUJ Ranger
[Avatar]
Membro desde: 12/09/2003 14:59:26
Mensagens: 850
Localização: Suzano, SP, Brasil
Offline

onolox wrote:Sobre o tamanho, é tamanho do código fonte, portanto retire tudo que não é necessário, como espaços, novas linhas, crie varáveis de uma letra...


Não, o fonte não entra na conta, olha nas regras:

regras wrote: * The final game package (byte code + resources) must be below or equal to 4096 bytes



Eduardo Oliveira

Toque a balada do amor inabalável, eterna love song de nós dois...

Página
[WWW]
renatovcs
Smalltalk
[Avatar]

Membro desde: 04/11/2007 20:40:59
Mensagens: 2
Localização: Rio de Janeiro
Offline

Só para atualizar o post, vai aí o link do jogo e da notícia da proeza que nosso amigo Markus Persson conseguiu fazer. Esse poderia receber um convite de honra para fazer parte da comunidade.

E na próxima vamos ver se alguém daqui consegue chegar lá...

http://www.omelete.com.br/game/100017230/Left_4_Dead.aspx

http://www.mojang.com/notch/j4k/l4kd/

A arte de programar consiste na arte de organizar e dominar a complexidade (Dijkstra, 1972).
[Email] [Yahoo!] [MSN]
peczenyj
Moderador
[Avatar]

Membro desde: 26/03/2006 23:25:37
Mensagens: 3191
Localização: Rio de Janeiro
Offline

Realmente esse jogo é muito legal.

http://pacman.blog.br

'Não importa quanto alguém se dedique à tarefa. Ninguém consegue fazer a água da cascata cair para cima.'
[WWW]
Andre Brito
JWizard

Membro desde: 21/07/2007 17:44:31
Mensagens: 2485
Localização: Paraná
Offline

Passei um bom tempo jogando o jogo citado acima. Vi ele numa comunidade do orut.

Olhando o site, achei mais uns que considero legal:

SubPar (achei a física muito boa), RoadFighter, Cube Atck, RoadFourk (apesar de ter uma baixa velocidade, a física é muito boa).

E vocês? Quais gostaram?

Abraço.

Como organizar o GUJ.
Meu Twitter.
Meu blog.
Future proofing means making code easy to change, not trying to anticipate every possible way your code might need to change.
[WWW]
thegoergen
Virtual Machine Man
[Avatar]

Membro desde: 24/09/2007 09:44:03
Mensagens: 583
Localização: Estrela/RS
Offline

Bah... não consigo nem criar um jogo de qualquer tipo, muito menos um de 4k...

"A preguiça de pensar é a maior burrice de uma pessoa." (Diego Inácio Goergen)

CV: Diego Inácio Goergen

Administrador da UNISCWiki e Medicina UNISC
[WWW] [MSN] [ICQ]
 
Índice dos Fóruns » Notícias
Ir para:   
Powered by JForum 2.1.8 © JForum Team