loading

Interview with Adam Atomic about Flixel and Indiegames

And suddenly there was Flixel, a free and open-source gameengine. Very well designed, fast to step into, made for ActionScript 3 and very versatile. The engine was released only some weeks ago, but the community is currently submitting first games. Time to talk to Adam Atomic: The guy who wrote this genious piece of software. Let’s jump right in!

flixel-code-example
Flixel and a little code-example.

Why did you made Flixel? Where did the inspiration came from?

Flixel is probably my most selfish project ever! The whole idea behind it was just to make it easier for me to make and distribute the kinds of games that I like to make. After my third game I had most of the bits and pieces that I needed, and figured with maybe a long weekend I could clean it up enough that maybe other people could use it too.

Is there any deeper open-source related philosophy behind Flixel, or was is a more practical decision to do this thing?

Nothing deep I don’t think. I’ve used and played a lot of free or open source apps and games, and always like giving back. I won’t go so far as to say I believe in karma exactly… but it seems like it can’t hurt.

How much time / effort does it cost you to maintain the project?

I’ve spent approximately one hour on maintenance since release, for the v1.1 update. This is where the karma comes in; if you give it away for free, then you can trade that karma for a little help from the self-starters who are willing to share their knowledge with everybody else. Within a day or two of releasing the framework, people had already posted tutorials for settings the package up in FlashDevelop and running MXMLC from the command line and and and…it’s pretty rad. Basically, if I had to do that stuff myself, I could never have released it. So I think it was really release it for free, or just don’t release it.

We are very curious if there are any plans to monetize Flixel now or in the future? (Don’t be shy, we are ready for everything).

Yes and no, sort of, I guess? I have some ideas, I’m gonna build some stuff with the help of some friends later this year that will involve Flixel, but I don’t think it will be anything you can buy, or subscriptions or anything like that. The trick is finding a way to monetize it that isn’t so annoying to actually set up that it just takes all the fun out of the thing… which I haven’t completely worked out yet.

What about Gamemaker, Clickteam or Torque? Do you care about the developments of the “other guys” doing tools in that field?

adam-atomicUnity3D is the only system that really impresses me; they mix the GUI and scripting and asset tracking and all that stuff really nicely. I think after actually making a bunch of smaller games my ideas about the fastest way to do this stuff differs some from some of the popular conceptions of how to make game-making more accessible, particularly the whole GUI aspect I think level editors, GUIs, and all that stuff is a real drag. It’s probably a little egalitarian but I think it’s actually good for people who want to develop games to kind of… meet me halfway, I guess. Plus most simple game-making GUIs encourage static art and static level design, which leads directly to really costly, slow content creation. Scripting I think encourages users to experiment with procedural design more if only to make their lives easier! For 2D games, if you can learn just a smidge of scripting and basic programming logic, and you have the right libraries, you can do REALLY amazing stuff really quickly (see the entire Processing community for example). Plus, hey, now you know how to program!

Are you willing to tell us more about features to come at Flixel? How about community driven developments?

Sure! The big stuff I’m working on soon is making it easier to insert sponsor SWFs, support for displaying traditional tilemaps, and just some general improvements and streamlining (especially for controlling render order and special effects). The community is working on a bunch of different level editors that they’re enthusiastically sharing, and they’ve already developed and released some nice stopgaps for both tilemap display and better depth control, which is pretty rad.

I also read, that you were involved in the Wii-port of Cave Story. How did you came into this project and what does this project meant to you personally (i.e. for your developing skills or things learned)?

