5 ms·
A call to arms: Why every kid (and kid at heart) should write an iPhone game
- thechut 14y agoHelicopter? This is the problem with the App store - too many clones of old flash games that have been around for ages. I'm sorry but cloning a game that already exists certainly shows good timing and business sense but is not the same as a call to arms to make things.
- jaipilot747 14y agoBecause one game they released was a flash game clone, does not mean the other 40 games their interns release will also be the same. Hell, even if they came out with 40 clones that are non-existent on the iPhone, I would still consider it worthwhile. I look at it as a call to get started with game/app development than to start producing state-of-the-art games.
- jankins 14y agoI think you've missed the point: 1. cloning an existing product is probably a very good way to learn about the platform and learn about game programming, and that learning process seems to be the post's main drive. 2. your subjective response to the game's originality is irrelevant to the "call to arms," all that is required for the call is a set of facts, which may provide inspiration for other young programmers: A young programmer completed a game; Creating the game taught him a set of very valuable skills; The game was deemed publishable by Apple on their store; The game generated social and monetary profit.
- adriand 14y agoHe wrote the Helicopter game when he was 16 years old and went through YC when he was 19 and you're criticizing him for making a clone of some other game? That's a hell of an achievement for anyone, let alone a teenager. And let's not forget that the best known game in the App Store, Angry Birds, is just an artillery game, which date back to the 70's. http://en.wikipedia.org/wiki/Artillery_game http://en.wikipedia.org/wiki/Artillery_game
- ekianjo 14y agoHuh... you are deeply wrong about Angry birds. You forget that they included physics in the game and that makes it a lot more elaborate that any of the artillery games or scorched tanks ever made before. It's not just about the angle and power, this time.
- talloaktrees 14y agoCrush the castle came first: http://armorgames.com/play/3614/crush-the-castle http://armorgames.com/play/3614/crush-the-castle
- praxulus 14y agoThe physics, while not dating back as far, were also present in flash games pre-Angry Birds, the most popular being Crush the Castle. Angry birds brought a slightly simpler aiming mechanism and (probably most importantly) a much more polished feel to the genre.
- ekianjo 14y agoThanks for the reference, I was not aware of that one.
- Rhino55 14y agoI hate that hn encourages this type of obnoxious headline. Just tragic. I feel this sort of pitiful neglect is what republicans think when they say "let the market find a solution". You know what would be awesome? Someone who gives a f about the quality of this website. I'm looking at you, PG.
- ReedR95 14y agoGreat article! I too wrote an iPhone game[1] while in high school (2 years ago during sophomore year) and while I didn't make $35k, the game did get downloaded close to 600,000 times while it was free. It was an extremely valuable experience that I learned a lot from. It always amazed me how easy the App Store made it to access such a vast market and that a game I built in my free time was being downloaded by people in countries as far away as Kazakhstan. 1. http://itunes.apple.com/us/app/drop!/id415884044?mt=8 http://itunes.apple.com/us/app/drop!/id415884044?mt=8
- jvrossb 14y agoDownloading it now :) Let us know if you're ever interested in making another game!
- moistgorilla 14y agoI wanted to join the website but it forced me to log in and register with facebook. Which I loathe. Please put in another option.
- josteink 14y agoYou mean a website recommended by someone who suggests that every kid should buy $1000s worth of Apple-equipment, then pay Apple $100 for the right to program that equipment and have it entered into Apple's locked ecosystem, isn't fully free and open? I'm hardly surprised. People these days really don't see to value freedom and openness the way they used to. It's especially disappointing to see the same trend in hacker-circles.
- jchin 14y agoLove the idea. I'm not a game designer and I would only put myself in the hobbyist-gamer category, but I'm always so impressed by well-designed games. I've played a ton of different games (board games, Magic, card games, RPGs, shooters, city-building, etc) and have even tried to create simple games in the past. What I found the most challenging and exciting was how to get all the different aspects of a game to come together. Top games today are probably made by specialists (I'm guessing) with someone who focuses on story or design or power balance or gameplay, etc. When I was a kid trying to put together all these things myself, I found it to be a really exciting and fun way to use my brain. I guess I disagree that the reason kids (and kids at heart) should try building a game is to "build a product, make money and make people all around the world just a little bit happier." I think the reason they should build a game is to practice doing different types of critical thinking. But maybe it's hard to convince a kid to build a game with that kind of reason. :)
- bryanlarsen 14y agoIt's so awesome that this is viable again. I started out by writing video games when I was 16, too. Back then I used BASIC & assembly language. I didn't get $35K or groupies, though. I got about $200 a game from a disk-of-the-month club service for them, which was "real money" to a 16 year old farm boy in the 80s...
- lquist 14y agoI have to disagree here. If Obj-C was my introduction to CS/coding as a teenager, I'd turn around, and run away as far as possible (like I did when I was introduced to C as a teenager). Now, Ruby (or Python, JS, etc.)...that's another story altogether...
- brianchu 14y agoThe tutorials do assume you know basic coding already, and the tutorials do quite a bit of hand holding to ratchet up the exposure to Objective-C, so it really shouldn't be scary. As someone who thought Objective-C was a terrible language with weird syntax at first, I'd have to say that 1) Verbosity shouldn't be mixed up with complexity, 2) You get used to the different syntax in a couple of days, and 3) Objective-C code is really readable once you get used to the syntax, in the sense that you never have to guess at a method's parameters.
- jaipilot747 14y agoCould you explain about 3? Do all function calls require named arguments? (Never done Obj C)
- brianchu 14y agoIt's not required, per se, but it is idiomatic. You will never see an unnamed parameter in the standard library, or in most other people's code. In a sense, the parameter name is actually part of the method name Wikipedia has this example of Objective-C, which illustrates what it looks like: [window addNewControlWithTitle:@"Title" xPosition:20 yPosition:50 width:100 height:50 drawingNow:YES]; This is essentially calling the addNewControlWithTitle:xPosition:yPosition:width:height:drawingNow: method on the window object.
- ekianjo 14y agoWhy make more iPhone games ? Honestly restricting yourself to using touch screen controls and making games for under-powered hardware is hardly gratifying - Make games for desktop, rather. There's so much more you can do visually and artistically speaking on a big screen with real controls. Plus, the iPhone market being flooded with games is hardly a good place to make your app shine. You will more likely be lost in the ever-growing ocean of crap.
- philh 14y agoTouch screen controls are different to keyboard and mouse, not inherently worse. Fingle could not exist as a desktop game, for example. I don't know how big a deal the underpowered hardware actually is; my suspicion is that you're overstating it. I agree that an app is unlikely to get any traction, but it's not obvious that a desktop game is any more likely to.
- ekianjo 14y agoI think controls which hide a significant part of your screen when you are using them is enough to qualify them as "worse". On some rare occasions if makes sense to have them but most of the time they just get in the way of the visible area of the game and seriously restrict what you can do. And let's not forget there is simply no feedback when you press on a touchscreen vs regular buttons, which is another factor that makes it really bad in terms of usability. That's also why you see so many initiatives (like Ouya, Icontrolpad 1 & 2) aiming at bringing physical controls to tablets and phones. Underpowered is a big deal. Before game makers were always pushing to do better looking, better working games and so on, and since we fall in the casual games bubble it has just become an endless flow of "meh" games not very enjoyable nor technically impressive. It is similar to what happened to the car businesses: it used to be a passion where most cars were built to reach top speeds and look cool and slowly became mass-market, fridge and washing machine like business with slow cars designed like shoe-boxes. It's just lame. Getting traction is not the only thing that matters in life. Making a difference in an existing market is. You are more likely to make a difference on a desktop market with a great game than the same on the phone, just because it is so easy for everyone to publish crap on it. That's what the Introversion guys are doing and while they are on very limited resources they just strive to make better and better games for the desktop. They deserve more credit than they get.
- akurilin 14y agoWhy not an Android app instead? To develop an iPhone game you need a relatively modern Apple desktop/laptop (at most 2 year old if you plan to run xcode 4.5, thus fairly expensive) and an iOS device (the cheapest you could go would likely be a 4th gen used iPod, still somewhat expensive) + a yearly $100 license (not sure if this is waived for students?). You also end up learning a somewhat insular language with a ton of idiosyncrasies (Smalltalk on top of C with a somewhat uncommon take on memory management). I feel like you get a lot more bang for your buck with Java and the ability to develop from any platform out there. An old Ubuntu box will do just fine, or Windows for that matter.
- mithras 14y agoEclipse is pretty heavy though, and it is my preferred Java/ Android editor.
- akurilin 14y agoCould you get away with any of the IntelliJ products instead of Eclipse?
- biafra 14y agoOf course. The Community Edition (free and open source, no field of use restrictions) of IntelliJ IDEA is just fine for Android Application development. You can develop for Android without an IDE at all.
- crgt 14y agoNothing wrong with Android - lots of good reasons to build Android apps. But...I'm running Xcode 4.5 on a 4 year old MBP (late '08) that still performs like a rockstar. And if you are going to build for Android (and take it seriously) you'd need to invest more than the cost of an iPod Touch to have enough devices to cover fragmentation across screen sizes and manufacturers. And I guess (?) you could call Obj-C insular - but learning it opens the door to deliver experiences to a huge chunk of mobile users. Long way of saying, I'm struggling with your "bang for your buck" argument. Especially if you're hoping to monetize your app. Because the primary ecosystem for that still seems to be iOS. Others seem to agree: http://techcrunch.com/2012/09/25/ios-android-appcelerato/ http://techcrunch.com/2012/09/25/ios-android-appcelerato/
- bennesvig 14y agoAt a young age, if you create something and get really positive feedback from someone you don't know (even if there is negative feedback as well), like he did, it has a huge effect on how you spend your time. Video games seem boring compared to making people happy through creating.
- lifeformed 14y agoI agree that it's a great practice to make games, but there's definitely no reason to specifically state iPhone games, or even mobile games. There are tons of great libraries for building desktop games that are extremely accessible for newcomers, like Love2D and GameMaker. The goal for building a game should be learning design, time management, and discipline. I think the technical aspect is very overstated. I mean, knowing the basics is important, but anything after that is something people should be able to figure out on their own. The technical skill required for creating a simple game is very basic - the most difficult part is learning how to finish a project in time, how to stay motivated, and how to design a fun product.
- deleted 14y ago[deleted]
- krichman 14y agoNo, not iPhone games. We should be encouraging kids to program for ecosystems that are free to enter, and that don't censor apps for disagreeing with their delicate sensibilities.
- batgaijin 14y agoBut doesn't paying the 99$ tithe mean that I can list mobile programmer on my resume?
- josteink 14y agoThat's completely missing the point: Kids should be introduced to open systems and learn the values it provides me, you and everyone. Kids should be on platforms where tinkering is allowed and encouraged. This is the way they learn. They should be on platforms where they cannot be "banned" for having fun. They definitly should not piped directly into a megacorp's cash-pipe from birth only to learn its one platform, its one language used only there and learn skills which only has value inside that megacorp's locked eco-system. That would be a very stupid and very bad thing to do to a kid. TLDR: iPhones considered harmful.
- zarify 14y agoKids should be introduced to a variety of systems and platforms and given enough information to make up their own minds. I love the open source ideology and the tools which have grown out of it, but I can also appreciate that closed systems also have their own set of benefits (and drawbacks). TL;DR: Indoctrination considered harmful.
- ekianjo 14y agoYeah, like the Raspeberry Pi. You can program with what you want and play it on a big screen in 1080p. And it's cheap, small and hackable. Way better than tinkering with an iPhone.
- krichman 14y ago
- pjmlp 14y agoThe idea of getting kids to learn to do mobile games is commendable. But getting their parents to spend €1000 in the Mac, €100 in an Apple Developer and €389 (+ 2 year contract) for the iPhone is just too much. Specially when many countries have an average income of around €500 euros. Kids should learn using open systems that don't cost their parents an arm and a leg to pay for them.
- josteink 14y agoAnd all this money... To program on the minority platform with a dropping market-share, which you can be banned from if you and Apple happen to disagree about what is good fun and not. That's a pretty shit deal. Compare it to the Android deal: It now has over 75% of the smart-phone market. Developing on it can be done for free, using free tools, on any PC or Mac, basically any platform with a JVM. Chances are you can do it on a machine you are already own. Applications can be distributed freely, directly to your friends, without the need for any store approval. Android in short: Zero cost. Ready to go on things you already own. Full freedom. Whoever wrote this and decided that iPhone games was the thing kids needs to learn must be smoking some pretty heavy weed.
- jacquesm 14y agoIf you're a kid and you want to develop a game use what you've already got: JavaScript and your browser. Much as I dislike the language it will run anywhere and you won't have to fork over $ for gear and silly licenses to deploy. Anybody in the whole world can instantly play your game if they have web access if you upload it to some public page. Let's not push kids to closed off, for-pay eco-systems.
- Surio 14y agoNow, dude, that's what I would call thoughtful advice. :-) Nice one.
- lucian1900 14y agoOr at least Android, where users can install any software and the system is at least partially hackable.
- fakeer 14y agoYes. It will be a logical choice. One doesn't have to spend minimum ~$700 to play the game. Tools and API are freely and easily available. Language, Java, is sth that students usually learn in initial years (No, I am not saying it's the best/worst language). But I still believe the grand parent commenter's suggestion of JS is more practical and will benefit the kid in long run even though it shall, most probably, not earn him $35K immediately or win him cute groupies. JS gives you the power to make things anywhere quick and see the changes instantly. Anywhere!
- soup10 14y agoEven though its now dying tech(I think?), Flash/actionscript would be my recomendation. It's the only platform where you can make real games and easily share them online. The built-in tools for working with animations are great. Though perhaps kids would benefit from a more hand-holding game-maker type of setup.
- Surio 14y agoGoing one step further with the general thrust of some of the thoughtful comments, here's a new site that was featured in HN a while ago. http://buildnewgames.com/ http://buildnewgames.com/ Blurb: Build New Games teaches you game development for the Open Web. The techniques we teach are cutting edge, cross-browser, and cross-device. We’re edited and operated by Bocoup and brought to you with support from Microsoft. P.S: You can see why Gabe/Valve is frothing in the mouth at the mention of MSFT :-P
- valdiorn 14y agoThe true title of this article: "Why every kid should buy an iPhone and iMac, because that's the only way you can develop iPhone games" No thank you, Apple.