|
|
Policy on non-C# code
Last post 01-13-2008, 1:50 PM by subsonicZ. 15 replies.
-
12-15-2007, 10:03 AM |
-
Adam Miles
-
-
-
Joined on 03-05-2007
-
England
-
Posts 427
-
-
|
In a thread regarding last year's DBP Dave Mitchell said the following:
"That said however, any other engine, tools, etc. based on 100% managed code output in C# will be accepted. What we won't accept is native libraries wrapped in managed code."
and Mitch Walker said:
"Any code or library used for the game must be written in C#. So compiling the SpeedTree library with the /CLR switch doesn't cover this requirement, as it is still (as far as I know) a native C/C++ library."
Although these "rules" were never laid out specifically in the Official Rules, do they still hold true for this year's DBP warmup?
|
|
-
12-15-2007, 11:09 AM |
-
Chromatic
-
-
-
Joined on 05-31-2007
-
-
Posts 62
-
-
|
Re: Policy on non-C# code
Adam,
According to MSDN-- code compiled using /CLR pure is not native code ( http://msdn2.microsoft.com/en-us/library/85344whh(VS.80).aspx):
Advantages of /clr:pure Better Performance: Because pure assemblies contain only MSIL, there are no native functions, and therefore no managed/unmanaged transitions are necessary. (Function calls made through P/Invoke are an exception to this rule.)
Hence, if you recompile a native C++ library using /CLR pure the resulting DLL is pure and verifiable MSIL code. I am not a judge; this is what I know from having converted C++ libraries to MSIL before. The competition was a fantastic success and I agree that it would be useful to hear whether the aforementioned requirements apply.
|
|
-
12-15-2007, 11:50 AM |
-
Adam Miles
-
-
-
Joined on 03-05-2007
-
England
-
Posts 427
-
-
|
Re: Policy on non-C# code
Yup, I'm not disagreeing with your interpretation of 'native code'...
This year source code needs to be submitted, so dodging the C# requirement by compiling C++ with the /CLR pure flag isn't going to fool anyone. I can understand the fact that the judges need to be able to read the source code and that if it's in the entrant's favourite obscure language that isn't going to help things, but I would expect Rare and Lionhead staff would have a harder time understanding C# than they would C++ given how they love it so. :)
|
|
-
12-15-2007, 12:02 PM |
-
The ZMan
-
-
-
Joined on 03-19-2007
-
WA, USA
-
Posts 3,190
-
-
|
Re: Policy on non-C# code
I see nothing in the FAQ, the How to Play or the official rules which states that C# must be used ;-) It says you need a .ccgame and the source code!
Of course we must wait for an official reply rather than speculate...
The ZBuffer - News and information for XNA and Managed DirectX
|
|
-
12-17-2007, 7:13 AM |
-
Somersault
-
-
-
Joined on 03-09-2007
-
London
-
Posts 241
-
-
|
Re: Policy on non-C# code
I do hope that they allow all types of managed code that would run on both Win32 and Xbox 360. Granted 99.99% of of entries will be C#, but at least there is scope for other languages to show their stuff.
There are a lot of people who are dead while they are still alive. I want to be alive until the day I die. -= Paulo Coelho =-
|
|
-
12-20-2007, 7:14 AM |
-
ThorsLightning
-
-
-
Joined on 12-07-2007
-
-
Posts 4
-
-
|
Re: Policy on non-C# code
We updated the FAQ. We allow C# source code only.
ThorsLightning, Microsoft Research Cambridge
|
|
-
12-20-2007, 7:20 PM |
-
Somersault
-
-
-
Joined on 03-09-2007
-
London
-
Posts 241
-
-
|
Re: Policy on non-C# code
Doh! So no VB.NET, Chrome or any other 100% managed .NET compiler that works with XNA? That is a pity. It's not like the judges wouldn't understand the other bits of managed code.
There are a lot of people who are dead while they are still alive. I want to be alive until the day I die. -= Paulo Coelho =-
|
|
-
12-21-2007, 12:21 PM |
-
Monkey Soft
-
-
-
Joined on 12-13-2007
-
-
Posts 3
-
-
|
Re: Policy on non-C# code
ThorsLightning:We updated the FAQ. We allow C# source code only.
ThorsLightning, Microsoft Research Cambridge
This is senseless. Two months for developing a game AND convert a pre-existing tool for AI in C#... ridiculous.
|
|
-
12-21-2007, 12:53 PM |
-
Nick Gravelyn
-
-
-
Joined on 03-05-2007
-
Seattle, WA, USA
-
Posts 2,970
-
-
|
Re: Policy on non-C# code
Monkey Soft: ThorsLightning:We updated the FAQ. We allow C# source code only.
ThorsLightning, Microsoft Research Cambridge
This is senseless. Two months for developing a game AND convert a pre-existing tool for AI in C#... ridiculous.
It makes perfect sense. The warmup content is about AI and requires source code. They need to be able to understand the code. If you give them a language they don't know, it will waste their time trying to figure it out as opposed to judging the actual content. If you want a quick way to convert to C#, simply compile your game, open it in Reflector, and set the language to C#. It will disassemble your MSIL and put it into C#. Then you can snag the C# real quick.
Nick Gravelyn -- Microsoft XNA MVP XNA Wiki | Zune Games
|
|
-
12-23-2007, 5:19 AM |
-
Monkey Soft
-
-
-
Joined on 12-13-2007
-
-
Posts 3
-
-
|
Re: Policy on non-C# code
So why cut down C++, a language I think judges will understand BETTER than C#?
|
|
-
12-23-2007, 6:39 AM |
-
Nick Gravelyn
-
-
-
Joined on 03-05-2007
-
Seattle, WA, USA
-
Posts 2,970
-
-
|
Re: Policy on non-C# code
Monkey Soft:So why cut down C++, a language I think judges will understand BETTER than C#?
Possibly to make it so all games are the same language? I'm not a part of the decision making process, but it's possibly a mix of picking languages they know (that way someone doesn't give them something in Chrome, for example) and making sure everyone uses the same language so it's easier to judge from one to the next.
Nick Gravelyn -- Microsoft XNA MVP XNA Wiki | Zune Games
|
|
-
12-23-2007, 12:46 PM |
-
The ZMan
-
-
-
Joined on 03-19-2007
-
WA, USA
-
Posts 3,190
-
-
|
Re: Policy on non-C# code
The Dream Build Play competition is marketing promotion for XNA Game Studio... XNA Game Studio officially only supports managed code and specifically C#. So it makes total sense for the competition to allow only those technologies its trying to promote. Imagine the situation where MS are saying 'XNA Game Studio and C# are the way to go' and one of the winners of their competition used C++
There are other competitions that don't have such a restriction http://www.garagegames.com/news/13960 and http://www.gamedev.net/community/contest/4e6/
The ZBuffer - News and information for XNA and Managed DirectX
|
|
-
12-23-2007, 2:00 PM |
-
ShawMishrak
-
-
-
Joined on 05-08-2007
-
Columbus, OH (Ohio State University)
-
Posts 750
-
-
|
Re: Policy on non-C# code
The ZMan [MVP/Moderator]:Imagine the situation where MS are saying 'XNA Game Studio and C# are the way to go' and one of the winners of their competition used C++
That would be hilarious! I think I'd die laughing.
|
|
-
12-26-2007, 4:59 AM |
-
Monkey Soft
-
-
-
Joined on 12-13-2007
-
-
Posts 3
-
-
|
Re: Policy on non-C# code
I was referring to an external AI library... not so hilarious, in my opinion.
Anyway, I apologize for my previous posts, I was only complaining for my situation; I think this could have been a great opportunity to show some real good AI, but I think the decision to admit only C# code will limit greatly the partecipation, thus reducing the impact of such an important competition.
I will do my best to enter.
|
|
-
12-26-2007, 10:51 AM |
-
SniperEye
-
-
-
Joined on 03-11-2007
-
-
Posts 15
-
-
|
Re: Policy on non-C# code
I would like to answer some of the issues raised here:
Monkey Soft:So why cut down C++, a language I think judges will understand BETTER than C#?
The judges actually understand both languages equally well. In fact, we find that C# code (of others) is often easier to understand than C++ code - in parts because of the lack of memory management code, in parts because of the large re-use value of the .Net framework.
Somersault:I do hope that they allow all types of managed code that would run on both Win32 and Xbox 360. Valid submission entries can either run of Xbox 360 or Windows.
Somersault:Granted 99.99% of of entries will be C#, but at least there is scope for other languages to show their stuff. We were pretty torn on having to decide on a programming language as our team is also using F# for development (and, yes, you can write XNA games with F#). However, as was already mentioned in this thread, this is a contest on the subject of AI and in order to both keep the overhead small enough for us (who have to judge the submissions) and every participant (who would need to know what "Product Quality" means in each language) we decided to stick with the officially supported language of XNA: C#.
Monkey Soft:Two months for developing a game AND convert a pre-existing tool for AI in C#... ridiculous.
Please bear in mind that we are interested in the AI part of the game; it does not count against you if the graphics or audio are sub-par. In fact, even a barely functional menu system is acceptable as long as one can play the game, it's fun and the AI is very novel, innovative and/or strong. Also, we will primarily focus on the reviewing the AI source code so please take care to have product quality code there (you can also see this in our mini-sample submission if you look at XGoLibrary (high quality) and Input.cs (medium quality)).
Monkey Soft:I think this could have been a great opportunity to show some real good AI, but I think the decision to admit only C# code will limit greatly the partecipation, thus reducing the impact of such an important competition. Let's hope that this is not the case. As Nick was suggesting, as long as your library is in managed code there are quick ways to convert into C#.
Hope this helps,
Ralf Herbrich, Microsoft Research Cambridge
|
|
-
01-13-2008, 1:50 PM |
-
subsonicZ
-
-
-
Joined on 05-26-2007
-
Calgary, Alberta - Canada
-
Posts 52
-
-
|
Re: Policy on non-C# code
I can understand wanting to use non-C# code if you're not a C or C++ programmer as learning a new language just to enter a contest may be more than you want to do, but I'm confused as to what C++ gives you as far as building AI is concerned? I did a machine vision system about 10 years ago using C and although I think adding the overhead of Windows and managed memory would probably make it too slow, I'm fairly certain I would be able to recreate the exact same functionality using C# today... and there would probably be far fewer BSOD's during the dev process :)
As far as the contest is concerned I thought the idea was for you to have to write AI. I know if I got beat out by someone who had just recompiled an existing library I'd be a little miffed.
Edit: Ok, I re-read the contest intro and I guess I missed the point.
Create a new and innovative use of Artificial Intelligence in a game
To me that says as long as you use it in a new and innovative way where you get the AI code from is irreleavnt. SO, I may not be as miffed as I thought I would be.
My Blog - The Sands of Thyme
|
|
|
|
|