Sign in to follow this  
capn_midnight

3H-GDC m.III - Winner: eal!!!

Recommended Posts

capn_midnight    1707

3H-GDC m.III

The results are in! 1st eal!!! eal will receive a first release copy of Morning's Wrath by Ethereal Darkness Interactive. (pm me with your mailing information) 2nd H_o_p_s already has a GDNet+ subscription, so he may opt for a 3 month extension or cash. (pm me with your choice) Runners up: snaily and Binomine did an excellent job, but unfortunately receive nothing. The submissions are:
Alright, we had a nice showing for the last Three Hour Game Development Contest, let's see what happens this time. Prizes:
1st: A production copy of Morning's Wrath, by independent developer and GameDev.net member EDI. 2nd: 3-month subscription to GDNet+ from capn_midnight
Date/Time: This time, instead of Sunday, I will hold it on Saturday. Last time the contest was held at 3PM EST and some people in Europe and Asia felt a little left out. So, help me figure out a time to hold the contest so that those people may compete this time (I reallize, this will probably leave out the people from the first competition). Theme: N/A The past two contests were "Black and White" and "Fire". Rules:
  1. Submissions must meet a predetermined theme (which will be revealed 1 hour before the beginning of the contest)
  2. Any Language (C, Java, C#, Python, javascript, Brainf***, I don't care) or API (SDL, Allegro, PyGame, JOGL, etc) is acceptable, as long as you handle all distribution yourself (Ideally include all assemblies. You *may* link to a direct download, but a download page is UNNACEPTABLE. One click should be all I need to download the components I need). Do not assume the Judges have any particular machine setup.
  3. Game Makers are NOT acceptable.
  4. For more discussion on what is and is not acceptible, see the previous contest's thread.
  5. You may use rendering frame, input manager, math library, or sound manager base code that you have written, but no other code. You must post this code in a source tag in the forum on Thursday night before the competition to keep the playing field even (anyone may use it if they want). The judges reserve the right to veto your use of such code (hence the need for the Thursday night deadline).
  6. Judges will judge on a full binary version of the software. They will not compile the software.
  7. Judging will be conducted by a panel of non-competitors
  8. Judging will be based mostly on overall gameplay and originallity of game design. Graphics will be a minor part, but mainly in the fluidity of the graphics (stuttering, tearing, flickering graphics will be very bad). We understand that content will be light, that graphics will be underdeveloped, that input MIGHT be a bit akward. Gameplay is the key.
  9. prizes are listed above
  10. presumably, winners will post their winning game in the GDNet Showcase.
  11. runners up receive nothing.
  12. we will attempt to pursue full legal action against nefarious ne'er-do-wells (those that would upload destructive code).
Three hours is plenty of time to make a classic arcade game, or something new with simple gameplay. Check out the previous contest to see what was done. Gameplay is what this contest is about. If anyone wants to volunteer as a Judge, please post here and list your machine specs as well as your pertinent software running on your computer. For example, I'm: Processor: Pentium4 2.4GHz Memory: 768MB RDRAM GFX: Radeon 9800 Sound: SB Audigy 2 OS: Windows XP Pro SP2 Other Software: Java 5, .Net 1.1, DX9c [Edited by - capn_midnight on September 19, 2005 11:40:08 PM]

Share this post


Link to post
Share on other sites
markr    1692
I am interested, moreover I hereby submit the following javascript code for reuse by myself and anyone else who wants to subject to the all-mighty capnmidnight not vetoing it:


<script type="text/javascript">
// Temporary until I find the true location of these constants
var KEYCODE_LEFT = 37;
var KEYCODE_RIGHT = 39;
var KEYCODE_UP = 38;
var KEYCODE_DOWN = 40;
var KEYCODE_SPACE = 32;
var KEYCODE_F = "F".charCodeAt(0);
var KEYCODE_E = "E".charCodeAt(0);

var keysDown = { };

function KeyHandler(ev, isDown)
{
// If game not started, do nowt.
if (! gameStarted) {
return;
}
// Handling IE.
if (window.event) {
ev = window.event;
}
switch (ev.keyCode) {
case KEYCODE_LEFT:
case KEYCODE_RIGHT:
case KEYCODE_UP:
case KEYCODE_DOWN:
case KEYCODE_SPACE:
case KEYCODE_F:
case KEYCODE_E:
// Ok
break;
default:
// document.getElementById("debug").innerHTML = ev.keyCode;
return; // Ignore
};

keysDown[ev.keyCode] = isDown;

// ONLY call this if the game is running etc.
if (ev.preventDefault) {
ev.preventDefault();
}
// For IE
ev.cancelBubble = true;
}

function KeyHandlerUp(ev)
{
KeyHandler(ev, false);
}
function KeyHandlerDown(ev)
{
KeyHandler(ev, true);
}

function InitEvents()
{
document.onkeydown = KeyHandlerDown;
// Some versions of Firefox, may not report keydown while another key is held down.
// Fix this by using keypress as well.
// document.onkeypress = KeyHandlerDown;
document.onkeyup = KeyHandlerUp;
}

// Util method.
function RemoveAllChildren(elem)
{
var items = elem.childNodes;
for (var i=(items.length -1); i>= 0; i--)
{
elem.removeChild(items.item(i));
}
}
</script>



Mark

Share this post


Link to post
Share on other sites
samv    312
Is this going to be held this weekend?

I suppose rule 5 is not debatable? I would want to use my base code, but posting that here is not really feasible.

Share this post


Link to post
Share on other sites
civguy    308
I might participate. I'll just use pygame, no need for base code. Oh and I have a request: if you're planning on giving us a tileset to use like you mentioned in some other thread, make it one tile per image with descriptive and short names.. I'd hate to be looking up images from some large bitmap with all tiles layed out in there in random positions.

Share this post


Link to post
Share on other sites
Binomine    611
Quote:
Original post by capn_midnight
Date/Time: This time, instead of Sunday, I will hold it on Saturday. Last time the contest was held at 3PM EST and some people in Europe and Asia felt a little left out. So, help me figure out a time to hold the contest so that those people may compete this time (I reallize, this will probably leave out the people from the first competition).
I suggest being lazy, 3:00pm in your own time zone.

A quick perl script should be able to email the theme to all who subscribe at 2:00pm their time zone. Submittion should be by PM on gamedev.net and after a 24 hour period, you post the completed games.

Share this post


Link to post
Share on other sites
capn_midnight    1707
I'm going to say 11am for the contest this time. I see one entry for base code and 3, maybe 4 people that want to participate. Any last minute takers? We've got another 5 hours and 45 minutes to submit base code (reference this against my post time for your local time).

Share this post


Link to post
Share on other sites
eal    272
I suppose I'll give it a try. I'm not sure if this would be way too much code to start with though. It uses DirectX and has functions to do all the basic things like draw triangles, play sounds, load bitmaps, handle textures, etc.

Share this post


Link to post
Share on other sites
Mushu    1396
Aww, I'm not going to have access to a computer on Sunday :(

Ergo, I volunteer to be a judge since one of the judges will end up PMing me for advice, and my decisions will ultimately become identical to the overall standings [lol]

If you want specs:

2.0 GHz
1GB RAM
Radeon x300
IE6, MarkR [wink]

Share this post


Link to post
Share on other sites
capn_midnight    1707
actually, I too have a set of base code, though I won't be competing obviously. It's written in C# for .NET 1.1.

Here is an example usage:

using System;
using System.IO;
using Game.Common.Utility;
using Game.Common.Graphics;
using Foot_Race.Screens;

namespace Foot_Race
{
public class EntryPoint
{

[STAThread]
static void Main()
{
GameLoop loop = new GameLoop("Foot Race", false, 33);
loop.AddScreen(GameLoop.TITLE, new TitleScreen());
loop.AddScreen(GameLoop.MENU, new MenuScreen());
loop.AddScreen(GameLoop.PLAY, new PlayScreen());
loop.AddScreen(GameLoop.GAME_OVER, new GameOverScreen());
loop.AddScreen(GameLoop.CREDITS, new CreditsScreen());
loop.Start();
}
}
}



and a sample of one of the Screen classes


using System;
using System.Drawing;
namespace Foot_Race.Screens
{
/// <summary>
/// Summary description for CreditsScreen.
/// </summary>
public class CreditsScreen : Game.Common.Graphics.IScreenPainter
{
int frameCount;
int goCode;
string text;
Font font;
Brush brush;
public CreditsScreen()
{
text = "Foot Race\n(C) Midnight Express Games, 2005\n\nProgramming: Sean McBeth\nArt: Sean McBeth\nE...Screw it, everything: Sean McBeth";
font = new Font("Arial", 24);
brush = new SolidBrush(Color.White);
}
#region IScreenPainter Members
public System.Drawing.Bitmap BGImage
{
get
{
return null;
}
}
public void AcceptInput(Game.Common.Utility.InputManager im)
{
if(frameCount > 30 && im.AnyKeyHit)
{
goCode = Game.Common.Utility.GameLoop.MENU;
}
}

public int GoCode
{
get
{
return goCode;
}
}

#endregion

#region IPaintable Members

public void Paint(System.Drawing.Graphics g, int w, int h)
{
g.DrawString(text, font, brush, 100, h - frameCount*2);
}

#endregion

#region IAnimated Members

public void Init()
{
frameCount = 0;
goCode = Game.Common.Utility.GameLoop.CREDITS;
}

public void Update(int delTime)
{
++frameCount;
}

#endregion
}
}


The Init() method is called whenever a screen is first displayed.
The AcceptInput(InputManager) method is called once per frame. The InputManager class keeps track of the input state for input polling.
The Update(int) method is called once per frame before rendering and is passed the number of milliseconds since the last frame.
The Paint(Graphics, int, int) method is called once per frame. The two ints represent the width and height of the screen.
The GameLoop checks the property GoCode to see if the current screen is done and which screen to progress to (via a number of static integer values in the GameLoop class)
And that's pretty much the basics. Any questions, PM me. You don't have to use the code, the code isn't the theme.

Share this post


Link to post
Share on other sites
Evil Steve    2017
I may participate if it's not too late, depending on the theme (I have very little imagination [smile]). I'll be starting from scratch (no basecode).

Share this post


Link to post
Share on other sites
Binomine    611
I will particpate, since it's too late to put in basecode, I guess I'll use pygame.

Of course, since I've ne'er used python, I may not have anything to submit...

Share this post


Link to post
Share on other sites
capn_midnight    1707
whao! Sorry for the late start. I really over slept. In fact, I was so tired, I almost ran off the road last night. Anyway..., tak an extra 15 minutes to finish your games.

The theme is Crackers. Interpret that as you wish. I can think of at least 4 different meanings to the word "cracker".

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this