I like pixeled graphics and chiptune sound game.
I just released a pico-8 game on Steam!
https://store.steampowered.com/app/1448220
And More Tools!
[3D modeling tool] [ NEW ]
https://bitchunk.itch.io/pelogen2
[Animation tool]
https://bitchunk.itch.io/spranim-kit
[Music scales and Play the Piano]
https://bitchunk.itch.io/mu-scalelab
フラワーオブライフのような模様を描画してみたくなり、作ってみました。
クエリは"HTBL()"の解析をある程度理解する必要があります。まずサンプル(tab:6)を見てください。
演出はパートでテーブル区切られており、パートごとに描画グループを複数設定することができます。
クエリ作成(QUERY)
描画グループの指定
{id number radius color distance angle [option]}
- id: 操作する描画オブジェクトのインデックス
- number: 描画する数
- radius: 描画する円の半径
Displays an animation of a parabola.
After opening the menu, use the up and down keys to select the item you wish to control.
Z: open control menu / close control menu
- START: Specifies the animation start position.
- TARGET: Specifies the animation end position.
- HEIGHT: Adjusts the height of the middle point.
- DURATION: Specifies the animation length. (If TIME exceeds DURATION, the animation will start from the beginning.)
- FRAMERATE: Switches the frame rate to 30 or 60.
Feature Overview
QSORTZ()
Quick sort by z.
- sorts by reference to z from the argument table.
- See the code in the cart for the single value type
QSORT()
where table t is sorted by v. - This function consumes 76 Token.
tb={{id='a', z=1}, {id='b', z=2}, {id='c', z=1.5}, {id='d', z=-0.5}} ?'before sort',6 for i,v in pairs(tb) do ?v.id..':'..v.z end qsortz(tb,1,#tb) ?'\nafter sort' for i,v in pairs(tb) do ?v.id..':'..v.z end --[[ before sort a:1 b:2 c:1.5 d:-0.5 after sort d:-0.5 a:1 c:1.5 b:2 ]] |
When turning knobs in the SFX or instruments editors, it can be difficult to adjust by dragging.
This happens when the window size is x2 or more and you use Alt + Tab to switch application windows.
As a temporary fix to this problem, you can restore adjustments by returning the window to normal size.
This has been the case since the version before v0.1.0h when the mouse lock function was added.
Feature Overview
SECTFILL()
Fill sector shape.
- The start and end angles are specified from 0 to 1.
- If the difference between the start angle and the end angle is 0.5 or more, it is a semicircle, and if the difference is 1 or more, it is a circle.
- If the start position is higher than the end position, it is replaced.
- This function consumes 428 Token. (segfill & trifill ver: 185 Token + segfill + trifill)
-- Draw the Mouth characters sectfill(96,64,20,11,-0.2,0.9)-- x, y, size(radius), color, start angle, distance sectfill(54,64,8,12,-0.2,0.9) sectfill(26,64,8,12,-0.2,0.9) |
Feature Overview
SEGFILL()
Fill segment shape.
- The start and end angles are specified from 0 to 1.
- If the difference between the start angle and the end angle is 0.5 or more, it is a semicircle, and if the difference is 1 or more, it is a circle.
- If the start position is higher than the end position, it is replaced.
- This function consumes 314 Token.
-- Draw a half moon segfill(32,24,16,10,0.625,0.5) -- x, y, size(radius), color, start angle, distance |
It may be helpful to understand how it works by executing a COLOR COMMENT OUT line.
You can grab it with a mouse click and drag it to throw it.
PELOGEN 2 is a 3d model engine running on pico8.
https://www.lexaloffle.com/bbs/?tid=140324
When the code that sets the window property and executes vid() is run, the file browser is covered by the console screen.
In this state, you cannot return to the file browser unless you type exit
into the console.
window{ width=128 ,height=128 } vid(3) |
I don't understand the underlying mechanism, so it's hard to offer suggestions for a solution...
but something like these may be what we need.
- Restrict the use of window and vid() at the same time.
- If a new console is running, even in a window application, close window and console after execution is finished.
- Running window application from CART RAM is always done on the console screen.
I hope i can find a simple solution.
When selecting notes on the SFX screen, if they extend above the top level, an unusual note will be pasted.
This is the clipboard content at that time.
--[[pod_type="notes"]]unpod("b64:bHo0AD8AAABJAAAA9Qt7bm90ZXM9cHh1AEMgBQkEAC--AA8oDA8gEAYAgQgQDgwIEA8wDwAEBgDwAggQDQwIECx4MD0wLHgxPTh9") |
Also, when copying all notes in a track and pasting them to another track with no selection, the track will be formatted incorrectly and will not play.
There is no way to recover except to do an undo.
- Play detune using a custom waveform.
- 2ch is synthesized and played using a classical mechanism.
- Simple memory rotation is lightweight.
If you have created custom waveforms for the two SFX in advance, you should be able to perform detune with just this.
music(1) sfxb=0x3200+1*68 --sfx 1 function _update() poke(sfxb,peek(sfxb+63),peek(sfxb,63)) --rotate waveform memory end |
update history
- v0.2
- Change duty display
- SFX selection toggle.
- Note Adjustment.
- v0.1
- first release.
https://www.lexaloffle.com/bbs/?tid=141408
The music from previous posts has been combined into one cart.
Update history
- v0.3:
- New songs have been added.
- Display title.
- Adjustment of UI and New Font.
- Font adjustment.(v0.3a)
- v0.2:
- New songs have been added.
- v0.1:
- first release.
The mouse cursor will no longer be visible.
(I also noticed that GIFs were not output properly.)
This phenomenon has been observed in previous versions.
Restarting with the reboot command does not fix the problem, so you need to exit the application once.
The situation when I was checking
- Multiple pico8s were running (other mice were normal)
- The editor was running for a long time
- I was using stat() to get the mouse.
- Sprite sheet was copied from another cart by reload
Fortune telling with mahjong tiles.
- When three tiles line up, it's a
暗刻 Anko
- When all four tiles are aligned, it's called
暗槓 Ankan
- When a pair is formed, it becomes a
対子 Toitsu
- There is also a secret combination.
It's not real mahjong.
save /appdata/system/wallpapers/jongtelling_wp.p64
Please save it and use it.
release note
How to use
Open the music editor, select the specified INSTRUENTS_ID, and then copy and paste the --[[pod_type="instrument"]]
line below.
## elec bass --[[pod_type="instrument"]]unpod("b64:bHo0AG4AAABsAAAA8F17aW5zdHJ1bWVudD1weHUAAygAAgAABAABEAYPIBABIAEgAfAAAhACDhABIA8hIAEwD0CQDxECEA8UDzAAATAPERAR4AIIIA9QYA9C8IsPKA_0CvAEBA8zDzAJ8K0P_AoP-w_AD-cPDQHwCH0=") ## metal scratch --[[pod_type="instrument"]]unpod("b64:bHo0AJUAAACTAAAA8IR7aW5zdHJ1bWVudD1weHUAAygAAgAABAABEAYPIAARIAEgAfAAAhAGDiEgDyEAD-8AAeAPEQIgDyUAATAFD9AAAgHgDxICIA8vUAUPMAACATAPLJACCKAPRvBrDygP--AGDygPXA8ZsAIQCQ8SDw8QX_kv5A--D8QPjw9qD1UPHw8P8IkP_AoP-w_AD-cPDQHwCH0=") ## buzz bass --[[pod_type="instrument"]]unpod("b64:bHo0AI4AAACVAAAA9TN7aW5zdHJ1bWVudD1weHUAAygAAgAABAABEAYPGBABIAEgAfAAAhACDyAQASAPISABIAQPfwABcA8RAhAEDycAATAiABESIgBwD-QQAeAPEx4AEA4eAPAlDBAB8AAJIA8_IA_j8E8PKA--8AUFD3EPOA808AQMD3APXw8o8JUP_AoP-w_AD-cNAfAIfQ==") |
https://www.youtube.com/watch?v=hqALoHicVlY
Is it possible to reproduce these sounds with a picotron?
I have almost no basic knowledge of how to combine operators or create algorithms, so I'm just trying to figure it out.
It has been my secret desire for many years to be exposed to FM modulated sound production.
In particular, I have a history of admiring sounds like the Mega Drive (Genesis).
Of course, the songs that make full use of not only FM sound but also PSG sound are nothing short of amazing.
I cannot edit after ID8 in the instrument edit.
https://www.lexaloffle.com/dl/docs/picotron_synth.html#Instruments
There are 128 global instruments defined at 0x40000 by default, each 512 bytes. |
Are the 128 instruments mentioned in the specifications scheduled to be available in the editor? Currently there are up to 25.
Also, when multiple envelopes are set to "DATA" mode, the window extends outside of the screen.
Scrolling is required in the same way as for the waveform configuration windows.
The picotron version at the time of this posting is at least 0.1.0d or earlier.