December 25, 2011 8:30 PM   Subscribe

Here is Stencyl, a free creation system for making Flash games.

(There is a commercial iOS option too, but I cannot vouch for that.)
posted by JHarris (14 comments total) 33 users marked this as a favorite
Neat! I've been looking for something like this recently. I'll have to give it a try.
posted by FishBike at 8:52 PM on December 25, 2011

I may very well end up throwing it on the pile of development kits / languages / programs that I've fooled around in and never actually done anything with, but it looks pretty cool.
posted by codacorolla at 8:54 PM on December 25, 2011

Reminds me a lot of GameSalad, which is nifty but felt just a tad too inflexible for me.
posted by ignignokt at 9:13 PM on December 25, 2011

Just in time for HTML5!
posted by dhartung at 9:36 PM on December 25, 2011 [2 favorites]

Just in time for HTML5!

Instead, it was Steve Jobs in 2010 who got it right. It is sad that Adobe couldn’t have made the announcement a month ago, while Steve was around to see it

Hahah I love it! It is like saying, I correctly predicted we would lose the game when I was one of those who helped to throw it. You don't get to claim credit for predicting something you caused.

Anyway, taking a look at Stencyl, seems they will be supporting HTML 5. By that I guess they mean canvas.
posted by Ad hominem at 10:40 PM on December 25, 2011

Hahah I love it! It is like saying, I correctly predicted we would lose the game when I was one of those who helped to throw it. You don't get to claim credit for predicting something you caused.

Far be it from me to wade into an Apple flame war, but the death of flash is certainly bigger than Apple, and while Jobs' refusal to support it on iOS may have hastened it, the emergence of actual alternatives in the form of HTML5 video and audio, and Canvas, did more than any Apple decision. Flash sucked, but was the only option for many tasks. As other options emerged (and continue to mature), it's a harder and harder sell. The area where it still reigns supreme is rights-restricted streaming video; give that some time and we'll see how it plays out.

Tools like Stencyl are interesting, because they allow people to develop in a tool tailor-made for simple game development without touching the underlying toolkit. Ironically, that was the original appeal of flash: it let you do "animation" and "vectors" without worrying about building custom browser plugins in a more complicated language. As Flash matured, however, browser-native technologies did as well and the case for Flash (versus some other platform) changes.

A friend of mine has been building browser games for a while, and after wrestling with the limitations of ActionScript decided that he was just better off learning C# and writing XBox Arcade games. It'll be interesting to see how things go: the landscape has definitely changed a lot since Flash first hit the scene.
posted by verb at 11:53 PM on December 25, 2011 [2 favorites]

Not a flame war, I thought it was funny. Apple most certainly got a few licks in against Flash. Apple also had a hand in the development of the technologies that are supposed to replace Flash. So not only would they not support it on iOS, and also worked to mainstream HTML 5.

We will see how HTML 5 plays out. We are just starting to see tools, such as Stencyl, that will hopefully provide something similar to flash authoring tools. By the way, there is not just one authoring tool, there are third party flash authoring tools such as SWiSH. Flash has become a de-facto standard so it will never wholely dissapear.

Then again , I still question the wisdom of building HTML 5 video and Canvas into the browser proper. Is that how they are truly implemented or are they secretly plugins?

C# and XNA is the smart way to go. You get Windows with steam, and xbox 360 as a bonus. And you don't have to worry about all the politics surrounding whatever browser feature you want to use.
posted by Ad hominem at 12:23 AM on December 26, 2011

I work at a flash house but come from a big-iron game background (~16 years).

I've been a huge proponent of Unity and UDK. UDK is great if you've got a bit more team heft, unity is great if you can swing the upfront costs for the pro licenses (1500-3500).

Unity can do xbox, psn, osx, windows, browser plugin, chrome native, android, ios and as a huge lightning bolt thing, publish to flash (3.5beta came out a few days ago).

Stage3d performance is pretty good, about on-par with the existing engines (prescenium, away3d, etc), but you get an actual grownup tool pipeline.

You can code in c# and just crosscompile wherever you want it.

It's got a crapton of bugs and no multiplayer in flash yet, but you can work in the browser/standalone until they get another build out.

I don't see any reason for people to do straight flash unless they want to be left behind, or a well-trained dinosaur.
posted by Lord_Pall at 8:11 AM on December 26, 2011 [3 favorites]

