Not logged inOpenClonk Forum
Up Topic General / General / The league code
- - Date 2013-01-01 12:19
Parent - - By B_E [de] Date 2012-11-14 16:04
I had actually reverse-engineered most of it and could put my dummy code up (at least up to the point calculation) but yes, having an open account system is one of the major problems when thinking about a new melee league (point boosting...).
Parent - By Maikel Date 2012-11-14 16:29
I think we should go for it anyway, and try to address issues as they appear. Settlement league is still realizable without point boosting if the scoring is implemented slightly different.
Parent - - By Sven2 [de] Date 2012-11-14 16:38
There's no need to guess; PeterW and I have access to the clonk.de league code.
Parent - - By PeterW [gb] Date 2012-11-14 17:45
As well as Clonkonaut, who asked me for it. He mentioned thinking about doing something with it, haven't really heard anything since though.

I'm still not sure I like the thought of trying to re-implement it. While there's a number of problems with it, there's a *lot* of work in there, especially on making it scale.
Parent - - By B_E [de] Date 2012-11-19 12:36
...can the code be licensed and made openly available, or is it intelectual property of RWD? A future version or iteration of the OpenClonk masterserver might benefit from it, I guess.
Parent - - By Zapper [de] Date 2012-11-19 12:49
One important point for matthes when releasing the CR code was that noone could reverse-engineer CR hacks (compile own version with working netcode f.e.) etc. from it.
So I am not sure whether he would want the masterserver code open.
Parent - By PeterW [gb] Date 2012-11-19 12:51
Well, we could remove that particular part for a hypothetical public release - I'm surprised nobody figured it out by now anyway.
Parent - - By PeterW [gb] Date 2012-11-19 12:50
Well, the general worry is that opening the source will put the running league at greater risk. Security by obscurity and everything - unsatisfying, but it's a factor.

Now that the Clonk league is a bit in decline, we could probably arrange to show the source code to more people though. Hm.
Parent - - By knight_k [de] Date 2012-12-31 14:19

> While there's a number of problems with it, there's a *lot* of work in there, especially on making it scale.


yep.

> Well, the general worry is that opening the source will put the running league at greater risk. Security by obscurity and everything - unsatisfying, but it's a factor.


Open source code, on the other hand, would allow more people to find and report or fix security issues. But that would at least require more maintenance work on the old CR league...

Anyway, at least for a first iteration, from a practical point of view, is it really necessary to have the league server code in public?
Couldn't we redesign some of the security by obscurity measures that affect both client and server and deploy the rest of the CR league code, making it available to a handful of trustworthy people maintaining it?

When we feel confident that it is a) secure enough even w/o the obscurity and/or b) the CR league became inactive, we could still think about an open source release?

The authentication/multiple accounts/etc. issue still remains though.
Reply
Parent - - By PeterW [de] Date 2012-12-31 22:02 Edited 2012-12-31 22:04
I guess you mean the protection against people mass-uploading bogus references with racial slurs? Right now the OC master server simply hopes that nobody cares about it enough for that to happen again, but I guess when that time comes we'll have to start shipping binaries with magic bits in it. Until that point we'll do without it, for simplicity.

The tricky bit is opening the code, which at this point requires an okay from matthes, which is far from certain. Random idea: If we promised to start running the remains of the CR league as well, matthes would probably be okay with it. Would have the advantage that we wouldn't need to maintain two equivalent league systems, and would maybe allow for some innovation on both sides. Also would allow us to access the CR key DB for falling back to something secure. Still feels like a strange solution though.
Parent - - By Caesar [de] Date 2013-01-01 04:42

>I guess you mean the protection against people mass-uploading bogus references with racial slurs?


Not only that, you can easily gain starter points by creating new league accounts and winning against them.
Parent - By PeterW [de] Date 2013-01-01 12:19 Edited 2013-01-01 12:21
That doesn't really require the engine recognition magic - apart from that without it you could compile the engine yourself, which could certainly make it easier. You could, for example, compile the game without the restriction that you can't have opposing players at one client in league mode. Note though that you would have to complement that with some reference manipulation in order for it not to be easily detectable.
Parent - - By Günther [de] Date 2013-01-19 23:17

> Right now the OC master server simply hopes that nobody cares about it enough for that to happen again, but I guess when that time comes we'll have to start shipping binaries with magic bits in it. Until that point we'll do without it, for simplicity.


There are various other options, though. Like the ability to sort and filter the games in the client according to various criteria. By default we could only list games by accounts that have already joined some games, so anyone who wants to flood with bogus games needs to fake playing the game for a while first. Or sort the games list by the hours the host has already played. With some luck, the scriptkiddies will be delighted enough that they can fill the bottom of the list with spam, and ignore that most people don't notice them.

Or even create a separate list with games from accounts that have donated to the pay-for-the-server-costs fund.
Reply
Parent - - By PeterW [gb] Date 2013-01-19 23:51 Edited 2013-01-19 23:54
Right now we have no way to identify who's hosting - only for league accounts we have something that actually counts as authentication. Whatever we do right now, it would mean banning/deemphasizing by CUID - and there's really nothing stopping people just sending wrong ones they got from legitimate references.

A proper solution here would require some passwords at minimum - or key file auth, with keys we can ban and regenerate. Which would in turn have to be spam-proof...
Parent - - By Günther [de] Date 2013-01-20 22:23

> Which would in turn have to be spam-proof...


Not necessarily. Freshly spammed accounts do not have to have the power to disrupt regular players. Sure, it'd be nice if they also wouldn't disrupt newbies, but those can simply join a few games hosted by regulars and stop being newbies. When and if someone goes to the length of faking lots of games with lots of spammed accounts, we can escalate to the next level of protection.
Reply
Parent - By PeterW [gb] Date 2013-01-21 14:07 Edited 2013-01-21 14:10
Yes - I'm not saying that it's hard. Just that we have to give it a bit of consideration. I was pondering something like requiring an existing forum account (possibly with a "hi!" post) or something.

We will see what seems easiest when the day comes. I still like the security-by-obscurity solution for being the least hassle for players.
- - By Zapper [de] Date 2013-01-20 23:14
To the whole topic:
How do other (OpenSource) games handle spam at their masterserver? That should not be too uncommon, I guess.
Does anyone know?
Parent - - By B_E [de] Date 2013-01-21 14:38 Edited 2013-01-22 00:23
I guess often enough there is no such thing as a masterserver - autodiscovery and direct connects are the usual way, but thinking of many other non AAA-games (OTTD, , Minecraft...), the problem simply doesn't exist without a central discovery location. Otherwise (e.g. the old Nexuiz) I assume the developers didn't care, or hat simple bad-word-filters implemented.

(BTW: nice that we are in http://en.wikipedia.org/wiki/List_of_open_source_video_games)
Parent - By Newton [de] Date 2013-01-21 16:07 Edited 2013-01-21 16:14

>GPLv2
>Clonk clone


Hu?! The license is CC-BY for content and ISC for the code. Also, OC being a clone of the C4-series ist just plain wrong. Edited it.
Up Topic General / General / The league code

Powered by mwForum 2.29.7 © 1999-2015 Markus Wichitill