Friday, 3 February 2012

A few more things about Nextpeer

Spent quite some time on Nextpeer in past 2 weeks, and also created quite a few posts about it recently.

Planning to move on to other topics soon, so would like to summarise a few more things as below. Will definitely talk about it again if there's any new interesting development in this area.


Coins handling

Still not very clear about coins handling. Like to have clear flow from developer's point of view, from users' point of view. What's the selling/attracting point for each party?, why would users want to buy more coins if you can get it free by playing as guest? are they redeemable? is it fair?...etc need clear answers to all sorts of what if questions.

Nextpeer is definitely an interesting product. Although still in early stage, can see some potential in there.


The huge scrolling result list

If you ever visit Nextpeer home page, you definitely won't miss the huge scrolling result list - keep updating with the latest results every few seconds. And if you clicked on any of them, it will redirect you to the iTunes page for you to download the game, not bad!

To be honest, I always thought it isn't real. As based on my observation, Nextpeer "sometimes" use simulated players to give you the multi-player "user experience".

Until today...

I was playing around with Nextpeer using my "non-Cocos2d" game Follow me if you can. While working on it, I accidentally toggled to the Nextpeer home page and found the result displayed on it - as shown below. I didn't change the default Tournament Title, that's why it's shown like that.


Tried another tournament, purposely get 0 points. As shown below, the "simulated" 1st prize winner also added to the list, cool!


Unfortunately, my simple game still not published to App Store yet, so when I clicked on it, just get a blank page. Damn!

Ok, I was a bit too excited. Technically, the SDK pass data back to the server after the game ends any more, so there shouldn't be anything exciting about displaying result on the web page.

Again it's the "user experience" - the fact that my game can get some exposure on their home page when someone plays it sort of excited me a bit. As for how many people will be staring at that result list like me during that moment is a different issue...


Stuck with SDK for non-Cocos2D game

I found a few problems with integrating the SDK to my non-COcos2D game and got stuck. One problem is, when I started a new tournament, found that the game still shows the last screen of the previous tournament and the score wasn't reset... Must have missed something somewhere. Will wait for the updated tutorial then...


Not suitable for games with multiple sub-games?

While still waiting for more info about how to handle multiple tournaments, I think with the current design, it's probably not suitable for games which has multiple sub-games. I mean like the extreme example of this 101-in-1 Games I mentioned before. It would be really challenging to work out a solution for that kind of games.


How to co-exist with Game Center and other tools?

I was also thinking, is it suitable to have Nextpeer and Game Center (or OpenFeint and other products) integrated to the same game? Would be very helpful if Nextpeer can provide some analysis on that and provide some recommendation.

