iPhone


iPhone06 Jan 2010 02:36 am

As many of you know, I spent the last week in Poland. Most of my time was spent in Zakopane attending the Junulara Esperanto-Semajno (Youth Esperanto Week), a gathering of around 200 young Esperanto speakers from around the world. So, how does this relate to iPhone localization?

Well, on the way back, we stayed overnight in Kraków and I wanted to visit the main market which is Rynek Główny. I was a bit surprised to realize that I already knew the word Rynek, because of the Polish localization of Dominion Minion which has Czarny Rynek, the Polish translation for an interesting Dominion card called Black Market. Black Market is an interesting card which changes the nature of a Dominion game a bit and lets you buy cards which are not active in the current game (for more details, see: boardgamegeek).

So, how is this dangerous? Well, I got into a cab and wanted to ask to be taken to the main market:

- Czarny Rynek, proszę!

Of course, this got a rather strange expression from the driver, since I had just asked to be taken to the black market! Fortunately this wasn’t a location known in Kraków, so I quickly corrected myself and we were on our merry way. I just can’t imagine what interesting adventure we could’ve gotten into had the driver actually taken us to some black market!

Fortunately I also had the iPhone app, OffMaps on hand, where I had the exact location we wanted marked as a pin which I just showed to the driver. This app shows a map where you can pre-download maps of places you plan to be abroad, so when you arrive you won’t have to pay exorbitant data roaming fees to see a map of your current location… it will just rely on your iPhone’s GPS.

If you need to localize your iPhone apps, check out the services we provide at iPhone-i18n.com, providing app translations exclusively for the iPhone.

iPhone21 Nov 2009 03:19 am

This weekend, we are going to the Expolingua Berlin and are celebrating that by lowering the price of German Course by 20% and German Sex by 60%! Get it now while you still can!

iTunes links:

iPhone18 Nov 2009 02:49 pm

I got sick of shuffling the cards to play Dominion, so I made an iPhone app called Dominion Minion which shuffles whichever boxes you want (Base, Intrigue and/or Seaside) to give you random starting sets. It also supports the Black Market and Envoy cards. The app is currently in English and German (logically since I own the German game), but would like to help others in other countries enjoy the game as well. If you’re interested in translating the cards to your language, you can see more details about that on BoardGameGeek.

See more information about the app

app_store

Interviews and iPhone16 Nov 2009 02:54 pm

Today I have Reto Senn with me, from bitforge, who worked on Orbital, a truly innovative and addicting game that my girlfriend and I [and friends] just can’t stop playing. In fact, just the other day I got the 13th highest score in the world of 159 on Gravity Mode. I also find it to be an incredible game for showing off your iPhone. It’s incredibly fast to learn, but quite deep. In the two player mode, both players play opposite each other across a table which makes it ideally suitable for a mobile device instead of a computer.

Orbital game in progress

I know that when I first saw Orbital, I thought of it as a knock-off of Puzzle Bobble (a.k.a. Bust-A-Move), but once I got it, I discovered that it’s much more than that. Each shot will create a ball that expands until it reaches either the edge of the screen or another ball and if you hit a ball 3 times, it explodes giving you a point. What were your inspirations for Orbital?

First of all, congrats on your score in Gravity Mode, i have yet to break the 100 points barrier. Did you know that Dane Cook is 8th with 171 Points? People are really addicted, the average playing time of all players is somewhere around 5 hours, with some people maxing out at 100 hours. That’s the amount of time people usually spend with role-playing games…

Orbital high scores

Anyway, to get to your question:
Adrian, the guy who programmed Orbital, and Andreas, who acted as Producer,
were addicted to a flash game called Gimme Friction Baby. Very simple, very basic. They just couldn’t stop playing, i gave it a shot and was addicted as well. The game felt like a raw gem. But man, was it tough. We wanted to provide something that everyone would play – so we experimented a lot, we tried many different things but in the end what really worked well were gravity and multiplayer. So we stuck to them and left out the experimental stuff.

Initially, we also wanted to have a pinball feeling… a lot of action going on. We knew we wanted to have voice-overs, but no one here speaks English without an accent – so we had to go with a text-to-speech engine. And we wanted the robot to be a bit sarcastic, like we are.

