Log In  

BBS > Community Superblog
All Users | Following | GIFs | Postcarts | Off-site

Using window{pauseable=false} in fullscreen apps does not disable the ability to pause by hitting ENTER.

Steps to reproduce:
1) Boot Picotron.
2) Add this code to main.lua (as per the manual):

window{
	pauseable=false
}

function _draw()
	cls()
	print(t())
end

3) Run it.
4) Try to pause by hitting ENTER.
5) Watch in helpless grief as you continue to fail to pause, despite mashing ENTER over and over and over.

Oh yeah, and another thing I noticed. @zep, the Proggy demo is now kinda broken since you can't type anything in the editor window without it popping up the pause menu every time you hit ENTER. (I noticed when trying to use my Froggy app today and realized that would affect Proggy too.)

6
2 comments


Cart #exitdidierbyte-1 | 2024-05-02 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
4

A little game where you have to find the EXIT.

Orange arrows -> The EXIT is on the UP, LEFT, RIGHT, BOTTOM
0 - 9 digit -> The EXIT is at "x" case (manathan distance)
Red arrows -> The EXIT is not on this row / column

Enjoy !

4
2 comments


Cart #yakibayinu-0 | 2024-05-02 | Embed ▽ | License: CC4-BY-NC-SA
4

Can you get to the final floor before your battery runs out?
Find batteries to refill the meter and find coins as a challenge.

Controls:

  • Left = A
  • Right = D
  • Jump = W
4
0 comments


https://www.lexaloffle.com/bbs/?pid=47637#p

I can find all the other secrets but not the last newspaper

Can someone at least give me a hint?

0 comments


Music and sound effects in Pico8.

Introduction

I started working on some projects and all that is left to do is to create the music and sound effects.

I watched some tutorials about getting started with making music in Pico8, took some notes and tried playing around in the music editor. I learned the basics of the editor and can find my way around it, I just get stuck trying to make music. This is the first time I'm making any kind of music so I'm quite new to all of this.

I just started learning about music theory to help me understand more about how to create music and or sound effects.

Beside following tutorials, taking notes, playing around in the music editor with both channels and trying to re-create some simple tunes and or sound effects of games (all 8bit).

I plan to learn about playing from ear in the future, after I feel more comfortable with my ability to write music in Pico8.

My questions

I saw people talk about how you can compare the notes in Pico8 to piano notes:

White notes | Black notes

"Z = C102_" | "S = CH105_"
"X = D102_" | "D = DH105_"
"C = E102_" | "G = FH105_" etc.

Would it help if I were to also learn about the basics of how the piano works or will music theory be enough with enough practice in Pico8?

Are there thing I might have forgotten about that I need to learn or are there things I don't need to learn in order to write music in Pico8?

If you have any advice please tell me.

resources

I have listed some of the rescources here that I have used.

  • Gruber
  • Nerdy Teacher
  • Dylan Bennett
  • Reddit
  • Lexaloffle forums

Thank you

  • OffensiveWare
1
3 comments


Very much WIP using some of the graphical style/themes from Mint in a Vampire Survivors style game.

WIP has:

  • 2 characters with different modifiers
  • 6 weapons and 1 passive item. weapons and passives have level upgrade modifiers
  • A wave spawner (but it spawns the same stuff every wave - need more mob types)
  • Boss mobs drop a chest that will drop a random upgrade to an item in your inventory
  • Standard mobs drop xp, hitting the target xp for the level triggers a shop where you are offered 3 items (with some weighting towards items you already own)

"O" button does everything.

TODO:

  • refactor for performance, I think I can improve collision handling
  • a proper map, thinking an infinite map like vampire survivors
  • scaling of mobs with XP
  • more items
  • more enemy types
  • probably refactor how I am doing classes, it's getting messy.
  • bugs, probably lots of them
  • everything else

Cart #diphwezu-2 | 2024-05-20 | Embed ▽ | No License
4

[ Continue Reading.. ]

4
4 comments


Cart #picoweather-0 | 2024-05-02 | Embed ▽ | License: CC4-BY-NC-SA
2

Very early implementation of a weather feature in Picotron.

As Picotron's "fetch" is extremely limited, I deployed a very simple middleware on my own server (https://play.quee.org/?lat=0&long=0) to relay GPS coordinates between Picotron and Open Meteo (https://open-meteo.com).