I got involved with Cave Story Wii as a direct result of developing and releasing Gravity Hook. Tyrone Rodriguez, the head guy over at Nicalis, thought it was cool, noticed I was a bit of a Cave Story fan, and asked if I wanted to work on scaling up the boss graphics. I was a little nervous about getting involved with what would undoubtedly be yet another unreleased and subpar attempt to put Cave Story on some console or other. After doubtlessly insulting Tyrone to his face multiple times, we somehow agreed that for like $5/hour I would redo all the level graphics, with Amaya-san having the final say on everything. It turns out Tyrone had been working with Amaya-san for over a year already to figure out the right console and the right feature set for this project, and Amaya-san himself had complete veto rights. The job paid poorly, and it was really, really boring. I went through a couple years worth of This American Life episodes while tracing those tiles. I don’t know if I’ve ever worked on anything I’m so proud of! Cave Story (for PC) is the game that opened my eyes to what one person could make, and sparked a permanent shift in my life. To get to be involved with the official commercial release, and to get to have a say in how the thing looked to people who were playing it for the first time… it was just awesome.

How do you think the indie-game-community and the market will develop in the next few years?

The “indie” part will continue to mean less and less, and the opportunities for small teams with great ideas will get better and better. I hope.

Now we are still curious to learn a little more about you. Where you live, what did do, how old, etc.

Sure! I’m 27, and I live in Austin, Texas, USA with my amazing wife Bekah and my two idiot pug dogs. Right now I’m living off our windfall from an iPhone game (Wurdle) that I worked on last year with my rock climbing buddy Eric, and I spend most of my time either working on supporting that game, or (especially lately) prototyping and developing our next iPhone game, which should be announced in a few weeks. As for important career steps… I think getting a four-year degree was a good start, and opened some doors. After college I worked for a couple years as a software developer, at a place where I had some creative control over my projects and only had to put in 40 hours a week. That was a pretty big deal, as it left me some free time and didn’t crush my soul. Quitting that job to go solo was pretty exciting, but I was really bad at it for a few years. I would say the single most important step was when I finally learned enough from my failures as a freelancer to start doing it right. That was last summer, I think. That’s when the cool stuff started to happen! I made Gravity Hook, Paper Moon, and wurdle all in the same month, and a month later had picked up enough steady clients so that my wife could quit her job, too.

So this is not the first time, that you are doing games and things. What role do they play in your life?

Good question! I’ve been an art geek for most of my life, but I’ve always been intoxicated by the mixed mediums, especially comic books, movies, and video games. When you start mixing art and writing and sequential imagery and then pile in interactivity…it’s just too much! How can you not be obsessed with this stuff?

Well, yes. In that context. Do you have any games, book, movies or other peoples work, that you would recommend to people or that you really love? (We even accept famous quotes!)

Oh boy, haha where do I start? Here’s some stuff that people might not have heard of, I guess. Seems silly for me to list stuff like “Pixar movies” when everybody already knows they’re completely awesome? Anyways, some good stuff I’ve digested recently that has been nice brain-fuel:

  • The Scar, by China Mieville
  • The Taking of Pelham 123 Soundtrack, by David Shore (1970)
  • Tekkon Kinkreet, by Michael Arias
  • The French Connection, by William Friedkin

Many thanks Adam. I guess I am not the only one, that is looking forward new inspiring stuff made by you and the Flixel-community.

Text and Interview: Martin Wisniowski, 2. Juli 2009

Weblinks

Nikolaus Gradwohl

Arduino based Office-WTF-Counter

As in any office, my co-workers and I experience several WTF-Situations during our working day. So we decided to implement a
simple system to count the WTF’s and use them as a metric for our working climate :-)

we use an “emergency stop”-Button which is connected to an arduino. This arduino sends the string “WTF” on the serial line
a little python scrip writes them to a file, another processing app count’s the lines in the file and offers the result
via http, which is read by a processing app for visualisation …

wtf-button

wtf-arduino

Arduino Part:

const int buttonPin = 2;
const int ledPin =  13;

int ledState = HIGH;
int buttonState;

int lastButtonState = LOW;

long lastDebounceTime = 0;
long debounceDelay = 200;

void setup() {
  pinMode(buttonPin, INPUT);
  pinMode(ledPin, OUTPUT);
  Serial.begin(9600);
  Serial.println("Hello");
}