And we included online high scores and facebook so people start to challenge each other. Some experiments also went into the direction of Bust-a-Move, now that you mention it.

Graphically, we wanted to do something impressive, that really wowed people. We knew it will be something space themed, and we needed to show the gravity. That’s how the grid came into being.

Many players notice its very simple scoring mechanism. On the first game of Gravity Mode, a player’s first score is usually 5… while somewhat disheartening, it also gives the player a challenge … “I can do better than that!” and they have to play again. Were there other considerations for a more complex scoring mechanism or why did you choose this?

During the experiments we had other scoring systems – but they just didn’t add to the fun. As soon as you are in the 10,000s or millions, your score becomes a fuzzy number in your head. We like it the way it currently is – you can really compare your scores and you know how good (or bad) you are at the game. We saw tweets from people who were happy about a high score of 2. It really motivates people – they think they can do better than that. And if they take their time, they will.

Orbital is in the category of the “one button” games for the iPhone. No matter where you tap, it simply fires the ball in the direction of the turret. Was your idea that the game should be a game of timing or did you just think that would be the simplest way to interact with the game? Also, did you experiment earlier with other ways to control the play?

We were developing mobile games and there was this wave of timing based one thumb games. They really work well on classic mobile phones (as they usually have crappy input for games). The game should be playable with just one hand free so you could play it almost anytime, anywhere. Accelerometer based games for example just don’t work when you’re in a bus or train.

Also we wanted to keep game-play sessions in short bursts of about 3 minutes so you could take out the game, play a round and put it back. The simple controls also help the game feel so deceptively innocent and simple.

There was a mode where the shot would fly where you tap but it broke the game as you could play it almost infinitely. Many people were asking us for such a mode though so we are currently working on it and i think we’ve found a way to make it work so the game stays challenging and short.

What are your future plans for Orbital?

As mentioned there will be a new game mode coming, it will address most of the requests we had from the community. You will be able to control your shot and you will have progressive scoring – but even though in theory it should be easier, we’re going to mess with your mind so you will get greedy and lose.

OpenFeint is something we’re currently investigating. Achievements were in our initial list of features and maybe we’re going to add them. Anti-chievements for extra-bad gaming was also something we considered, but i don’t think people are ready for this yet ;-) Online multiplayer is also something we’re currently thinking about, but we need to think about how we want to do it.

Do you have ideas for other similarly minimalistic, yet addictive games for the iPhone?

We are currently working on an unannounced title that will not be self-published, and we’re working on publishing high-quality games from other developers. We are currently evaluating new concepts, but for now we keep on improving Orbital.

I don’t know if you’re aware of this, but I learned about your game during a presentation at 360|iDev, an independent iPhone developer conference. David Whatley, developer of GeoDefense, presented Orbital as an example of bad PR from a very fun and polished title… and recommended that we all buy it. Going on that, how did you try to spread the word about your game and what worked well and what didn’t go so well? What are your future plans to get the word out?

David Whatley of GeoDefense speaking at 360|iDev (photo by Matt Martel)

We knew that just putting the game on the appstore just won’t cut it (anymore). We knew we had to spread the word, so we created two videos, a gameplay preview and a launch trailer, a launch press release and wrote to all the blogs we knew. We had a person dedicated to doing this as we knew this is vital. We managed to get glowing pre- and reviews from most blogs, but we weren’t able to sink into the awareness of the masses. We were featured on the front page of the App Store, in the 3rd position. That’s some of the best advertising you can get. But as soon as the featuring was gone, sales ditched. Except for Japan. There it was always staying not on the top, but in the awareness of people. As soon as we did our recent sale, Orbital skyrocketed back to #2 in Puzzle games.

One big mistake we made though is that we didn’t have a free version available at launch. We should have done that. The free version should be out this week (it was rejected due to the use of an iPhone icon for the buy button), and there will also be an update to the game as mentioned before. In order to really spread the word on it we are working with TriplePoint, the PR Agency which David Whatley recommended. We will be able to tell in two or three weeks if this works out – we hope it does of course. :-)

I just noticed today that you also have a flash demo of Orbital on your website. I see it’s not perfectly the same as the iPhone version, but very close. Are you using the same codebase for both versions or is the Flash version a complete port?

