(X) Hide this
    • Login
    • Join
      • Generate New Image
        By clicking 'Register' you accept the terms of use .

Pencho Popadiyn on N-puzzle WP7 application

(8 votes)
Silverlight Show
Silverlight Show
Joined Nov 03, 2008
Articles:   25
Comments:   33
More Articles
0 comments   /   posted on May 09, 2011

Next in our WP7 showcase apps comes N-puzzle – a new, free gaming app developed by CompletIT and Pencho Popadiyn. Pencho is also a recognized article author at SilverlightShow (check his contributions).

Q1. Pencho - please introduce yourself briefly (experience, interests, key projects, etc) and tell us more about the application you created - what are the key functionalities, major differences from other similar applications on the market, why do you think people would want to install this app on their phone?

A. Hello! I’m Pencho Popadiyn, I live in Sofia, Bulgaria and work as a .NET Developer for CompletIT. I am developing Silverlight/WPF since the very beginning. I enjoy programming WP7 in my free time. In fact this is not my first WP7 game. Last month I released my first app, it was a mahjong based game (search for Shisen-Sho in the marketplace). And I received a lot of positive feedback from the users, and that encouraged me to move on. About the puzzle. Well, it is based on the classic and extremely popular N puzzle game, where you have a frame of numbered square tiles in random order with one tile missing. The object of the puzzle is to place the tiles in order by making sliding moves that use the empty space. The game offers a number of built-in images; also the user can choose a custom image from the phone gallery or even to use the today’s Bing image as a source. If you don’t like images, you can play the classic modes with numbers or letters. You can save a game in progress and complete it later; there are four different board sizes and many other features. Here are the links to the game:

  • http://www.windowsphoneapplist.com/n-puzzle_game-a16302.html
  • http://social.zune.net/redirect?type=phoneApp&id=9b99ba3f-2377-e011-9210-002264c2fb72


Q2. Why a puzzle? How did you get the idea to create this app?

A.Well I developed the same application for Silverlight a long time ago. And now I decided to port it for WP7. By the way, the original Silverlight application is available on SilverlightShow. Check out here.

Q3. Which features were most challenging to develop in this game, and why?

A. Maybe the logic for downloading and using the today’s Bing image feature was most interesting. But generally as I said I had a Silverlight version of the puzzle, so it was relatively easy to port the project to WP7.
However, since this is my second game, I am trying to take a more general look at the things. I am trying to extract common functionality and build something like an own framework (for internal usages of course). As I come to my code from time to time I am seeing a lot of repeating code and patterns. Besides the standards utilities and helper classes, I and my colleagues are spending some time in discussing and analyzing how to design some more complex stuff. So we could use it in our future projects.

Q4. Could you reveal some tip, some solution you used to work around a specific problem faced during the development of your application?

A. Hmm, that’s interesting question. The game is not complex, so I didn’t have any big challenges. However, during the development I hit several problems. Here are some of them. Let’s take a look at the PhotoChooserTask. It took me four hours to understand that navigating to another page directly from the Completed event is wrong. It leads to unbelievable behavior of the application, e.g. events are not firing, other are fired twice and something similar.
I found other issues (bugs) with the tombstoning. For example, the Remove method of the application state dictionary is not working correctly, e.g. after the application activation event is raised, the entry is still there.
One of the biggest challenges was related with the ApplicationBar. The ApplicationBarButton and MenuItem does not allow you data binding and attaching commands to the click events. Since I am a MVVM guy, having code for calling view model’s methods in the code-behind of the view is real pain in the a**.
What I could advice the developers who are planning to start developing WP7 applications is to make their first steps with caution. There are a lot of unexpected obstacles. Also having WP7 device for testing is almost mandatory. I could tell you for sure, that testing on the emulator is not the same as testing on a real device (mainly in terms of performance and graphics).


Q5. Which technology did you used for your games, Silverlight or XNA?

A.Well, as a developer having experience with Silverlight and WPF, I used Silverlight for developing my first games. But right now I am getting started with XNA and it is not far the moment when I’ll release something written on XNA.

Q6. Do you plan to upgrade the game with any new functionality later on?

A. Yes I’ll definitely do it; furthermore I am planning to do it in the next 2 weeks’ time frame. I have a lot of ideas in my mind. For example, I am planning to add a video puzzle. So, instead of image, the user will be able to select a video for puzzle source. I think it will be really interesting. Also I’ll add history functionality. But first, next week I’ll release a small update for the Shisen-Sho game.


Q7. How do you see the future of WP7, and applications for WP7?

A. “The future is so bright”, as in the song of C-Block. Ok, now seriously, I think WP7 will transform in a great platform not only for games but for business applications too. We have to be just more patient. Remember what was the situation with Silverlight at the very beginning – lack of features and functionality, bugs, etc. Today Silverlight is a complete platform. The same is the situation with Windows Phone 7. It is just at the beginning of its way. Just wait till the end of the year, when the next major players - Nokia and Mango will enter the gameJ.

Q8. What other ideas for next WP7 applications do you have?
A. I haven’t decided yet what will be my next application, whether it will be a game or some application. I have several ideas and I am still discussing them with my colleagues. I am planning to release several apps and games in the next few months. Although they will be relatively simple, I am trying to make each next game much more complex than the previous one, adding more features and logic. I am still not planning to enter deep inside into the muddy water of the game development (for example, to create some complex shooter or action game). I want to build more confidence and experience (to pave the way, so to say)J. I want learn all specifics of the WP7 programming model in great, great details and try different programming approaches first, and then I’ll think for something more complex.

Thank you, Pencho! Wish lots of people would enjoy your game!



No comments

Add Comment

Login to comment:
  *      *