Pico8: How do I shoot?

One question that I always get asked is: how do I add and remove multiple objects to a game dynamically. Stuff like projectiles, bullets or particles. No problem: I will show how to create objects on-the-fly in Pico-8. BulletOne, BulletTwo, BulletThree, BulletFour Probably the first idea is to make a new table for each object. We can just define a bunch […]

How to set up Vuforia and Unity

This is a getting started guide for augmented reality development. A short but complete tutorial on how to set up Vuforia with Unity 5.6.0f3 personal. In the end you will have a 3D cube on a marker. Create Account at Unity Download Unity 5.6.0f3 Create Account at Vuforia Login into Vuforia.com and download the .unitypackage […]

Arrays and Tables in Pico-8

2D Arrays For beginners, I suggest you use concatenation to index 2D arrays. Create a new object in a 2D cell at (i,j) in a table called myArray with the following code: myArray[i..”,”..j] = {} To iterate over all objects in the myArray you can use the pairs iterator. Caution: the objects are not ordered […]

NanoFL under Mac OS X

NanoFL 3.0.5 currently only features a .exe binary for windows. The program itself is wrapped with XULRunner from Mozilla and that makes it easy to run natively on Mac OS X. If you have a current Firefox there is no need to install XULRunner(which anyway seems deprecated). You can execute XULRunner apps with -app switch. […]

Löve – What is Love? An Introduction

Since my old tutorials were made in 2010 it was time for an update. This is an updated tutorial on Löve. It assumes the Löve version 0.9.2 but a lot of this article might remain relevant to later versions. In the age of Gamemaker and Unity Löve still stands out as one of my favorite […]

Performance: Tilemaps in Löve with spritebatch

A usual pattern in 2D games is the use of tilemaps. In Löve you can implement those in a variety of ways. In this article I want to compare tilemap implementations in Löve 0.9.1 using spritebatches. I will use this to create an ascii display. Timing I will use the following code to measure the […]