When we started working on the flash version we weren’t sure if it will be possible to recreate the iPhone game visually. What you see now, the gameplay and physics are the same, visuals are almost the same but there are some things missing or slighly different in the flash version.

The code is a port of the iPhone code – it’s the same code (or parts of it), just written in ActionScript instead of C++. Of course, there’s no OpenGL or OpenAL in Flash, so Sound an Graphics had to be completely rewritten. It was actually pretty easy for us to do the port, as the iPhone code is already highly portable. Since this month we’re licensed PSP and DSi developers, so stay tuned :-)

Well, I wish you the best of luck! Thank you very much for your time and I think I’ll have to go back to trying to beat the top score now… If you want to try to beat my high score, you can get Orbital on the App Store.

iPhone11 May 2009 11:31 am

I just released German Course 1.0, a new application for the iPhone and iPod Touch. German Course is designed to help people learn German quickly and easily whenever they have a few spare minutes. German Course offers mini-lessons specifically designed for the iPhone by Judith Meyer, host of GermanPod101, skilled private language teacher and course developer. I then packaged these lessons into an intuitive iPhone app.

See Full press release

Interviews and iPhone02 May 2009 11:13 am

I’ve recently been playing Uniwar [App Store], an exciting new turn-based strategy game for the iPhone. I must admit that I haven’t played such a game since Capture the Flag by Carr Software on DOS. In this game genre, you get different units which you can move around the board until they run out of moves and then you end your turn and wait for your opponent to move their units. Today I have Alex Kral with me to answer a few questions about their game.

Why did you decide to make Uniwar and what other games were your inspiration?

We decided to make UniWar originally to promote our online mobile portal called Xpressed. The game turned out to be so good that we decided to make it its own product.

How large is your team and how long did it take to develop?

It took about 1.5 years to develop. About 8 people have worked on it.

That’s a lot of time! Are you also considering porting it to other platforms?

Yes. In the next two to three months, it should get released for most other phones on the major operator decks.

What were your biggest challenges creating such a game and how did you overcome then?

The biggest challenge is the sheer complexity of this game. Having the best suite of tools in the industry (the Xpress Suite) and some very talented programmers was key to succeeding.

How does the online multiplayer game work? Do you need to keep the app running while you wait for your opponents to make their moves? Also, is it possible to invite a friend to play against you, so that you don’t get worried about being the n00b to get pounced by the wizards on the server?

You can invite your friends to play online with (team matches) or against you. Each game is setup with a certain duration per turn that varies between 10 minutes and 3 days. You do not need to keep the app running but simply log in and check out whether it is your turn in any of the matches.

What are your plans for future projects?

Make UniWar even better and add a lot of really cool new features.

To my readers, I’ll give a tip that If you get this game, be sure to start with the campaign mode, so that you can have an easy introduction to the play mechanism. Thank you very much for the interview and I wish you success with your game!

iPhone27 Apr 2009 06:12 am

Apple just accepted my ChessPlayer update today. I’ve since removed all the amateur games from the database and have added a collection of Kasparov games compiled by Allen Dellinger specifically for use in Chess Player. I also have to thank Bruno Berenguer for letting me use his grandmaster collections.

We’re also now multilingual! Thanks to Maria Nuyanzina for Russian, Judith Meyer for German and Alex Kadar for French! I also translated the app to Esperanto, but since there is no localization option on the iPhone (even though it appears in the iPhone Simulator!) for Esperanto, there’s no way to view it on a device. However, Esperanto does show up as being supported in the app description.

chess_player_languages

Objective-C and iPhone24 Apr 2009 03:11 am

I’m developing an iPhone app which has a built-in quiz which runs using JavaScript within a UIWebView. After a user clicks a Check Answers button, I have to use JavaScript to determine if all the answers are correct, so I can save this result for later.

Here is the relevant JavaScript:

function checkAnswers() {
  // Do stuff to see if all answers were correct
  ...

  // Send all correct status back to Objective-C
  window.location = "/allCorrect/" + allCorrect;
}

