Fun Coding Competition

Pages: 12
So how is a person that isn't familiar with coding going to build the library, compile against it, and then play it.


Why is someone not familiar with coding going to be involved in a programming contest? ;)
His point was someone not familiar with coding needn't compile SFML in order to build the game if someone else supplies it. For instance, if someone were to sit down at your computer and play the game after you built it (perhaps inside your house) that person would not have to be familiar with coding. Or, I don't know.. maybe they downloaded a pre-built binary or had one emailed to them. The possibilities are staggering with this interwebs thing.
When is the last time you just downloaded and ran a binary file that someone claimed was a game or program you requested? With viruses, spam, and malware, even when it comes from the creator, people are weary of them and may not attempt to run it.

Again he is assuming we have friends that like to play games. I don't because I got fed up with them thinking I was their personal game developer. There is a second reason, but that is more personal, the ones I did have thought I was dumb for marrying someone with a disability so I stopped talking to them.
When is the last time you just downloaded and ran a binary file that someone claimed was a game or program you requested?

About a month ago.

I think I have a solution. Everyone provides their code and a link to their binary file and its MD5 checksum. Those who know how to compile the project can compile the code and check the MD5 checksum, thus verifying its security.

A possible problem I can foresee, but have no knowledge on if it actually it is a problem or how to fix it is that different machines (i.e. same OS and architecture, maybe different compilers) will produce different binaries.
What architectures should we provide for then?

The following seem reasonable to me

Windows 32
Linux x686

After all, does anyone really need a 64-bit toy game? Or an ARM binary?
(I won't support OS X at this time, but not because I don't want to.)

[edit]
That said, I don't think it is reasonable to require binaries.
This is, after all, a programming forum.
Last edited on
@Script Coder
Umm...I'm pretty sure that if you compile the same source code twice in a row (even with the same flags and all), you'll get a different file each time.

Or at least that's the case for me (Windows, using MinGW GCC 4.8.1):
C:\>type testhi.cpp
#include <iostream>

int main()
{
    std::cout << "Hi there!";
}

C:\>g++ -O2 testhi.cpp -o testhi.exe

C:\>g++ -O2 testhi.cpp -o testhi2.exe

C:\>fc /b testhi.exe testhi2.exe
Comparing files testhi.exe and TESTHI2.EXE
00000088: F1 F9
000000D8: C6 CE

C:\>

So I don't think that solution will work.
Last edited on
cire wrote:
About a month ago.

You are far more trusting than anyone I know.

Mats wrote:
Why is someone not familiar with coding going to be involved in a programming contest? ;)

Well my remark was to giblit's comment of this:
giblit wrote:
So if someone else would like to try it but isn't as familiar with coding and can't figure out the controls.

Though, after thinking about it this morning, you are right Mats, this is a programming site so the chances of a user no knowing how to build SFML or read the code is slim.

@Script Coder
That is a great solution, but I hate that you went through the trouble of thinking of it because giblit's concern about users not being able to read code is kind of baseless on a competition at a programmer site.
Last edited on
Duoas wrote:
What architectures should we provide for then?

The following seem reasonable to me

Windows 32
Linux x686

I see that as reasonable, although considering I am not taking part my say is worthless.

long double main wrote:
@Script Coder
Umm...I'm pretty sure that if you compile the same source code twice in a row (even with the same flags and all), you'll get a different file each time.

Try compiling without optimisations as I think there are some probability and other heuristics that can give different results when compiled.

BHX Specter wrote:
That is a great solution, but I hate that you went through the trouble of thinking of it because giblit's concern about users not being able to read code is kind of baseless on a competition at a programmer site.


It was the first thing I though of after reading the thread, so no trouble spent. Also, the solution could be applied to other scenarios as it is not specifically designed for this contest or problems thereof,
Try compiling without optimisations as I think there are some probability and other heuristics that can give different results when compiled.

Same result -- the files are ever-so-slightly different, but still different nevertheless.
@long double main: I think it's related to timestamps.
GCC is designed to produce different binary signatures each time you compile.
So anytime between now and the 28th and has to be C++/SFML? Maybe I'll try to make time to learn it. I can take time off of my current projects and learn SFML.
Topic archived. No new replies allowed.
Pages: 12