Log In  


Cart #samurise-3 | 2024-12-16 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
56

Raijin, god of thunder has stolen your beloved cat! Fight through Oni and chase him to the heavens to save her!

A runner/platformer where all you need to worry about is jumping and swinging your katana!

Controls

​Your character will run back and forth automatically.

​Jump: Up key/button

Attack: 'o' or 'x' button, keyboard: z / x / c

Characters

​​
The Samurai

​The player character and hero of the story. On a revenge mission to retrieve his cat!

​
Jizou Statues

​These poor guys have been possessed by Raijin's evil, rescue them with a slash of your katana.

​
Oni

Sent by Raijin to prevent you following him. Easily dispatched in small numbers but can be a challenge when in groups!

​
Raijin

God of thunder and kidnapper of cats.

Code details

This started off as a pico1k entry called Samurai Balls
I also submitted a verlet integration ragdoll implementation in the same jam which I used for death animations for player and oni!

Some cool features I used: (see acknowledgements for links)

Extended map.

I use a second cart to load the map from text into the extended map area to allow a bigger map. It also makes it really easy to do tall thin maps! In the end I'm only using half of the available map space, you can really make some big maps!

Secondary palette

I use the secondary palette to split the screen vertically at the level boundaries to give me the use of more than 16 colours on screen at once! This really works well with the vertical level layout of this game.

Parens-8

Initially I tried to get it all finished in lua without "cheating" but tokens were against me. Parens-8 is a very cool lisp interpreter right in lua, allowing for code in strings (1 token!).

Credits

All code/art/music by me.

Lazy Dev's Advanced Shmup Tutorial Youtube series
Whilst this game is not a shmup, that series is a great watch and contains many very useful pico8 coding tips which I used.

Secondary Palette BBS post

Parens-8

Of course the Pico8 wiki and probably a lot of other posts on this BBS.

I hope you enjoy playing this as much as I enjoyed making it!

Here is a video of me doing a play through, for those who want some ideas!
This is the old levels, I have reduced difficulty after feedback!

56


1

😭😭😭


Great job mrsandman! I know it's not an easy task to complete! And very respectable time!


2

I enjoyed playing this so much!
Great great job really. Thanks for making this :)


1

Hello friend! Thank you for playing and I'm so happy that you enjoyed it!


3

This is just amazing, the mechanics, the animations, the backgrounds...

I did notice before reading your programming notes that it was all one continuous scroll.

I took a long time getting through the cloud section and wouldn't complain if a few of the upper clouds were just one segment longer. But I got through it.

For anyone having trouble with the boss...

Holding down jump and mashing the dash button repeatedly is quite effective, you bounce back and forth without touching the ground. It probably won't get you to the end, once you destroy 3 or 4 orbs you should slow down and thing about timing to hit it.

And if anyone gets the "Mercy" achievement, please post a screenshot so we can all be impressed!


@Cowirrie Thank you for playing!
I think you're right, the clouds can be a bit tricky until you've played it about a thousand times like I have.

That large amount of plays is also the reason I could get the mercy achievement!

Even I have never managed no deaths though (I once did it with 2 deaths on the boss and was raging!)

If anyone can do it without dying I will be very impressed indeed!


1

I'm really glad that parens-8 helped you finish your project. Looking at your code, you used it very effectively too. There's a few more tricks you can use to save space and tokens with parens-8 if you ever plan on using it again (mostly minifying and ROM loading).


1

@Siapran Thanks! Since I added it later on in the project it was a little disorganised but not too bad. As I'm using extended map space, I did actually use the normal map memory to store even more parens-8 code!


1

This is a definitely a PICO-8 Feature cart, IMO. I find this game really challenging and quite frustrating but it never feels like the game is cheating me or making it difficult...it's all on me (or at least feels that way, which is good).

The best execution here is the smoothness of the levels as you go up. Just really nice work that feels so natural and wonderful. I don't really understand how you did it, but it's really cool. You really made this game feel "tall and skinny" despite the square aspect.

