XIQ - a kind of Qix remake

Hi,

Here’s a small game I’ve written this week… It was meant to be for the 4k contest but I couldn’t resist adding new things until the thing exploded the 4k limit… ;D

Play XIQ : http://www.javapause.com/games/xiq

The game isn’t finished yet : scoring and enemy AI need improvements, and there are weird speed bugs from time to time.

For those of you who don’t know qix, the goal is to draw closed shapes on a game surface (filling them as soon as they are closed), while avoiding nasty bugs flying around you and your track.

If you like the game, there’s an online scoring system waiting for your entries !

I’ll update the game in the coming days when I have more time, to add new gameplay elements and fix framerate issues, I’ll post here when it’s done.

your comments are welcome !

Lilian :slight_smile:

It’s a good QIX clone :slight_smile:
All ran nice and smoothly.

However, when an enemy hit the line I was currently drawing, it barfed:


NEXT STATE menu
reading scores !
NEXT STATE start level
NEXT STATE play
dist too long
dist too long
dist too long
dist too long
NEXT STATE level failed
NEXT STATE start level
NEXT STATE play
dist too long
NEXT STATE level failed
NEXT STATE start level
NEXT STATE play
NEXT STATE game over
Exception in thread "Thread-3" java.security.AccessControlException: access denied (java.lang.RuntimePermission exitVM.0)
	at java.security.AccessControlContext.checkPermission(Unknown Source)
	at java.security.AccessController.checkPermission(Unknown Source)
	at java.lang.SecurityManager.checkPermission(Unknown Source)
	at java.lang.SecurityManager.checkExit(Unknown Source)
	at javax.swing.JFrame.setDefaultCloseOperation(Unknown Source)
	at xiq.XiQApplet.showGameOver(XiQApplet.java:986)
	at xiq.GameApplet.run(GameApplet.java:104)
	at java.lang.Thread.run(Unknown Source)
[/quote]

Yeah, very nice, crashed a few times after dying (didnt check my console, maybe same problem as above)… Will defo try this again when the little problems have been ironed out, got loads of potential (didnt get very far tho, about 30% but will try again in a few days).
Shame ya missed the 4k…

small (but important) update : I’ve fixed the score submission problem and some deadlocks : the game is much more playable now.

Lilian :slight_smile:

The speed of the ‘thingies’ seems to vary quite a bit between reloads of the applet. Maybe it’s my imagination, but sometimes it’s really hard, and when I hit F5 in frustration, seems (?) dead-easy.

Further the bouncing with random angles is a bit annoying: it happens very often that the enemies come straight at me, when you expect them to head in a completely different direction. It made finishing the first level almost impossible, until I just tried taking half the remaining part at a time.

Update:
Hm… that was all yesterday, today it’s much easier ;D

yes, there was a bug in a post animation trigger that caused the bouncing enemies to be animated twice per frame…

about bouncing : it will change soon, but for the enemies aiming at you … it’s on purpose (and it happen more and more once you reach higher levels) but there are strategies to avoid it (like drawing “fences”).

Lilian :slight_smile:

updated (again) !

now with better oponents, easier gameplay, and amazing (well, IMHO) images to discover !

http://www.javapause.com/games/xiq/xiq_screenshot.jpg

Lilian :slight_smile:

In the version i played the game was won when i had roughly 25% of the map… shuold that be 75% again (according to the text above the applet you need to get 3/4 of the map)

yes, the 25% was for a test and I forgot to remove it for an hour or son.

now, levels start with slower and fewer ennemies, and a completion target of 60%

The new yellow ennemies are trickier as they are meant to chase you from time to time, whereas the others are just randomly bouncing.

I’m going to work on bonus now (shields, extra points when you capture an enemy on a smaller surface, etc.)

Any ideas and comments welcome !

Lilian :slight_smile:

Too easy now.

Oh, and I wonder why taking a large piece of land doesn’t give you the allocated pixel + 2x1000 points.

To get a high-score now, you need to get a lot of ‘small’ chunks of land, while that’s easy, and taking large pieces it really hard. You should be rewarded to claim larege areas, not punished.

you are right, I’ve updated the scoring system and difficulty.

Level 4 is where things become interesting.

Lilian :slight_smile:

absolutely loving this game, for some reason i keep comming back to play it, works great on my windows computer, but on the linux computer the game freezes up every now and then for a few seconds (ff2.0,jre1.5), other than that brilliant game.

was playing when i got stuck at the bottom of the screen and keep getting 500 points every second or so when an enemy respawns there.

http://img208.imageshack.us/img208/3633/gamewr3.png

fixed ! (deadlock should cause instant death now)

I’ve also increased the highscore listing to show the 50 best scores… I wonder if I should limit the number of scores submitted by a single user… You and Riven seem to have all the slots !

edited : There’s also a new scoring for enemy capture, taking into account the capture surface and the number of enemies captured in a single frame.

Lilian :slight_smile:

… and then I cancel most of my games :wink:

Anyway, nice work!

Next thing - if you want to polish it - would be to give the ‘droids’ some slick icons.

Yep, still very addicting, had enough for tonight, cant even get close to Riven…
A couple of things, every now and again runs out of heap space:-
Exception in thread “Thread-839” java.lang.OutOfMemoryError: Java heap space
and after I submit a high-score the game stops responding. browser refresh fixes problem which is no bother but would be nice to eliminate all the little minor bugs for better playability…

To name such a ‘minor bug’:

On the start of a new level (or on pressing F5: applet-load-time), sometimes (eh, quite often) the ‘state’ of 1 of the arrow-keys is already ‘pressed’.

When the game thinks UP is pressed, you’re pretty much stuck (it seems), the game won’t react to DOWN, until you press and release UP to forcibly reset the state.

IIRC the static (?) variables in an applet can keep their values when the applet is reloaded, which might cause this behaviour?
Maybe setting all states to false in the init() method will fix this?

Wow kapta, you’re getting way too close :slight_smile:

hehe, damn just missed it by a bit ;D
could swear the game is rigged to go super crazy when reaching your score ;D

err… was playing when the game just crashed with following error on console

Exception in thread "Thread-142" java.lang.OutOfMemoryError: Java heap space
	at java.util.Arrays.copyOf(Arrays.java:2760)
	at java.util.Arrays.copyOf(Arrays.java:2734)
	at java.util.ArrayList.ensureCapacity(ArrayList.java:167)
	at java.util.ArrayList.add(ArrayList.java:351)
	at xiq.XiQApplet.fillSurface(XiQApplet.java:513)
	at xiq.XiQApplet.paintImage(XiQApplet.java:420)
	at xiq.XiQApplet.showPlay(XiQApplet.java:1091)
	at xiq.GameApplet.run(GameApplet.java:125)
	at java.lang.Thread.run(Thread.java:619)

also like the new images very nice.

btw Riven good play on the comeback :slight_smile: