Archive

Archive for the ‘development’ Category

Violent Game Design (not only) for Manhunt

November 29th, 2009 No comments

Manhunt

Yesterday I attended Jurie Horneman‘s talk on the artistic merits of violence in video games.

Interestingly, he focused his detailed examples on Manhunt 1, and mentioned only his concepts and ideas for Manhunt 2 that did not make it into the final game. (During my time at Rockstar Vienna, Jurie was working on Manhunt 2 as producer. After the studio was shut down and Manhunt 2 was released, Jurie posted the missing credits for the Vienna development team on his blog)

Nevertheless, his points about violence being used so often because it’s (often) the easier route for game designers were going into the same direction as Doris C. Rusch in her workshops about emotions as game design concepts.

Categories: development, games, vienna Tags:

iPhone Game Development Workshop

October 20th, 2009 1 comment

iPhone 3G
Over the weekend I attended an iPhone game development lecture/workshop, presented by the dudes from radiolaris, an indie studio focusing on iPhone games. Their first release Radioflare, a music shoot’em up, received an IGF nomination.

Besides “pure” development topics, we covered a lot of diverse ground, from the economics and politics of the AppStore, to development methodology (note to self: have to read on Scrum-ban, a crossover between Scrum and Kanban), compared various game engines and middleware, and exchanged opinions about “indie” and “commercial” games in general.

To summarize my key take-aways of those 3 days:

Not one, but two AppStores
The AppStore is split into two parts – one (“AppStore A”) contains games and apps that cost 99 cents, the other (“AppStore B”) contains games and apps that are more expensive.

Each of them attracts different users – games in AppStore A are appealing to impulse buyers who browse and download mostly directly from their iPhone (so the games must be <10MB in size). Users can always get new games very cheaply, and probably do not spend much time with a single game.

The other, AppStore B, contains “bigger”, more expensive games. Users interested in those games are the more traditional gamers, reading blogs, and expecting the game to be a service that has to be maintained by the developer.

An iPhone developer should chose wisely in which AppStore he wants to play, and take this into account when deciding not only on game design details, features, etc., but also on marketing. AppStore A is a difficult territory for professional game development studios, in terms of ROI.

2D is good (enough)
The iPhone download charts are dominated by 2D games; 3D is not a real factor whether a game is going to be a success or not.

Metrics
90k active apps (98k total apps seen in US AppStore), growing rapidly
21k publishers

29 game submissions per day to Apple for approval, vs.
138 non-games submissions per day

Current avg delay from submission to approval: 10 days (maximum: 43 days! yuck)

The profit margin is better for non-games:
Current avg app price: $2.80
Current avg game price: $1.39

Free/lite vs. paid/premium version – 3-5% of users downloading the free/lite version buy the premium version.

All metrics from 148apps.biz (highly recommended!).

Middleware
Facebook and Twitter integration is expected, not optional!

OpenFaint, Plus+, Agon and others make it very easy to integrate.

Also, Pinch Media offers a free (for now) solution for ingame tracking and analytics (though I have to check out whether it would make (more) sense to use the Google Analytics AJAX API for that purpose).

Input methods
Accelerometer (tilt control) should be used for one axis only (tilt left/right or up/down), as difficulty increases dramatically when trying to control 2 axis at the same time.

When using up/down, use an offset of 30° up as default, as users tend to use their phones tilted up.

Cocos2D
Cocos2D seems to be the primary open sourced 2D game engine for the iPhone. It has a ton of features (sprite actions, scene transitions, audio, 2 different physics engines, particle effects, etc.), and especially the many samples give a very good overview and can be used as a starting point for a new game.

My favorite quote of the weekend comes from martinpi:

“Memory Management am iPhone dürfte ziemlich intelligent sein, auf eine dumme Art und Weise.”

Overall, it was a very interesting and inspiring weekend – thanks to everyone involved!

Categories: development, games Tags:

ImageMagick CPU load problems?

August 13th, 2009 1 comment

ImageMagick logo

I assume this is only interesting for a very limited crowd. Still, it is worth mentioning:

ImageMagick may behave as a complete (meaning 99%) CPU resource hog, if several convert processes are running at the same time, as described by several users in the forums.

What worked for me: disabling IM’s internal threading. Sounds weird, but apparently there are some issues (especially?/only?) on RHEL/CentOS machines.

Build with configure –disable-openmp, and several parallel processes did not stall the CPU any longer.

Categories: development, technics Tags:

New RIA resources

May 26th, 2009 No comments

Found Census – great site which allows comparison between various data loading mechanisms for RIAs. Seems like Flex/AMF3 has a big advantage both in exec time and bandwidth:

Census

And, related to my previous post, here is a demo explaining how to setup BlazeDS and Flex in IntelliJ IDEA, including debugging both the client and the server side – nice!

Categories: development, tools, web Tags: , , , ,

A Praise for BlazeDS?

May 25th, 2009 No comments

I never got around giving Flex a serious try.

The most interesting features, like the Live Cycle Data Services, allowing server push-based RIAs, are very expensive, and I did not had the need for anything else that I could not handle using some simple (Y)UI thrown together and hooked into a DB using Grails.

Now, the current implementation of our Atlantis backend polls every n seconds from the server and new messages are added, via AJAX. This led to some browser stability problems and a general bottleneck if several AJAX-”windows” are opened and each of them refreshed every n seconds, respectively.

Affter some research, I stumbled across BlazeDS, which might solve this problem – another part of Adobe technology that was released open source, and should provide the basic functionality needed to access hibernated Java objects from Flex, plus allowing push subscriptions and notifications from the server to the client.

I will check out this tutorial about getting Flex, BlazeDS and Hibernate to work together.

Also, there is a great post about the differences of the various flavors and licensing details, as well as another one.

I will post my findings here.

Categories: Atlantis, development, technics, web Tags: , , ,