View Older Posts
Conway's game of life
Interesting use of the map with mget, mset and memcpy.
In classical cryptography, the Hill cipher is a polygraphic substitution cipher based on linear algebra. Invented by Lester S. Hill in 1929, it was the first polygraphic cipher in which it was practical (though barely) to operate on more than three symbols at once. The following discussion assumes an elementary knowledge of matrices.
I have added the space after the 'Z' in the alphabet so each symbol is represented by a number modulo 27.
This is a custom font library. You can create your own font. Just use the matrix to set the drawing of the char. Use a dot a the begin of each line. The drawing for the letter 'F' can be '.PAC.FG'. Put the pen in P then a line to A and from A to C. Next, put the pen in F and draw a line to G.
Sampe of use:
function _draw() cls(5) font:drawtext(3,10,'t⬇️his is a way to create custom',7) font:drawtext(3,20,'⬇️vector ⬆️font.',7) font:size(4,5) font:drawtext(11,52,'s⬇️ize matters!',1) font:drawtext(10,50,'s⬇️ize matters!',14) font:size(2) line(55,113,127,113,8) font:drawtext(56,105,'⬇️picoscope101.fr',7) end
This game has be made for Ludum Dare 45 : “Start with nothing”. You’re the Spirit of the Nature. You have nothing and should collect with the appropriate tool droplets of water, sun and earth to feed the plant.
Use arrows to move and [x] key to change the current tools.
Could you help Greta to grow? ( the name of the flower)
(Done by @s_yanik & @wdwave)
Save the date! june 9th, #pico8 conference at the Bordeaux Geek Fest 2019 (France) - Arthur Dent Club
URL Official french announcement
Will you find the path ?
Could you resolve the gods challenge?
Is 1min16 is enough for you to succeed ?
This my compo for LD-43 : 'Sacrifices must be made'
This cartridge is an exploration about 'how to show things to the player'.
Arrow keys to move, [O] button (usually Z/W key on qwerty/azerty keyboard) to change the view mode.
Sometime, I just make pico stuffs for the pleasure to scratch my head... :-)
I was exploring a way to manage double-acting press button.
In hope this helps.
Have a nice day :-)
I'm working on the topics for picoscope 2017 (in april). I love to code, so I will speak about about tables, object oriented programming, using functions in variables, converting arguments to an array (and an array to arguments), events...
You will find samples in these cartridges.
The last event we were involded, was a great success (Roc'n Stick in Niort, France).
Pictures of the PICO-8 workshop, march 25th
I hope I will see you in the next coming weeks ;-)
=> Random path merge
I_EDITOR is a programming game. The goal is to write simple scripts to reproduce a drawing on screen. The commands used in the scripts move a pointer (“turtle”). The pointer has a pen, which can be up or down. When the pen is down, each move lays a print. There are additional instructions to make calculus, evaluate conditions and call previous declared sequences. The syntax and semantic are organized in language called I_CORE.
Now you can download the manual !
Le manuel en français est disponible.
Try to reproduce the blueprints or play with the sandbox...
I will add a score and more blueprints soon ;-)
In the main menu:
Choose a blueprint or the sandbox (up/down, x)
In the editor:
Choose the command in the first column (up/down, x) or return to the main menu (o)
Change column (left/right)
Change the value in the second colum (x, then left/right to decrease/increase)
Delete instruction in the second colum with (o)
Have a look on i_core thread to have more explanation about the language "I".
I will make a tutorial soon and post a link and additional information here.
:A 20 FD 90 TR ; :B 1 - # A ?B ; 4 B
CLR : clear
<CP : copy from clipboard
>CP : copy to clipboard
Copy the line below into the clipboard
:a 10 fd 90 tr ; a a a a
Paste in PICO-8, then activate <CP
Clipboard functions (<CP,>CP) aren't working in HTML exported cartridge.
Copy from notepad (text in the html browser may contain tag or additional characters)
WARNING : This is not (yet) a game. It's a strange thing (only) for programers.
This cartridge includes i_core and the turtle extension.
It shows how to:
The turtle extension includes the following commands:
':loop 20 fd <a tr 1 - # ?loop ; :side >n 360 <n / >a <n loop ; cls 4 side'
Have fun ;-)
This is the core engine of a language ('I') and its virtual machine (all of this in PICO-8).
You can extend this engine (see how _SHW or _CLS are implemented).
You can create synonyms for a simplier use (see ADD and +).
The programs must be writen in a line. Terms are separated by space.
The engine is stack based (like forth): '5 4 + .' => shows 9
The operators + - * / and flr function are available.
The '#' duplicates the last value (of the stack).
You can evaluate (5 + 4) (3 + 2) with '5 4 + 3 2 + .' => 45
Create a sub function
:NAME <sequence of instructions> ;
':A 5 4 + ; :B 3 2 + ; A B * .' => 45
You can call the sub function NAME with its NAME (see A and B in the sample).
Create SQUARE and evaluate 3^2:
':SQUARE # * ; 3 SQUARE .' => 9
If the last value in the stack isn't zero it calls NAME else it goes to the next instruction.
This is usefull to create tests and loops:
':SA # . 1 - ; :LP SA # ?LP ; 5 LP 0 .'
Count down from 5 to 0 (then stop).
You can use variables:
>NAME (load value from stack)
<NAME (push value in the stack)
'1 >A <A <A + .' =>2
You can use many :EVAL call to enter your program (one line per call).
You can use as many i_core engines as you want at the same time (object).
You can execute the whole program (:EXEC) or run it :STEP by step.
:STATE returns 3 when done. You can restart with :STATE(0).
If you have read the description so far, you may have a question.
This sounds crazy... So, why?
I'm working on two games. In the first you have to build a program by stacking graphic items to draw on screen to replicate a drawing with the minimal amonth of items. In the second, some robots fight together using genetic algorithms to evolve (by sharing part of their own code to create new ones).
I think I can share this library and my interest in doing this.
picoscope101.fr where mad things come to life...
Picoscope2016 is coming in April 2017
We are organising a PICO-8 coding party in France.
You are welcome to join us in the workshops.
A howto about rotating a sprite around its center...
Use left and right arrows to spin the sprite.
I'm on this since a couple of hours done on several days. I have a lack of time for the jam.
I will improve as I can but I submit like it is. I hope you will be kind enough to play with it.
Follow the radar indication. Shoot but don't be hurt. You have only one life.
The levels change each time the game is played.
With PICO-8 0.1.6, you can now programming using OOP design. This sample use setmetatable to build a constructor.
Commencée, délaissée et finalement terminée...
Voici la documentation en français de PICO-8 : PDF.
Je vais progressivement compléter ce document avec mes notes, remarques et projets illustrant les différentes notions présentées (et d'autres selon l'humeur du moment).
We are organising a coding party in Nantes (France). You are welcome to join us in the workshops and for the game jam. All of this made with PICO-8.