Well, Unity's happy disdain for Linux has really made me lose all interest in it as a development option.
posted by Samizdata at 9:27 AM on December 26, 2011 [2 favorites]

I'm more interested in their attitude towards Programmers-vs-non-programmers.

The video keeps saying "without programming" but then shows something that looks an awful lot like programming, just without the typing on a keyboard. The drag-and-drop template approach could eliminate a lot of newbie programming errors by making it much more explicit that *this* is inside the loop and *this* is outside. Is it enough to make programming a non-daunting task to people who have no experience with it?
posted by RobotHero at 9:42 AM on December 26, 2011

The programming part of it appears to be derived from Scratch, a smalltalk environment for teaching programming to kids.
posted by jenkinsEar at 10:16 AM on December 26, 2011 [1 favorite]

Is it enough to make programming a non-daunting task to people who have no experience with it?

I think it might, yeah. Several friends have wanted to give programming a try. They're smart people and picked it up at a conceptual level stuff very easily. They had no trouble understanding the basic elements available (things like variables, loops, if statements, functions, etc.) and could quickly go from the general concept of what they wanted to do, to a specific algorithm made of those elements.

Where it got difficult and frustrating was in learning how to express those concepts in actual code. What are the keywords again? What's the syntax for this? What does the overall structure of this code have to look like (easy to forget when you are starting from a blank editor window)?

So something like this, where you have a palette of elements that you drag and drop, might help a lot with what seems to be the hard part for many people, because you don't have to remember what's available to you, how to spell it, does it need a semi-colon at the end, and all those other details of notation. It's a lot quicker to go from concept to "code".

I agree the result does actually look like code to me. I wonder how much of that is because it's all labelled with code-like text? Would I still feel that way if it was pictures instead? I think I would, but mostly because as a programmer my brain is kind of trained to go back and forth between concept and notation. When I look at something like an if-then-else block, I don't really have to spend any time thinking about what it means any more. So when I see something that maps to a concept the same way code does, it looks like code.

I gave this thing a try just now. I wanted to see if I could do a simple little thing that has a ball bouncing around the screen, without having to read any help files or tutorials or anything. It took about 20 minutes to figure out enough of it to do that. I only needed the "non-coding coding" part for one thing, but it looks quite neat.

I wanted to give the ball some initial horizontal velocity, so that it wouldn't just bounce straight up and down. So I went into the behaviours editor, created a new one, and tried to figure out what to do. Well, I see a "when created" container looking thing. And on the right are some things that look like they would fit inside that. Several pages of things. One of the pages is labelled "motion", which sounds right.

At the top of that particular palette there is "x speed of self" as an element. So I try to drag that into the "when created" container and it doesn't seem to snap in place. Hmm. A little bit of looking and I notice it actually is the wrong shape. Some of the components have little tabs and notches and some of them do not. Obviously this component isn't supposed to go there.

Ah, but there's another one right under it that says "set x speed to 0 for self" and it looks like the right shape. I drag that one over and it snaps into place. I change the 0 to a 10 and I'm done. Then I just assign that behaviour to the ball actor and sure enough it does what I wanted.

I have no doubt if I was experienced with this particular environment and scripting language, it would have been faster for me just to write a couple of lines of code. But since I'm not, the drag-and-drop thing is way easier right now. So I think it would be a lot easier for people without a programming background, too.
posted by FishBike at 11:29 AM on December 26, 2011

Hmm. So I would bet "x speed of self" is the right shape to replace the "0" part of "set x speed to 0 for self?" The shape thing seems like a nicely intuitive way to classify what is and isn't interchangeable.

Flash already tried to do a "list of all keywords that can be input without typing" thing but after you pick from the list, it just created plain text, so the syntactical meaning is not retained. The more I think about it, that would make a pretty big difference.
posted by RobotHero at 12:39 PM on December 26, 2011

So I would bet "x speed of self" is the right shape to replace the "0" part of "set x speed to 0 for self?"

Yep. And anything that returns a logical (true or false) result has yet another shape (sharp pointed ends instead of rounded rectangular corners) which allows it to fit inside the conditional statements like "if" or as the condition for a loop, etc.
posted by FishBike at 12:50 PM on December 26, 2011

« Older Dancin' ladies don't come cheap, you know.   |   Horace has no end. Only a beginning. Newer »

This thread has been archived and is closed to new comments