6 ms·
PX8 – A PICO-8 compatible fantasy console written in Rust
- lelandbatey 9y agoWow, I've never heard of the PICO-8 before, but it's fantastic! This is exactly what I've always wanted, some ultra-simplified game console/emulator that's easy to create content for and easy to distribute that content. People have even built cool demoscene-esque content for it![2] And some of the games people have made are fantastic, and you can play them in your browser here: http://www.lexaloffle.com/bbs/?mode=carts&cat=7&sub=2&orderby=rating http://www.lexaloffle.com/bbs/?mode=carts&cat=7&sub=2&orderb... Also, I was a bit confused by the term "fantasy console" so here's what I've been able to learn with some reading: it seems the PICO-8 is a kind of ultra-simple game VM with it's original implementation being in HTML/JS with access being sold by the creator[0]. At some point, the PICO-8 vm was ported by its creator to work on the CHIP computer, and now the PICO-8 VM is pre-installed on all CHIP computers[1]. What the OP link is for is an open source implementation of the PICO-8 VM in Rust. This isn't the only open source implementation of PICO-8. [0] - http://www.lexaloffle.com/pico-8.php http://www.lexaloffle.com/pico-8.php [1] - https://getchip.com/pages/chip https://getchip.com/pages/chip [2] - https://www.youtube.com/watch?v=QTvnYkmtleI https://www.youtube.com/watch?v=QTvnYkmtleI
- DanBC 9y agoThere are some PICO8 threads on HN which you might be interested in reading. PICO 8 lighting parts one and two: https://news.ycombinator.com/item?id=13598182 https://news.ycombinator.com/item?id=13598182 https://news.ycombinator.com/item?id=13667272 https://news.ycombinator.com/item?id=13667272 And an old announcement thread: https://news.ycombinator.com/item?id=10317026 https://news.ycombinator.com/item?id=10317026
- 0xcde4c3db 9y agoIs it an actual VM with its own bytecode and so on? As far as I've looked it's more like the idea of a VM built as a set of Lua APIs and memory constraints. However, the creator seems to be doing a Java-like push where the language, runtime, standard library, and development tools are all marketed as one "technology", so it's not especially clear to me.
- bootload 9y ago"a VM built as a set of Lua APIs and memory constraints. However, the creator seems to be doing a Java-like push where the language, runtime, standard library, and development tools are all marketed as one "technology", so it's not especially clear to me" Look beyond the technology and you see a tool that allows you to; play games other people make; let you tinker with; or build your own.
- 0xcde4c3db 9y agoI'm not trying to suggest that there's something deficient in the approach, just that it makes it harder to answer the sorts of questions I have. I mostly want to know: 1) What does it mean for PX8 (or any other program) to be "PICO-8 compatible" in this context? 2) Does PICO-8 resemble CHIP-8 only in general concept and name, or also in structure?
- bootload 9y agogood Qs @0xcde4c3db, dunno.
- vvillena 9y ago2) CHIP-8 is a tiny computer with a case, a keyboard, a screen, and PICO-8 preloaded.
- 0xcde4c3db 9y agoI'm talking about this: > CHIP-8 is an interpreted programming language, developed by Joseph Weisbecker. It was initially used on the COSMAC VIP and Telmac 1800 8-bit microcomputers in the mid-1970s. CHIP-8 programs are run on a CHIP-8 virtual machine. It was made to allow video games to be more easily programmed for said computers. [1] https://en.wikipedia.org/wiki/CHIP-8 https://en.wikipedia.org/wiki/CHIP-8
- zokier 9y ago> 1) What does it mean for PX8 (or any other program) to be "PICO-8 compatible" in this context? My understanding is that it PX8 implements the same Lua APIs that PICO-8 has.
- greggman 9y agoAFAICT it did not start in html/js. it's C or C++ with lua. it exports to all kinds of formats including native executables for windows/Linux/Mac/iOS/android as well as html/js. the js impl uses asm.js
- Grognak 9y agoMy first thought is that such a focused environment for the code to run in might make this a helpful tool to teach kids programming in a fun and engaging way. I sincerely believe that game creation is the single best vector to get children interested in programming, and this seems like a cool possible vector. (Python is a great beginning language!)
- shakna 9y agoPico-8 already has great licensing for schools [0], and honestly, in that environment, its easier to say "Buy this" than "this is free". [0] https://www.lexaloffle.com/info.php?page=schools https://www.lexaloffle.com/info.php?page=schools
- dsnuh 9y agoMy kids actually caught on to Voxatron (PICO-8's 3D sibling) a little easier than PICO-8. I think Minecraft has a lot to do with that. AFAIK both are Lua based, not Python. Both programs are absolutely recommended and are a joy even if you don't have kids to share with.
- Ursium 9y agoTo understand why some people (including myself) are going nuts about Pico-8, here's one random feature: when you save your virtual cartridge as 'mygame.p8.png' it automatically generates a neat cartridge png representation with the screenshot of your choice from the game. Like so: http://www.lexaloffle.com/bbs/cposts/1/10022.p8.png http://www.lexaloffle.com/bbs/cposts/1/10022.p8.png. Big deal you say! well, check this out: this png IS the game. It embeds the executable written in LUA. Try it for yourself - take the png I posted above, load it in pico8 then press escape: voila, full source code, sprite sheet, tracker data, etc. Type "RUN" and the game plays. Pico8 (and its cousin voxatron) also contain an online cartridge browser that lets you discover and learn from everyone who contributed a cartridge. Pico-8 is choke-full of these incredible little details that make all the difference. Unfortunately it's not open source itself, which some find a bit odd considering it encourages the open sourcing of the cartridge written for it. Good to see some projects such as TIC-80, LIKO-12 and now PX8 mixing things up a bit, that said it's still a nascent environment and let's not forget it's very much the arbitrary, sometimes amusing limitations imposed by the lead dev that makes these things fun.
- haberman 9y agoGreat post! I have only the smallest correction, since many people aren't aware: the creators of Lua strongly prefer that people not write "LUA" (it is not an acronym). See: https://www.lua.org/about.html https://www.lua.org/about.html ("What's in a name")
- rtpg 9y agoWhile Pico-8 itself isn't open, the creator has been pretty accepting of emulators for running the game. I'm pretty interested in open source as a whole, but having pico-8 be a steady stream of revenue has let zep concentrate on it/voxatron, and help do things like maintain the BBS or run the monthly picotachi[0] events to help the community. Though I wonder if there's more success in a patreon-style model... [0]: http://www.picopicocafe.com/?id=picotachi-en http://www.picopicocafe.com/?id=picotachi-en
- mmjaa 9y agoGreat intro to this wonderful tool .. for me, the lure of PICO-8 has really been based around the fact that a) the products it loads are open source, and b) there are almost daily new releases for PICO-8, easily available through the built-in SPLORE command .. which is, I think, one of the very key factors to PICO-8's success. But yeah, its a wonderful toy environment, and provides weekly entertainment in my household, where the kids kind of prefer to SPLORE over their other, commercial-based game consoles ..
- ld38_ninja 9y agoJust a quick heads up. Ludum Dare 38 is happening this weekend (theme: "a small world"). And I've certainly noticed an uptick in gamedevs targeting PICO-8 and SCUMM-8 platforms. Rather apropos given the theme, no? A few Gifs of WIPs: https://twitter.com/Huginn18/status/855857089960345600 https://twitter.com/Huginn18/status/855857089960345600 https://twitter.com/quaIiaa/status/855878802563633152 https://twitter.com/quaIiaa/status/855878802563633152 https://twitter.com/topkeki69/status/855743127616970752 https://twitter.com/topkeki69/status/855743127616970752 https://www.youtube.com/watch?v=dISx_dR6kLI https://www.youtube.com/watch?v=dISx_dR6kLI
- Clownshoesms 9y agoI've been hankering to do a Bolo port on Rust. I'm terrified of change and unable to adapt, being 40, but I will try.
- dsnuh 9y agoBe sure to get the PICO-8 bundled with Voxatron for only a few bucks more!
- deleted 9y ago[deleted]
- Clownshoesms 9y agoI'm reminded of Intellivision for some reason. LibGDX is awesome for 2d mucking around too.
- felipebueno 9y agoIn case anyone is interested in learning more about PICO-8 and it's "clones", I started one of those 'awesome lists' for that last year. https://github.com/felipebueno/awesome-PICO-8/ https://github.com/felipebueno/awesome-PICO-8/