Log In  

BBS > Superblog
Posts: All | Following    GIFs: All | Postcarts    Off-site: Accounts

Just out of curiosity, how close does my attempt to implement pset() come to the built-in version? Mine appears to be slower.

function my_pset(x, y, c)
  addr = 0x6000 + shr(x, 1) + shl(y, 6)
  old_val = peek(addr)

  if (band(1, x) == 0) then
    new_val = c + band(0xf0, old_val)
  else
    new_val = shl(c, 4) + band(0x0f, old_val)
  end

  poke(addr, new_val)
end
2 comments


Cart #22016 | 2016-06-01 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
4

Here's my version of snake. I have it done enough to say it's a fully-fledged version. Yes, I know my graphics aren't the best, but I was more focused on creating the best version of snake I could and be as economical with the processing as possible. If you're in need of an idea as to how to create a random generator that has to take into consideration where other objects are, then you may want to take a look at how my create_food function works. It may not be the best, but it's much better than randomly choosing locations and checking whether they're acceptable.
Constructive criticism is always welcome.

INSTRUCTIONS

Just like normal snake, attempt to eat the food without running into yourself or going out of bounds.

Version 1.0
Added start/win/lose graphics and menus
Added food eating sound
Added out-of-bounds and tail-eating lose conditions
Added food
Added "choosey" random food placement algorithm
Retooled game checks to be more efficient (within ticks where possible)
Added a substantial amount of comments to code

Version 0.1
Initial game release

4
0 comments


I know next to nothing about writing raycasters and demo that comes with Pico is too obfuscated for me. Could someone create a raycaster that can take vector data (sorta like DOOM does) and can render both ceilings and floors? Obviously making it flatshaded since with pico's palette textures wouldn't look good, not to mention texturemapping would be a performance killer for Pico.

0 comments


I've seen many approaches to combat the limited accuracy of the maths functions, time() due to the fixed point number size limit of 32,768

Given that all of this must have been solved during the 8-bit era are there any best practices or recommended solutions we should know about?

4 comments


Think of the possibilities! And it could be as simple as adding the following function:

freq frequency [channel]
sets channel's frequency to frequency hz. If no channel is provided, 0 is assumed. 0 or negative frequencies mutes it (no sound). Frequency is also reset when sound or music plays on a given channel.

2 comments



