Support our Sponsors:
Reply
 
Thread Tools Display Modes
  #1  
Old 12-04-2013, 09:21 PM
Broxxar Broxxar is offline
Junior Member
iPad (3rd Gen), iOS 7.x
 
Join Date: Jun 2013
Location: Kingston, ON
Posts: 18
Default Hiscore Lifetime

How long should high scores last? I'm thinking of showing scores for daily bests, weekly bests, and monthly bests.

Should I do annual? Or maybe just all time? If anyone has experience with implementing high scores or just any insight on the matter I'd love to hear it.

Also as a side question, has anyone released a title on iOS that didn't use game center for high scores? I'm planning on rolling with my own SQL/php back end, if only to get cross-platform between android/iOS.

Last edited by Broxxar; 12-04-2013 at 10:18 PM..
Reply With Quote
  #2  
Old 12-05-2013, 07:51 PM
Hendrix Hendrix is offline
Junior Member
iPad 2, iOS 7.x
 
Join Date: Dec 2013
Location: BC, Canada
Posts: 6
Default

I'm facing some of the same questions for my own game so I will chime in with my 2c.

It depends on what kind of high scores you are saving as to how long you should display them for, or how many you should display for that matter. It is a problem I am currently starting to face as more high scores fill my tables, the discrepancies between each score start to narrow. Since I am using time, rather than a numerical score, many overlapping times start to become posted and soon you have 100 people with the same ranking. This could be a non issue for you but something to consider in that you want to have a good level of variance between the scores.

As for the question of how long you should display them for, if I was to implement it this way (high scores are currently permanent) I would most likely go all the way and add a way to filter by daily, weekly, monthly, all time etc. This should be trivial if you are able to implement a way of timestamping when a score was entered.

This leads me into the side question, where I decided to roll my own solution for high scores and other online functions for the exact reason you posted, which is cross platform compatibility. I am releasing for PC, iOS, and Android and, knowing absolutely nothing about php/mysql, decided to just jump in and learn. It was quite trivial setting up a database on my hosting, and most will have guides on how to do this anyways. From there I am simply sending http posts to my site and updating the tables accordingly. The benefit of doing all of this from scratch was the flexibility to add other features such as a level editor where the levels can be sent over to the database in the same way as a high score, as well as the ability to have my own somewhat limited analytics. Just something to consider if you are already doing your own online backend, as its trivial to track other things about your game that can prove quite useful during testing.

If you have any questions about setting up your own backend for high scores, fire away, but its certainly doable and unless you want to be limited by what you can track with gamecenter, is the way to go.
Reply With Quote
  #3  
Old 12-06-2013, 03:56 PM
Broxxar Broxxar is offline
Junior Member
iPad (3rd Gen), iOS 7.x
 
Join Date: Jun 2013
Location: Kingston, ON
Posts: 18
Default

Quote:
Originally Posted by Hendrix View Post
The benefit of doing all of this from scratch was the flexibility to add other features such as a level editor where the levels can be sent over to the database in the same way as a high score, as well as the ability to have my own somewhat limited analytics.
This is awesome. Totally hadn't considered this but eventually I'd like to make a version of the level editor that is accessible to users. Great idea.

I've sort of got mine working the way I want it, and you can check it out here:

http://broxxar.itch.io/banana-blast

Right now the sorting by Bananas or Distance buttons are doing nothing and you just see bananas no matter what. The time buttons on the other hand should be working fine. As you said, it's an easy query change if you just timestamp every score.

I'm still wondering how much value there is in life time highscores. They'd become "stale" in a sense as people learn to max out score based on the artificial score cap enforced by the difficulty curve. Also with short life time on scores, the inevitable cheaters who crack the hash and post phony scores will get filtered out over time (hopefully my system will be secure enough that cheaters are infrequent).

Tacking on extra analytics is also a great idea. I might just do a little bit of that

Thanks for your input. I'm definitely feeling satisfied with the decision to do a custom backend instead of having to implement GameCenter and whatever Android/Play has going on.
Reply With Quote
  #4  
Old 12-06-2013, 07:19 PM
Hendrix Hendrix is offline
Junior Member
iPad 2, iOS 7.x
 
Join Date: Dec 2013
Location: BC, Canada
Posts: 6
Default

Quote:
Originally Posted by Broxxar View Post

I'm still wondering how much value there is in life time highscores. They'd become "stale" in a sense as people learn to max out score based on the artificial score cap enforced by the difficulty curve. Also with short life time on scores, the inevitable cheaters who crack the hash and post phony scores will get filtered out over time (hopefully my system will be secure enough that cheaters are infrequent).
The issue with scores becoming "stale" seems more of an issue for your game (I tried it out briefly, seems like a great mobile time waster) since everyone is competing on one (2 if you could distance and bananas) list. With my game, each level has its own high score table, but the issue still arises on straight forward levels where you have an artificial cap on how fast you can possibly beat the level. Eventually I imagine I'll have hundreds of identical first place times which is why I like your idea of having daily/weekly/monthly/life times.

