Jump to content


Photo

Clockwork - Free Online Highscores and Stats


  • Please log in to reply
198 replies to this topic

#21 Docopoper

Docopoper

    You are observant!

  • GMC Member
  • 1287 posts
  • Version:GM:Studio

Posted 17 November 2010 - 03:22 PM

I know, ok - i'l build other parts of my project now:

The format that would be best would be:

1) an id - so you can for-loop levels into memory. Make the id automatically put onto the end.

2) a name - allowing you to search for a level by name.

3) a big heaping pile of binary code, guess what this is.

4) Tags: you should be able to add tags to the functions that find levels, and levels that have none of these tags are ignored.

Is the main problem the amount of space a level would take up on the server? or is it just technical difficulty. (I will optimise the storage anyway - you could even make it so that people need to PM you to use it, and send you their format if space is the issue)
  • 0

#22 Jub Jub

Jub Jub

    GMC Member

  • GMC Member
  • 15 posts

Posted 17 November 2010 - 06:11 PM

I know, ok - i'l build other parts of my project now:

The format that would be best would be:

1) an id - so you can for-loop levels into memory. Make the id automatically put onto the end.

2) a name - allowing you to search for a level by name.

3) a big heaping pile of binary code, guess what this is.

4) Tags: you should be able to add tags to the functions that find levels, and levels that have none of these tags are ignored.

Is the main problem the amount of space a level would take up on the server? or is it just technical difficulty. (I will optimise the storage anyway - you could even make it so that people need to PM you to use it, and send you their format if space is the issue)


A bit of technical difficulties. Right now all the data is being sent in the URL, and that is limited in the number of characters that can be submitted. I think that I will have level data be submitted via the header request, rather than the url, so that more information can be put in the request.

I will definitely implement tags. I also want to put in tags for highscores as well.

I probably will also implement a voting/flagging system, so that you can determine the best and the worst, and also find ones which are offensive.

Here is a question for you game developers out there: how big are your level files?
  • 0

#23 CES

CES

    GMC Member

  • New Member
  • 26 posts

Posted 17 November 2010 - 06:35 PM

Nice layout and site design but it looks so easy to hack and DDOS. Can i recommend a CAPCHA feature you add because with abit of work someone could create 1000+ accounts and submit 100000000000000 highscores slowing your service to a stop.

Just a few ideas i might go and test :)
  • 0

#24 Docopoper

Docopoper

    You are observant!

  • GMC Member
  • 1287 posts
  • Version:GM:Studio

Posted 17 November 2010 - 06:44 PM

I have not designed the format: but I a actually want to put models up (I'm making a sort of model editor). The format will most likely go like this:

<header - undecided but small>

XXYYZZNXNYNZPPPPTXTXCLALB (25bytes)

that sort of number with a little extra for each vert, maybe 300 verts (roughly 7500 bytes and a header)

cant realy be much less, I'm using shorts, and that's the least I can realisticaly.

Edited by Docopop.co.uk, 17 November 2010 - 06:47 PM.

  • 0

#25 Jub Jub

Jub Jub

    GMC Member

  • GMC Member
  • 15 posts

Posted 17 November 2010 - 07:09 PM

Nice layout and site design but it looks so easy to hack and DDOS. Can i recommend a CAPCHA feature you add because with abit of work someone could create 1000+ accounts and submit 100000000000000 highscores slowing your service to a stop.

Just a few ideas i might go and test :)


In terms of hacking, I'm pretty sure that it is difficult. I use md5 digests along with a secret password unique to each game to encrypt both a token that only works once, along with all the other data. When I add level sharing, the md5 of the level will also be verified, so that you can't intercept a clockwork request in transit and change the level.

It would be easier just to decomplile the game, or memory-edit it. I posted an article about how to prevent memory editing earlier in this thread, and there is an anti-decompliler that someone else made which can help.

But hey, I'm not perfect at all, and there might be an exploit somewhere in clockwork. Feel free to PM me if you find one.


On the topic of DDOSing, ANY site can be DDOSed, and it is basically impossible to set up safeguards against it. Perhaps you are talking about DOSing, from one computer, which is fairly easy to detect.

If people start mass-registering accounts, I will add a CAPTCHA, but right now I'm trying to work on other portions of the site.


