Log In  

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

Cart #jakub10-0 | 2023-03-10 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
9

Roguelike - 10 lines

I'v just bumped into Jakub Debski's 10 liner roguelike for the Atari 800 Turbo Basic XL and I knew that I had to port it to Pico-8. So here it is!

Update

An extended version can be accessed (here)[https://www.lexaloffle.com/bbs/?tid=52046]

Pico-8 port

It's a faithful port of the original Turbo Basic XL version. So it's 10 liner too, but I had to made some modifications:

  • the original playfield was 20x20, I had to reduce it to 16x20 because I wanted to use wide characters in the Pico-8 version.
  • I'm using Pico-8 builtin glyphs instead of numbers for the monsters and for the collectables because - you know - I wanted to use the wide characters.

[ Continue Reading.. ]

9
6 comments


Cart #mifudotuse-0 | 2023-03-10 | Code ▽ | Embed ▽ | No License
1


Hello,
I'm been trying to play around with raycasting and I hit lots of problems with the maths so tried copying some code from cast.p8. it kinda works but I'm clearly making some silly mistake when I try to render the image to screen. I'm taking the length of each ray (from left to right, one for each x-axis column), and calculating the height of the wall it hits by just dividing an arbitrary number by the ray length.
Then for each column I'm drawing a line which has the y-value being half the height of the screen + and - half the height of the wall.
In my head this makes sense, but when I render it out the walls look fine, but I'm getting tons of noise above and below the walls.

[ Continue Reading.. ]

1
0 comments


Cart #dufsomowi-0 | 2023-03-10 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
3

What is this

This is just a simple tech demo. I was curious to see how recognisable an RGB image would be if it were mapped to the screen in the same way LED TVs/monitors draw colors with RGB.

Since each fake pixel is 33px - this gives a grand usable screen space of 4242px!!!!!


I went looking for 42*42 picture to experiment with and found this one (which I selected as it was the only one I could find that wasn't a person)

https://secure.gravatar.com/avatar/ea41f5aca8818b60437910c8cbc2e10f 42px version: https://secure.gravatar.com/avatar/ea41f5aca8818b60437910c8cbc2e10f?s=42&d=mm&r=g

[ Continue Reading.. ]

3
1 comment


Cart #report_cards_are_in-3 | 2023-03-10 | Code ▽ | Embed ▽ | No License
16

Game I made for a game jam at work. Theme is 'Delay the Inevitable'.

If controls are difficult, try focusing on keeping the airplane parallel to the ground.


Was fun making this, especially with my son cheering me on.

The underlying physics still needs work - I think that was what gave me the hardest time.

If I had more time I'd devote it to making actual music (not that I know how), fixing the physics (also don't know how), and building out the level so it's more interesting (sort of know how).


Thanks for giving it a shot.

16
12 comments


I've been tinkering with PICO-8 for a week now and put together this simplistic old-school driving game.

Cart #iditarod83-1 | 2023-03-09 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
2

Susan Butcher's Iditarod '83 is a fictional game that didn't exist, as part of a larger narrative. My posts at https://yoyodyne.games/ will all be in kayfabe but I figure I'll use this space as a sort of development blog.

What I learned

  • I hate Lua's 1-indexed arrays.
  • Accidentally calling music inside the draw loop instead of emits a static tone (presumably as the music tries to play over and over?).
  • I love the system overall, but couldn't handle the editor. I edit in vim/vscode with vim mode all day and could not get the hang of using the editor. Still working on a better workflow.

[ Continue Reading.. ]

2
1 comment


Cart #wezebedoza-7 | 2023-05-24 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
13

夢では、よく会う人がいて、よくいく町があり、よく死ぬ場所がある。そして朝起きる。それの繰り返し。
(このゲームはまだ制作中でベータ版の投稿になります)

In dreams, there are people you often meet, towns you often visit, and places you often die. and get up in the morning repetition of it.

It has not been translated yet, and there is only a Japanese version.

Release Notes
v0.2(2023/05/24) add BGM
v0.1(2023/01/30) I created a prototype through LSDJam.

13
16 comments


Cart #dotmaze-1 | 2023-03-10 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
2

I'd like to share my first pico8 game !
It's a mix of pacman, shoot em up and binding of isaac maybe :P

You can play the story mode coop or versus mode in multiplayer.
The goal is to get to the green en doors at the top of the maze that moves down pretty fast and not get crushed at the bottom of the screen.

I'd be happy to hear your comments,

Thanks !

2
2 comments


This function creates simple extensible 'types' with a few additional (potentially) handy properties. If you find it useful, help yourself to it. Credit appreciated but not required.

  -- 52 tokens
  function new_type(names)
     local names = split(names, ' ')
     local meta = {}
     return setmetatable(
	meta,
	{
	   __call=function(self, ...)
	      local obj = {...}
	      for i=1,#names do
		 obj[names[i]] = obj[i]
	      end
	      return setmetatable(obj, {__index = meta})
	   end
	}
     )
  end

You use it like this:

  -- a 2d point object
  point = new_type('x y') -- argument names separated by spaces

  p = point(1, 2)
  print(p.x) -- prints 1
  print(p.y) -- prints 2

As for the handy properties, the first is that the object's data is stored both by key and as an array. Which means you can access the properties using the dot notation, numerical indexes, or even unpacking the object, all of which can come in handy in different situations.

[ Continue Reading.. ]

3
1 comment


Cart #painklr11025-0 | 2023-03-09 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA

2 comments


Cart #idontknow-1 | 2023-03-09 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
1

1
5 comments


Cart #textgamdemo-2 | 2023-03-10 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
2

Text game!!

read this for context:

Update 2.0!!!
changelog:
added more blocks and geometry to play around with.
made the air lifty thing easier to see.
added some spikes
made it harder to fall out of the world
fixed collision being terrible
revised code
Bug fixes:
fixed left/right collision for all objects
fixed jumping on spikes
fixed momentum being terrible
fixed top collison sometimes eating jump inputs
fixed top collision sometimes not existing
fixed visual bug where player would be in the ground
made blocks and players and other objects easier to see/differentiate against other objects

Info/credits:
this is a pico 8 "game" made without the sprite sheet or sprite, draw, fill, map, or any graphical tool outside of just the basic print() command! every asset in the game is a built-in text character! all code was made by me, which explains how messy it is, and was written in about 1 week.

this is really meant as a demo/proof of concept thing and more for learning purposes. since everything and more can be drawn as a simple text char, and most data is made up of basic math, this cart has a really low file size, and can be used to save space for sprites, tokens, map data... really anything that can be represented by a simple text character!

if you need any more info, or want to know how to implement these concepts into your own projects, just click "view code", or download the cart and boot it. dont worry if you are new to pico-8, because the whole program is heavily commented out, with even an entire tab dedicated to explanations/credits!

i hope everyone finds this cart as cool and interesting as i did! have fun creating!

...Oh yeah! almost forgot! controls are arrow keys to move and X to jump! have fun!!

vv OLD VERSION vv

[ Continue Reading.. ]

2
0 comments


based off 'PICO-8 0.2.5', section 'Variable Width P8SCII Fonts', i changed the #font_snippet to the full default PICO-8 font:

Cart #font_template-0 | 2023-03-09 | Code ▽ | Embed ▽ | No License
1

i find this #font_template more useful than @zep's original #font_snippet because it has All P8SCII characters

1
0 comments


Cart #jubibeyewe-3 | 2023-03-10 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
2

This is my first PICO-8 game. I thought I would remake a Nintendo GameBoy game I made, which I was planning on redoing anyway, as I was not happy with the interrupt handlers.

However, I am glad I bought the PICO-8 license, as this has been a fantastic experience.

The source code for the project is available at https://github.com/gcoulby/domination-p8

Instructions


The goal of the game is to have the most cards.

You play a card by moving the cursor in your hand with ⬅️➡️ and pressing 🅾️ to select a card.

Select an available slot on the board and press 🅾️ to play it.

Cards can be won by placing your card adjacent to an opponent's card.

[ Continue Reading.. ]

2
2 comments


Cart #gawuripago-1 | 2023-03-09 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
9

Arrow keys to move, x to shoot, z to use ultimate (meter at top left next to star). Hitbox is the pink square in the middle of the ship. Blast your way through 4 unique areas with over 4 power-ups and 8 challenging enemies including a final boss.

A small shmup based loosely off of the tutorial from amazing Krystman from Lazy Devs. Looking forward to (maybe) making another one now that the advance tutorial is out :)