void loop() {
  buttonState = digitalRead(buttonPin);

  if ((buttonState == HIGH) && (lastButtonState == LOW) && (millis() - lastDebounceTime) > debounceDelay) {
      Serial.println( "WTF" );

      if (ledState == HIGH) {
        ledState = LOW;
      } else {
        ledState = HIGH;
      }
      lastDebounceTime = millis();
  }

  digitalWrite(ledPin, ledState);
  lastButtonState = buttonState;
}

Python server part1:

import serial

f = open("wtf/current", "aw");

ser = serial.Serial( '/dev/ttyUSB0', 9600, timeout = None )
line = ser.readline()

while line:
        if line[0:3] == "WTF" :
                f.write( line )
        f.flush()
        line = ser.readline()

ser.close()

Python server part2:

from BaseHTTPServer import HTTPServer, BaseHTTPRequestHandler

class WtfHandler(BaseHTTPRequestHandler):
        def do_GET(self):
                f = open('wtf/current')
                count = 0;
                l = f.readline()
                while l:
                        count = count + 1
                        l = f.readline()
                self.send_response(200)
                self.send_header("Content-type", "text/plain")
                self.end_headers()
                self.wfile.write("%d" %count)
                f.close()
                return

if __name__ ==  "__main__":
        try:
                server = HTTPServer(('',8888), WtfHandler)
                server.serve_forever()
        except KeyboardInterrupt:
                server.socket.close()

Processing Part:

void setup() {
  size(500, 100);
  smooth();
  textFont( loadFont( "Verdana-Bold-48.vlw"));
  noLoop();

  start( 10 * 1000 );
}

void draw() {
  background(0);
  fill(255);
  String[] lines = loadStrings("http://armleuchter:8888");
  text( "WTF's so far: " + lines[0], 30, 70 );
}

void start( final int mil ) { //<- mil has to be final to be accessible in run()
   new Thread() {
   public void run() {
     while( true ) {
        delay( mil );
        redraw();
      }
   }
 }.start();
}

The History of Hacking Documentary

Yesterday I came upon the website of a hacker-legend: John T. Draper aka Capt’n Crunch, who did Phone Phreaking in the 60ies and 70ies. One of the real ancestors of what we nowadays call “hacking”. He linked a documentary about the early days and the development of hacking.

Let’s name the “Homebrew Computer Club” as one of the (of not the) first hacker-space ever made, that led to a highly influential movement within the computer-market. Steve Wozniak was part of that hacker-space and he is really embracing the hackers way of thinking. At him we see, that this don’t must develop into illegal kinds of activities, but let to a highly influential company, we still now today under the name Apple.

Hacker-Spaces are still relevant, if not much important now, than in the past. The documentary gives a good insight into meaning, methodology and cultural impact of the hackers-movement.

Azraelmcv
youtube.com

Visualization with Processing, test-2(Matrix)

Author: Azraelmcv
Keywords: processing visualization matrix animation programming language
Added: July 1, 2009

Azraelmcv
youtube.com

Visualization with Processing, test-1

Author: Azraelmcv
Keywords: visualization processing programming language
Added: June 30, 2009


13-year old Boy replaced iPod with Walkman

You will possibly enjoy this experiment on BBC news as much as I did. A 13-year old boy replaced his iPod with a Walkman, the “iPod of the past” - a bulky piece of portable technology his father used to carry around. Some of the refreshing statements:

It took me three days to figure out that there was another side to the tape. That was not the only naive mistake that I made; I mistook the metal/normal switch on the Walkman for a genre-specific equaliser, but later I discovered that it was in fact used to switch between two different types of cassette.”

Some of the results of this experiment:

“Throughout my week using the Walkman, I came to realise that I have very little knowledge of technology from the past. I made a number of naive mistakes, but I also learned a lot about the grandfather of the MP3 Player. (…) Did my dad, Alan, really ever think this was a credible piece of technology?

Go on and read the whole article. There are more conclusions ahead. And cool pictures as well.


Stfuajpgm.com: A miniature micro-music mixtape magazine!

stfuajpgm

