Log In  

Cart #fijepuzide-41 | 2022-07-10 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA

Be sure to check the change log to see what's new!

I really thought version .51 would be the last major version, but somehow I managed to scrape out every last token and add a few new features! That said, this WILL be the last major version, though I will still support the game post release.

Change log

Contra version .73

This version could be considered a bug fix/polish release...

  • Tweaked the machine gun sound to give a more "auto-fire" feel to it.

  • fixed underwater behavior so that your gun Actually won't fire. Somehow I missed that the feature was broken
    all this time...

  • Changed the behavior of the continue cursor. Now it will only make a sound if you switch to the other option

  • Tweaked the runner enemy so that they cannot kill you when they fly back after being shot.

Contra version .72

This version has been sitting on my computer for some time now, And I figured it has enough changes to warrant a release.

  • More sprite edits by ReeceGames.

  • Machine gun sprites changed to better set it apart from the Pea shooter

  • Boss bullets will now fall straight to the ground, making him a little more difficult.

  • Fire sounds have been changed to more closely match what is happening.

Contra version .70

Special thanks go to ReeceGames for their contribution to the graphics work!

  • Sprite edits to player, enemy, turret and shutter graphics to improve quality.

Contra version .68

Thanks to the PICO-8 Discord community for offering suggestions on how to trim down my code and how to improve the graphics, this update would not have been possible without them!

  • Turrets were completely rewritten, and can now track you in all 8 directions. They are still quick, but they have a limited range of motion...

  • Fire Weapon fully implemented! It's not the greatest for crowd control, but it is highly effective against

  • Soldier drones have been reworked. Only 3 drones can spawn at a time now (usually), they run a little slower, and any drone that goes for a dip will instantly drown...

  • Another pass on map and object graphics to improve detail and readability.

  • It is no longer possible to soft lock the game by taking damage from two things at the same time.

Contra version .63

  • Detail pass on map graphics

Contra version .62

  • Tweaks to sound effects playback to reduce clobbering

  • New explosion sound for turrets, shutters and cannons to help them stand out a little more and make blowing them up
    just a little more satisfying.

  • Adjusted collision so you can't scale the Base exterior

Contra version .61

  • fixed cannons not clearing out after a game over.

Contra version .60

  • Turrets have been added. They have pretty good servos, so don't think you can slip past them so
    easily. A healthy dose of gunfire ought to short their circuits.

  • The boss now has some defenses in two cannons. They just kind of spew bullets on the ground, but they are still
    lethal. Blow them up if they are bugging you.

Contra version .51

  • Changed powerup collision so they pass through semi-solid platforms correctly
  • The first Rapid and Machine Gun powerups have switched places.

Contra version .50

  • Boss has been added. There are no defenses for it, but he did finally show up.
  • Runner enemy type has been added. They move fast, so you have to be on your toes. At least they are easy to kill...
  • Powerup shutters fully implemented. Shoot them to receive an item!
  • Victory state implemented.

Contra version .30

  • Capsules are fully implemented! they can be shot for a powerup, and I have sprinkled a few through the level
  • Powerup behavior is implemented. Available powerups are: Machine gun, Spread, Fire, Laser and Rapid Shot
  • Machine gun fires in full auto, like a Machine gun should!
  • Collect Rapid Shot to nearly double the speed of your bullets!
  • Sound and partial graphics in place for all weapons
  • Adjustments made to some sound effects
  • Minor changes to title music

Contra version .25

  • Phase one of capsules added. You can't shoot them yet, but if you press ⬆️ and 🅾️ one will spawn from Bill's location.
    I also have one capsule setup to spawn in as a script
  • Initial work on items started
  • Initial work on spread gun started.
  • Small explosions added. Press ⬆️ and ❎ to make a capsule go boom!

Contra Version .22

  • Adjusted wipe speed to more closely match the NES version
  • Map filled out with initial artwork
  • Player spawn delay now consistent
  • Code commented out a little more, and formatting changes
  • Minor alterations to music

Contra version .2

  • Submitted to BBS

Here is my "One Level Concept" Demake of Contra for PICO-8!

I would just like to say that I absolutely love developing on this platform. The tools are fun to use, and the sheer number of resources available for learning the ropes are... humbling.. to say the least.

On the note of resources, I feel like I should give a shout out to Nerdy Teachers and the PICO-8 fanzines for giving me a good idea of where to start, and to doc_robs for taking everything a step further! I am sure if you take one look at my code you will see their examples being put to good use.

At any rate, I've set out to create at least the first level from Contra on NES. I still have a little way to go, but I felt that I had reached a few major milestones, and would like to share with everyone what I've been up to...

That said, I have absolute ZERO coding experience, so please keep that in mind when you stare in disbelief at my code, although I am absolutely open to feedback.

Enough about that! Let's get down to the nitty gritty...


  • Press ⬅️ to move left
  • Press ➡️ to move right
  • Press ⬇️ to go prone
  • ❎ will make you jump
  • 🅾️ will fire your weapon

