[DRAFT] Rules clarifications and updates
Wednesday, April 11, 2012 - 17:42
Note: These rules are under discussion, and are not official until they appear on the official rules page.
Derivative works:
- Both code and art may be derivatives of other peoples' works (provided the license of the original allows it).
- Derivative works will be judged on how much they transofrm the original work; adding a moustache to the Mona Lisa will get you credit for the moustache, not the Mona Lisa as a whole. ;)
- If you are submitting a derivative work, you must provide a link to the original with your submission. Failure to do this will result in your work being disqualified.
Code submissions:
- Code entrants will be required to provide any existing source code they are going to use one week before the start of the coding portion of the contest. The source code will be linked and listed publicly on the contest site at the beginning of the contest so that all entrants have access to it.
- The LPC staff release a list of "obvious" FOSS libraries (such as SDL, SFML, pygame, etc) that are well known. It won't be necessary to list those in advance if you're using them. (We'll be happy to update this list as people suggest libraries.)
- Your code must be hosted on a version control system. You may host it privately if you wish, but you must allow one or more LPC staff read access to your repository. (This is to prevent cheating by developing code early and not releasing it -- it's difficult to fake a commit log in a way that would stand up to close scrutiny.)
Judges:
- All judges will be expected to run a modern flavor of 32- or 64-bit GNU/Linux in addition to whatever other platforms they have available (these will likely include Ubuntu, Fedora, and Debian, although the final list will be announced later).
- Judges will be expected to have working OpenGL drivers installed.
- Judges will provide a list of ther system specs (OS+distro, graphics hardware, CPU, etc) prior to the start of the contest. This includes game-related peripherals, such as gamepads, etc.
- In the event of a conflict of interest with a particular judge (prior relationship with a participant, participant making use of judge's code), the judge will recuse themselves from judging that particular entry and no score will be averaged in from that judge. (That is, if due to a conflict of interest a judge can't judge your submission fairly, you will not be penalized).
- If your entry does not run on a judge's system due to incompatibility with a proprietary library (such as a proprietary OpenGL driver), that judge's score will not be factored in. (That is, for example, if your code works with the FOSS Intel or ATi OpenGL drivers but not with the proprietary Nvidia drivers, you will not be penalized. You will also not be penalized for any additional effort required to get your code working on those drivers.)
- Judges will not discuss entries (except for instructions to get them to work, if necessary) until after they have made their final judgements for those entries.
Great idea for a contest! I just read the rules. Being hypothetically bad I figured that I might provide my source-code that exists before the contest starts in obfuscated way. I'd generate a million lines of useless code and hide my all-ready-made game between these lines. Later I'd just call the methods that others could never find. I doubt anybody would do that actually, but just food for thought.
Maybe it might be a good idea to include a generic clause that forbids cheating in any form? The rule should probably include that judges should uniformly agree on that it is actually cheating in case by case bases. Good luck with the contest.
I'm not very good at grammar but I have a few things to point out. I'll bold the changes.
Code rule #1 might be better as:
Code entrants will be required to provide any source code they are going to use that was existant before the code contest started.
Code rule #2
The LPC staff will release a list of "obvious" FOSS libraries (such as SDL, SFML, pygame, etc) that are well known.
Is it just me, or are code rules 1 and 3 about the same thing? I would combine them and move it below rule #2.
Judges rule #5 says: You will also not be penalized for any additional effort required to get your code working on those drivers.
I'm confused. Who's effort are we talking about here? Do you get extra credit if you make it work for those proprietary drivers as well?
The description talks about the judges' scores being averaged. Will they be normalised to the same mean and standard deviation first? This becomes particularly relevant if a judge does have to recuse himself from judging a game.
That's a good question. In retrospect, if a judge recuses temselves from scoring a particular game, the scores would pretty much have to be normalized in order to be far. So the answer is yes, if it comes to that. (Now, in the event that no judge needs to recuse themselves from judging a particular work, for simplicity's sake, we won't.)
Some questions:
> Code entrants will be required to provide any existing source code they are
> going to use one week before the start of the coding portion of the contest.
> The source code will be linked and listed publicly on the contest site at the
> beginning of the contest so that all entrants have access to it.
Generally, I like to make things up as I go along. So if I do not know in advance what I will be going to use (especially one week before knowing what art actually is there to build upon), but am confident that it will be packaged in Debian (or else I won't bother with it), is it OK to just mention Debian as a whole? For providing the source code, is a link to www.debian.org sufficient?
> Your code must be hosted on a version control system. You may host it
> privately if you wish, but you must allow one or more LPC staff read access to
> your repository. (This is to prevent cheating by developing code early and
> not releasing it -- it's difficult to fake a commit log in a way that would
> stand up to close scrutiny.)
Fair enough. Will the LPC provide such a repository or do I have to find a service elsewhere?
If (in the code phase) I use low quality (e.g. not consistent with LPC style or just generally ugly) art from the art phase, will it count against me?
For the coding portion of the contest, you mention that HTML5+Javascript games are allowed. Are tools like Construct 2 allowed to be used? The exported code is obviously available to whoever wants it, but the source files required would presumably be the project files that the program uses. The program only runs on windows, so I'm assuming that it won't be allowed?
I'm guessing not, since in that case, your Construct 2 project is your "original" source and the resulting javascript is just generated code.
Bart
I'm assuming libraries we use can be any open source license? For example, of the 2 libs I'd like to use, one is MIT and the other LGPL
That is correct, yes. :)
@ Anonymous. If it's going to be packaged in Debian then it would be nice to give the PTS (Package Tracking Service). Something like http://packages.qa.debian.org/0/0ad.html
Having said that for Debian packaging you would have to atleast give the source URL which *usually* is hosted somewhere else. For e.g. this is of 0ad .
$ aptitude show 0ad
Package: 0ad
State: installed
Automatically installed: no
Version: 0~r11863-2
Priority: optional
Section: games
Maintainer: Debian Games Team <pkg-games-devel@lists.alioth.debian.org>
Architecture: amd64
Uncompressed Size: 8,458 k
Depends: 0ad-data (>= 0~r11863), 0ad-data (<= 0~r11863-2), gamin | fam, libboost-signals1.49.0 (>= 1.49.0-1), libc6 (>= 2.11), libcurl3-gnutls (>= 7.16.2), libenet1a, libgamin0 | libfam0, libgcc1 (>= 1:4.1.1), libgl1-mesa-glx | libgl1, libjpeg8 (>= 8c), libmozjs185-1.0 (>= 1.8.5-1.0.0+dfsg), libnvtt2, libopenal1, libpng12-0 (>= 1.2.13-4), libsdl1.2debian (>= 1.2.11), libstdc++6 (>= 4.6), libvorbisfile3 (>= 1.1.2), libwxbase2.8-0 (>= 2.8.12.1), libwxgtk2.8-0 (>= 2.8.12.1), libx11-6, libxcursor1 (> 1.1.2), libxml2 (>= 2.7.4), zlib1g (>= 1:1.2.0)
PreDepends: dpkg (>= 1.15.6~)
Description: Real-time strategy game of ancient warfare 0 A.D. (pronounced "zero ey-dee") is a free, open-source, cross-platform real-time strategy (RTS) game of ancient warfare. In short, it is a historically-based war/economy game that allows players to relive or rewrite the history of Western civilizations, focusing on the years between 500 B.C. and 500 A.D. The project is highly ambitious, involving state-of-the-art 3D graphics, detailed artwork, sound, and a flexible and powerful custom-built game engine.
Homepage: http://www.wildfiregames.com/0ad/
Tags: game::strategy, implemented-in::c++, interface::x11, role::program, uitoolkit::sdl, uitoolkit::wxwidgets, use::gameplaying, x11::application
Now as far as hosting the code is concerned, there are many places. Here's such a list from Wikipedia with some comparitive analysis at https://en.wikipedia.org/wiki/Comparison_of_open_source_software_hosting...
Of course, it could be argued that if you are into distributed development then nothing beats either github or gitorious (depending on your experience with them.)