My only out loud complaint during my last play was the pagoda gates level and the "walls" that I could bounce off of weren't that obvious to me. I jumped thinking one thing and just started bouncing...live and learn moment. Still haven't gotten to the end dude. I rage quit at the pagoda level :) Try, try again...


@morningtoast Much love!

As someone who grew up with games in the 8-bit/16-bit era, I have a great deal of love for difficult games that you need to play over and over again. I guess it manifests in me making games I would have liked as a kid. I did try to go easy by having unlimited lives, and tried to mix in some easier hack and slash sections between the fiddly jumping sections.
I'm glad you don't feel like the game is unfair though, that is and important line not to cross!

I do hear you about the pagoda gates, I feel like there is something a bit off about the collision detection near the top of them but maybe I just got used to it after play testing it so much.

I actually think if you can get through the first bamboo forest stage, then the rest is not so bad! The boss may induce some rage though, it has in me enough times! My primary play tester (my daughter) has also had her share of breakdowns whilst playing. 😅


1

Tricky, but rewarding. well done! Is that ragdoll physics on the player/enemies?


@Soupster Thank you! Yes it is ragdoll physics using verlet integration. My pico1k entry of just the ragdoll


oh, sure enough, I missed it earlier: (parens8 (readrom 0x2000 0x0fa3))

I need to give the code a better read when I get a chance.

As for the game, I'm struggling. It's really nice, but I suck at platformers...


Really nice, well executed game! A few places do need some thinking to get through, but there are zones that just flow perfectly in the action! Boss felt cool once I figured out the timing and the spritework imo is just perfect!


@Achie72 Wow thanks! That was very cool seeing your whole playthrough. I really enjoyed seeing you figure out the controls/timing and as you got further along you were totally in the flow and nailing the jumps and timing!

Your feedback was also great, I do not disagree with you about the green, but Pico-8 palette, what you gonna do? lol
Your "Raijin will mess you up in real life too" photosensitivity warning made me laugh, but great point.

Thanks for the valuable feedback and play through video!


I added a video of me completing the game to the end of the main post!


I have gone through and revamped a lot of the more frustrating levels. The annoying precise platformer levels should be much less frustrating now!


1

Finally! I think half of my deaths were at the final boss, lol

Yet I failed to hit any of the achievements so this will be a replay until I get at least one of them!

I had a mind to go in and adjust the controls to allow for alternate buttons A=Jump, B=Dash but I couldn't sort through the code all that well...too fancy for me! Maybe something you could offer in the pause menu?


Great job!

"too fancy" is a very kind way to say "a complete mess"! It is also partly minified by shrinko8 so pretty hard to follow in the released version.

The original jam prototype used just the two buttons, but I found it hard to do quick or simultaneous presses. Let me see if I can make you a build like that though.


3

Proud to say I finally managed to finish a Mercy run. That was a real challenge!

And with that I have almost all the achievements. I'm probably not going to go for the 0-deaths clear.


@mabbees Incredible! Mercy is a real tough one. Also, if it makes you feel any better, I have never managed the no-death achievement yet. I have done it with 1 death a few times.


2

Soooo close -- curse you Raijin!


1

You motivated me to go back and try some more.

Finally completed all achievements!


3

i got all achievements! really nice game!


@nicegame Thanks for playing and congrats! That's not easy at all to complete all achievements! Very impressive.


2

This game is so fun! It took me a while to beat it, but I got the speedrunner achievement on my second run.


1

Congurts on the game now being featured!
I've been playing on a couple of different systems. Weirdly under Onion on Miyoo Mini Plus I can't get it to work without the character immediately falling through the floor and most of the screen being taken over by the brighter background green! I wonder why it's being translated wrong on there. It's a native version of Pico-8 running. The Raspi version.


@MrAshpool Thanks! So I forgot to export the binaries to include the second cart containing the level... The downloads were ok first launch and then I updated and messed up the export!
Nobody mentioned it until now! Oops. I have uploaded fixed binaries on itch.io if that's where you downloaded from.
If you built yourself, be sure to load, save and then include #samurise_level in the builds too!


