Top down shooter

Pleased to say that codea seems fully capable of supporting dozens of thinking AIs at once in a complex environment…

Thats excellent, great work!

Wow code :-bd

Next up, making the shelter building system… Then turrets…

Pretty nice - yay, gotta love dual-stick shooters. Was thinking of doing a robitron clone just the other day…

I like the virtual joystick effect!

The visible sticks add a lot to the demo, giving a real sense of how the program is resounding to user input.

Love the ability to arbitrarily zoom :slight_smile:

@KMEB that is amazing. Can’t wait to see where this ends up.

Very nice, @KMEB. I am a bit inspired to create a top-down interface. I am now wondering if the zooming is being done manually, or if there is an algorithm automatically zooming in and out based on active sprites.

In either case, quite impressive.

The zooming is just changing the value on a scale matrix transform… Scale(global size)

@simeon I was origionally thinking this would be a great app for codea play, but now I’m thinking it might be better as a standalone…

The zooming is being done with the - and + buttons in the top corners.

I love it, especially the zoom.

Great… Looks totally fun… :slight_smile:

Excellent work, KMEB. Keep your progress coming.

So while torture testing- aka adding a for I = 1,10 in at the start of the draw function to amplify lag- I discovered that drawing a sprite, no matter how complex, is less laggy than doing rect() and have no idea why. Oh well, hardly a problem.

Tomorrow it shall be time to add in the build interface- from which you can make walls, doors, turrets, plates, and anything else I feel like adding… For now, observe the magic of sprites in the form of pixelated gore and Randomly generated concrete squares

@KMEB is it a noSmooth() rect, or a smooth() rect? A smoothed rect will be slower than a sprite.

Edit: Just saw your latest video. Love the bullets. This reminds me a lot of Crimsonland, did you ever play that?

Never played that, sorry. :stuck_out_tongue:

bullet = mesh()
local bulletcolors = {color(255, 126, 0, 0),color(255, 255, 255, 255),color(255, 255, 255, 255),
color(255, 175, 0, 0),color(255, 255, 255, 255),color(255, 255, 255, 255)}
bullet.vertices = {vec2(-33,0),vec2(2,1),vec2(3,0),vec2(-33,0),vec2(2,-1),vec2(3,0)}
bullet.colors = bulletcolors

Pretty simple, actually!


I :X it

(code [-O< )