Mono Cho-Han 🎲🎲
Night has fallen and it has begun to rain as you enter the inn. Two people and the dealer are sitting on the tatami floor. they kindly ask you to join their game of Cho-Han.
You agree.
The Rules
The rules are simple. The dealer shakes two six-sided dice in a bamboo cup. The cup is then tipped onto the floor. Players then place their bets (1, 3 or 6 mon) on whether the sum of the numbers on the two dice will be "Cho" (even) or "Han" (odd). The dealer then removes the cup and reveals the dice. Winners receive double their bet.
If any player runs out of money, the game is over. If the bank runs out of money, the game is also over. The bank runs out of money when a player reaches over 99 Mon.
So long,so far (or Wake up or the endless fall).
It may be the story of a guy who falls and keeps saying to himself: so far everything is going well and who counts the distances 100m... 90.. 80... etc. when he gets to 20cm from the ground, puts his foot on the ground, tells himself one last time so far everything is fine and leaves.:-)
I would like to request a more consistent availability of the "SHUTDOWN" menu command for handheld devices. Currently, when running Pico-8 on a handheld device (Powkiddy RGB30, Anbernic 351v, etc..) it can be difficult to shut down Pico-8. Every device has button shortcuts to force quit an App but they often won't work in Pico-8 depending on the OS and Handheld. In these cases using the "SHUTDOWN" command in the START menu is the only way to return to the OS. When launching directly into a cart, there is always a Shutdown command in the START menu
In my opinion, this is the desired behaviour.
However, when Pico-8 launches Splore mode, that menu does NOT have the "SHUTDOWN" command. It is replaced by "EXIT TO SPLORE"
From Splore it is possible to get to a Shutdown but that is hidden and sometimes not easy to access. You need to actually select a cart and press START, then select "OPTIONS"
I would like to request more robust features to be able to control which controllers are assigned to which player. The current solution causes problems when using the Powkiddy RGB30 in TV console mode.
Background: The Powkiddy RGB30 has an HDMI out allowing it to attach to the TV like a Nintendo switch.
In this mode it makes sense to attach an external Controller to the handheld to be able to play the game at a comfortable distance - ideally using a wireless USB dongle or a Bluetooth controller.
However, the way Pico-8 currently handles controller assignment makes this cumbersome or impossible. On the RGB30 the face buttons on the device are mapped as a controller. That controller is usually controller #0. Attaching an external controller results as that controller being #1. Pico-8 will map that second controller to player 2. This makes it impossible to play most games and it also makes it impossible to control the menu with the external controller.
Hi folks!
This is a demo cart to accompany my article from the latest issue of PicoView, an excellent web zine run by @NerdyTeachers! The article series discusses using the looping features of Pico-8's tracker to create long and evolving musical phrases, while using minimal memory resources.
You can find the full article here:
PicoView: September 2023 - Practical Looping
It's a follow up to last month's article, which you can read here:
PicoView: August 2023 - Making Music with Loops
Credit:
This article, and the accompanying demo cart, uses music composed by Gruber for Krystman's "High Stakes". Thank you very much from myself and everyone at [b]PicoView
If you feel like you don't understand Lua's tables, I hope this post helps. I use tables all the time when I'm programming; they are super useful. Let's study them so you can use them too!
Tables can do several different things, which makes them a bit tricky. We'll start by exploring a common use: using tables to store a list of things, such as:
- A hand of cards: 2♠, 3♥, Q♦, K♣, J♣
- A list of monsters: Ogre, goblin, slime mold
- The positions of all the black checkers: 12, 24, 20, 27
Making lists
This makes an empty list:
items={} |
This makes a list with the names of some things found in a forest:
items={'tree', 'rock', 'stream'} |
Now items
contains 3 things; you can think of it like 3 boxes:
The first box contains 'tree', the second contains 'rock', the third contains 'stream'.
Getting items out of a list
Each box has a number, called its "index". To get the value from the first box, we do items[1]
like this:
Little Cherry and the Dandelion Twins are getting ready to jump some rope.
Press the Up key to Jump. You earn points every time you successfully jump.
Made using only 1019 characters
n=rnd function q()k=255cls()g=cos?"jUMpals" l={}for i=0,k do add(l,{i=i,c=pget(i%35,i\35)})end d='Dひ:k2Dnu:k<C3C392C3C392u2u2CGC2CQ9<a<CGC2lFa<l<l<l2v<l2v<:P:2:ZD't=0for i=1,64do b=ord(d,i,i)-40for q=1,b\10do sset(t%16,t\16,b%10)t+=1end end z=0t=3.25d=8h=0v=0j=0y=0c={}for i=0,32do add(c,{x=n(128),y=n(9)})end end q()m=circfill::b::flip()cls(12) for o in all(c) do if(o.x<-8-o.y)o.x=150o.y=n(9) o.x-=.7m(o.x,50+o.y*g(o.x/k+.25)*3,8+o.y,7)end m(64,230,150,3)for i=0,8 do m(37+i*7,38,18+g((i+t)/d)*2,14)end for i in all(l) do if(i.c>0)m(26+i.i%35*3,32+i.i\35*3,2,7)r=btn end pal(8,9)spr(0,24,82,1,2)spr(0,97,82,1,2,true)pal(8,8)spr(v,60,82-y,1,2)for i=0,128do pset(64+32*g(i/k),87+12*sin(i/k)*sin(t/d),5)end if(g(t/d)<0)spr(v,60,82-y,1,2) if(r(2)and y<1)z=.15h+=1?"\aedc" if(r(2)and j<1)y+=2.2v=1 if(y>15)j=1 if(y>0and not r(2))j=1 if(j>0and y>=0)y-=2.2 if(y<1)y=0j=0v=0 if(t>d)t=0d=8-n(h%5)+n(h\25)%5 if(z>0and y<1and t/d>.4 and t/d<.45)h=0q()?"\a" if(z>0)t=z+t?h,64-#(""..h)*2,108,7 if(z<.1)?"up to jump",44,70,7 goto b |
The Fastest Flinger in the West
I'm making a new thread, since we're now doing a full release!
FROM: The US Office of Sheriffs TO: OFFICER JEFF, Placeholder City, Texas --- Congratulations on your new role! As a new member of the US Sheriff Association, it is your duty to protect the people of whatever city you may decide to live in. Under normal circumstances, a sheriff would have a revolver, or something of the likes to protect themselves, and to aid in the catching of outlaws. Sadly, due to budget cuts, all we can afford is a piece of string, and some rocks. We urge you to minimize the amount of rocks you spend, as we cannot afford for you to let them go to waste. [ [size=16][color=#ffaabb] [ Continue Reading.. ] [/color][/size] ](/bbs/?pid=134984#p) |
Puzzle Duck
A simple Puzzle Bobble / Bust-a-Move - Clone.
from URL Wikipedia:
Puzzle Bobble,[b] internationally known as Bust-A-Move, is a 1994 tile-matching puzzle arcade game developed and published by Taito.
At the start of each round, the rectangular playing arena contains a prearranged pattern of colored "bubbles". At the bottom of the screen, the player controls a device called a "pointer", which aims and fires bubbles up the screen. The color of bubbles fired is randomly generated and chosen from the colors of bubbles still left on the screen.
according to the manual:
A += 2 -- EQUIVALENT TO: A = A + 2 // note that the LHS appears twice, so for TBL[FN()]+=1, FN() will be called twice. |
ok, let's test it:
function fn() print("in function") return 1 end f={ 10 } print("f[1] is "..f[1]) f[fn()]+=1 print("f[1] is "..f[1]) |
the function fn is only called once!
Duel 9 different wizards in this simple pico-8 game!
Controls
Up/Down to select your spell
X to use your spell
X to move from one screen to another
Rules
Select from the following spell's and cast it against your enemy
Fireball - 2 damage, blocked by shield
AcidBall - 1 damage, penetrates shield
Lightning - 3 damage, reflected by shield
Shield - Blocks and reflects damage
Heal - Restores 2 health
Defeat your enemy by doing 6 damage before they do!
Most enemies follow patterns! Learn them to defeat them!
Behind the Scenes
Currently, there are two ways to access pico8 memory: peek/poke[2/4] and @/%/$
The @/%/$ operators look a bit weird but are faster and better overall.
However, I think their main drawback is that they don't replace the need for poke, causing code that uses them to necessarily be quite inconsistent, imbalanced and weird whenever it needs to combine peeks with pokes.
I wanted to check how hard it would be to add the ability to poke into @/%/$, so I created the following fork of z8lua that implements it:
https://github.com/thisismypassport/z8lua
Here's how it works:
-- simple poke @0x1000 = 0x1 ?@0x1000 -- outputs 1 -- use of $ as both peek and poke (copying 4 bytes of memory) $0x8000 = $0 -- multiple assignment @1,%2,$4 = 1,2,4 ?@1 -- outputs 1 ?%2 -- outputs 2 ?$4 -- outputs 4 -- compound assignment - worked automatically @1 += 0x80 ?@1 -- outputs 129 (since previously was 1) -- poke metatables meta = setmetatable({}, { [ [size=16][color=#ffaabb] [ Continue Reading.. ] [/color][/size] ](/bbs/?pid=134944#p) |
Straight out of the Bamboo Forest!
Meet PIZZA PANDA, a fluffy little fast-driving bear, as he beeps, bounces, and barrels his way through 20+ levels in search of the lost pizza slices. He'll have to zigzag through city streets to beat the clock, delivering the freshly reconstructed pizzas straight into the mouths of hungry citizens.
But that's not all! Puzzling hats, helpless rats, and meddlesome cats also await PIZZA PANDA and his trusty red automobile. It's non-stop action all the way to the top of the winner's podium!
Controls
- Jump: 🅾️
- Honk/Start Level: ❎
- Move Left/Right: ⬅️/➡️
(open the pause menu to restart a level or return to the overworld)