Java-Gaming.org    
Featured games (81)
games approved by the League of Dukes
Games in Showcase (491)
Games in Android Showcase (112)
games submitted by our members
Games in WIP (556)
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  
  Boxman Recreated!  (Read 1736 times)
0 Members and 1 Guest are viewing this topic.
Offline Scyth3Gaming

Senior Newbie





« Posted 2013-03-09 02:34:18 »

This Java2D game is my latest work, it is a complete re-construction of my crappy original Boxman game.

Features:
Randomly Generated Maps.
12x12 grid
Target finding enemy
Optional fixed maps.
Map maker
Screenshots in all game states
Sound
Barrier exploding bombs
Shock charges to stun enemy

I will provide a download for the .jar, and the source. Source and Jar are 100% up to date

http://dl.dropbox.com/u/59761129/Boxman_Recreated.jar [Game]
http://dl.dropbox.com/u/59761129/Source.rar [Source]

Let me know how it is, BTW. I am 14, So let me know if I am good for my age.
Offline HeroesGraveDev

JGO Kernel


Medals: 246
Projects: 11
Exp: 2 years


┬─┬ノ(ಠ_ಠノ)(╯°□°)╯︵ ┻━┻


« Reply #1 - Posted 2013-03-09 03:01:38 »

Programming skill doesn't have to do much with age. (I'm 14 too)

The AI is okay for a map of that size and complexity. But on a larger map it would fail. If you put a wall between you and the enemy, it will just stay there.

It's a pretty reasonable game. In a larger map it would be quite interesting.

Graphics would be the first improvement.

Offline Scyth3Gaming

Senior Newbie





« Reply #2 - Posted 2013-03-09 03:13:09 »

Programming skill doesn't have to do much with age. (I'm 14 too)

The AI is okay for a map of that size and complexity. But on a larger map it would fail. If you put a wall between you and the enemy, it will just stay there.

It's a pretty reasonable game. In a larger map it would be quite interesting.

Graphics would be the first improvement.

Thanks, but I don't think there is room for graphics improvement. With the style of game. But this is by no means the extent of my ability.
Games published by our own members! Check 'em out!
Legends of Yore - The Casual Retro Roguelike
Offline Sammidysam
« Reply #3 - Posted 2013-03-09 04:16:12 »

When I double click on the game nothing is drawn on the screen.  There are menus however.  When I launch via cmd, things are drawn.  I assume this error comes from Java 2D, as when used it sometimes is picky as to whether it works with the java that runs via cmd or the java that runs via double-clicking (I'm pretty sure they are separate).  This isn't worth stressing over.  I looked a tiny bit at your source code and I really dislike your Variables class.  Tons of static fields really aren't pretty.  I highly suggest you revise that.

EDIT: Methods class too.  Everything is static there as well.
Offline Scyth3Gaming

Senior Newbie





« Reply #4 - Posted 2013-03-09 05:28:06 »

When I double click on the game nothing is drawn on the screen.  There are menus however.  When I launch via cmd, things are drawn.  I assume this error comes from Java 2D, as when used it sometimes is picky as to whether it works with the java that runs via cmd or the java that runs via double-clicking (I'm pretty sure they are separate).  This isn't worth stressing over.  I looked a tiny bit at your source code and I really dislike your Variables class.  Tons of static fields really aren't pretty.  I highly suggest you revise that.

EDIT: Methods class too.  Everything is static there as well.

When you load the jar, sometimes the graphics don't draw, minimize it and open it again. Sometimes the KeyListener doesnt respond. Just close and re open

And everything in the methods class is static for a reason. Less typing. I.E

Non static method:
1  
new Methods().someVoid();


Static:
1  
Methods.someVoid();
Offline HeroesGraveDev

JGO Kernel


Medals: 246
Projects: 11
Exp: 2 years


┬─┬ノ(ಠ_ಠノ)(╯°□°)╯︵ ┻━┻


« Reply #5 - Posted 2013-03-09 05:46:43 »

And everything in the methods class is static for a reason. Less typing. I.E

Non static method:
1  
new Methods().someVoid();


Static:
1  
Methods.someVoid();


What Sammidysam means is that it needs to be coded in a different way.

Offline Jimmt
« League of Dukes »

JGO Kernel


Medals: 128
Projects: 4
Exp: 3 years



« Reply #6 - Posted 2013-03-09 06:00:48 »

1  
new Methods().someVoid();


Static:
1  
Methods.someVoid();

You are missing the point of statics. Statics are supposed to be independent of the object, a value/method of the class. For example getHealth() is not to be used as a static method because the health is different per object of that class. Overall, you should (almost) always take readability/good oop design over "less typing". And in this case, it's not even really less typing because it's not like you would instantiate a new object every time you would want to call a method.
Offline Scyth3Gaming

Senior Newbie





« Reply #7 - Posted 2013-03-09 06:30:30 »

And everything in the methods class is static for a reason. Less typing. I.E

Non static method:
1  
new Methods().someVoid();


Static:
1  
Methods.someVoid();


What Sammidysam means is that it needs to be coded in a different way.

I don't think it makes too much of a difference. BTW, I made the frame adjust to the maximum size possible with the game board extending to fix as close as possible (It's still in a perfect square)
Offline HeroesGraveDev

JGO Kernel


Medals: 246
Projects: 11
Exp: 2 years


┬─┬ノ(ಠ_ಠノ)(╯°□°)╯︵ ┻━┻


« Reply #8 - Posted 2013-03-09 07:40:51 »

It may not make much of a difference this time, but if you want to get better at programming you have to learn from your mistakes instead of pretending there aren't any.

Nobody writes 100% perfect code.

Offline Sammidysam
« Reply #9 - Posted 2013-03-09 13:52:46 »

Besides, if you are really going for less typing, making them not static and doing the following is even less typing:

1  
2  
Methods m = new Methods();
float circumference = m.getCircumference();


I just added in the circumference thing because it's more fun.

The point stated is that static is not the answer.

I guess an example of an improvement would be making a Box class instead of storing its variables in Variables statically.  Then you can get its values from a getter inside that Box class.
Games published by our own members! Check 'em out!
Legends of Yore - The Casual Retro Roguelike
Offline Scyth3Gaming

Senior Newbie





« Reply #10 - Posted 2013-03-09 14:01:17 »

Besides, if you are really going for less typing, making them not static and doing the following is even less typing:

1  
2  
Methods m = new Methods();
float circumference = m.getCircumference();


I just added in the circumference thing because it's more fun.

The point stated is that static is not the answer.

I guess an example of an improvement would be making a Box class instead of storing its variables in Variables statically.  Then you can get its values from a getter inside that Box class.

I completely get what you mean. And at this point I am just typing because these SMF forums wont let me post because it's too short.
Offline Jimmt
« League of Dukes »

JGO Kernel


Medals: 128
Projects: 4
Exp: 3 years



« Reply #11 - Posted 2013-03-09 16:30:49 »

Not SMF, it's Riven's anti-spam value-adding anti-overquoting measures.
Offline Scyth3Gaming

Senior Newbie





« Reply #12 - Posted 2013-03-09 16:37:47 »

Not SMF, it's Riven's anti-spam value-adding anti-overquoting measures.

Oh, but its pretty annoying that I cant post a simple response without dragging it on with pointless explanations.
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.

Nickropheliac (15 views)
2014-08-31 22:59:12

TehJavaDev (23 views)
2014-08-28 18:26:30

CopyableCougar4 (29 views)
2014-08-22 19:31:30

atombrot (41 views)
2014-08-19 09:29:53

Tekkerue (39 views)
2014-08-16 06:45:27

Tekkerue (35 views)
2014-08-16 06:22:17

Tekkerue (25 views)
2014-08-16 06:20:21

Tekkerue (36 views)
2014-08-16 06:12:11

Rayexar (72 views)
2014-08-11 02:49:23

BurntPizza (49 views)
2014-08-09 21:09:32
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

List of Learning Resources
by SilverTiger
2014-07-31 11:54:12

HotSpot Options
by dleskov
2014-07-08 01:59:08
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!