Kick Wizards is a 1-4 player beat 'em up inspired by the old TMNT and X-Men arcade games I pumped a thousand quarters into back in the mid-nineties.
tap (o) to cast punch -- on the web, player 1: z, player 2: tab
tap (x) to cast kick -- on the web, player 1: x, player 2: q
Hold the buttons to charge for a more powerful attack.
Charge a spell near a healing crystal to get some HP back
Players on the web will be limited to 2 players (player 2's arrow keys are sdfe); folks with the real PICO-8 console can play up to 4 at once.
If another player dies, living wizards can charge spells near the gravestone to resurrect the dead wizard.
This game is pretty difficult. Gamepads are strongly recommended.
v 1.2 Hopefully, v1.2 fixes the issue where the Dark Wizard sometimes gets stuck. Also fixes some textures on level 3.
v 1.3 More Dark Wizard fixes for issues reported on twitter. 3rd time's the charm, maybe? (Wait, but this is the 4th version...)
v 1.4 Hah uploaded a debug version
v 1.5 Updated with music, and more Dark Wizard fixes! Hopefully this is the last update for a while.
v 1.6 Sigh. Nope. Fixes another crash.
First of all, this is wonderful for so many reasons that I'm not even going to get into it.
Secondly, you seem to have done something that I have been trying to figure out myself FOREVER—outlining sprites without manually drawing an outline on each one within the sprite editor.
Combing through the code, I can't yet decipher where this little trick is hidden. If I had to guess, I'd say maybe it's the function at line 303, buuuuut I'm still trying to play with it to be sure.
Does anyone have any clever insight regarding this?
And once again, killer little game, friend! Thoroughly enjoyable.
UPDATE: I'm a dummy. I somehow managed to read right past a little, aptly-named function called "drawoutline".
I feel a little foolish, but mostly excited to finally be learning this.
@ChiefBradley Thanks so much for the kind words! Yes, the code has gotten quite difficult to follow in the month or so of battling the token limit. But the outlining code is still pretty self-contained:
function drawoutline(sprite, sprx, spry, flip) for i=1,15 do pal(i,1) end for x=sprx-1,sprx+1 do for y=spry-1,spry+1 do spr(sprite, x, y, 1, 1, flip, false) end end pal() end
Simply put, use pal to change all colors to your outline color (dark blue/1 for Kick Wizards), then draw the sprite 9 times, offsetting it horizontally and vertically. Theoretically this is inefficient, but it works just fine up to 30 or 40 sprites so I super don't care.
@fweez THANK YOU! I was so very close to figuring it out, but your response helped me finally discern what I was looking at!
Now I just need to get the Pico-8 to not draw the white under her feet if she's standing on something. A bit of a nit-pick, but it just looks odd breaking up the ground like that, haha.
Thanks a million!
I've played this game several times now. Very well rendered graphics, gameplay, and audio. Reminds me of a smaller version of Golden Axe - but with spells instead of swords.
But there are no items to pick up - nor does the player seem to get any stronger - AFAIKT ?
This game is superb. As has been said, there are so many things right here I don't know where to begin.
A few tiny little things, though:
- I had a little trouble getting past the title screen - it wasn't obvious to me that I needed to hold both action buttons to start.
- I can't figure out the strategic use for your upward attack
- On the first boss, sometimes his attacks don't actaully happen, even after the warning flashes do their thing. Maybe I hit him and it canceled it? I struck me as a little off.
Anyways, though, this is easily one of the best Pico8 games I've ever seen. Bravo.
I got a little ways into the second level and died at 371. I like it a lot! One thing about the first boss--after you defeat him, you should make his projectiles vanish. It was odd that I beat him but still had to dodge the remaining attacks; normally in these kind of games, all the projectiles disappear.
EDIT: I started a second playthrough and just realized that you CAN kick with X... I was about to say "What kind of a name is Kick Wizards, you can't even kick" :P
EDIT: I literally just read your instructions where you say "Charge a spell near a healing crystal to get some HP back"... now I feel pretty good for making it as far as I did on my first run without healing at all!
@paloblanco Wow, thanks for the praise.
- This isn't the first time someone's had some trouble with that. Would "(o)+(x)" (instead of "(o) and (x)") be clearer?
- Yeah, the kicks are kind of sub-standard. They do a lot more damage, (including falling damage if you can charge it to level 2), and nullify the ogre's attack (providing you can get them up in the air before they smash), and score more points. In multiplayer there's some opportunity to juggle enemies with well-timed kicks. But they aren't really good enough. Someone told me, "you know, I'm actually more of a punch wizard." I wrestled with how to fix the kicks and ended up just leaving them as a wizard/ogre-killer, rather than a go-to attack for kobolds.
- Yyyyyyeah. It's definitely off. The attacks get canceled, but it's not clear what's happening. Unfortunately, I don't think I have the tokens to add a spell fizzle effect.
@Jamish: Holy cow, yes, getting to level 2 without healing is pretty impressive. Removing the dark wizard's remaining spells after he escapes was on my todo list, but I just couldn't cram it into the game. (I spent most of the last month trying to reduce tokens so I could get bugfixes and a end of the game in.)
Very fun, I played until I reached the ending(took maybe 12 tries). Some thoughts and bug reports:
It is possible to clip through the water collision at the bottom of the screen some of the time(most of the levels starting with the end of 2, I think, have at least one instance of this behavior).
- Likewise, player projectiles disappear while at the bottom of the screen.
It is possible to run through the level collecting a huge swarm of foes, which is fun, but the game design does not allow this to be particularly useful for a speedrun for these reasons, which also play into general "brawler game design issues":
There are no invulnerability frames, hence any mob situation means you just get juggled after the first hit.
Lack of i-frames is also a major reason why kicking isn't very useful: getting close is very risky, and there aren't "kick anim i-frames" or "priority" to help you power towards foes as they attack - you have to rely on getting there before they attack and one-shotting them, which encourages the cheesy pick-them-off-one-by-one playstyle.
- Projectile enemies always use independent timers, making for a chaotic rhythm. If they followed a global timer or some other predictable cue, their pattern would be more like something a human could follow.
@triplefox Thanks for the analysis! I'll look into the clipping/projectile bugs, I bet I've got some off-by-ones scattered around. (Lua's inclusive ranges and 1-indexes have taken some getting used to.) I suspect I won't be able to get i-frames into this game, but it's definitely something to think about for Kick Wizards 2.
And hey, good job getting to the ending, the last couple of levels are pretty stupid hard.
[Please log in to post a comment]