I want to emphasize that if you are doing your high scores using php/mysql, make sure you use mysql_escape_string (though I think this is depreciated and you should be looking at mysqli now) to prevent injection attacks and some bored kid from blowing up your database.

You can try out my game in my sig (just click play now on the main site if you are lazy and want to play in browser) to see how I use my database. I managed to implement high scores, user created and uploaded tracks, an in game mail system, friends list, cross device syncing, as well as can track everything from how long someone plays to how many times they have played. No doubt about it, rolling your own solution is always the best if you have the tenacity to figure it out.
Reply With Quote
  #5  
Old 12-06-2013, 09:21 PM
Broxxar Broxxar is offline
Junior Member
iPad (3rd Gen), iOS 7.x
 
Join Date: Jun 2013
Location: Kingston, ON
Posts: 18
Default

Ahh thanks for the tip about that deprecated bit of PHP, I'll make a note to revisit that because I definitely used it.

Love your game btw, very original gameplay and great pixel art. I have encountered a little issue with high scores (of all things heh). I got 11.133s on Trial 1-4, which tied me for 3rd overall with 4 other people. The leader board is displaying ranks 1-5, but I've been put in rank 6, so I can't actually see myself on the board.

That aside, this game is great for competitive leaderboards because the optimal strategy isn't always obvious. Let's see how long I hold that 1-5 record of 17.933s
Reply With Quote
  #6  
Old 12-06-2013, 10:48 PM
Hendrix Hendrix is offline
Junior Member
iPad 2, iOS 7.x
 
Join Date: Dec 2013
Location: BC, Canada
Posts: 6
Default

Quote:
Originally Posted by Broxxar View Post
I have encountered a little issue with high scores (of all things heh). I got 11.133s on Trial 1-4, which tied me for 3rd overall with 4 other people. The leader board is displaying ranks 1-5, but I've been put in rank 6, so I can't actually see myself on the board.
Thanks for the heads up on that, I really need to revisit the way I sort and order the scores if I do implement filters for day/week/month etc. By the way, I hadn't actually considered this as a solution to the problem of having tons of identical scores before but your post has inspired me a bit. Would be awesome if anyone else had any insights into how they have handled this sort of thing.
Reply With Quote
  #7  
Old 12-11-2013, 09:16 PM
Toddarooski Toddarooski is offline
Junior Member
iPad mini, iOS 6.x
 
Join Date: Jun 2013
Posts: 3
Default

Full disclosure: I work for Google, so I'm a little biased.

I do want to take a moment and mention that the Google Play Games leaderboards and achievements are available cross-platform. We have both an Android and an iOS SDK that you can use, and we also just released an open-source Unity plug-in, if that happens to be what you're using. We have support for multiple leaderboards and automatically support daily / weekly / all-time leaderboards.

That said, rolling your own using PHP/MySQL can certainly be a lot of fun and a good learning experience. I would watch out for security issues -- sanitize any and all database inputs. And you will run into scalability issues if your game happens to be a runaway hit. But I suppose that's a good problem to have.

Anyway, shameless plug for the Google Play stuff:
* [URL="https://developers.google.com/games/services/android/quickstart"]Android Getting Started[/URL]
* [URL="https://developers.google.com/games/services/ios/quickstart"]iOS Getting Started[/URL]
* [URL="https://github.com/playgameservices/play-games-plugin-for-unity"]Unity Plug-in
[/URL]
Reply With Quote
  #8  
Old 12-17-2013, 01:54 PM
Broxxar Broxxar is offline
Junior Member
iPad (3rd Gen), iOS 7.x
 
Join Date: Jun 2013
Location: Kingston, ON
Posts: 18
Default

Quote:
Originally Posted by Toddarooski View Post
Full disclosure: I work for Google, so I'm a little biased.
Appreciate your honesty! Awesome that this is cross platform and has a Unity plugin. Looks like that plugin was just put on github last week. I'll definitely be taking a look at that later.

I'll probably stick with my current implementation for now but perhaps if I do have a runaway hit with scalability issues this will be a better fit

Thanks for the info!
Reply With Quote
  #9  
Old 12-18-2013, 07:52 PM
Toddarooski Toddarooski is offline
Junior Member
iPad mini, iOS 6.x
 
Join Date: Jun 2013
Posts: 3
Default

Hey, sure thing. Good luck with the database building!
Reply With Quote

Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

Copyright 2012, TouchArcade.com, LLC.

Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2014, vBulletin Solutions, Inc.
Copyright 2008 - 2011, TouchArcade.com. Privacy Policy / DMCA Copyright Agent