Music credit to "neon" by lucatron and "Dimensional Gate" by Gruber.
Additional math formulas for rotation and other things from TheRoboZ and some other forum posts (sorry I forgot to save them)

9
5 comments


Hi, I love pico8 and have the official version, I managed to do a small workshop at work to make other people as excited as I am developing games. I have build some steps and would like to let the other people make a small game in pico-8

As I have a lot of example code/sprites to copy and paste ( and hopefully sprites to ), I noticed somewhat flaky behaviour. First time copy paste seems to work, after that no more. pico8-edu pastes the old content, and I can't copy new content.

I have tried safari, chrome and firefox.. I'm on a macbook. Are there other windows/linux people who also have this bug on the edu version?

On reddit someone else posted the same issue.. https://www.reddit.com/r/pico8/comments/118azhk/copy_and_paste_not_working/

Hope this could be fixed since you run very quickly into this problem

kind regards, a pico8 fan

1
2 comments


I'm not sure how much it makes sense but sometimes when I'm sploring or even just working on my own projects I take gif captures and screenshots and I want them saved to my desktop, But I don't want them to stay there for forever I want to decide if I move them to my folder or not where I store them but a problem that comes up is since it's like cartName_0, cartName_1 if that already exists then my OS prompts me to replace or not and if not then it renames it to .." copy" which is annoying... (I know I can move the directory but I want to view them first.)
Is there anyway you could add a config.txt option to instead of naming it in sequence give it a random character ID at the end or something? (cartName_021a4, cartName_5v30o maybe? ...) it doesn't have to be too long just would be nice for my really niche gif capturing and stuff ;p
Thanks for reading