Fantastic new chip-music magazine. The name is hard to remember: STFUAJPGM. But the music will last. The focus is set on freely distributed music within the chiptune community. The first episode features a selection of precious chip-tunes and small interviews as well. Keep an eye on it. It will be worth it!

PS: The first track from Shnabubula in the first episode seems to be obviously inspired by the ancestors of Tetris music. For a deeper background, watch this video, and also follow the links in the description of the video (on YouTube), for example this one. Thank you guys so much for this great stuff!

Nikolaus Gradwohl

QR-Code Carpet

My Mother is always searching for cool motives she can use for
her carpets. So i made a generated a qr-code containing her name
which she weaved into a QRCode-Carpet

carpet

and the coolest part is IT ACTUALLY WORKS!!!

i made a processing sketch that decodes the image (click here to try it yourself)

and i also decoded it using my G1

carped handy

Peter Kirn
createdigitalmotion.com

Resolume OSC Reference and Tricks

Photo of a Resolume 3 rig (CC) Retinafunk.

When it comes to controlling software, let’s put it bluntly: OSC good, MIDI bad. With OSC, it’s possible to control the array of things software might do, with easy use of high-resolution data, descriptive names in plain English (or your language of choice), a path hierarchy that makes it easier to structure messages in modular software, and smart networking features that makes assignment and communication a breeze. With MIDI, um… well, prepare for lots of mucking around.

Happily, visual software developers proprietary and open source alike have done what music developers generally haven’t - embrace OSC. Thanks to the fact that this community is unburdened by tradition and commercial development tends to involve small, responsive teams, change hasn’t been so tough.

So, visualists, it’s time to reap the fruit of that development work, and make the live performance rig work the way you’ve always dreamt it should work. Our friend Gian Pablo (check out his fantastic blog) clues us in to some recent developments with Resolume 3 “Avenue.”

First stop: be sure to read the full OSC thread on the forums, starting with how Resolume Avenue’s OSC receive implementation works:

OSC manual
OSC section of the manual

That’ll get you started controlling Resolume Avenue with Processing, which could make for some cool integration of your custom-coded Processing visuals with a more traditional Resolume visual or A/V set.

Last week, though, we got into some other interesting details in that thread, like how to control the BPM thread and an undocumented feature:

Page 3 of the thread

Specifically:

There is an undocumented feature that enables you to send OSC messages from the mapping panel.
This way you can quickly find out what messages you’ll need to send to specific objects.
1. Shutdown Resolume if running
2.Open the ‘config.xml’ file in ‘My Documents\Resolume Avenue 3\preferences\’ and look for the OSC section.
3. Change the section:

4. Change the port and address to whatever is appropiate for your setup.

That also holds the promise of Resolume sending as much as it receives - no reason visual software has to be receive-only. Also, this illustrates that we need a basic protocol that allows auto-discovery of OSC-controllable parameters, but that’s a separate discussion.

Have a look and let us know what you think. And feel free to share your results across different applications (not just Resolume) on Noisepages — even if it’s a quick message to say, “darnit, I’m confused about all this and don’t know where to start.”

Noisepages OSC Group
[Warning: Noisepages is in beta - we need your participation to see how it’s used and to fix bugs, so join the Help & Development group to provide feedback, and expect more features / slicker look in the coming weeks and months]

compusition
youtube.com

rotations #2

Author: compusition
Keywords: processing
Added: June 28, 2009

GlacialWanderer
youtube.com

Graphing Arduino Data

Author: GlacialWanderer
Keywords: Arduino processing processing.org code
Added: June 28, 2009

compusition
youtube.com

rotations2 (trying a different format)

Author: compusition
Keywords: processing
Added: June 28, 2009

compusition
youtube.com

rotations

Author: compusition
Keywords: processing
Added: June 28, 2009

pindec
youtube.com

Cake Orchestra prototype V2

Author: pindec
Keywords: cake orchestra arduino processing.org soundcipher mbcamp LDR
Added: June 28, 2009