So this had bugged me for a long while for binary versions of games, how to load in data while the game was running using the serial connection. I had a quick look for examples but couldn't find any, so if anyone else is struggling with how to do it then this code might be useful for you.
To test it down download the code and run it. You should be able to press X to generate some data to your clipboard (or swap code add in printh command). Save that as a text file. When running just drop the file in and you'll be able to see the data being loaded into memory.
You can tweak a few variables to load in anywhere from 0xf to 0xffff.fffff values which you can then post process to have loaded data for your game.
Hopefully this is of some use to someone struggling out there. For me, I'm going to use it for DLC content
NOTE: This doesn't work with BBS games, and when using HTML versions would would need to mess about with the template load it it in that way. This is just purely for binaries or when developing.


Edit: Beta is now closed and the final game is now here
I've been kicking around the Pico-8 community for about a year now creating games under NerdOfGamers/RyanCavendell (depending on where you might frequent). I'm currently trying to set up the infrastructure to automate a community game jam using Lexaloffle's Edu version. So I'm looking for sign-ups for the Beta to make sure all the automated systems are working in real life as I'm anticipating potential problems (already done testing myself and seems stable but that will only go so far).
If you want to make a small game together with the community and help beta test this then the sign-up form is here > https://forms.gle/dzwgUiGXGebsnhTd7 < with text from sign-up form below
Concept:
Everyone taking part has a turn in generating a game together using Lexaloffle's web-based Pico-8 Education version (https://www.pico-8-edu.com/). At the end of the project the final game will be published to Itch.io for free, under the unlicense and creative commons attribution v4.0 international licenses, in HTML5 format and all URLs generated during the project will be publicly and freely shared. There is a limit of 2040 characters across all code, graphics, and audio so use them wisely!
Rules:
- A random person is drawn to start the project, with each developer taking random turns
- The latest URL will be sent to the current developer who then has 24 hours to complete 1 hour of development before sending an update via their emailed response copy
- When a new URL is submitted by the current developer it immediately sends the latest URL to the next developer
- If for some reason an update is not received within 24 hours the developer will be marked as being finished and latest URL will be passed to the next developer
- Once the last developer has finished the project will automatically stop
- I'm currently unable to re-add skipped developers, so for now submit a fresh from and you'll re-entered and eligible to have a turn again
Submission:
- Once your 1 hour of dev time is up, use "save @url" command (this will update the URL)
- Open up your response email, click on "edit response" button at the top of the page
- Copy and paste the URL into the Pico-8 Edu URL and click "Submit"
Managed to squeeze in the entire campaign however each mission will load randomly, so good luck with getting the mission you want! This is pretty much the final build unless I find any major bugs, so enjoy!
- O+L/R - change stations
- U/D/L/R/X - interaction with station
Decided to use Pico8 to lay down the initial design work for an RPG designed for the Thumby which runs using the RP2040 chip. This means I have 264kb (actually probably 232kb) RAM to work with, about 1.5mb of disk space, and a 72x40 screen. So I restricted the display area and made use of poking in an 8x8 font to simulate a lot of the final look of the game.
Version 0.1a is just about pre-alpha, as you have an endless dungeon to explore (max size 10x10) but no victory condition quite yet. There is still a few bits and pieces to finish off, code to tidy up but it's coming along.
Version 0.2a is now pre-alpha. Added in graphical updates, hooked in most abilities, added in some more user feedback, balancing is faaaar from done yet. There are likely still be be some bugs floating around as I haven't gone through a complete bug test yet.
Version 0.3b is now beta. Should be feature complete (and down to about 120kb), win/loss conditions, all abilities in and coded. Slowly starting to work on balancing the game now and completing the last tweaks.
Version 0.4b is getting close to final build. Fixes up some more bugs, added new "dodge" passive ability, tweaked some things for balancing, added in list of enemies at the start of a fight.
Version 0.5b is pretty much the final build. Balancing is basically complete, audio (a single beep) has been added, finished off modding support (for Pico8 requires editing load_data section). All that's really left to do is refactoring the code to improve the structure of it rather than any other major changes.
Version 0.6b added might passive ability and tweaked a player to go with that. Found a few bugs which I've fixed (such as monster movement, monsters not casting spells etc). Last big change was refactoring the code to streamline some things. Code is still a bit messy but way better than it was before overall. Now on final testing before porting.
Version 1.0 made last few tweaks to the game before release
==Controls==
- Arrow keys for menus or movement
- Z/X to interact with menu (flashing element is current option to use)
- Hold down Z/X for 1+ second to bring up item menu when outside of a fight
==Active ability==
These abilities can only be used during combat.
ID NAME EFFECT
1. Fury attacks number of times equal to level but decreases accuracy by 25%
2. Pray random effect: cast known spells, heal 1hp/level, flee, nothing
3. Flee allows user to escape to nearby cell without damage
4. Cast allows user to cast known spells (!!not suitable spell effect!!)
5. Burn damages all enemies for 1hp/level, *2 if single enemy
6. Drain damages 1 enemy for 0.5hp/level (min. 1) and restores hp equal to damage to user
7. Void damages all enemies for 0.5hp/level (min. 1), *2 if single enemy, and restores hp equal to damage to user
8. Shift gain abilities/passives of random monster <= level until end of next fight
9. Heal heals user for 2hp/level
10.Aura attack that automatically hits for 0.75hp/level (min. 1)
11.Slay damages 1 enemy for 9999hp
==Passive ability==
These abilities are used automatically when appropriate.
ID NAME EFFECT
1. Resist reduces all damage by 1 point
2. Regen regenerate HP over time (automatic outside of combat)
3. Disarm disarms any encountered traps
4. Learn learn unknown spells from scrolls
5. Strike increases accuracy of any attack by 50%
6. Immune takes minimum damage (max. 1)
7. Dodge decrease attackers accuracy by 33%
8. Might increases all damage by 1 point
==Items==
Scrolls can only be used in combat, with no cost to hp, except if the player has the learn passive in which case the spell added to the players known spells. All items are consumed after use
ID NAME EFFECT
1. Potion heals user 2hp/level
2. Map reveals map
3. Tools disarms any traps
4. *xxxxx scroll of the spell of the same name
==Spells==
All spells cost the caster 1hp to cast.
ID NAME EFFECT
1. Missile same effect as the ability "smite"
2. Bless same effect as the ability "pray"
3. Blink same effect as the ability "flee"
4. Fireball same effect as the ability "burn"
5. Siphon same effect as the ability "drain"
6. Vortex same effect as the ability "void"
7. Reshape same effect as the ability "shift"
8. Heal same effect as the ability "heal"
9. Holy same effect as the ability "fury"
10.Slay same effect as the ability "slay"
A 0-4 player minimalist 4x strategy game
9 maps to choose from plus a random daily map
Capture bases, farmland, and factories to increase your income
Use science to improve your chance of winning battles
Capture all bases to win the game
Optional fog of war
Rounds last between 2 to 10 seconds based on settings
9 different monsters; common, rare, and quest related
Care for your monsters, send them on quests, or encounter random events
Share battle codes of your common or rare monsters to fight one another
Mouse, keyboard/controller controls
Simple implementation of a bullethell game. Various pickups which improve movement speed, fire rate, special bombs, multifire, and orbs. Comes with a mini boss and end of game boss. Game takes a minute or two to play through with a record of the fastest time you've won.
Based upon the ZX Spectrum game Viking Raiders by Mark Lucas
Completed:
- No game crashing bugs
- but if you do find any strange behavior let me know so I can fix it
- 1 to 4 human/cpu players
- Menu/Enter to reload game
- CPU only game will play by itself for you to watch
- Guide to graphics alike to original
- Seasons
- over about 30/40 turns water will freeze and unfreeze
- catapults and army units can move over frozen water
- boats can only move across unfrozen water
- any land units found in unfrozen water drown and die
- Army units
- can board boats
- can get drunk (drunk units move by themselves)
- can pick up gold
- can recruit/sober drunk army units
- can recruit empty boats
- can destroy adjacent occupied boats
- Boats
- can only move when units onboard
- can only move on unfrozen water
- can recruit empty boats
- can ram other boats to sink them
- Catapults
- uses ranged combat
- cannot directly fight
- Victory conditions
- defeat all the enemy castles
- requires an army unit to attack castle
- game ends when no other players remain
- short delay to give player chance to review
- defeat all the enemy castles
- CPU AI
- ai is easy to beat, provides minor challenge
- picks random choice of:
- return gold (priority action)
- board friendly boat
- target closest enemy castle
- target closest enemy unit
- target closest drinking horn
- target closest gold chest
- (catapults only) move away from enemy units
- (boats only) head towards enemy castles
- SFX
- killing units
- converting units
- defeated castle
- sinking boat
- firing catapult
- minor generic actions
To do:
- Fix any reported bugs
Known bugs:
- Deferred: AI finds it hard to move boats upwards when blocked with land
I had intended for this to be a quick side project but it took longer than expected so code got a little spaghettified in places but it still works, but far from optimised. Barring any major/minor reported defects, or any later tweaks, v0.8 will likely be the last version. When I'm ready to move to completed cart I will update version to 1.0.
A simple Runner game set in ancient Israel, you have 8 nights to get past the obstacles in your way and return with more oil for the menorah. Play along with 7 classic Hanukkah tracks, or listen at your own pleasure. Three levels of difficulty, Easy, Medium, and Hard.
Created a Christmas themed game, pretty basic gameplay but with ramping up difficulty with each level. The quality of the coding isn't great as I haven't wanted to particularly devote a lot of time to the project, just slapping the code together to make it playable over producing good quality code as it's more a side project.
Currently my own personal record is level 9 with a high score of 322.
Update: Found a bug, so fixed it.
Second game created using the Pico-8 fantasy console. Loosely based off the board game Heroquest with some adaptations and workarounds for the limited space. 4 different characters, 6 different levels.
Update: Added in a bunch of quality of life changes when inside the game so you have a better idea of what's going on. Changed the scenario around so hopefully a little more epic (and difficult) ending to the 6 levels. Uses a different cart ID as removed one item so items got renumbered. Unless any major defects are present should be last version (speaking of which, I think there might be a random bug with the ambush code which I've not been able to track down yet).
Update 2: After the last update including Split(), I reworked the code a bit to allow music and sound effects.
Update 2 - part 2: Made a minor error with the coding, uploaded a fixed version so it should now no longer crash on scenario 3!
Got my entry sorted out for Ludum Dare 46, first time in a while since I've posted a game.
Also my first cartridge I've posted here since I picked up Pico-8 a week ago.
Hope you enjoy.
Update: Spent the past month revising the game into v1.2, tutorial and additional feedback are provided in game, as well as 3x3 and 4x4 map so you can choose your difficulty. Removed the rest of the post so as not to clutter things up. Should be final update unless bugs are found I missed.