GridWars a GeometryWars:RE BlitzMax experiment

Community Forums/Showcase/GridWars a GeometryWars:RE BlitzMax experiment

Mark1nc(Posted 2006) [#1]
GridWars - kinda like Geometry Wars RE

See here (code & exe included)
http://www.yakyak.org/viewtopic.php?p=790227#790227

Edit: Updated to 1.4 (Jan 31st) (see history.bmx for info)
http://www.incitti.com/Blitz/GridWars14.zip

F3 toggles gridlines on/off


Big&(Posted 2006) [#2]
Really nice that fella, love the grid. Was trying to think of a way of doing it myself. Was planning on faking it but your way seems to work nice.

Did the same as you, had a play on a friends but I couldn't/cant get hold of an Xbox360. So did the next best thing and had a go a coding it myself (along with all the other 100 people doing the same thing). :)

If you fancy a look I have a small vid of it here (3mb,xvid,avi). It is running at 60 FPS, its just the vid thats choppy.


ImaginaryHuman(Posted 2006) [#3]
Nice video.
Reminds me of playing llamatron.


ImaginaryHuman(Posted 2006) [#4]
Nice video.
Reminds me of playing llamatron.


Wiebo(Posted 2006) [#5]
I'm addicted to GW on my xbox360, so this is cool! I've been working on something like this as well, but with a twist, ofcourse... Can't wait to see this finished though


Jeremy Alessi(Posted 2006) [#6]
I can't seem to shoot in any direction? Pretty cool though.


Mark1nc(Posted 2006) [#7]
New Version is Up - 0.65
many fixes, hi score table, etc.


Mark1nc(Posted 2006) [#8]
Jeremy - Try the latest version 0.65

A dual analog controller is needed.
What controller are you using?

It works on my siatek rumble force and on some PS2 sticks too.
The controller configuration screen (ESCAPE->Settings->Control) should get you sorted out.


u2o(Posted 2006) [#9]
Wow, genius, love it, love it, love it!

Well done!


Jeremy Alessi(Posted 2006) [#10]
I'm using an Xbox 360 controller. Figured you were trying to re-create Geometry Wars so it would use that setup.


Geehawk(Posted 2006) [#11]
Not familiar with this as a game, so I dont know what I should be seeing, but what I can see, after all the menus, is a yellow "thing" in the centre of the screen, a "status bar" up top, and nothing else ???? A few noises later and I appear to have died.

GeForce4 MX 4000.


Mark1nc(Posted 2006) [#12]
Geehawk,

Not sure what's happening on your system.

Should look something like this:



What's your setup?


Geehawk(Posted 2006) [#13]
Athlon 700Mhz 256mb
Geforce4 MX 4000, set at 1024x768 32bit colour
PS2 controller via usb

I get just the top status stuff and the "ship" in the centre, which appears from an ever decreasing circle.
Lots of noises.
The very occasional flash of colour in a thin band across the width of the screen.
And occasion blue dots moving up and down the left hand edge if the screen. Like 1 pixel wide or so.

All menus seem fine, and can config the controller stix. Nothing happens when I move them in game though.


u2o(Posted 2006) [#14]
Hey Mark, your cheetin! Look at all those lives and smart bombs you have!!! LoL!


Mark1nc(Posted 2006) [#15]
u2o

No I wasn't - Honest gov'nr! - that was an old version that jamesac found too easy!
New version shows something like 5()()() when you have more than 3 men left. (0.67)


Jeremy Alessi(Posted 2006) [#16]
Pretty good job on this one. I'm glad you included the grid ... only you might want to have lines connecting the dots it would look a lot better ... right now you can see the effect is similar to Geometry Wars but without the lines it doesn't seem as impressive. Then again it might not look right since Geometry Wars probably uses a shader. I also like the fact that you made the powerups separate items that you can choose to pickup.

Now the bad things:

A: Need to set larger deadzones for the analog pads or make them adjustable ... the controls feel really floaty because my ship likes to keep on going when the stick is very close to centered but not quite ... it didn't seem to support analog either ... ship only went one speed.

B: The bullets and the ship need to be different colors. It's way to easy to mistake your bullets for your ship and then take a hit because you thought you were somewhere ... where only your bullets were.

Other than that is is a pretty decent knock off. You need to join forces with that Neon Blaster GW knock off which includes the larger than screen size box and star BG but doesn't include the grid. It also has nice glowing eneimies more like GW. Between the two of them you're really close to the Xbox 360 game.


Murilo(Posted 2006) [#17]
Very impressive Mark. Gameplay is really smooth here. You've managed to capture the frantic gameplay of the original.

>You need to join forces with that Neon Blaster GW knock off

Where can I find "Neon Blaster"?


Pongo(Posted 2006) [#18]
...answer to Daze removed...

Sorry for the slight thread hijack


VP(Posted 2006) [#19]
What a fantastic game :) This was the first thing I loaded after plugging in my Xbox360 controller to my PC.

Deadzone needs to be extended a little, and it seems to be a little more difficult to aim than on the 360 version of GW, don't know why though?

Bullets travel far too slowly. The little blue homing thingies are too slow. The red meanie that blocks your shots seems a bit out of place, there doesn't seem to be an effective countermeasure for it!

But still, awesome. Highly enjoyable.


Jeremy Alessi(Posted 2006) [#20]
The bullets are thinner in this that is why it's harder to hit than in the 360 game.


Mark1nc(Posted 2006) [#21]
New version is up - incorporating some of your suggestions.
Have a try.

Another TODO: adjustable deadzones.


Jeremy Alessi(Posted 2006) [#22]
Doesn't seem much different. Bullets need to be a different color from ship still.


smilertoo(Posted 2006) [#23]
Doesnt work for me, the game and everything runs but i have no control. I can setup my gamepad in the settings so its fine, save the config and play the game and i have no control.

Using X360 gamepad.


Mark1nc(Posted 2006) [#24]
John,
Make sure you have the port (0,1,2 or 3) set to the one where the controller is connected.
When you go into the control screen can you move the red dots around correctly inside the 2 boxes? - if not, select the correct port number.
You should be able to move the dots to any location in the box using the selected controller port - if not, maybe you need to adjust the scaling factor.
Also - check the Config.txt file and make sure that the line under "[Use Mouse]" says False


smilertoo(Posted 2006) [#25]
Config file was the culprit...very nice game.


ImaginaryHuman(Posted 2006) [#26]
So there is no keyboard controls for people with no joystick?

I did compile it and it runs fine on my Mac here, just can't control it (except do a bomb).

Reminds me vaguely of a game on the Amiga which I think was called `Pod`, which had a grid that got affected by things that blew up, and this diverted the flow of enemies.


Kong(Posted 2006) [#27]
I'm using an original xbox controller and the xbcd 1.07 driver and I can't configure the right analog stick correctly. Your configure screen seems very similar to Pongo's Neon Blast but his sets up my right analog stick correctly. His game set's my right analog to:
left/right JoyPitch -180, +180
up/down JoyYaw -180, +180

If I manually change your config.txt to match NeonBlast's 1,2,4,6,1,1,1,1
I can shoot only up and down with the right analog stick. Any ideas?


Kong(Posted 2006) [#28]
I forgot to give the debug information from your controller configuration program.

right analog stick:
left/right JoyV -1, +1
up/down JoyV +.15, +.15


taumel(Posted 2006) [#29]
Hi,

reminds me of ebonstar on the amiga. Except they used lines for the matrix.
I like the soundeffects. Dunno how the game is as i can't steer it with my mouse/keyboard.

As it's a vector game. How about antialiasing it? If using openGL:
glEnable GL_LINE_SMOOTH; glHint GL_LINE_SMOOTH_HINT, GL_NICEST
glEnable GL_POLYGON_SMOOTH; glHint GL_POLYGON_SMOOTH_HINT, GL_NICEST


Greetings,

taumel


Mark1nc(Posted 2006) [#30]

I'm using an original xbox controller and the xbcd 1.07 driver and I can't configure the right analog stick correctly. Your configure screen seems very similar to Pongo's Neon Blast but his sets up my right analog stick correctly. His game set's my right analog to:
left/right JoyPitch -180, +180
up/down JoyYaw -180, +180

If I manually change your config.txt to match NeonBlast's 1,2,4,6,1,1,1,1
I can shoot only up and down with the right analog stick. Any ideas?



Kong,
Did you try the "ASSIGN ALL" button? That might help you set up correctly.
I think Pongo uses a different numbering for each control.
JoyYaw() is 7 and JoyPitch() is 8 in my version.
(I used the enumeration from the freejoy files and added 1 to leave 0 as null)
Const JOY_X=0
Const JOY_Y=1
Const JOY_Z=2
Const JOY_R=3
Const JOY_U=4
Const JOY_V=5
Const JOY_YAW=6
Const JOY_PITCH=7
Const JOY_ROLL=8
Const JOY_HAT=9
Const JOY_WHEEL=10


Kong(Posted 2006) [#31]
Yeah I tried assign all. The left stick sets up fine. Then it tells me to move the right analog stick to the left/right and it assigns that movement to JoyV(). Then it says move it up/down and it basically won't register any movement on that axis. In debug it's saying left/right and up/down all register as JoyV() so I suppose that's why the assign all won't set up correctly.


If I manually try to assign the final up/down axis by clicking through each setting. Moving the stick up/down results in left right movement of the red dot with almost every entry. The JoyV setting will give diagonal movement of the red dot. None of the possible settings will let me move the dot up/down.


Pongo(Posted 2006) [#32]
Kong, have you tried my version of the joystick utility? The one that is in the code archives, and also with NeonBlast?

The saved config file is different, but I'm curious to find if the problem is with the utility, or maybe something with your controller.

Also, looked at the latest build last night,... looking better all the time. Deadspot needs adjustment though, as my ship fires all the time (multiple controllers) Also having trouble with your version of the config, so I have to set up manually still.


smilertoo(Posted 2006) [#33]
MarcInc: can you add a trail to the player so its easier to keep track of where you are? Once you get into some heavy weapons its quite hard to keep track of where you are amongst all the bullets.


Kong(Posted 2006) [#34]
NeonBlast's controller configure utility works perfectly with my controller. Pongo scroll up to my original post in this thread for the details of what your utility sets my right analog stick to. Other dual analog games like Mutant Storm also work flawlessly with my controller.


Mark1nc(Posted 2006) [#35]
New version 0.85

Keyboard/mouse/joypad support
player trail
speed changes
+ more

Once I get ahold of some different controllers, I can try to work out Kong's XBOX controller issues.


Mark1nc(Posted 2006) [#36]
Kong,

When you have debug on, does the right stick movement show up as more than just JoyV(), like maybe also JoyPitch() or JoyYaw()?

If so, then the ASSIGN ALL function will only pick up the first in the list - the JoyV(), even if it's values aren't correct.

You can set it up manually by clicking on the axis boxes under Stick 2 until you get to JoyPitch() and JoyYaw()

Let me know how it goes.


ImaginaryHuman(Posted 2006) [#37]
Cool, will give the keyboard control a try :-)


Kong(Posted 2006) [#38]
With debug on the right stick only shows movement in JoyV() no matter which axis I move the analog stick in. I've also gone through and manually assigned the last axis to every possible setting and it doesn't work.

I downloaded the BlitzMax demo and I'm mucking around in your source right now but so far no luck figuring out why it's not working. I'll let you know if I figure anything out.


ImaginaryHuman(Posted 2006) [#39]
The question on the yakyak forum about whether the Mac version 0.85 causes the ide to crash ... I am on a Mac here and yes, as you try to load the file, it doesn't display the loaded file because it causes the IDE to crash.

I really don't think it's that your program has bugs of some kind, causing the crash, or some kind of illegal text or whatever.... I think it more likely that the Max IDE has bugs.

I say that because I had some other file, of my own, which I created in an older version of Max, and it totally refuses to load into 1.14 Max IDE. It causes the IDE to bomb out and crash in just the same way as your program does. So I would say it's a Blitz IDE bug, not your software ..... but it does mean I cannot compile or therefore run your app. The older version of your game does, however, load compile and run on the mac.


RiK(Posted 2006) [#40]
AngelDaniel:

It's an issue with garbage collection in the IDE. I reported it a couple of days back, Skidracer has reproduced it and passed it on to Mark so hopefully we'll have a fix very soon!


ImaginaryHuman(Posted 2006) [#41]
Ok understood. Incidentally this problem occured on my ibook but not on my imac.


Mark1nc(Posted 2006) [#42]
Does this (mac-IDE crash) happen with certain character combinations (in text/comments?)
Is it a file size issue?
Any news on a fix / workaround?


New version is up 0.95
added images (a quick way to glowy look)
Let me know what you think.


ImaginaryHuman(Posted 2006) [#43]
No idea really. Especially no idea why it did it on my ibook but not on my imac. Same os version.


ImaginaryHuman(Posted 2006) [#44]
See here:

http://www.blitzbasic.com/Community/posts.php?topic=55597

v 0.95 now loads and compiles fine on the mac.


B_Paulie(Posted 2006) [#45]
hey that looks like geometry wars from project gotham racing 3 for the 360 in the arcade in the garage!!!


B_Paulie(Posted 2006) [#46]
o wait, u said it was geometry wars.....oops sry lol!


TartanTangerine (was Indiepath)(Posted 2006) [#47]
@Mark1nc, I downloaded your game and the source, I changed the grid stuff back, well some of it to show the lines instead of the connecting points. I looks much better now and considering a line is no more expensive to render than a rect it's worth sticking back in :)


smilertoo(Posted 2006) [#48]
Hi MarcInc,
The game is getting on great, is there any chance of doing a 2 path grid? stick with the dots for slower pc's and have the fancy swirly nurbs grid thing for those that are fast enough?


TartanTangerine (was Indiepath)(Posted 2006) [#49]
Here's what it looks like with the grid enabled, it still needs a lot of optimisation though to make it viable for slower machines/GFX cards. I'd suggest putting the grid into a vertex buffer and only making an update to the buffer every 2nd or 3rd frame. Also, not shown in this shot, the grid looks much better with LIGHTBLEND.




Mark1nc(Posted 2006) [#50]
New version 0.99
Jan 22 - Are we there yet? 0.99
Changes:
- shield powerup
- controller fixes
- more particles
- shot fragments
- shot image
- joypad config screen
- mouse config screen
- hybrid config screen
- difficulty settings

Note: F3 - toggle grid lines on/off

Grid still needs work - the distortion is a bit kludged at the mo and it's also cpu heavy to draw.

Let me know what you think of the new gfx/controls/gameplay.


Stevie G(Posted 2006) [#51]
Very good but couldn't get into any of the config screens for some reason.

I like the grid effect with the lines .. pretty impressive stuff but I think the bullets should move faster ... sometimes I found that I was moving at the same speed as them so couldn't plow the road ahead.

Stevie


TartanTangerine (was Indiepath)(Posted 2006) [#52]
@Mark1nc, I *think* I've found a better way of doing the grid - results so far are nice and smooth. I'll post the changes what I'm happy with it.


TartanTangerine (was Indiepath)(Posted 2006) [#53]
This is the test code for the grid drawing, takes you down from 13,824 Polys to 6000 odd. The final version will be textured quads sharing vertices all in one vertex buffer.

Function DrawGridLines()
		Local t:Int,a:Int,b:Int
		' draw grid
		SetViewport 4,4,1024-8,768-8
		SetColor COL_GRID_R,COL_GRID_G,COL_GRID_B	
		SetBlend LIGHTBLEND
		SetScale 1,1
		SetAlpha .65
		SetLineWidth 1
		
		Local ticker:Int = 0
		
		For a = 0 To 63
			For b = 0 To 47 
			
					Local xy#[8]
					xy[0] = grid[a,b].x + 0.5
					xy[1] = grid[a,b].y + 0.5
					
					xy[2] = grid[a+1,b].x - 0.5
					xy[3] = grid[a+1,b].y + 0.5
					
					xy[4] = grid[a+1,b+1].x - 0.5
					xy[5] = grid[a+1,b+1].y - 0.5
					
					xy[6] = grid[a,b+1].x + 0.5
					xy[7] = grid[a,b+1].y	 - 0.5

					DrawPoly(xy);
				
			Next
		Next

	End Function



Mark1nc(Posted 2006) [#54]
New version 0.99b - see first post

Jan 23 (v0.99b) - Turn and face the strange...
Changes:
- better grid effects
- shots push grid
- sun pulls grid
- powerup gfx changes (thx srvman)
- powerup birth timing changes (po*mult*mult)
- new circle gfx (thx srvman)
- split into multiple files
- other changes here and there


taumel(Posted 2006) [#55]
Hi,

what again has to be done (beside of cut&paste) that blitzMax does not crash when trying to open the file on the mac? I've synced today and rebuilt modules...


Greetings,

taumel


ImaginaryHuman(Posted 2006) [#56]
see my earlier post - download the new ide


taumel(Posted 2006) [#57]
Thanks, i missed this one.

So i played it for the first time...after i waited, waited and waited to load the source... nice game! :O)

+ Great sounds.
+ Much to destroy.
- Mouse steering is way too slow, at least on the Mac with my mouse.
- Very low video-resolution.


Thanks,

taumel


Mark1nc(Posted 2006) [#58]
Thanks for all the helpful comments.
I've put out a (final?) version 1.0 - see first post for download.


Stevie G(Posted 2006) [#59]
Mark,

You really need to deal with the bullet issue as it spoils the game for me. They must move faster than the ship or at least add the ships velocity to the bullet when fired. The simple reason being that if you're moving fast in one direction you can't clear the way ahead cos you're moving as fast as the bullets.

Other than that ... this is very nice work. Must find someone who's got the original!!


taumel(Posted 2006) [#60]
Hi,

crashes on my miniMac (1.16) with "Unhandled Exception:Attempt to access field or method of Null object" after pressing "space" in the menu.

Greetings,

taumel


TartanTangerine (was Indiepath)(Posted 2006) [#61]
Yeah the source is at fault. The paths for the GFX and Sounds are wrong.


taumel(Posted 2006) [#62]
Hey i'm a user in this case! ;O)


Mark1nc(Posted 2006) [#63]
New version GridWars 1.1

Changes:
fixed a few bugs
sped up the bullets
more bang
some updated gfx from svrman

For those curious about the source:
I've move the source files into a sub-folder.
You can build from there, but it's easier if you move the source into the main directory before compiling/running.


Mark1nc(Posted 2006) [#64]
Some joypad controls are still not being seen by blitz?
See here:
http://www.blitzbasic.com/Community/posts.php?topic=55810


Mark1nc(Posted 2006) [#65]
New version - many bug fixes and enhancements
Cool grid distortions.
See above for link.


Mark1nc(Posted 2006) [#66]
Well past 1.0 - 1.4 is now available.
Music & many other things


Mark1nc(Posted 2006) [#67]
This thread is way too long - starting a new one with a stable release GridWars 1.4