It's a long way from finished, but I now have something approximating a playable demo of a 1- to 4-player cart I've been working on.
Here is Star Shield for your... Uh... Enjoyment? Or whatever you want to do with it.
Premise
Defend your base against the stars' relentless assault by activating your left or right shield at the correct moment. Rack up a high score in single player, or be the last base standing in multiplayer!
Stars speed up after several deflections, and new stars appear at high point thresholds. Extra lives are awarded to particularly beleaguered players.
Controls
- LEFT or (o): Activate left shield.
- RIGHT or (x): Activate right shield.
For proper orientation, imagine yourself seated behind your station, looking into the circle.
- Player 1: Red (South)
- Player 2: Blue (North)
- Player 3: Yellow (West)
- Player 4: Green (East)
De-make of "Plague Inc." in PICO8
Spread virus before cure is found
Controls:
LEFT/RIGHT
X : ok
Z : pause menu
TRANS = Transmission points (boost virus spreading on ground)
RESIST = Resistance points (slows down cure progress)
SYMPT = Symptoms points (virus kill)
Work in progress:
- balance
- add Help screen
There's currently no way to get the existing random seed, since srand() doesn't return anything.
Test/demo:
Could it return the existing seed so we can temporarily change to a sub-system's ongoing seed, then restore it? Like this, for instance:
function handle_ai(ai) local old_seed=srand(ai.seed) â‹® (stuff) â‹® srand(old_seed) end |
It's minor, since you can always keep your seeds in shadow values from the outset and manually set them each time, but it'd still be handy.
Thanks! :)
Itch.io:
https://pixbits.itch.io/infected-system
Submission for the 3rd Gameshell game jam
Rules and other info:
Refer to the itch.io page
Controls:
(Save or Delete game data from the pause menu)
(The inventory menu toggle is also in the pause menu)
X = Shoot
C, RIGHT-ARROW, LEFT-ARROW = Navigation
DOWN-ARROW = Teleport or place antivirus
(Feedbacks are welcome)
Escape from Vandermonde by finding your way through the passages to the teleporter. Avoid the robots that patrol the passages or program them to help you.
There are 14 levels of exploring, puzzle solving and action, all intertwined on the one large map.
Gameplay is introduced within the game. You can choose any level to play at the title screen. However, to beat the game you have to play all the way through from level 1.
You owe money to the wrong people and you only have a few minutes to pay it back. Grab the money bags and drop them at the safe house. Don't get caught. Don't run out of fuel.
Inspired by Getaway!, a crime-themed game designed by Mark Reid and published for Atari 8-bit computers in 1982.
Screenshots
Controls
- up/down/left/right: drive/steer
- x : speed boost
Changelog
1.3
- minor UI and help text adjustments.
1.2
- easy level debt reduced to $2000, with a due date of 2 minutes.
I have a tile object which contains the sprite number and other properties. I want to update different properties at different times, instead of passing all properties all the time.
First I tried this approach:
function update_tile(values) tile = values end |
but of course that unsets anything that you don't pass in values
Then I settled on the following approach:
function update_tile(values) for k,v in pairs(values) do tile[k] = v end end |
Am I correct that this is the right way to do it, or is there a better (code readability or less tokens) way to do this?