Believer![]() Member Posts: 80 From: British Columbia, Canada Registered: 01-30-2001 |
I've uploaded an early version (meaning not even BETA quality yet) of my first attempt at writing a game in Java. It's a breakout clone with a "Joshua @ Jericho" theme. This not only my first game in Java, but it's only my second attempt at writing anything in Java (third if you count "Hello World" :-) so please be nice... From a coding point of view it's mostly finished. Just a couple of tweaks, a handful of additional "goodies" (powerups). Then the bugs that people will no doubt discover... It needs more/better wall designs, but that part's easy. Currently it has three wall patterns (just test ones). Some bricks take multiple hits, some break with a single hit. If you get to level 3 you'll see steel bricks that can't be broken. Although none of the levels use it yet, bricks can also have armour on one or more sides (meaning you can only take them out from particular angles). Currently there are three goodies (multiball, +500 points, free life). I have a list of about 15 more I'm adding. It has sound effects. Some of these I'll keep, some need replacing. It has a demo mode - when it gets to the title screen just don't do anything. It will (after about 30 seconds) start playing by itself. It will toggle back and forth between demo mode and the title page until you hit a key to start your game. Press a key/mouse button to launch a ball. Move the paddle with your mouse. Hit 'p' to pause/unpause the game. The biggest thing it needs is better artwork. The title page is nothing more than text at the moment. It has a single lame backdrop for the levels (there needs to be more of them). The bricks are just rectangles right now, I'd like to replace them with images that look like rocks/bricks/etc. I think the balls are ok (they are music notes). The paddle is a little lame - it's supposed to be the bell of a trumpet. Goodies need tweaking, etc. Anyway, here's the URL: http://christian.net/games/jericho You'll need the Java 1.4.x plugin. Your browser should prompt you to install it if you don't already have it. Mark |
InsanePoet![]() Member Posts: 638 From: Vermont, USA Registered: 03-12-2003 |
Hey, need any help? ------------------ |
Believer![]() Member Posts: 80 From: British Columbia, Canada Registered: 01-30-2001 |
Well, I need more level designs. Those are easy. The walls are 15 bricks wide by 10 bricks high. You can have steel bricks (indestructible), armour-protected bricks (one or more sides are protected), and bricks that take anywhere from 1 to 8 hits before they disappear. Brick colour/image is completely independent of the type of brick. Or, if you're an artist I could really use a few graphics. Mainly the title screen and a few backdrops. These can optionally have animated parts (like a waving palm tree, moving clouds, whatever). I'll accept level ideas/designs from anyone, but I want the graphics to have a consistant look to them so I'll probably have to restrict it to a single artist (I haven't got anyone yet though). And of course I'm interested in ideas (special brick types, ideas for more powerups, etc.). Mark |
InsanePoet![]() Member Posts: 638 From: Vermont, USA Registered: 03-12-2003 |
I can make you some bricks if you need them. ------------------ |
Gift Member Posts: 85 From: Palatine, IL, USA Registered: 02-11-2001 |
Nice Game, I did a little first game like space invaders, using 1.3 and then stoped using Java for a long time how is 1.4? How did you do your colision detection? Do you monitor every block or only those that are posible to colide with? Love in Christ |
Believer![]() Member Posts: 80 From: British Columbia, Canada Registered: 01-30-2001 |
quote: Ack! Thanks for the offer, but I stayed up all night making new bricks myself. Should've waited :-) I'll be uploading an updated version (better bricks, some more levels, and more powerups) tonight or tomorrow. Mark |
InsanePoet![]() Member Posts: 638 From: Vermont, USA Registered: 03-12-2003 |
Hey, I think i can improve the horn a bit. ------------------ |
Believer![]() Member Posts: 80 From: British Columbia, Canada Registered: 01-30-2001 |
quote: Ok. It needs to be 40 pixels wide by 20 pixels high. There also needs to be a 60x20 and a 20x20 version (for large/small paddle modes). 256 colors, no antialiasing around the edges (it needs to be displayed over various backdrops of different colors). Mark |
Believer![]() Member Posts: 80 From: British Columbia, Canada Registered: 01-30-2001 |
quote: Wouldn't know what to compare it to since I've never used Java before, but I kind of like it. It's perfect for web games like this. Don't think I'd use it for a "serious" stand-alone game (not one that needed any serious speed that is).
quote: When I move a ball, I check to see if it's within the large rectangle that encompasses all the bricks. If it is, then I divide the X by 15 and the Y by 10 to get a specific brick in the 2d array, then I check to see if that brick has any hits left. If it does then it's a hit. Never need to test more than one brick (unless there are multiple balls of course). Mark |
InsanePoet![]() Member Posts: 638 From: Vermont, USA Registered: 03-12-2003 |
1. Ok, i can get you cooler bricks if you'd like 2. Bug #1: if you move the mouse of the game screen, you can't move the paddle until you go back. 3. I'm gonna modify your horn. ------------------ |
InsanePoet![]() Member Posts: 638 From: Vermont, USA Registered: 03-12-2003 |
I can't seem to find the paddle files in my temp folder. Can you send them to me InsanePoet01@yahoo.com ------------------ |
Believer![]() Member Posts: 80 From: British Columbia, Canada Registered: 01-30-2001 |
quote: Sure. They must be 32x16 pixels, 256 colors. I'll consider them, won't promis I'll use them (but I probably will).
quote: Not a bug. That's the way Java works. If you move your mouse off the applet the mouse events are no longer sent to it.
quote: I made a mistake. The horn is 50x20 pixels. I also need 70x20 and 30x20 versions. You can grab the horn at http://christian.net/games/jericho/paddle.gif Mark |
Believer![]() Member Posts: 80 From: British Columbia, Canada Registered: 01-30-2001 |
Ok, I've updated the online copy. This version has my new bricks, more sound effects, more powerups (ball blocker, x2 points, x3 points, and powerball). Also fixed a few bugs, upped the frame rate, and made the balls get faster over time, etc. Still needs better artwork (including the new powerups, which are just blue squares right now). Mark |
InsanePoet![]() Member Posts: 638 From: Vermont, USA Registered: 03-12-2003 |
i'm still working on the horn. Maybe the powerups should be in an orb or something. ------------------ |
BenjaminBenz![]() Member Posts: 15 From: timbuctu, Alberta, Canada Registered: 12-22-2002 |
Hey, I thought that JAVA was a Web based thing. Info please! ------------------ |
CobraA1![]() Member Posts: 926 From: MN Registered: 02-19-2001 |
Believer: Looks nice. Gift: Java 1.4 includes "assertions" that I've yet to try out. They've improved the runtime speed somewhat also. I'm not sure how much faster than 1.3, bit it's defnitely much faster than 1.2 and below! You can probably get a more complete list of changes at java.sun.com . Unfortunately a lot of people might still be using 1.2 and below and not know it - detecting the Java version is always a good idea for any program.
quote: You'd be surprised. Tried the hotspot VM yet (if you're using JRE 1.3 or above or the Java 2 SDK 1.3 or above, you've got it)? In any case, most of the graphics stuff should be done using hardware if possible. I'm not sure what Java does for 2D, but 3D using Java3D or OpenGL for Java is hardware accelerated. Using threads might help - this way something that's processor intensive need not interfere with something that requires little processor time. You will have to watch for things in one thread that affect the other one, though . . . Later, after some research: Sun has a few articles on optimizing Java programs, and other articles are available on the Internet. I forget where they are, though - I'll have to do some more research. Good programming practices, good data structures, and good algorithms are always better, regardless of programming language! I'd rather use an algorithm that runs O(n) time in BASIC than an algorithm that runs O(n^2) time written in fully-optimized ASM!
quote: Java is a full-fledged programming language, just like C/C++. Initially, it was interpreted, but now it's compiled at runtime (static compilers are rare, but available). Modern VMs, such as Sun's hotspot VM, will even do optimizations while the program is running. Although you see Java in applets a lot, its true power lies in the ability to make standalone applications. With the standard libraries alone, you can easily make any type of application you want. Applets are limited compared to apps, since they have extra security measures to protect the user's machine from potentially harmful applets. |
CobraA1![]() Member Posts: 926 From: MN Registered: 02-19-2001 |
The first level takes a while to complete - the note moves rather slowly. Pausing the game while the mouse is outside the applet is nice. . . . although it makes it easier to cheat - you can make the trumpet move instantly by sliding the mouse off the bottom and back on somewhere else . . . [This message has been edited by CobraA1 (edited December 22, 2002).] |
Mack![]() Administrator Posts: 2779 From: Registered: 01-20-2001 |
Pretty neat little game! I thought it was humourous and tied in well with the Biblical facts your basing the game off of (horn, note, wall, heh ![]() ![]() ------------------ |