In Objective-C, you then need to set up a UIWebViewDelegate to intercept whenever a new URL is to be loaded into the UIWebView. Then you need to call shouldStartLoadWithRequest and if you called your fake URL, then it shouldn’t load, but execute the code you need to run in Objective-C instead. Here is the relevant Objective-C code:

- (BOOL)webView:(UIWebView *)webView
        shouldStartLoadWithRequest:(NSURLRequest *)request
        navigationType:(UIWebViewNavigationType)navigationType {

  if ( [request.mainDocumentURL.relativePath
        isEqualToString:@"/allCorrect/false"] ) {
    NSLog( @"Nope, that is not right!" );
    return false;
  }

  if ( [request.mainDocumentURL.relativePath
        isEqualToString:@"/allCorrect/true"] ) {
    NSLog( @"You got them all!" );
    return false;
  }

  return true;
}
Objective-C and iPhone08 Mar 2009 04:55 pm

Many times you need to save some user preferences or session data that will load automatically upon the next launch of your iPhone app. Unfortunately this is quite a bit harder than it looks. Here are simple steps on how to save a string from your application. Just change the variable type to save more information!

Let’s assume you want to save the user’s account number.

Add the following to AppDelegate.h like you would normally create a mutable string:

NSMutableString *accountName;
@property (nonatomic, retain) NSMutableString *accountName;

Add the following to the top of AppDelegate.m. I put this between my import and implementation statements.

NSString *kAccountName = @"AccountName";

Add the following to applicationDidFinishLoading in AppDelegate.m:

NSMutableString *tempMutableAccountName = [[[NSUserDefaults standardUserDefaults] objectForKey:kAccountName] mutableCopy];
self.accountName = tempMutableAccountName;
[tempMutableAccountName release];

Add the following to applicationWillTerminate in AppDelegate.m:

[[NSUserDefaults standardUserDefaults] setObject:accountName forKey:kAccountName];

In the application itself, you will need to add the following code where you want to set this value to prepare for saving on application termination:

AppDelegate *appDelegate = (AppDelegate *)[[UIApplication sharedApplication] delegate];
appDelegate.accountNumber = x;

To grab this value from the saved variable, add these lines:

MobilePOSAppDelegate *appDelegate = (MobilePOSAppDelegate *)[[UIApplication sharedApplication] delegate];
x = appDelegate.accountNumber;

Now you can save data from your app so it can be loaded automatically next time!

iPhone03 Feb 2009 12:10 pm

The history of German Sex? Is that anything like the Book of Italian War Heroes? :) –Rory O’Connor

german-sex-app-store

After almost a month of waiting, Apple has finally accepted German Sex into the App Store. Even though I’ve lived in Germany for three years, I still can’t always remember the sex of every noun when I speak. In German, every noun can have one of three genders: masculine (der), feminine (die) or neuter (das). The gender of each noun is rather arbitrary. My program has the two thousand most commonly used nouns and will randomly quiz you on whether a noun is der, die or das.

A while ago, I was chatting with Steve Finkelstein online about how he wanted to find a good way to learn iPhone development and he mentioned that his job was considering sending him to the iPhone bootcamp by the Big Nerd Ranch. I said that looks interesting and then I saw the price tag: $3850. Wow! I said, he could fly over here and stay at my apartment a few weeks and write an application and it would be a whole lot cheaper than that class! I’d teach him for free and in exchange he would write an app I could sell. Steve actually did end up going to the iPhone Bootcamp and said he thought it was a very good course.

So, that put this idea into my head and I remembered that my friend Jesse Alter just graduated and was looking for a job. I said, “Hey, how about you come visit me in Berlin and learn iPhone dev?” At first he thought it was a crazy idea, but then remembered that through one of his credit cards, he would get $400 back from a travel expense. He originally planned to stay a few nights in some stupid hotel, but decided visiting Berlin would be much cooler. He found a flight for $600, so was able to visit Berlin for a few weeks for around $200. Not bad!

When he arrived, we brainstormed what he could write in three weeks and finally settled upon this language training app. Then, we had to come up with a name and we thought of GermanGender, but it was too long to find under an icon on the iPhone home screen. Then we said, “Why not German Sex?” First I thought there’s no way Apple would accept it, but sex is the linguistic term for noun gender in such languages, so I said let’s go for it.