GPS coordinates are obtained using ipapi (https://ipapi.co).

Kelvin Quee

2
1 comment


Cart #ray-0 | 2024-05-02 | Embed ▽ | License: CC4-BY-NC-SA
9

Raycasting?

Controls:

  • arrow keys to move
  • mouse to look around it will eventually reach the border, you have to center the mouse again
  • x for viewing map
  • d for more detailed stats

about

After trying to make raycasting the wrong way, I came up with this method.
I really don't know if thats the correct way of doing it. My idea was to have rays being shot from the player, when they hit a wall the stop and draw a line in the center at the screen + index of the ray, also the further away the ray went, the smaller the line will be. So that make a pretty good illusion of 3d in a 2d space. You can poke around with the values like the field of vision, amount of samples taken (rays shot), the stretch of the screen and many other.

[ Continue Reading.. ]

9
5 comments


I know there is still so, so much yet to add in Picotron, but there are quite a few features PICO-8 has that would be so nice to also have in Picotron. I imagine a non-zero percentage of these are probably already on some official/unofficial/mental roadmap that @zep keeps for Picotron. Nevertheless, I thought I'd list some here just to get them "on paper" and not floating around in my head. Feel free to contribute your own items to this list.

Keep in mind, I have zero expectation that any of these ever actually get added, let alone added soon. So if you decide to contribute to this list, keep in mind the vibe here is more "ooh, that'd be neat if Picotron did this too" rather than "why doesn't Picotron have this feature?!"

EDIT: Wow! A lot of these got added in the latest version of Picotron! (v0.1.0h) I've updated the list below to indicate what's now been added to Picotron. Thanks, @zep! 🤩

  • Having the option to show tab character indicators
  • Alt-up and alt-down jumping you one function up or down at a time

[ Continue Reading.. ]

12
5 comments


Cart #harm_anim-0 | 2024-05-01 | Embed ▽ | License: CC4-BY-NC-SA
6

This is an audio-visual representation of the harmonic series. The sine waves are in size and
frequency, integer ratios of 1,2,3,4,5,6,7,8, using bends to get as close to the exact tones as
possible. Every time the sine waves hit a peak or valley, they play the associated note in the
harmonic series and they oscillate in the same ratio.

6
0 comments


Cart #budewukadi-0 | 2024-05-01 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
6

Made by my son and me in about a week during that time I also taught him Lua.
My son is responsible on the level design that will make you suffer. (Suffer because you might reach a level in which the portal will actually kill you instead of teleport you and you will have to find another exit)
I consider the game very challanging.
There are 21 levels in this game. I was able to reach level 3 but my son has reached the end of the game countless times.

Special thanks to @matthughson for "advanced micro platformer" which we used.
Thanks Nerdy teachers for excellent tutorials.
And finally thanks Lazy devs for great tutorials.

[ Continue Reading.. ]

6
2 comments


I'm trying to figure out the alternate colors a bit so I can use them in a game. I'm not trying to get all 32 colors available at once. I'm happy with having 16 but just want to adjust which 16 I have. From what I've read, it seems like this is possible.

I put the display pal() swaps at the top of the cart which does switch out colors. And it works when drawing and with sprites. Cool.

pal(3,129,1) -- blue129
pal(5,140,1) -- blue140
pal(6,135,1) -- yellow135
pal(11,137,1) -- orange137
pal(12,132,1) -- brown132
pal(14,128,1) -- brown128

So I have a sprite that is drawn with original blue12 and then on the screen it displays as brown132 because of the swap. I get that and it's working.

But I want to be able to display that same sprite again in a different color.
How do you do a swap on a swap?

-- this sprite is draw in blue12 and displays as brown132 = expected
spr(1,12,96)

-- how do i make the same sprite display as orange137

[ [size=16][color=#ffaabb] [ Continue Reading.. ] [/color][/size] ](/bbs/?pid=147717#p)
1
9 comments


Cart #ditomareyo-0 | 2024-05-01 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
3

made this for a potential thing at furconz camp 2024, which is spies and secret agent themed

heavily modified from the demos/dots3d.p8 cart by zep

3
2 comments


The response to this has been pretty positive, so I'm throwing this demo up here on the forums.
This cart is a prototype for a point and click adventure with pre-rendered 3D graphics and a custom palette.

Cart #the_lab_grows-2 | 2024-05-01 | Embed ▽ | No License
29


Included in this cart are elgopher's require module and snowkittykira's error explorer module

29
7 comments


I have discovered a pretty frustrating bug related to header.lua, resume and menuitem()

Have a look:

It seems that trying to use a menuitem after editing ANYTHING using IMMEDIATE MODE Crashes pico-8 with the error ATTEMPT TO CALL UPVALUE "_SUPERYIELD" (A NIL VALUE).

It says its being called in FLIP(), so lets look at header.lua...

You can see _SUPERYIELD() being called if the pause menu is supposed to stay open. no problem here, right? WRONG!

All of these "special" functions, like _SUPERYIELD() Are "Jettisoned" after they have done their jobs. that means they are all set to nil, so the user isnt able to ruin the device. We can see this at the end of header.lua. Here we can see all the original functions being reset. They still work only in header.lua though, because theyve been set to local variables for use in the header only.

[ Continue Reading.. ]

1
4 comments


Cart #veggie_combo-4 | 2024-05-03 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
11

This game was made for the Minigame A Month April 2024 for theme Farming!

Gameplay:

Use your tools to manipulate the field, then harvest with as many points as you can.

⬅️⬇️⬆️➡️

❎: X

🅾️: C or Y/Z

When harvesting you move along in a straight line if you have the same veggies in that direction and stop before stepping on a different one.

Harvesting a veggie gives 1 point +1 for each previous same vegetable.

Combo and movement stops on a new vegetable in the direction, or upon turning into a new direction!

Tools

  • Shovel: Let's you swap two rows or columns with each other.
  • Pitchfork: moves row/colum left-right-up-down
  • Bomb: Upon stepping on, it harvests all neighbouring tiles (replaces one where you move so it doesn't break cool lines)
  • Watering can: Replaces a 3x3 area with a crop randomly selected from that area (weighted by occourance)

Seeds:

After completing a stage (or on pressing Enter) you can view the seed of the current page. Note that number down and share it with a friend. In the Load Field menu you can enter the seed and race on who can achieve more points on the same map, with the same tools!
Development:

You can read the devlogs and watch the full development VODS if you are intersted in things like that!

Devlog Articles

[ Continue Reading.. ]

11
7 comments


Hello. I was playing around with pods, and I noticed that create_diff isn't defined. here's the code (I'm 99% sure I didn't do something really stupid):

local a = {"a", "b", "c"}

local b = {"a", "c", "d"}

local pa = pod(a)
print(pa)

local pb = pod(b)
print(pb)

local pd = create_diff(pa, pb)
print(pd)

@zep was the function removed? it's in https://www.lexaloffle.com/dl/docs/picotron_pod.html#POD_Diffs, but maybe that's outdated.

EDIT: Never mind, it's called create_delta!

0 comments


Cart #lemmings-1 | 2024-07-31 | Embed ▽ | No License
57

So I was curious if picotron would be capable of running the original Lemmings game as it was on Amiga, it turns out - yes!

Well, with the exception of no halfwidth pixels for the UI. But otherwise, you could make a 1:1 clone. Which I started doing, but then I thought it would be more fun if I pretended Psygnosis had time-travelled and asked me to make a picotron port. So I added extra in-between frames to the classic walk cycle for smoother animation, climbing gloves and umbrellas to indicate lemmings with permanent skills, fast forward (an invaluable feature added after the first games), and a nicer level select.

At the moment there are only a handful of levels and only one half-finished music track, I hope to work on more and have all the levels from the first four games (Lemmings, Oh No! More Lemmings, and the two holiday packs from '93 and '94), buuuuut I don't know that I'd be comfortable posting that here (or at all) - Lemmings is somebody else's IP after all. This is a fun hobby project for me, but if you want to play classic lemmings there's a few other options for you. I'm only really sharing this so that anyone that wants to see how I've done it can check the code, and also it's a way for me to call it a milestone I can step away from - I've got other projects with my own IP to finish!

[ Continue Reading.. ]

57
6 comments


Cart #steelhunter-0 | 2024-04-30 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
23

Can you take down the entire fleet?

The enemy has established a naval blockade and you're the only one that can open up supply lines. Use your mini-sub to destroy enemy ships and clear the blockade. Success will depend on a steady hand and perfect timing. But beware! There are also reported sightings of an experimental enemy sub!

  • Navigate tricky minefields
  • Tense periscope action!
  • Avoid depth charges raining from above
  • Damn the torpedoes!
  • Top secret submarine boss fight

Classic action

Controls

Arrows / D-Pad = Move submarine

[ Continue Reading.. ]

23
6 comments


Hello, I have this code that circles an object around the player position.

It works well if the player stands still, but if the player moves the trajectory of the object goes a bit wonky. it sort of stops, or looks like it wants to go in the other direction for a bit.

How can I make it smoothly rotate around the player?

    local player = self.game_context.player
    local orbit_radius = 40  -- Distance from player to orbiting projectile
    local orbit_speed = self.speed  -- Normalized speed of orbit; consider this as fraction of a circle per frame

    for p in all(self.projectiles) do
        p.angle += orbit_speed
        if (p.angle > 360) p.angle = 0
        p.x = player.x + (player.attributes.w / 2) + orbit_radius * cos(p.angle/360)
        p.y = player.y + (player.attributes.h / 2) + orbit_radius * sin(p.angle/360)
        -- Handle projectile duration and collision
        p.duration -= 1	
    end		
2 comments




Top    Load More Posts ->