I have not designed the format: but I a actually want to put models up (I'm making a sort of model editor). The format will most likely go like this:

<header - undecided but small>

XXYYZZNXNYNZPPPPTXTXCLALB (25bytes)

that sort of number with a little extra for each vert, maybe 300 verts (roughly 7500 bytes and a header)

cant realy be much less, I'm using shorts, and that's the least I can realisticaly.


That's not too much. I might do something like 80 kilobytes max per file, would that work? Perhaps I would increase it on a case-by-case basis.

-Robert

Edited by Jub Jub, 17 November 2010 - 07:10 PM.

  • 0

#26 Docopoper

Docopoper

    You are observant!

  • GMC Member
  • 1287 posts
  • Version:GM:Studio

Posted 17 November 2010 - 08:20 PM

that's good, so I could use much more precision and verts, yay!


if I use:


XXXXYYYYZZZZNXNXNYNYNZNZPPPPTTCLAB (34 bytes)


I can get 2323 verts and a 1kb header! (not that I'l need a 1kb header)
  • 0

#27 Jub Jub

Jub Jub

    GMC Member

  • GMC Member
  • 15 posts

Posted 24 November 2010 - 03:11 AM

Clockwork just got updated. Here is a rundown of the new changes:

- Added embedding functionality, so you can embed your games on your website.
- Added the ability to delete highscores, as well as view the timestamp of the highscores.

Additionally, I switched from mysql to mysqli, so everything should run a bit faster. Sorry about the long waits during the games, but I am on a shared server (due to budget limitations), which is sluggish at times. Additionally, the servers are in texas, so you international users will have an ever more difficult time accessing the servers.
To combat the speed issues, I will eventually write my own DLL, so that the stats and highscores are sent in the background, without pausing the game. This will also allow you to add loading animations for highscore tables.

Also, if you notice some more stuff around the site about highscore "tags", ignore them. Soon, you will be able to give each highscore a set of tags, and then only load highscores with a specific tag. This allows you to easily have different highscores for each level.

If you experience any bugs or issues with the new update, send me a PM!

-Robert
  • 0

#28 A saurus1

A saurus1

    GMC Member

  • Sandbox Moderators
  • 1591 posts
  • Version:GM8.1

Posted 07 December 2010 - 05:18 PM

Please add tags soon.

BTW, this seems to be much faster and cleaner than the old GMH system. Good job (I'm using it for Neuculi now).

Question: Is there a page you can send players to to view the highscores online, not in the game itself? I know there was with GMH, but does Clockwork have anything like that?

Suggestion: Allow the designer to choose whether to display empty entries as 0s, or simply have cw_highscore_get() not return empty entries and instead return (from the function) either the number of entries it did retrieve, or substitute a custom message for the empty entries.

Edited by A saurus1, 07 December 2010 - 05:23 PM.

  • 0

#29 Docopoper

Docopoper

    You are observant!

  • GMC Member
  • 1287 posts
  • Version:GM:Studio

Posted 07 December 2010 - 05:31 PM

so, level sharing? what priority is it?

also - How much is hosting this costing you? (just curious)
  • 0

#30 Jub Jub

Jub Jub

    GMC Member

  • GMC Member
  • 15 posts

Posted 07 December 2010 - 07:51 PM

Please add tags soon.

BTW, this seems to be much faster and cleaner than the old GMH system. Good job (I'm using it for Neuculi now).

Question: Is there a page you can send players to to view the highscores online, not in the game itself? I know there was with GMH, but does Clockwork have anything like that?

Suggestion: Allow the designer to choose whether to display empty entries as 0s, or simply have cw_highscore_get() not return empty entries and instead return (from the function) either the number of entries it did retrieve, or substitute a custom message for the empty entries.

Tags actually are implemented already! You can find out more at http://wiki.madewith...rk.com/wiki/Tag.

There is also an undocumented function called cw_highscore_count() that returns the number of results in the most recent request. This function is also explained on the wiki.


so, level sharing? what priority is it?

also - How much is hosting this costing you? (just curious)


If you want me to develop a feature faster, give it votes on the idea forum. Level sharing currently has 0 votes.

About 7 USD a month for hosting, plus domain name costs.

~Robert

Edited by Jub Jub, 07 December 2010 - 07:52 PM.

  • 0

#31 A saurus1

A saurus1

    GMC Member

  • Sandbox Moderators
  • 1591 posts
  • Version:GM8.1

Posted 07 December 2010 - 09:48 PM

There is also an undocumented function called cw_highscore_count() that returns the number of results in the most recent request. This function is also explained on the wiki.

Are you talking the number of actual entries or just the number that you put into the cw_highscore_get() function?
  • 0

#32 Jub Jub

Jub Jub

    GMC Member

  • GMC Member
  • 15 posts

Posted 08 December 2010 - 12:05 AM


There is also an undocumented function called cw_highscore_count() that returns the number of results in the most recent request. This function is also explained on the wiki.

Are you talking the number of actual entries or just the number that you put into the cw_highscore_get() function?

It's just the number that you put in, however, if you ask for 20 highscores, and there are only 10 in the game, than cw_highscore_count will return 10, because cw_highscore_get returned 10.
  • 0

#33 A saurus1

A saurus1

    GMC Member

  • Sandbox Moderators
  • 1591 posts
  • Version:GM8.1

Posted 08 December 2010 - 11:47 AM

Cool! Do you have like a high-res logo for the site that I could use in my highscores to say something like: Made with Clockwork.
  • 0

#34 Jub Jub

Jub Jub

    GMC Member

  • GMC Member
  • 15 posts

Posted 09 December 2010 - 03:09 AM

Cool! Do you have like a high-res logo for the site that I could use in my highscores to say something like: Made with Clockwork.


Sure! What resolution? I can also give you the .svg, if you want.

~Robert
  • 0

#35 A saurus1

A saurus1

    GMC Member

  • Sandbox Moderators
  • 1591 posts
  • Version:GM8.1

Posted 09 December 2010 - 11:26 AM

Ooh, svg would be nice. You should add a copyright symbol to it though, if you don't already have one.

Question: Is there a page you can send players to to view the highscores online, not in the game itself? I know there was with GMH, but does Clockwork have anything like that?

Edited by A saurus1, 09 December 2010 - 12:14 PM.

  • 0

#36 Jub Jub

Jub Jub

    GMC Member

  • GMC Member
  • 15 posts

Posted 09 December 2010 - 06:32 PM

Ooh, svg would be nice. You should add a copyright symbol to it though, if you don't already have one.

Question: Is there a page you can send players to to view the highscores online, not in the game itself? I know there was with GMH, but does Clockwork have anything like that?


Not sure where you live, but in the US, you can't copyright logos, you have to trademark them, which is kinda a painful process. :P

I'll get the svg for you when I get home, in about 6 hours.

The closest thing to an online table is the "embed" function. If you want me to create a proper online highscore table, suggest it at http://clockwork.uservoice.com, and I'll get to it soon.

~Robert
  • 0

#37 A saurus1

A saurus1

    GMC Member

  • Sandbox Moderators
  • 1591 posts
  • Version:GM8.1

Posted 09 December 2010 - 06:45 PM


Ooh, svg would be nice. You should add a copyright symbol to it though, if you don't already have one.

Question: Is there a page you can send players to to view the highscores online, not in the game itself? I know there was with GMH, but does Clockwork have anything like that?


Not sure where you live, but in the US, you can't copyright logos, you have to trademark them, which is kinda a painful process. :P


Really? I thought that US copyright law said that anything that you make, you can claim copyright on, but you have to register it with the copyright office for it to be official enough to be used in court for anything major.
  • 0

#38 Jub Jub

Jub Jub

    GMC Member

  • GMC Member
  • 15 posts

Posted 09 December 2010 - 09:57 PM



Ooh, svg would be nice. You should add a copyright symbol to it though, if you don't already have one.

Question: Is there a page you can send players to to view the highscores online, not in the game itself? I know there was with GMH, but does Clockwork have anything like that?


Not sure where you live, but in the US, you can't copyright logos, you have to trademark them, which is kinda a painful process. :P


Really? I thought that US copyright law said that anything that you make, you can claim copyright on, but you have to register it with the copyright office for it to be official enough to be used in court for anything major.


I can claim copyright on the exact image, i think, but someone could create something that looks similar anyway, so there isn't much legal protection. Maybe I'm just totally misinterpreting the law....
I'm not going to claim copyright anyway, because I don't really care how you guys use it :)

~Robert

UPDATE:

You can download the Clockwork logo svg files here:
http://external.made...m/clockwork.svg
http://external.made...orkwikilogo.svg

IMPT NOTE: These files use the "nobile" font, available here for free: http://www.fontsquir...om/fonts/Nobile



Edited by Jub Jub, 10 December 2010 - 05:45 AM.

  • 0

#39 Jimmynator

Jimmynator

    GMC Member

  • New Member
  • 178 posts

Posted 26 December 2010 - 03:53 PM

Error 302 'Invalid Checksum'

What did I do wrong?
  • 0

#40 Jub Jub

Jub Jub

    GMC Member

  • GMC Member
  • 15 posts

Posted 02 January 2011 - 05:33 AM

Error 302 'Invalid Checksum'

What did I do wrong?


Not sure. I'll post a tutorial video on youtube by around tomorrow, so you can see if you missed anything.

-Robert
  • 0




0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users