A few days passed and I received the letter I was half-dreading from Apple. Yes, I bet they’re rejecting it because it has “sex” in the name:

Dear Mr. Smith,

Thank you for submitting German Sex to the App Store. We’ve reviewed German Sex and determined that we cannot post this version of your iPhone application to the App Store because it contains objectionable content and is in violation of Section 3.3.12 from the iPhone SDK Agreement which states:

“Applications must not contain any obscene, pornographic, offensive or defamatory content or materials of any kind (text, graphics, images, photographs, etc.), or other content or materials that in Apple’s reasonable judgement may be found objectionable by iPhone or iPod touch users.”

It would be appropriate to replace the sound produced by the app when the user selects a wrong answer.

If you believe that you can make the necessary changes so that German Sex does not violate the iPhone SDK Agreement we encourage you to do so and resubmit it for review.

Regards,
iPhone Developer Program

WTF?! They’re rejecting it because they think the wrong answer sounds like a fart! ROFLMAO! Listen to it for yourself: wrong answer. Well, I decided to change the sound anyway, fixed it, uploaded it and sent the following reply to Apple:

Dear iPhone Developer Program,

I have changed the sound for a wrong answer and have resubmitted. I
was unaware that a gameshow buzzer would be offensive, but I am
willing to comply with your recommendation regarding this resource.

Sincerely yours,
Chuck Smith

Several weeks passed with no word, so I was quite happy to see that it was accepted this morning! So, that’s the story behind German Sex, and the $200 3-week European iPhone development immersion trip that led to its creation.

So, if you’d like German Sex, get it in the App Store.

Next Page »

google

levitra no prescription