10 comments:

  1. I see with your latest game that you released you found a way to have both game center and nextpeer together? Man for the life of me I can't figure it out. I've download the game above that you created as well, and ran into the same problem as you that you describe here...

    Any hints? That way I can get it going in my game that I created? :)

    Thanks, PS. I enjoy reading majority of your posts. Very informative!

    ReplyDelete
  2. Hi! Thanks for your comment. My first published game actually uses cocos2d, so not sure if still applicable, however the 2nd one I am still working on is pure cocoa, so if you can provide further info may be I can help.

    The other option is ask Daniel/Nextpeer (daniel@Nextpeer.com), he helped me with lots of problems and should be able to point you to the right direction as he is the expert.

    Technically game center and Nextpeer are not quite the same. You normally have a few buttons at the main menu to display leaderboard and achievement for game center, and when game ended you submit score and achievement progress to game center. Quite simple, in my opinion unless you are using other more advanced features such as find friends, ...etc.

    Nextpeer is slightly more complicate for those not familiar with the flow, as you are handing over the flow control to an external party using delegate. Your game could end before the tournament time finish, or vice versa, plus your player might click on "play again" inside Nextpeer to restart another game, so you have to cover all these situations. And you also have to submit score to Nextpeer after the end of each game.

    Please provide more info about your problem. Thanks!

    ReplyDelete
    Replies
    1. Hey, sorry I should have clarified. My game is also a "non cocos" game. I didn't realize your latest game was a cocos game, I got confused there for a second :)

      I see that you got some progress for the "non cocos" platform. Since it looks like you have more experience than I, did you ever get game center and nextpeer working on your follow me non cocos game?

      For some reason I can't get either of them to work properly. The closest I've come to exactly what you described as "when I started a new tournament, found that the game still shows the last screen of the previous tournament and the score wasn't reset".

      Anyways, just wondering if you have tried since to try and implement either on a non cocos game?

      I appreciate your response above. thanks again.

      Delete
  3. Hi, try this:

    (1) add "nextpeerDidTournamentEnd" as shown below in your appdelegate. It gets called when Nextpeer tournament ended, that is, your game been forced to end. Perform all required activities when game ended in there. Also, if you have 2 view controllers like me (one for main menu control, one for game control), then you can also switch back to menu view controller in there.

    -(void)nextpeerDidTournamentEnd {

    // do all relevant activities when game ended here

    // if have multiple view controller, call menu viewcontrooler method which switch back to menu viewcontroller, e.g. dismissModalViewControllerAnimated

    }

    (2) I use logic like below to handle cases when user ended one nextpeer game, then click on "play again" within nextpwwe to start another one, without returning to your main menu controller.

    In "nextpeerDidTournamentStartWithDetails" of your appdelegate, as shown below, assuming you are using similar "game state" looping controller like mine. The main game loop control logic can then handle whatever special changes required for that situation.

    -(void)nextpeerDidTournamentStartWithDetails:(NPTournamentStartDataContainer *)tournamentContainer {

    //if nextpeer game ended and user clicked "play again" in nextpeer menu
    if (currentGameState==kGameStateNextpeerForcedGameOver) {
    //do something

    //change game state
    currentGameState=kGameStateNextpeerPlayAnotherNewGame;
    prevGameState=kGameStateNextpeerForcedGameOver;

    } else {

    //Start your game normally

    }
    }

    Hope this helps!

    ReplyDelete
    Replies
    1. Thank you sooooo much. Will try when I get home and will keep you posted.

      Delete
    2. No problem, let me know how it goes. Still got Daniel/Nextpeer as backup if my tips still can't fix it :-)

      Delete
  4. Hahah. Thanks. I still haven't had a chance to sit down and parse the code you provided. But will keep ya posted :)

    ReplyDelete
  5. YESSSSSS!!! THANK U THANK U! I got it thanks to your help!!!!! To be honest I can't get both game center and nextpeer to work together. But thats ok. I might go with game center instead. I did enjoy the challenge of actually getting nextpeer to work, and my game is really not up to par for nextpeer mores so with game center.

    Got a quick question for you.. The game above, did you ever put game center in there to actually work with a scoreboard? If you did, did you ever post a project file of it with the game center?

    And I promise I'll leave ya alone, I honestly do appreciate all your hard work and how you demonstrate with projects how to do things!! I visit your website on daily basis. You should put out a game that costs some cash, I'll be the first to BUY:)

    ReplyDelete
  6. Hi, good to know it's all working. And yes, I got game center leaderboard and achievement as basic functions for all my games now - although only one published and one still work in progress. Game center basic integration is not that hard and you can find tones of info/tutorials on the net and even books on that. It's only when you start with more advance functions then it became more complicate.

    Nextpeer integration is slightly more complicate. Now that you got it working, should consider adding that to all your games too as it improves your user experience a lot.

    My wife is complaining that I should not give away all my games for free too, ha ha, still working on that, will definitely do that in the future, just that haven't work out the best way to handle free vs paid apps plus a the other stuffs. I still got a few other ideas and like to publish a few more games, only if I can have 48 hours a day or can work on this full time....

    Let me know if there's other things I can help, that's what the blog is here for - to share and help and learn!

    Cheers

    ReplyDelete
  7. Excellent ill try it out this weekend. There a lot of guides out there that's for sure.

    Hahah your wife is totally right. Maybe release it for free, gain some positive feedback and then change it to paid? That might work.

    Once again thanks and ill keep my eye on your blog. To me it has been the most helpful tool. Especially when you released small programs, and provided various ideas.

    Again much thanks for everything!

    ReplyDelete