Log In  

Cart #marksman-14 | 2021-10-21 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA

With music by @thesebonesalone

What's this about?

The most prestigious archery competition is now open to all that can string a bow. He who completes every stage will have an assured place among the queen's own marksmen!


The goal is to hit the bullseye with an arrow

  • Hold down O to enter aim mode
    • While O is pressed, use the arrow keys to change the direction in which the bow is pointing
  • Press X to fire arrow
  • Move with arrow keys
  • Springs will spring both the player or the arrows
  • Be careful of spikes, they'll make you spontaneously combust!


You can find the source code for this game on GitHub, here. I kept the code in different files and used p8tool to bundle them in the p8.

1.0 [10/20/2021]

It's been a while since the last update. I've mainly been distracted by other projects but I decided it was time to go back to finish this one since it was so near to being done. This update finishes wiring everything up and adds some nice details that make the game feel more complete. This is the first game I actually finish and I think it's mainly because I forced myself to not succumb to the desire of keep adding more stuff. Near the end I had some ideas (some mine, and some suggested by others) to make the game more interesting, so maybe there will be a Marksman 2 someday :)

While working on this I learned a lot, mainly by making mistakes. I also got advice from some very nice people and realized I wasn't so lost as I felt. The main thing I'm walking away with after finishing this is a whole new understanding of game patterns and scalable architectures, which would've made developing this game much easier if I had adopted them from the beginning (as it is right now, it's a bit of a hybrid among different approaches, although I strived for everything to make sense). A suggestion for my future self, or anyone reading this, would be to be sure to think about what chunks do you want of your game before you start working on it. This ensures you have the layout of things in consideration while working on the project and minimizes the necessity of completely changing the architecture you're using (or at least of doing big refactors of the code).

Main changes added to this release:

  • finally fix an issue I've been having since the very beginning that was sometimes happening when the player switched to a new level it would automatically complete that level without the player having to hit the bullseye (this was caused by me not clearing the ARROWS table at the end of the previous level)
  • added nicer decorations! Grass and clouds now move. We also have banners
  • added intro and outro scenes that explain more or less what is going on and why the player finds itself firing arrows at things
  • cleaned up the win and "spontaneous combustion" banner.

Cart #marksman-14 | 2021-10-21 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA

0.6 [10/7/2021]

The biggest change for this version is sweet music (literally). Created for you by @thesebonesalone. Still in the audio department, we now have SFXs for almost every element. Other relevant changes: it should be easier to aim in vertical directions (thanks @MikeyNoodles for pointing this out),(hopefully) more visible sprites for spring platforms and spikes, I did a complete play-through of the existing levels and fixed some placement issues I found.

Next stuff to do:

  • Add moving clouds to the background
  • Consider adding animated grass
  • Create an intro scene that plays before the first level (good chance to try my hand at animation)
  • Create an outro scene or screen that displays once the player has completed all levels
  • Make more levels!
    • Still unsure about what the correct number of them should be. I guess I'll just continue making them until it feels that they're enough.

Cart #marksman-12 | 2021-10-07 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA

0.5 [9/30/2021]

For this update I made a post on Reddit where some really nice people gave me a bit of feedback. Mainly (in my words, not theirs:: player feels slippery and hitboxes of player and target don't feel fair. Add music and SFX. The background and level design is a bit boring, maybe add animations to make it feel more engaging.

Actual updates:
Mostly added shiny things since last update: a worthy intro page, image fade in and out between levels, some SFX (there are still a lot that are missing, but at least the effort to add sounds has started), changed a bit some of the sprites to make them nicer, made the hitbox of the target a lot larger (it now matches the size of the target itself), and (possibly the biggest update) overhauled the collision and movement for the player, it no longer has a slippery feel (at least for me), and the hitbox is the proper size one wold expect from looking at the sprite (it used to be tiny).

Next stuff to do:

  • Add moving clouds to the background
  • Consider adding animated grass
  • More SFX

Cart #marksman-10 | 2021-10-01 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA

0.4 [9/26/2021]

Lots of things have happened since last update! We now have new items to the game which make it much more interesting: spikes that will make you spontaneously combust if touched, tutorial levels, level tracker, background image, and most importantly, shiny particles!

Stuff I'll be working on next: sound effects! make some more level, give some love to the intro page.

Cart #marksman-7 | 2021-09-27 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA

0.3 [9/21/2021]

This version mainly includes a big refactor of the code. It also adds springs! and a nicer sprites for player and bow, plus some new code to handle physics collisions among different entities (collision with map tiles is still being handled apart from the colliders and new physics manager, will probably include them if I get a change, eventually).

Next I'll be working on making the intro nicer. I'm not sure if I'll add level selection or just a "new game"/"continue" options to the intro.

Cart #marksman-3 | 2021-09-22 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA

0.2 [9/19/2021]

Almost all the basic mechanics are in: basic platformer physics, bow aiming mode, arrow physics, level win condition, and automatic level switching.

The last mechanics element I wanted to implement are springs, which will propel both the player and the arrows vertically or horizontally. Once that's done I can start adding puzzle elements to the levels (the idea is for the player to figure out the proper combination of spring jumps and arrow rebounds needed to hit the bullseye).

Cart #marksman-0 | 2021-09-20 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA

P#97567 2021-09-20 00:06 ( Edited 2022-02-06 02:29)

All Comments

no matter where i hit the spring on level 4, the arrows always land above the second spring.
also its so hard to get the guy to aim top right or top left, really strange.
otherwise i think it will be really fun!

P#98350 2021-10-07 19:07

@MikeyNoodles Thanks a lot for pointing out those issues! I've just uploaded a new version that fixes level 4 and hopefully makes the aiming in the diagonal directions a bit better (plus other stuff you can read in the release notes above).

P#98364 2021-10-08 00:12

Boy does this one sound good. Can't imagine why!

P#98365 2021-10-08 00:12

The aiming does seem a lot better! Thanks! I made it up until level 14, which was just blank (but it sounded like I was moving around.) The music is cool!

P#98381 2021-10-08 12:20

This was so much fun. I got to level 21 and gave up. The ones with the springs are awesome!

P#98974 2021-10-21 06:14

[Please log in to post a comment]