viagra india levitra zonder recept viagra 50 mg viagra prix en pharmacie cialis prescrizione cialis venta libre cialis cialis differenze achete levitra erectie probleem disfuncion erectil tratamiento levitra nederland tadalafil costo viagra senza ricetta svizzera cialis remedio levitra venta libre commander du viagra cialis informazioni achat cialis en ligne viagra liquido medicament viagra viagra indien sildenafil soft erectiepil acquisto viagra on line trouver du viagra sildenafil moins cher acheter viagra moins cher venta de sildenafil levitra svizzera tadalafil generico kamagra en france cialis generique en pharmacie acheter propecia pas cher viagra 20 mg viagra libera vendita kamagra pil levitra generica medicament cialis viagra vendita on line mannen erectie vendo viagra apotheke bestellen acheter prozac en ligne cialis sur internet compra cialis generico vente de viagra cialis mallorca impotencia remedios prix cialis france disfuncion erectil cura viagra informazioni zyban generique sildenafil citrate tablets kosten viagra prix viagra 5mg acheter viagra generic achat cialis pas cher leivtra moins cher cialis apotheek viagra pillen kamagra ajanta viagra quebec levitra prescrizione achat de viagra erektile dysfunktion vendita cialis generico viagra ou similar vente cialis en ligne vente cialis cialis apotheke cialis prix belgique viagra quanto costa acheter du viagra cialis kostenlos cialis pharmacie prix cialis ohne rezept acheter kamagra oral jelly cialis retina levitra pillen prix cialis en pharmacie prezzi levitra impotencia levitra kosten cialis generique viagra luxembourg acquisto cialis svizzera achat viagra pas cher cialis generico acquisto acheter sildenafil prix viagra france commander kamagra kamagra versand acquistare levitra generique du cialis levitra senza ricetta cialis vendita libera tadalafil precio cialis bon prix viagra moins cher remedios disfuncion erectil acheter du levitra kamagra pille viagra 100mg levitra bestellen sildenafil tabletas vente viagra france viagra tarif clomid ordonnance viagra tous les jours kamagra amsterdam cialis zonder recept viagra genericos acquistare cialis su internet viagra pharmacie paris kamagra verkoop prix du cialis levitra indien cialis precios cialis kaufen kamagra rezeptfrei aquisto viagra levitra generique tadalafil generika comprar viagra em portugal levitra preisvergleich cialis au meilleur prix compro levitra levitra kostenlos viagra prescrizione viagra madrid cialis pillen cialis inde cialis ficha tecnica cialis torino viagra prezzo in farmacia cialis 20 mg sildenafil generique vente viagra en france acheter azithromycin propecia sans ordonnance vardenafil generika generieke viagra potenzmittel levitra apotheek acquistare cialis in farmacia acquisto viagra impotencia sexual cialis marche pas levitra 20mg viagra naturel erectie lengte generic tadalafil erectiepillen prix viagra belgique viagra generico opinioni levitra france generika apotheke compra viagra in italia firmel sildenafil cialis kopen acheter viagra generique cialis combien ca coute acheter zithromax cialis controindicazioni cialis generico mexico acheter accutane viagra ricetta acheter cialis generique viagra venta libre acheter viagra sans ordonnance cialis generico achat cialis generique cialis generique achat viagra generique en pharmacie cialis bestellen comprar cialis em portugal cialis sin receta achat viagra sur internet cialis belgique kamagra tabletten cialis sans prescription sildenafil venta le kamagra viagra prix belgique genericos viagra generische viagra cialis venta comprar viagra pela net achat tadalafil viagra kosten viagra bestellen cialis rezept cialis riesgos erektionsstorungen levitra ricetta sildenafil rezeptfrei cialis generico opinioni viagra suisse cialis prescrizione medica farmacia viagra cialis tabletten acheter viagra pas chere eu viagra impotenza sessuale cialis prijs viagra preis vendita viagra senza ricetta pastillas sildenafil viagra svizzera cialis generika tadalafil rezeptfrei vardenafil bestellen sildenafil citrato potenzschwache achat kamagra commander viagra generique viagra duree d'action aquisto cialis sildenafil generico acheter cialis sur internet viagra farmacia cialis vente en ligne medicatie viagra cialis kaufen cuanto cuesta el viagra zyban achat viagra generica cialis necesita receta medica finasteride generique citrato di sildenafil viagra verkoop potenzsteigerung prezzi viagra acquistare cialis a san marino cialis seguridad social acheter cialis france cialis kosten achat viagra generique cialis europe rezeptfreie potenzmittel costo levitra viagra bestellen venta de levitra viagra roma acquisto cialis in contrassegno cialis prix france pastilla sildenafil viagra bon prix viagra europe vardenafil hcl viagra kauf prozac sans ordonnance cialis generique france acheter cialis pas cher cialis à vendre cialis internet comprar vardenafil levitra kaufen compro viagra acheter cialis paypal cialis 10mg tadalafil 20 mg ordina levitra cialis effet secondaire generische levitra ordina cialis cialis o viagra cual es mejor citrate de sildenafil kamagra online kaufen viagra on line levitra apotheke viagra controindicazioni cialis espana tadalafil generico sildenafil fur frauen kamagra eu cialis sans ordonnance il viagra commande cialis cialis tiempo commande levitra comprar tadalafil clomid combien de mois compro levitra cialis 10 mg erectiestoornis cialis ricetta medica vendita viagra in italia tadalafil preis koop viagra comprar viagra feminino acheter cialis sans ordonnance cialis meilleur prix erektionsstorung vendo viagra commander du cialis finasteride prix posologia viagra viagra soft tabs viagra maroc sildenafil moins cher remede impuissance kamagra indien vente de cialis sur internet acheter clomid sur internet pastillas levitra prix de cialis viagra modalità d'uso cialis indien kamagra oral jelly potenz mittel costo cialis cialis indicaciones acheter clomid en france tadalafil effetti collaterali acquisto viagra senza ricetta levitra genericos levitra a vendre prix tadalafil generico viagra kamagra generique cialis levitra propecia moins cher vendo cialis milano sildenafil receta prezzo cialis italia sildenafil shop vente levitra viagra generique achat tadalafil tabletten viagra donne cialis in deutschland kamagra inde viagra deutschland levitra tabletas vendita viagra viagra en ligne prezzo viagra italia levitra precios levitra medicamento internetapotheke levitra vendo levitra propecia vente cialis roma viagra preço acheter viagra sur la net viagra france viagra milano cialis montreal cialis tabletas levitra indien viagra internet acquisto cialis generico precio de cialis cialis farmacia kamagra 100 achat de levitra koop kamagra