PP (PewPew) and PP2 (PewPew 2) haven't been compatible with modern devices for a couple of years now as I focused on PPL (PewPew Live), but the persistent stream of emails and comments from folks wanting to play them made me want to re-release them. A re-release was almost ready (thanks SKPG!), but then it occurred that maybe we shouldn't take the easy road of "simply" shipping a new build of the…
When aiming for a fully deterministic program, it is common knowledge that you have to deterministically seed your random number generators, be careful about multithreading, and the floating point computations. In this post I want to highlight a few less commonly mentioned pitfalls I encountered when making my game deterministic. Foreshadowing My game targets iOS/Android/Linux/Windows/WebAssembly,…
Occasionally someone will asked how I obtained the PPL look. In a nutshell: Draw everything with lines, including the text and the various icons. It's a lot of work, but besides looking unique it creates a consistent appearance which is a thing that a lot of indie games struggle with. The lines are screen-space projected lines with miter joins. Draw the lines with additive rendering. This means…
I wanted to write this post for a while. It describes a C++ technique to implement rollback in the context of multiplayer games that I feel is quite interesting and useful. The tl;dr is: don't bother serializing individual objects, just rollback all the memory. Rollback-based multiplayer I've been working on a multiplayer version of PewPew, and for reasons that are outside of the scope of this…
You usually use the C library gettext with a _() macro that returns a localized version of the text passed in parameter. For example: puts ( _ ( "Hello" ) ) ; will result in a runtime search of the string "Hello", and _() eventually returns the localized version of the string. I assume the search is implemented using some sort of binary search, so it's probably extremely fast. It's fast, but we…
Note: This post was initially written in 2013, right after the release of Pacifism. For some reason I never published it. It's still relevant today, so here it is seven years later. In PP2's pacifism mode, you can blow up enemies with bombs. I wanted to encourage people to take risks and not just blow up all the bombs they see, so I decided to give players an incentive to explode large amounts of…
PewPew Live was released today on Android ! Let's go over what's new compared to PewPew 2: LAN Multiplayer Multiplayer is the main difference with PewPew 2, and the reason PewPew Live exists in the first place. The initial plan was to support online multiplayer, but this proved to be very complex. For now, the game will only support LAN. Support for custom levels Custom levels are another big new…
I'm working on PewPew's sequel, for which I've revamped the graphics. Instead of drawing lines directly using OpenGL, each individual line segment is made up of two triangles whose vertexes are computed with shaders. Getting lines in 3D space to be properly displayed on a 2D screen is not trivial. In PewPew's sequel I use the screen-space projected lines, a technique very well described in the…
So! Since my last post I got a new awesome job and thus worked less on PewPew and Rollin' Droid. An update for PewPew is in preparation though. It will feature basic maintenance stuff (iphone 5 support, sound improvements, small optimisations, etc...), and more importantly a new game mode: Pacifism It is inspired copied from Geometry Wars' Pacifism game mode, and even in its unfinished form it's…
I have been working on prototypes for games for a while now. I tried doing: a game where you rotate a shape and avoid projectiles a game where you race in between planets an isometric-real-time-chess game on an infinitely large board where you move a knight but there was always something in the gameplay that didn't feel right. Luckily, after playing Line Runner I finally did a prototype that…
I was watching the live broadcast of the Google IO when I got the pleasant surprise of seeing PewPew 2 as the (currently displayed) recommended app. Completely unrelated, and much more importantly, Sébastien Huss has ported PewPew 2 to the Pandora console . I've been meaning to port it to this console for a long time because it has 2 physical joysticks. I really want to thank him as he did all the…
I am hosting PewPew's scores on the Google App Engine. I chose the GAE because it was free for small websites that stay under a free quota. Unfortunately for me, they recently lowered the free quota, and I started having to pay the minimum fee of $9/month. It's not much, but I want PewPew to keep on working forever, and $9 per month forever amounts to an infinite amount of money, which I don't…
When writing this post I often wrote "iCon" instead of "icon"... Damn you Apple. Anyway I got a folder full of different icons for PewPew, and I thought it would be cool to look at the evolution. The first icon shows the classic ship shooting at an enemy, but when resized to 47x47 pixels (the original iPhone's icon size) it didn't look great. I shipped the first version of PewPew with it back in…
At one point during the development of PewPew, I wanted the players to be able to enter their name for the online high scores and replays. At first I started to use the native iOS keyboard, and for a couple of months that's all there was. But because I always wanted to have as few OS-specific code as possible to make the porting to different OS as simple as possible, I decided to implement my own…
Quick post to say that I released an update for both PewPew and PewPew 2, that includes a new game mode called Asteroids . It's of course an homage to the classic 1979 game , albeit PewPew style: lots of shooting, and lots of enemies. A few notes: To keep the retro mood going on, the ship's color is forced to white. The asteroids' shape is generated at run time: it was faster for me to write code…
I was until very recently doing an internship in Singapore. I got to visit southeast asia, and while in Bangkok I saw this advertisement in the metro: It made my day :)
While it's true that Android's openness cause fragmentation which increases the work of the developers, it also allows the creation of new markets and opportunities. The XPeria PLAY by Sony Ericsson is one of those opportunities, and allows mobile game developers frustrated by the touch screen to have fun ;-) As you can see, it has buttons, but most importantly for me, it has two touch-joysticks…
When reading other's developers blog, I always appreciate reading the posts about the number of downloads. It is always useful to know how many downloads to expect, and what impact different events can have. The mobile landscape is changing fast though, and while you can get a pretty good idea of the dynamics of the Apple Appstore, there's not a lot of information regarding the Android Market ( AM…
Here's an interview I gave for droidgamers.com. Among other things, I talk about which games influenced PewPew, what it's like developing for Android, what impact does getting featured on the Android Market has, and what I think about ad-supported applications.
One day has passed, and PewPew is doing well. It has entered the Hot android app category on AppBrain.com, and I am receiving a lot of positive feedback. While monitoring twitter I found 14n3 saying "Oh man, making a review of PewPew, this game rocks!". Always gratifying. Unfortunately, there are a few people reporting crashes. Since PewPew is very stable on the iOS devices, the crashes must stem…
The title pretty much says it all. I uploaded PewPew to the market today, and it is now spreading across the internet. Here's the link to download it for Android. From what I've seen, PewPew is by far the best shooter on the Android Market. On my Nexus One, I'd say it runs at approximately 4 time the frame rate of the current most popular shooter, Gun Bros . BTW, Gun Bros is an absolute piece of…
Currently my work has shifted from developing PewPew to porting it to several different phone OS. I'll try to write a post later about the process of porting, because there's lot's of interesting bits I've discovered. A few weeks ago I submitted a version of PewPew for the Bada OS to Samsung, but it got rejected because my website contained an image of an iPhone and a link to the App Store. At…
I finally submitted to the App Store updated versions of PewPew and PewPew 2 ! Both versions now support the iPad's and the iPhone 4's resolution. Most changes are in PewPew 2 : There's an improved Chapter One : among the things I did was adding visual feedback showing destructible objects were reacting to the players' bullets, so the players would know those objects were destructible . More…