1
3 comments


Cart #rikazogoye-3 | 2023-03-11 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
1

Knuckle Dice v1.3

Knuckle Dice is an attempt to recreate Knuckle Bones from Cult of the Lamb. This is my first programming project ever so there's no AI yet - it's two player only to begin with.

In the future I will try to add:

  • CPU AI (DONE)
  • I want to experiment with perfect information. In other words, remove the randomness and tell the player exactly what the opponent is about to play.

Controls

  • z to start/restart
  • x to play a dice

Rules/Game Logic

  • Maximum 3 dice in one column
  • Playing a die in a column that matches dice in the opposing player's column removes all instances of that dice
  • When nine dice are played by either player the game ends

Scoring

  • You receive points equivalent to the die played multiplied by the number of instances of that dice. (e.g a 5 played twice in one column will give you twenty points - 2*(5+5)
  • The player with the most points wins

v1.1 Updates

  • Changed GFX to more of a 1bit style

v1.3 Updates

  • Now it's a single player game with some rudimentary AI for P2
1
3 comments


A quick experimental pixel based platformer. I was inspired by some interesting ascii / 8 bit retro art and thought it would make an interesting game. This is purposefully simple, 2 screens, strange behaviors, and no explanation! The thinking is for the player to figure out the rules (and bend them) of the weird looking 'world' and experiment to figure it out. It does track time, collectibles, and deaths.

I don't think I quite captured the artistic merit of its source inspiration, ended up looking a little more like a platformer level than I wanted, but it was fun trying!

Checkout the original art that led me to create this here: https://twitter.com/LootBndt

Cart #abst_pixl_platform_fm-0 | 2023-03-08 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
7

Good luck!

7
2 comments


  • Fixed v0.2 showing v0.3 for some reason

v0.3

  • Made the function CURSOR()-dependable

Cart #sprprint-2 | 2023-12-18 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
2

I got an idea to make this from this post: https://www.lexaloffle.com/bbs/?tid=51903 (I probably didn't understand what did they mean though)

This library is still in development.

Old versions:

v0.2

  • Fixed sprite position

Cart #sprprint-1 | 2023-12-10 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
2

v0.1

  • Initial release
  • Does not have sprite position fixed, any index length and escape characters support

Cart #sprprint-0 | 2023-03-08 | Code ▽ | Embed ▽ | License: CC4-BY-NC-SA
2


2
2 comments


I'm having issues with this code, everytime I run it i just get this


runtime error line 34 tab 3
if collide_map(player,"down",0) then
attempt to call global "collide_map" (a nil value)

here's my code:

--external functions--
function dns(sp)
	spr(sp.sp,sp.x,sp.y,sp.w/8,sp.h/8,sp.flp)
end

function player_update()
	--physics
	player.dy+=gravity
	player.dx*=friction

	--running
	if btn(⬅️) then
		player.dx-=player.acc
		player.running=true
		player.flp=true
	end
	if btn(➡️) then
		player.dx+=player.acc
		player.running=true
	end

	--jumping
	if btnp(🅾️) and player.landed then
		player.dy-=boost
		player.landed=false
	end

	--collision on y axis
	if player.dy>0 then
		player.falling=true
		player.landed=false
		player.jumping=false

		if collide_map(player,"down",0) then
			player.landed=true
			player.falling=false
			player.dy=0
			player.y-=(player.y+player.h)%8
		end
	elseif player.dy<0 then
		player.jumping=true

		if collide_map(player,"up",0) then
			player.dy=0
		end
	end

	--collision on x axis
	if player.dx<0 then
		if collide_map(player,"left",0) then
			player.dx=0
		end
	elseif player.dx>0 then
		if collide_map(player,"right",0) then
			player.dx=0
		end
	end

	player.x+=player.dx
	player.y+=player.dy
end
--function player_animate()
--end

here's just the section its calling out:


collide_map(player,"down",0) then
player.landed=true
player.falling=false
player.dy=0
player.y-=(player.y+player.h)%8

can anyone help me out with this

4 comments




Top    Load More Posts ->