Oh interesting! It worked straight from 'splore on an RG351P under Amberelec.
Will have a mess about.

Dang it! No luck. Have tried copying the level png into the folder manually, running from 'splore, standalone Pico8 app on Onion and all sorts. I did record a couple of videos if needed but it's just me loading the game by a couple of different means.


Thanks for the game :) I'm like Mr Ashpool, impossible to get the game to work (the character immediately falls through the floor and most of the screen is taken up by the lighter green background) I don't know if there's a link with my version of pico 8 (0.2.6b raspberry pi 64 version) On the lexaloffle website via the browser, the version of pico is 0.2.6c Is this the difference? Would you have an idea? Thanks in advance.


I think I might know some of the problem,
Here's the relevant level load code

if not stat(101)do load("samurise_level.p8",nil,"samurise.p8")else...

So if it isn't running from the bbs/splore, it will try to load "samurise_level.p8" and then reload "samurise.p8" once the level is loaded into memory.

So, I guess two options, make sure you have the files named ".p8" rather than ".p8.png" or update that bit of code to load the png (it is the first line of code).

No idea why it isn't working from splore though...

Just tested on my handheld, running the same raspberry pi version and it seems to work (at least for me) if you have "samurise_level.p8" in the pico8 roms folder.


Even after renaming samurise-1.p8.png to samurise-1.p8, it still doesn't work (same glitch) I retrieve the file from here, it is already in .p8.png format.


1

Ok,
Do "load #samurise_level" from pico8 console. This is the cart with the level data. Save that as "samurise_level.p8" and try that.
You may also need to make sure you don't have the version number in the file. Remove the "-1" just "samurise.p8".

Otherwise, I'll upload the p8 files in a zip to itch.io to make it easier for handhelds.
I just did that, you can find the pico8 files on the itch.io page https://grimninjagames.itch.io/samurise


Isn't it possible to have everything in a single .p8.png file? Just like other games.


1

Unfortunately not.
Many games on here are multicart though, not just this one!
It is a way to fit more content into the game than would otherwise fit in the cart restrictions.


1

In my opinion, there aren't many games that reach a level such as this one! A truly amazing playthrough!


I have the same problem as Akkeos.
There is no problem running the game out of splore on a CubeXX on MuOS, but I experience the same behavior starting the game from splore on Milo Mini Plus using OnionOS.
With the level file downloaded from itch and placed in my pico rooms folder (not the Splore subfolder) I can run the game from splore, but not directly from the Splore Subfolder (which includes the cards downloaded in splore).
Placing the level file into the Splore subfolder the game will not even load correctly.
Strange.


@boozar Thanks for the feedback, I don't have anything running OnionOS to test properly, seems like an issue just on that OS for some reason. I took a guess at a possible reason though and made a small update to the game which might help. Though like I said, I can't replicate the issue to test.
If it still doesn't work I'm out of ideas though without a way to replicate it!


@Troypicol I can confirm a change. I can not get it to run now no matter where I put the level file or if it ends with p8 or png.
Another multi card game I know is working is Monday Golf. It has a title and game file. It is not on splore, so I start it directly out of my roms folder using the native pico 8 emulator.

In another round of tests I tried poom in a subfolder and also put the samurise p8 files loaded from itch in a subfolder.
And guess what, it just worked.
I tried again to just put the files in the pico rooms folder without any subfolders and it worked too.
Strange, maybe I did a step I missed the last time.

Anyway, the (old) files on itch already worked. It just won't work right out of splore.


@Akkeoss @MrAshpool FYI, See comments above


@boozar Ok I think I know what you mean but not totally sure on details. Subfolder under what? With the main game file outside the folder?
Maybe it worked again because of changes @Troypicol made.


1

@Troypicol Great, thank you very much. Everything works fine for me now :)


1

Well Samurise-3 is definitely working on Onion from Splore. Also, after running once, until system restart, Samurise-1 will then work from other folders! I guess it's cached the Samurise level cart by that point or something. But... Yea!


1

Great! Thanks for all the testing guys!



[Please log in to post a comment]