3 ms·
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 inspir
by aquova 8y ago
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 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 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.
- NortySpock 8y agoBuilding 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://processing.org https://p5js.org https://p5js.org
- satsuma 8y agooh 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.
- iamcreasy 8y agoCould 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?
- kowdermeister 8y agoIt'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/ https://processing.org/tutorials/pshader/
- detaro 8y agoNo, 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.
- satsuma 8y agowell, we were middle schoolers being introduced to programming through video games. we were making basic 2d games like asteroids and tankwar, nothing with shaders.
- ArtWomb 8y agoYeah 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 https://itch.io/games/tag-pico-8
- scottyelich 8y agoI 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 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.
- fermienrico 8y agoThis is so amazing. Please write a tutorial!
- egypturnash 8y agoThere's a lot of those out there already: https://duckduckgo.com/?q=pico+8+tutorial&bext=msl&atb=v98-3_g&ia=web https://duckduckgo.com/?q=pico+8+tutorial&bext=msl&atb=v98-3...
- ythn 8y agoWoah, I thought the PICO-8 was a fictional game console within the Celeste universe!
- lytedev 8y agoIn 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/ https://love2d.org/