More detailed controls in the spoiler...

  • You can fire in all 8 directions! Simply press in the desired direction and ol' Bill Rizer will make it so.
    (Note: You cannot fire straight down unless you are jumping or falling.)

  • If you go prone on a floating platform and press the Jump button he will drop down!
    (That part took me FOREVER to figure out) (Note: This will not work on the bridge...)

  • If you go prone while in water you can dive under. Your gun can't fire, though...

  • If you just run off a ledge, you cannot immediately change direction. So if you run right off a cliff don't say I
    didn't warn you. Jumping allows FAR more control.

    Those are all the controls you need to know!

Game Details

What is here:

  • Player movement is fully implemented. I will certainly have to tweak a few things, but everything works as

  • Death and lives

  • The Pea shooter, Machine gun and Fire are fully implemented.

  • The first stage layout.

  • Items, capsules, Shutters and small explosions.

  • A soldier drone that runs fast and can juke you if he catches you on a platform.

    • Side mounted Turrets that track you
  • The Boss, and some meager defenses.

  • Victory state when you blow him up...

  • Title, Game and Game over states are in place and working.

  • Ending since I have reached the token limit.

  • Music and sound effects are in place. My musical ear is a little out of tune, and my rhythm is near non-existent,
    so please let me know if you catch anything while listening to it.

What was planned:

  • More weapons! Preferably all of them had I enough room: Machine gun, Spread, Fire and Laser!
    (Machine gun and Fire implemented!)

  • Enemies. well, duh... right? You gotta have enemies that you can attack aggressively!

    • Gun emplacements that pop up from the ground
    • More advanced soldiers that remembered they had a pistol...
    • Standing soldiers that fire at you from a stationary position
    • Soldiers that appear from behind the brush

Known Bugs

For the love of all that is not mayonnaise, go ape on this thing! I'd like for you guys to twist and bend and
faniggle until either the game breaks, or you do. If you do manage to make the game buckle in some interesting or
hilarious way PLEASE tell me all about it, and be sure to post a screenshot if you did something truly horrific.

Here is what I have found so far:

  • Right now I have the Capsules set to spawn when the camera is within certain X and Y positions. If you stand in just the right spot a stream of capsules will spawn.

  • There is an issue with firing your gun while jumping out of water that causes Bill's top half to begin cycling
    through all the sprites. I haven't quite pinned down what is causing that, or how to replicate it reliably.

  • Sometimes when you die, instead of showing the sprite of Bill l
    ying on the ground, it shows him prone.

  • If you press ⬇️ and ⬅️ or ➡️ while jumping, Bill will go prone for 1 frame.

  • Not necessarily a bug, but I am still figuring out how to make the map longer than what is allowed.
    For now, there is a jarring snap to position when you cross into the second half of the stage.

  • The area directly underneath what has been built has some garbage just below the screen in the map editor due
    the whole sprite bank/map bank "Sharing" thing. PICO-8 counts these areas as collision, and Bill will land on it if
    he dies. (Maybe mitigated since the whole map is now laid out.)

  • The title screen shows for a moment before doing its thing if you arrive from the Continue, ending or Game over screen.

Final Words and Thanks!

So... why are you doing this, again?

I am a humungous video game nerd!

I love playing them, I love looking at them, I love listening to them!

I've wanted to make them for some time now, and I have tried several platforms but I always ran into some hang up or other, but When I first discovered PICO-8 last year I instantly fell in love! Seriously, this thing is so easy to use. My creativity can just... flow, and I love Pico-8 for that!

While I played around with other people's games for awhile I brainstormed, and Contra just kept pushing it's way forward. I began to think about how Bill Rizer would look as an 8 x 8 sprite and began drawing. I finished a first draft of his standing pose and thought, "Dude... this could work. I could do this". One could gesture wildly at an NES with both hands while shouting, "You want Contra? Here it is! the work is done, just play it here". To that I would point at PICO-8 and say "Yes, but I made this."

In addition to the kudos mentioned at the top of my post,

I'd like to thank Lexaloffle for this fantastic program, and Konami for my childhood memories and this inspiration. Also, mad props to the PICO-8 community, you guys are amazing!

P#94206 2021-06-29 15:30 ( Edited 2022-07-10 12:51)


Nice! It looks like I need the Konami code ;)

P#94872 2021-07-14 23:52

This is awesome! A very faithful demake, right down to the controls. Keep it up, champ. <3

P#94878 2021-07-15 01:32

Thank you so much, pootie! I'm honestly surprised though; I've heard more comments about the Konami code's absence than I have about the spread gun.

P#94892 2021-07-15 05:05 ( Edited 2021-07-15 10:34)

No, Toybox Omega, you're awesome! I'm really happy you enjoyed it.

P#94902 2021-07-15 10:33 ( Edited 2021-07-15 10:48)

Dude! This is sick!!!!

P#94903 2021-07-15 10:36

I'm so thrilled to read that, DnosHubz! Thank you!

P#94904 2021-07-15 10:49

I don’t know why but my greatest enjoyment with Pico8 comes from trying to port old games to it. It’s a fun challenge.

P#94918 2021-07-15 18:05

There is an error, and it is when I stop in one place and a million weapons appear

P#95814 2021-08-09 20:26

and one thing the game is fair to me very much

P#95815 2021-08-09 20:28

Haha, yeah. That isn't the only issue. Take a look at the "Known Bugs" section of the post if you're curious. The bug is due to the way items spawn in; they are set to do so at certain camera positions. If you stop at just the right position, they will spawn once every frame. I've hit the token limit, so I'm not entirely sure if I can fix it without rewriting the spawning code. If enough people ask for it I will definitely look into it, though.

P#95828 2021-08-10 08:14 ( Edited 2021-08-10 08:22)

indeed - code can be hugely optimized to be much more ‘content driven’.
eg using some level definition to create objects.
there is also a good deal of duplicated code...
good luck!

P#95838 2021-08-10 17:01

Oh, absolutely! This is the first game I have ever made. I didn't really have any workflow or discipline; I just knew what I wanted something to do and just added code until it happened... not sustainable, to be sure. XD

P#95952 2021-08-13 15:25

Very impressive for a first game, good job!

I think a full version of the game with all levels would be very doable with my PicoMap editor (https://www.lexaloffle.com/bbs/?tid=42848), though it would take some work. I'm thinking about making a proof-of concept demo of that at some point, along with ones for some other games. 😉

P#95991 2021-08-14 02:50 ( Edited 2021-08-14 06:24)

Thank you so much, JadeLombax! Ever since I finished this project, and even while I was working on it I was brainstorming how I could make the game bigger. I was toying with the idea of multiple carts, etc. I've seen your map editor, and to be honest it's the perfect solution! If I were to go down that rabbit hole, I would HAVE to rewrite the game. There is no sense (In my opinion) in leveraging the utility of your editor against my sloppy code. XD

P#96173 2021-08-18 10:42

Yeah, like I was saying, it would take a good deal of work. I now know that it's possible to fit the maps for a large game world in one cart, but to fit a complete large game everything would need to be optimized. My map compression system also takes about 650 tokens to implement at present.

I have an idea for an alternate stripped-down version that would take fewer tokens and be a bit simpler to use, with the drawback that it wouldn't hold as much, I'm estimating at least around 100 screens, vs potentially several hundred for the current version. I think this should still be enough for games like Contra and Castlevania, though. So yeah, you're not the only one that's rewriting code, but I think there will be some cool stuff possible going forward.

P#96187 2021-08-18 15:07 ( Edited 2021-08-18 20:25)

This is very well made and pretty accurate.
When I looked for demakes here I was hoping to find Contra and you just delivered. :)

P#107688 2022-02-26 14:31

Can I make one more comment about the Konami Code, @Turbochop ? :) No seriously you have one great Contra game here, very reminiscent of the original. Gold star work.

The enemies seem to be more than the original - spawning more like the arcade Kung Fu Master. You might examine the original:


As for the Konami Code everyone was asking about. Here is your game with it already installed, 30-lives.

Cart #yigopideki-0 | 2022-02-26 | Code ▽ | Embed ▽ | No License

P#107699 2022-02-26 19:20 ( Edited 2022-02-26 19:21)


P#107795 2022-02-28 01:54

I'm glad you like it @Tarik! I remember looking, and only finding Super Contra Hot, and while that game is fun, it's not quite Contra.

P#109827 2022-04-07 11:15 ( Edited 2022-04-07 11:16)

Thank you so much @dw817! That is high praise coming from you, and I will cherish it always!

As for the enemy spawning, I settled for a spawner on either side of the screen for a portion of the level, as opposed to pre defined spawn locations for each enemy. I did this for a few reasons: 1. I wasn't very experienced when I worked on this project so I couldn't think of how to implement it in an efficient way. The closest I could get to specific spawning were the Turrets, Capsules and the boss and none of them were very pretty. 2. I was starting to run low on tokens. You'll notice that alot of things are different or missing altogether, due to there not being enough room, either because I wasn't sure how to implement it, or because the code I had already written was needlessly inefficient.

Finally, if you check the change log you'll see that I actually dialed back the number of enemies a bit, as well as slowing them down. It was the chief complaint among testers, and honestly it really was too punishing as it was.

P#109829 2022-04-07 11:26 ( Edited 2022-04-21 10:44)

No @UnitVector, You're AMAZING! Thank you for playing, I'm glad you enjoyed it!

P#109830 2022-04-07 11:29

[Please log in to post a comment]

Follow Lexaloffle:          
Generated 2023-02-05 21:27:24 | 0.071s | Q:53