9 patterns/6 song slots (a bit inefficient because 3/4 time collides rather unhappily with the tracker's design assumptions), never uses the last track so that's safe for sound effects.

a song to use! you like? I can make more! Though I dearly, DEARLY wish the audio popping issues in the engine will be addressed. :'(

I have more (high-fidelity) game music here: https://github.com/0xabad1dea/glorytales/

3
7 comments


I just submitted this to the Wiki, but figured it might be more visible here.

Here is how I handled text centering in some recent code. Any improvements are welcome.

textlabel="this is some cool text!!!"

function hcenter(s)
	-- string length times the 
	-- pixels in a char's width
	-- cut in half and rounded down
	return 64-flr((#s*4)/2)
end

function vcenter(s)
	-- string char's height
	-- cut in half and rounded down
	return 64-flr(5/2)
end

function _draw()
	rectfill(0,0,128,128,0)
	print(textlabel,hcenter(textlabel),vcenter(textlabel),8)
end
1 comment


Cart #21913 | 2016-05-31 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
12

After debugging some physics issues in PICORACER-2048 I decided to make a little area to play around with improving the physics and collisions.

I'm using the "Separating Axis Theorem" to find collisions, and clipping to find the contact points.

Lots of work to do still, many optimisations can be made.

Known issues: contact points are sometimes broken, collision response is not always right.

Optimisations to make:

  • cache AABB
  • cache world polygons
  • don't check AABBs that are not in the same area
  • don't check equivalent axes more than once
  • remember the previous axis since it's likely to be the same or next to it on the next iteration.
12
5 comments


Hi everyone,

From some time I wanted to put this project together:
PICO-8 running on Pocket PiGRRL.

Check it out and let me know what do you think in comments below.

All the best,
petri

2
4 comments


I'm playing with P8 again and for my next game I'd need to get a pixel-perfect collision. Anyone got any samples of that?

6 comments


I've been looking at a lot of the collision scripts for map tiles and they all make sense and work well...except when I start scrolling the map. I'm trying to make a scrolling side shooter (a la Gradius) but for the life of me can't get the scrolling speeds to match up so that the player doesn't get stuck on the walls.

Collision is working because the player stops but then he can't move up/down or back once he's blocked. I know that moving opposite direction should be doubled (which in this script it's not) but other than that, I just don't have my head around it. Hoping some extra eyeballs can help out.

What I'm trying to achieve is if the player hits a wall, they can at least move any non-blocking direction to avoid getting pushed off the screen.

The scripts I've studied have been great and at least got me this far...I'm just trying to make things move with the camera.


2 comments


Cart #21837 | 2016-05-30 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
3

Tried to get this together in a night for #p8jam2 ("chain reaction"), but didn't quite make it. Had a different idea originally, which I ended up putting way more time into before realising it didn't make much sense. Oh well, game jams am I right?

Blow things up, they will blow more things up. Try to shoot the right ones so that you end up taking as few shots as possible.

Arrows: Move
Z: Fire

3
2 comments


Cart #21833 | 2016-05-30 | Code ▽ | Embed ▽ | No License
1

I was kinda nnoyed that I didnt get everything finished in time for the jam so I added a few improvements - off competition - just while I am still in the swing of it.

Changes:

  • second mighty enemy type "saw robot"
  • improved background parallax scrolling
  • graphic overhaul, cleaned up the pixly mess a bit

Still missing the actual story point and a bit of an extended level.

How to play

Left/Right - walking
Up - Jumping
X - run/hang/slide down
Y - shoot (if you have collected energy balls)

How to jump really high?
You walk left/right with the cursors.
Up lets you jump (up right/left)

if you press X while walking you will run!
If you jump against a wall running and hold X, you will cling to the wall (slowly sliding down).
From that you can jump again to flip flop up a higher ridge.

1
2 comments


Cart #22047 | 2016-06-01 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
1

Cart #22018 | 2016-06-01 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
1

Cart #21821 | 2016-05-30 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
1

Cart #21818 | 2016-05-30 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
1

[ Continue Reading.. ]

1
0 comments


super-super alpha (near-disgustingly garbage level)
right now, it only plays the foward animation sprite

Cart #21786 | 2016-05-30 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA

5 comments


Cart #21732 | 2016-05-30 | Code ▽ | Embed ▽ | No License
28

ISOHOPES is a puzzle/management/simulation game where you must set up and maintain a chain reaction in a nuclear fission reactor. Try to make as much profit as possible, without having a meltdown.

Fuel rods emit neutrons and heat when struck by slow (white) neutrons, control rods eat neutrons and coolant conducts heat and slows neutrons. Control rods are free, but the rest is going to cost you.

The coolant changes colour as it gains and distributes heat. It will boil away if it gets too hot, so keep an eye on the blue meter to monitor its level. You can check your reactor's highest temperature with the red meter. If that meter maxes out, you will meltdown and lose everything.

You can spark neutrons to ignite your chain reaction using a fuel rod, add or remove coolant with a control rod, and retire when you think you've made all the dosh you can by going to the pump in the top right.

Help and contextual prompts are built in, but music and other levels are not... yet.

Good luck, have fun, and keep splitting those atoms!

28
19 comments


Cart #fishpaint-0 | 2020-07-27 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
38

this is just your standard fish painter game, but no one had done one for pico-8 yet, so

38
16 comments


Hoping that maybe someone has played with a PocketCHIP at some point even though I know they're not shipped yet...just wondering if an 8x8 sprite shows up too tiny on the PChip's display?

I've been making most of my games with 8x8 as the base for characters but wondering if I should shift my thinking to 16x16 or 8x16 or something bigger to show up better on the Pocket...?

1 comment


Cart #23753 | 2016-06-27 | Code ▽ | Embed ▽ | No License
123


By @AshleyPringle

Spacetank 9000
It is the year 9000
Blow up aliens
Get crate boxes
You are powerful and good

Scorched Earth meets Super Crate Box
There are chain reaction explosions because everything in the game explodes
I plan on adding more weapons and enemies. Enjoy!

UPDATES:
-different control scheme
-more gradual difficulty curve
-made some weapons a bit easier to hit with :)
-fixed some wonky hitboxes

KNOWN BUGS:
-Just straight up totally hard crashes pico 8 for some reason sometimes? I have no idea why, maybe has something to do with sfx?
-Will probably run out of memory if you get too far?

[hidden]

Cart #21841 | 2016-05-30 | Code ▽ | Embed ▽ | No License
123

Cart #21839 | 2016-05-30 | Code ▽ | Embed ▽ | No License
123

Cart #21779 | 2016-05-30 | Code ▽ | Embed ▽ | No License
123

Cart #21738 | 2016-05-30 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
123

Cart #21715 | 2016-05-30 | Code ▽ | Embed ▽ | No License
123

[ Continue Reading.. ]

123
31 comments


Cart #21704 | 2016-05-30 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
4

Here's my very first PICO-8 project! There's no end state and no explicit goal, except to make your garden pretty. Here are some things you can try, though:

Flower Island - Make an island covered in flowers.
Greenery - Cover the garden in nothing but flowers and water.
Watch the World Burn - Cover the garden in fire.
Fire Island - Make a small island of fire, with greenery around it.
BEEEES - Grow as many daisies as you can.

I'd love to see screenshots of your lovely gardens!

4
3 comments




Top    Load More Posts ->