Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Since it seems that many people here are unaware, so let me introduce Pico-8, the "Fantasy Video Game console" that is referenced in Pyxel's README as an inspiration: https://www.lexaloffle.com/pico-8.php

Pico-8 is (AFAIK) the program that kicked off a trend of simple game engines, and it is by far the most popular. A popular game that came out this year, Celeste, was originally a Pico-8 game that proved popular enough to remake in a more modern game engine. Pico-8 supports a Lua API, with a built-in graphics editor for 8x8 sprites, and a 4-channel audio editor. Games can be exported as a PC/Mac/Linux binary, into HTML+JS for embedding into a webpage, and even as a PNG for easy sharing to other users with the Pico-8 program. There's also a very active BBS where 'cartridges' can be shared and played online: https://www.lexaloffle.com/bbs/?cat=7#mode=carts

I'm a relatively novice programmer, and one of the things that frustrated me was how difficult it was to make a simple game on modern machines. I didn't want to have to set up a whole Unity project or dive into OpenGL just for a little proof of concept. I've been heavily using Pico-8 and really recommend it for simple game programming. There's also a hashtag on Twitter (if you're into that sort of thing), #pico8, where people try to create interesting visual code golf programs that fit into the size of a Tweet, then they post the source code and a gif.



Building on your reply, I have found that Processing (Java) and P5 (JavaScript) have a similar easy-to-use design and the documentation is decent. (It's not opinionated on the color palette though.)

I've been using P5 to write retro video games to learn JavaScript, and it's been a lot of fun using that to learn JS. (Vanilla JS sucks, but the learning process is at least fun).

https://processing.org

https://p5js.org


oh man, processing. i did a weeklong video game programming "camp" back when i was in middle school and processing was the language we used. definitely easy to pick up and use.


Could you please elaborate on why Processing is easier to use over OpenGL wrapper like LWJGL? You still have to write OpenGL shaders to get the desired visual, right?


It's just simple function calls, minimal boilerplate and simple API.

You can write shaders (not mandatory since it supports 3D without them) but loading them is simple as using ShaderToy.

https://processing.org/tutorials/pshader/


No, you can do a lot of stuff in processing with the 2D primitives. You can use shaders if you want, but it's not something typically done as an introduction.


well, we were middle schoolers being introduced to programming through video games. we were making basic 2d games like asteroids and tankwar, nothing with shaders.


Yeah it's a really great environment. Very popular for Ludum Dare (next one starts Aug 10) style game jams where time is a factor. Itch hosts quite a few completed games built with Pico-8:

https://itch.io/games/tag-pico-8


I wanted to play around with LUA so I used pico-8 as an excuse to dabble. I made this after a few days: https://www.lexaloffle.com/bbs/?tid=28402

At launch screen, use arrow keys for level up/down, lives up/down (q to enable "rapid fire" cheat) ... start game with either "z" or "x" key.

Pico-8 uses 2 buttons primarily -- keys are mapped to "z" and "x" ... when playing, z will do fastest-sampling fire and x will do regular firing (this is most noticeable after using the q cheat.)

If you use the q cheat -- the score will not count toward the high score.

I stopped developing for pico-8 as I get it that some of the constraints are artificial, but I feel some are just too restrictive (like volume level on sounds). It's a fun little system with everything you need to use it built in. Some people have done some incredible things within the limitations of the system.


This is so amazing. Please write a tutorial!


There's a lot of those out there already: https://duckduckgo.com/?q=pico+8+tutorial&bext=msl&atb=v98-3...


In the same realm, check out LÖVE, a Lua framework for making 2d games for most platforms. It's similarly simple to use but does not come with a built-in graphics or audio editor.

https://love2d.org/


Woah, I thought the PICO-8 was a fictional game console within the Celeste universe!




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: