Worldwide, on-line hi-score and times listings?

Got a cool idea that should be in R'n'D? Let's hear it!

Moderators: Flumminator, Zomis

Post Reply
User avatar
bojster
Posts: 458
Joined: Fri Jun 18, 2004 7:42 pm
Location: Poland
Contact:

Worldwide, on-line hi-score and times listings?

Post by bojster »

I'm not following this forum with attention recently, so forgive me if this has already been proposed (or maybe implemented?), but here goes:

I think that on-line hall of fame (would be best if it was connected to the game, so uploading and downloading hi-scores would be automatic) would be a refreshing touch to Rocks'n'Diamonds. For now, the hi-score list is a bit pointless – at least for me, as I am the only player listed there... so I'm not really motivated to play RnD any more. So I was thinking how to change it and I came up with that.

Another thing that I think would be nice is a time table. I mean, hi-scores based on time rather than on points. So there could be two hall of fames: the fastest players for a given level, and players who collected the most points.

Apart from these lists, living in a repository and in game's directory, there could be a summarising list on RnD website, featuring the players who completed the most levels and/or hold the most records.

Just for the consistency, the overall list could concentrate on the official levelsets (distributed with RnD + Contributions).

The biggest problem is that people may cheat for example by editing the levels, so the scores would need some way of validation (maybe based on md5 checksum of a .level file, or I don't know).

I don't think it's urgent, as most people seem to be fascinated with CEs for now, but I would be satisfied if this suggestion was put somewhere on the TODO list (or maybe it's already there, the list may be 1000-lines long for all I know). :-)
Zomis
Posts: 1502
Joined: Mon Jun 21, 2004 1:27 pm
Location: Sweden
Contact:

Post by Zomis »

I think it has been mentioned a couple of times before (maybe also on previous boards), but it's always important to mention again.

Anyways, I agree. It would be a very good feature. And I think it's the same for many people, you're always alone on that highscore list.

I have been thinking about ways to implement this, and it would indeed need an online database. A database and a "score" table with the fields id, level, time, score, tape. How the "level" field should look, I am not sure of (either md5, or an id link to another table with all levels) but I think md5sum would be easiest.
I started RNDDB with the goal to implement this feature some day, but I guess not everyone would use it (And I wonder if anyone would use it, considering the amount of feedback given on RND-utilities). So it would really be best if it was implemented in RND itself somehow. But on that area, I am not sure about how it can be implemented since I'm not a C-programmer.
However, I think a PHP script on artsoft.org connecting to artsoft's mysql-database and the downloading code from HerzAusGold's RnDTest could be useful.

A problem could be users with a non-permanent internet connection.
HerzAusGold
Posts: 362
Joined: Sun Sep 25, 2005 4:41 pm
Location: Germany

Post by HerzAusGold »

It should be possible to fill up a PHP form with libcurl .
May be have a look to the doc here:
http://curl.haxx.se/libcurl/c/curl_formadd.html

A "sync" command should be usefull for users which are not have/want a permanent connection.
And the answer is ... 42 !
User avatar
Holger
Site Admin
Posts: 4073
Joined: Fri Jun 18, 2004 4:13 pm
Location: Germany
Contact:

Post by Holger »

bojster:

> if this has already been proposed

Probably yes... :-)

> (or maybe implemented?)

Unfortunately not yet!

> I think that on-line hall of fame (would be best if it was connected to the
> game, so uploading and downloading hi-scores would be automatic) would
> be a refreshing touch to Rocks'n'Diamonds.

Definitely true! (At least I also think so.)

> For now, the hi-score list is a bit pointless

Well... yes. At least on single-user systems...

> so I'm not really motivated to play RnD any more.

A bit off-topic here, but I'm just curious: Is your main motivation really making high scores, but not playing and solving a tricky level? In any case, a world-wide high score list would probably add a lot motivation to solve a certain level -- I can perfectly understand this.

> Another thing that I think would be nice is a time table. I mean, hi-scores
> based on time rather than on points. So there could be two hall of fames:
> the fastest players for a given level, and players who collected the most
> points.

Good point, but I think that a "fastest players" list is far more in danger of being manipulated with than a normal high scores list, as you could simply use the infamous "single step" mode to record a "perfect timing" tape -- there is one solution tape of a certain level in "Snake Bite" (don't know which one at the moment -- Alan?) that was recorded in single step more and looks just terribly complicated to play! :-D

I could prevent making high scores with single step mode on, but as R'n'D is an open source game, changing this in a way that cannot be detected by looking at the final tape is just too easy. :-/

> Apart from these lists, living in a repository and in game's directory, there
> could be a summarising list on RnD website, featuring the players who
> completed the most levels and/or hold the most records.

Yep!

> Just for the consistency, the overall list could concentrate on the official
> levelsets (distributed with RnD + Contributions).

Probably yes -- plus all sets featured on the "official" "Levels" section on my site (to include jewels like "BD2K3" and "jue" etc. sets).

> The biggest problem is that people may cheat for example by editing the
> levels, so the scores would need some way of validation (maybe based on
> md5 checksum of a .level file, or I don't know).

Nice idea, but this can all be hacked, so it will be easy to edit the level, record the tape (with giant high score) and provide a correct level MD5 anyway -- the "open source problem". ;-)

But there's a better way: Tape validation! Just use the command-line "autoplay" function and see if it says "solved" when played against the original level (all done on the high score server, with game windows deactivated, of course). This should be done to ensure that the "proof tape" that is submitted together with the score is not faked. (This still does not help against single step mode cheating, of course.)

> I would be satisfied if this suggestion was put somewhere on the TODO list

It's already there, as I really like the idea! And it's probably relatively easy to implement, too! The main problem (besides freetime and many other cool ideas waiting to be implemented) is that the current server does not have enough power for on-the-fly validation of tapes -- this sucks away 100% CPU time on the server, which is shared with some other people and services. The new server (already waiting in the rack for the relocation of www.artsoft.org) has more than one CPU, so this would be possible without disturbing the other people and services too much! :-)

Zomis:

> I have been thinking about ways to implement this, and it would indeed
> need an online database.

Yep! The existing MySQL database is already waiting for it! :-)

> However, I think a PHP script on artsoft.org connecting to artsoft's
> mysql-database and the downloading code from HerzAusGold's RnDTest
> could be useful.

That's exactly what I though when reading bojster's post (and also when thinking about a world-wide high score server before)! :-)

> A problem could be users with a non-permanent internet connection.

Also easily solvable: Make an "outgoing" directory to store scores that cannot be submitted and a setup function "submit stored scores now" -- that's it!
User avatar
bojster
Posts: 458
Joined: Fri Jun 18, 2004 7:42 pm
Location: Poland
Contact:

Post by bojster »

Holger wrote:> if this has already been proposed

Probably yes... :-)
Now that I think of it, even I probably wrote about it at least once in the past... ;-)
A bit off-topic here, but I'm just curious: Is your main motivation really making high scores, but not playing and solving a tricky level? In any case, a world-wide high score list would probably add a lot motivation to solve a certain level -- I can perfectly understand this.
My main motivation is of course solving the level, but as I am recently playing Enigma 1.00 that finally features a world-wide score table, I can easily tell the difference between *just* solving the level and solving the level *and* beating somebody else's highscore (or even a predefined level par!). Another thing is that I solved most of the levels in my level/ directory, probably including 95% of the tricky ones... ;-)
Nathan H.
Posts: 74
Joined: Mon Sep 10, 2007 8:03 pm
Location: USA

Post by Nathan H. »

This is a great Idea, we should get it done, but what about levels like pac-man? crowded list! Maybe it shouldn't display two scores by the same person but instead just his/her highest score. I like the idea of having a 'par' score too.
Post Reply