In the interest of less typing, first, read my post from last ludum dare on this topic, as it covers 90% of what I want to say right now.
Basicly though, the short of it is, if your game REQUIRES a setup procedure, or requires me to go out and install some other libraries or runtimes on my system itself before I can play, I will (most other people will too) click the “back” button and move on to the next game in the list of 1400. This goes for you too love2d people! (ESPECIALLY love2d people!) Even if i did manage to figure out how to get the mess of severely outdated libraries love uses on my system without destroying my entire OS I would still have to deal with the fact that love versions don’t work with games made in other versions, so no matter which one I install it would only work for half the games! Pack the interpreter for love, it’s a TINY set of executables and libraries, i showed a few people how to do this last LD and it seemed to be a huge success, a lot of people were able to play the game that otherwise wouldn’t have.
To add on to this as well:
* No I will NOT install a different web browser, if your game has issues in firefox I talk about the issues in firefox and rate it based on that, sure chrome may be a better experience in your game but I don’t use chrome. If it has MAJOR issues under firefox i just leave a note saying it doesn’t run on firefox and move on. I’ve seen a lot of instances of people pointing out bugs/lag issues that break the game and the response basicly being “oh…just test it on chrome”
* No, I will not upgrade my system core (libc, libstdc++,etc…) just because you compiled with the latest git version of gcc and don’t want to take 10 seconds to copy those shared object files into the tarball. “just upgrade gcc/libc!” as a fix to get your game working, leaving me with a month worth of tracking down every package that breaks and bug testing all my code against a new gcc version is not going to cut it.
* No, I will not install sun java 7. Seriously, unless you have some sort of HUGE PRESSING REASON to be compiling for sun java 7, set your compile target for java 6, now magially those 90% of users complaining in your games page about “crashes on start” or “wouldn’t run” can run the game just fine! Also stop using the non-standard java extensions for different sound types included in sun and microsoft’s jre’s only, it breaks your game under the default vm’s on android, linux, and basicly any system using anything but those two vm’s
A few extra tips to add on to the ones in the linked post:
* Linux Games: on top of what i already posted last LD (READ THAT POST!!!) another common mistake i’m noticing is distributing the linux games in zip files. Remember, zip does not preserve permissions! This means that your executable files will not be executable after download, and you simply have to hope that the user knows how to re-flag the file executable. (you’d be surprised! linux is far more mainstream now, the majority of users do NOT know why that file “just wont run”…even in something here like LD) . The preferred distribution format is .tar.gz , i don’t know offhand the gui programs for linux that can create them but even from a shell it’s as simple as
tar -pczf filename.tar.gz /folder/path
* Naming your links: Please stop simply calling everything “web” it makes filtering for platforms next to impossible, and LD’s search function next to useless. At least make them say, “web(html5)” or “web(unity)” so that when i’m browsing html5 games on my android or such every other “web” link isn’t silverlight or unity telling me “lol…i trolld you, i don’t have a web plugin that works on your device!”. There’s also quite a few games that named their links “windows” “mac” “linux” and all three of them point to a windows executable, sometimes with a blurb that it “hopefully” works under WINE.
* Don’t put things like “sorry linux users” “sorry mac users” “maybe next time i’ll do html5″ or things like that in your description text, it makes your game come up when filtering for those platforms and makes the ludum dare search feature entirely useless.
* Make sure your zip/tarball has a well named folder your entire game is contained under in it, do not have all your files simply sitting on the top level. there’s 1400 games to test, most games do this properly but a few still do not, if you dont contain your stuff in a folder it will happily unzip all your files all over other peopel’s test directories, generally containing other games we’re testing or want to keep around to try farther/review, and now instead of just having a folder to remove i get to hunt and peck files, sometimes hundreds of them, from the main directory trying not to delete the ones i meant to keep…