This is the thread for the March 17th MinorHack.
I've done a lot of work around the site lately, so I will outline the new features here.
Email notification. Never miss another MinorHack because of not knowing! If you set your email address at the User Information page, and then set your email preferences at the Email Settings page, you can stay in touch!
The Bonus Rules page and everywhere else rules are shown now includes a link to that rule's page. This page will show a list of competitions that used this rule, so if you don't understand how to implement a rule, you can brainstorm from those.
Scores are in the database. There isn't a way to submit votes through the site yet, but you can look at the past competitions and see who won each one (and who has been disqualified because of not voting).
A hidden page, the User List, shows all the people who have played in MinorHack and how many times. This will eventually show the user's total score and some "participation rating" to sort them by ("participation" will probably be defined as something like number of competitions won * total number of points * total number of games played).
Icons have been added around the site. They add a splash of color
You can now download the entire competition as a single zip file containing all the entries, revised entries, and a Makefile. Also, entry filenames now reflect the user name of the submitter, and not the number.
Hope you enjoy!
Just to keep things easy to find in the future, the following is a list of all the previous MinorHack threads, sorted chronologically.
I like the site improvements!
Looking forward to the 17th ...
I'll see if I can participate.
I better go to sleep now so I can wake up for this in time.
I think I'll be able to participate but that depends on how tired I'll be in nine hours from now.
I'm hoping I'll wake up in time.
Side-note: How early is too early to propose a competition? I have a friend who might've done this one, but he had a focus group dealie to go to. Anyway, I'd like to get him in on one. Weekends seem to work well, but I was wondering if next weekend would be too short notice.
Just go to the "Proposed Competitions" page, and put in the time
Well, I should be in this one!
2 yes's and 4 maybe's... Looking good so far
Heck, I was in a 1-man compo! (it wasn't fun
)
Yeah, and you got disqualified!
Heck, I was in a 1-man compo!
Yeah, and you got disqualified!
That is so delicious!
I'm in for this one.
I've said it before and I'll say it again: this could be the biggest MinorHack yet!
Oh and for your entertainment, I am presently coding a "download competition" feature, where you can download all the original and revised entries for a competition, including Makefiles!
And how was I disqualified?
I hope I will be able to participate in this one, but I can't really promise anything - I'm having a bunch of, let's say, unwanted guests this evening .
And how was I disqualified?
Well, technically the whole competition is nil because there was no way to vote. You got DQed because you didn't vote
I think I might be in too.
Zip file downloading is done. You can check it out at any competition page. Also at the bottom of the pages is a link to the Makefile I wrote. Also, entry file names now reflect the user name of the submitter, not the number.
I would appreciate it if MinGW users would test the Makefile. I'm confident that it works, but a little assurance would be nice.
yawn I'm tired already. I'll slack this evening. Good luck everyone!
Why did you change your name?
Nope, doesn't work - it thinks it's under UNIX and subsequently fails to compile anything for obvious reasons.
I've attached a somewhat fixed Makefile that recognizes MinGW and defines CXX so that it works. But still, it doesn't take into account that some entries need other libs linked besides Allegro. For example, my entry in the competition linked requires -lwinmm for timing.
Why did you change your name?
Obviously, he officially changed his legal surname to "" .
Why did you change the ifdef line to ifneq?
Why did you set CC to $(MINGDIR)/bin/gcc?
Why didn't the default CXX work?
NameChange: Various reasons. One of the minor reasons was that I felt it was too long. I won't talk about the main reason publicly, if you absolutely have to know, you can pm me.
Sorry, I attached the wrong file .
Anyway, "ifdef MINGDIR" executes the else part even if MINGDIR is defined in the environment. Definitely strange. I tried to fix it with ifneq($(MINGDIR),) but it appears that this doesn't work either...
The CC was just something I was checking. CXX defaults to cc1plus on some MinGW installations, even though MinGW doesn't have cc1plus.exe (only g++.exe).
Sorry for the confusion.
[edit]
And somehow I can't delete the attachment I made to this post. Please disregard it, it doesn't work either...
[edit2]
Ok, now it works with ifdef MINGDIR even though it didn't when I first tried . I think I'm going to duct-tape my mouth before I convince even more people that I'm an idiot.
Well, technically the whole competition is nil because there was no way to vote.
My favorite is still the two man compo, where there is a way to vote ... sort of.
Jakub: who still needs convincing?
Zaphos: That was the one comp I was glad I missed.
who still needs convincing?
Yeah, I think it's pretty obvious about now .
CGamesPlay: At the risk of being an idiot once more - are you sure the revised entries in the competition ZIPs are actually the revised ones? I get the same source for both xxx.c and xxx_r.c, with the difference being 8 bytes in the comments.
When is todays MH?
Jakub: Now it's my turn to be the idiot Fixed. Can you try the new Makefile? The only difference is the CXX = g++. Hope it works!
[append]
And BAF is just a lazy idiot.
[append]
The next MinorHack has been proposed, but it conflicts with TINS. I'm in favor of one right before TINS (I proposed it).
It works OK now. I think it was something wrong with my system, I've had problems with environment variables once already - it seems that sometimes those that are set as "user" variables (as opposed to "system") are not working properly. "set MINGDIR" displayed "MINGDIR=c:/mingw", but make didn't consider it defined...
MinorHack starts in 13 min!
Hope it's a nice rule this time...
I'm done .
My entry is called Arrow Fighter and is for the twitch-fingered . The aim is to press the shown key combination in the time alotted. Each level has less time than the previous, and any mistake is game over.
It should compile out of the box with a simple "g++ x.cpp -ox -lalleg", but I'll attach a Windows binary anyway.
[EDIT]
Since when is MinorHack so quiet?
I joined with 47 minutes to go and uploaded at the buzzer. There's a bug I'm working on now. Mine's not a game unfortunately.
I didn't finish in time
Now I'm thinking if I should make a revised one or not. Is it worth it anyway?
Mine is done as well. I didn't get a name.
Just throw stars to hit the enemies, don't get hit. I will make this into a working game a little later.
It's worth it if you want to.
Well, it seems this MinorHack is the biggest at a whopping 7 finished entries. I'm gonna go and play them all now.
9!
I think mine would be pretty fun, if it was playable.
I never got the hang of deleting inside fors of std::lists. I always do... well, something else entirely.
Uploaded a new version which allows you to have multiple images.
Kikaru's entry required 3 changes to compile: int main, not void, return 0, not return, and winalleg.h.
Well, not on mine. It ran fine the way it is.
winalleg.h is a quick fix for std::vector. Forgot to take it out.
Here's what mine does:
This image:
becomes:
{"name":"591615","src":"\/\/djungxnpq2nug.cloudfront.net\/image\/cache\/9\/7\/971c34d88c7697e39c9612e8d96fb45e.jpg","w":646,"h":512,"tn":"\/\/djungxnpq2nug.cloudfront.net\/image\/cache\/9\/7\/971c34d88c7697e39c9612e8d96fb45e"}
My entry has a nasty bug when you can't exit if you had a keypressed when the game ended (pretty much always ). I've fixed it in the revised entry, it's just one line of code changed from "while (keypressed());" to "while (keypressed()) readkey();"
.
Attached a binary for the revised one.
This time around I honestly believe I wasn't going to make it. Around 20:23 I had nothing to show. Somehow, I did manage to pull it off... It's a great feeling when you don't stop and eventually get it done in time .
[EDIT]
9!
Not only I'm an idiot, it seems I'm also unable to count!
Anyway, you let me down Krzysztof . I thought we were going to make it the next "Teraz Polska" competition
.
Ok, excuse my ignorance, but how do I run a makefile?
Err.. make. At least if you have make installed with your MinGW, which you should.
make, from the command line, or mingw32-make if you have a certain GCC version.
Also, my entry isn't too bad after fixing that stupid for loop error. Took me a good 15 minutes to fix though.
Huh? I mean, a step-by-step walk-through of it. I know nothing about them...
Around 20:23 I had nothing to show.
Me too -- but that's the norm, for me ...
How do I get Simon's to compile?
Ok, excuse my ignorance, but how do I run a makefile?
You go into the dir and type "make"
How do I get Simon's to compile?
Error? On my computer it compiles flawlessly.
Open up a command prompt, cd to the directory, type make, or mingw32-make if that doesn't work. If that doesn't work, don't even bother, you have something messed up and it'll take longer than the convenience it gives you in the first place.
Run make.
In order of ranking:
BAF - best game ever (just kidding
)
Jakub - awesome game, forgot to mention that the box is space
Zaphos - neat game, fun, and multiple levels
Kibizor - cool concept, gets boring after a while (nothing to do, all the things bunch together making it easy)
OneWing - kind of cool, not a game though, use deprecated functions
GrantG - same game as mine ;P not bad though, better done than mine, although has some bugs with collision detection
CGames - incomplete, cool start
Simon - you forgot END_OF_MAIN so i couldn't compile it without fixing, is incomplete, otherwise nice start
Of course, I ranked the completed entries ahead, wether or not I thought the product itself was better just because they finished. I wouldn't have changed much by not ranking that way.
[edit]
Zaphos - if it's the same error I got, just add END_OF_MAIN() at the end.
Simon - you forgot END_OF_MAIN so i couldn't compile it without fixing, is incomplete, otherwise nice start
Oh, my..
On Linux you don't need END_OF_MAIN(), sorry for that.
Ranking °°°°°°° 1. JakubWasilewski]- nice and complete game, feels very polished (fadeouts, etc.) 2. BAF]- nice pong clone, paddles are a tad too small 3. Kikaru]- looks like a fun game, but runs too fast; crashes sometimes, too (had to type "killall Kikaru" a few times :P 4. Zaphos]- nice snake/worms/nibbles/whatever clone; runs too slow, level design makes no sense to me 5. CGamesPlay]- useless, but the movement and rotating of the ship looks great 6. GrantG]- your breakout clone doesn't make much sense because there is no wall to destroy (yet?) 7. Onewing]- the display is not very accurate (I know of better ASCII viewers); besides that, it's not a game 8. Kibiz0r]- crashes everytime I click, sorry
I did mention the box is space in the instructions. At least I did mention that space is needed .
Anyway, the re-revised version (attached again, sorry ML) has a bug fixed where the time didn't stop after you enter all 6 symbols. I had if (where != 6); timeLeft -= 0.01;. One sodding semicolon... .
Zaphos - if it's the same error I got, just add END_OF_MAIN() at the end.
Ah -- yeah, that was it, thanks!
Yes, well you probably have a winalleg.h
Jakub: Cool game! It would be perfect if it had an option to restart without quitting, but it's great as is.
Zaphos: A solid snake game, albeit with a suicide button. Very good job.
Kikaru: Very neat concept, but it was way to fast and crashed after I played for a bit.
Simon: Best graphics of all the entries
GrantG: It's a bit fast, but it's a good single-player pong. I put it above BAF's because one can get points
BAF: no way to lose, a bit fast, but a solid pong game. I assume, at least. Nobody ever got any points, and looking at the source code, it's impossible to win.
Kibiz0r: Neat concept, but doesn't seem to be beatable, and crashes if I click the screen.
Onewing: I can't play it. I don't actually have any bitmaps sized 80 or less.
So! Jakub, Zaphos, Kikaru, Simon, GrantG, BAF, Kibiz0r, Onewing.
I won't call my ranking final yet until Onewing offers something in his defense...
[append]
Okay, his isn't a game. That's my ranking.
I didn't take off for it, but I didn't see space mentioned anyplace (I probably didn't read carefully enough) until I checked the source.
The following entries failed to compile: SimonParzer.exe
For the third time, he forgot END_OF_MAIN() after main, so you have to add it yourself.
The new revised version has an option to restart instead of quitting . Attached.
I didn't take off for it, but I didn't see space mentioned anyplace (I probably didn't read carefully enough) until I checked the source.
Even if you did lower your score because of it, it's your right. If someone isn't clear about the game rules, it's always the creator's fault - even if it is on the screen, perhaps it's not drawing attention to itself enough .
Anyway, I distinctly remember wasting 20 seconds to add a line mentioning the keys .
Jakub: can you put together a zip file with the windows binaries? Then drop by the administration page.
There's too much text in this thread, it got lost in the ASCII blizzard.
There's too much text in this thread, it got lost in the ASCII blizzard.
Yeah, everytime I hit F5 there are 2-5 new posts. shudders
I won't call my ranking final yet until Onewing offers something in his defense...
Fair enough! User friendly-ness isn't something I think of when in a coding frenzy. A simple stretch sprite allows you to throw any image in: (just use this code)
Kibiz0r: the new entry is much better. I rank it above BAF's, for the "revised" competition, which doesn't exist
Jakub: can you put together a zip file with the windows binaries? Then drop by the administration page.
Done. Not sure if it did anything though . I assumed the competition ID was 12, because that's what is showing in the URL.
Kibiz0r: the new entry is much better. I rank it above BAF's, for the "revised" competition, which doesn't exist
Well, now that I know there is an easy way to do deletion in a for loop for std::lists, I will do much better next time.
Windows exe zip pack attached.
Anyway, I've got level 14 in my game (the revised version, which is easier because it stops the time once you enter everything). Now, beat me .
Well, zip file downloading or uploading seems to be broken. I don't know how to store them or load them from the database...
Anyway, I've got level 14 in my game (the revised version, which is easier because it stops the time once you enter everything). Now, beat me .
I got 10 the first time I played it, it's quite fun. And pretty.
BAF: Pong remake, well done
CGamesPlay: Asteroids with neat-o movement and nice graphics
GrantG: Breakout clone that moves too fast with impossible-to-see blue paddle and nothing to obliterate?
Jakub Wasilewski: Awesome DDR-style game -- fun to play with neat graphics, got to level 10!
Kikaru: A bit broken, too fast, and confusing as hell... but somehow still fun for the brief time that the stars are aligned properly
Onewing: It's not really a game, but... it's a cool tech demo, I have no idea how to rank it yet
Simon Parzer: Er, uh... you can't really "do" anything.... it looks neat, though...
Zaphos: Flawless Snake clone with a little twist. Great pacing and difficulty, I could imagine playing it on my cell phone!
Still not sure about rankings, but feedback is always nice, eh?
Okay, it's working now. Feast your eyes.
Kibiz0r: are those sorted form least favorite to favorite?
Ok, my vote, in order:
Jakub - really nice, pretty full game.
Zaphos - cool, I like the multiple levels.
BAF - it works. you should get some kind of award.
GrantG - it also works, but is redundant. Not too fun, unfortunately.
CGames - I can't do anything other than move around.
Simon - nothing at all to do.
Kibz0r - looks neat, but crashes when I click the mouse.
Onewing - doesn't run for me, but looks pretty cool.
Nah, it's alphabetical order. He doesn't know about his rankings yet. Yeah, it's ordered by rank, and I win.
My ranking:
Kikaru - nice and original mechanics, too bad the controls are somewhat clunky when throwing stars sideways.
Zaphos - nice, but I would use the time you spent on multiple levels by adjusting the game's speed. As it is, it's simply too slow.
Onewing - simple but effective, and noone said that Minorhack entries have to be games.
GrantG - well, it works and is actually quite challenging. Not really original though.
Kibiz0r - doesn't seem to have a point, but there is some sort of original idea in there. Feels a little incomplete.
BAF - complete and does work. But it's just Pong, and an unwinnable one to boot.
Simon Parzer - incomplete - but I think it's cool that you tried to emulate an actual textmode - even the cursor snaps to character boundaries.
CGamesPlay - cool rotating ship .
My rankings, from favorite to least favorite:
Jakub Wasilewski - It's just plain fun and polished
Kikaru - He took a chance and made something odd, and I appreciate that more than doing what's already been done, even if it's done well
Zaphos - Not an enormous amount on the originality side, but well-executed
BAF - Pong. Not good, not bad. Just Pong.
CGamesPlay - You can move, and moving feels pretty cool, but the illusion breaks down when you fly straight over the neat-looking asteroids. And I would rather be able to shoot stuff than have neat-looking asteroids, too...
GrantG - The paddle was impossible to see, it moved too fast on my computer, why waste an hour almost making Breakout, anyways? It's already been done to death.
Onewing - Anywhere else, I would probably remark about how neat it is, but for an hour's work, I would rather be able to do something, anything, than see all the cool tech demos in the world.
Simon Parzer - Looks neat, but there's nothing to do!
As you can tell, after the Independent Games Summit at GDC, I am infused with indie fury. I yell "Innovation!" as my battle cry as I wage war against publishers. But, whatever, those are my votes and I'm sticking to them.
Edit: Well, after seeing that voting Kikaru that high up wasn't as insane as I originally thought, I'm going to go with my original ranking from my sticky...
/switch
OK, I've completely forgotten the compo, my bad, better luck next time.
Here's my ranking:
Jakub -- very fun, with great presentation!
Kibiz0r -- interesting -- even though it's broken, there's a fair amount that does work ... and I like the little ascii man.
Kikaru -- interesting concept, but too chaotic? But still, basically complete.
BAF -- The basic game is there, but without a way to change the spin or angle or speed of the ball, it's all a bit silly ...
GrantG -- Same as BAF's ... but without a timer to control game speed.
CGamesPlay -- Nice graphics; wish shooting were there. Seems technically interesting.
Simon -- Nice graphics; wish shooting were there.
Onewing -- Fun utility -- though I wish you'd thought of the stretch_blit trick during the comp.
edit: decided to prioritize gameplay a bit more ... it's tricky to rank these games.
Me: Anyway, you let me down Krzysztof . I thought we were going to make it the next "Teraz Polska" competition
.
KK: OK, I've completely forgotten the compo, my bad, better luck next time.
Better luck? I did my part .
Wow, I wouldn't have thought that my movement, which I considered mundane, would be the highlight of my entry
[append]
Waiting on votes from Onewing and GrantG!
Wow, I wouldn't have thought that my movement, which I considered mundane, would be the highlight of my entry
Well, considering that movement is the only thing complete in your entry... .
Better luck? I did my part .
OK, I'll win the next one (unless they pick some ridiculous time).
Okay, check out the revised version of my entry. It's a working game Took me about an extra hour, but I wasn't racing.
I'm back! Time to vote:
(From Best to Not Best)
Jakub Wasilewski - Simple, addicting and well done. Just the way I like it cooked!
Zaphos - C snakes are apparently slow.
BAF - Everything feels and looks pretty good, but the AI continually pwng'ed me.
Kikaru - It's madness! I did like wall-bouncing however, even if that made me invincible.
Kibiz0r - Watch out for the seizure numbers! Seriously, is that all I'm supposed to do?
GrantG - Functional, although blazing fast and hard to see.
Simon Parzer - Intended to be a Duck Hunt? I just saw things fly by but I couldn't figure out what to do with them...
CGamesPlay - No worky. I see somethings but nothing happens.
Kibiz0r - Watch out for the seizure numbers! Seriously, is that all I'm supposed to do?
Revised version works. It's called Garbage Collector. You have a bunch of memory that you have to clean up, and if you touch it, you get deleted. To delete the memory, however, click on the screen and 2 seconds later, the red box will take any trapped memory along with it. The yellow stars are powerups that give you more deletes to use. If you run out of deletes, you lose. Supposedly there are levels, but I never got that far in testing it.
Okay, check out the revised version of my entry.
It crashes when I press space
Here is my ranking. It was quite hard, as I'm not very good with this ranking business.
Jakub Wasilewski - Easy to figure out, and challenging as well as fun
Zaphos - Good game, the snake is a bit slow though
Kikaru - Fast paced, a bit too hard for me, the wall bug helped though
BAF - good pong game, kind of like mine, the computer pwned me though
Kibiz0r - couldn't really figure out how to play this, maybe I'm just incompetent
Simon Parzer - nice start, but not finished
CGamesPlay - asteroids, without ammunition!
Onewing - cool utility, not a game though
Not a bug. I still need to do some work on it. The end result should be better.
Is it just me, or has everyone voted now?
Kibiz0r - couldn't really figure out how to play this, maybe I'm just incompetent
Is it because of the WASD keys? I know some people prefer arrow keys, but I'm so used to WASD, I never think of it until after the fact.
Not quite. BAF needs to rank Kikaru's entry. Here's what I have to far:
1 | 2981 BAF |
2 | 3653 Jakub |
3 | 1468 Zaphos |
4 | 7616 Kikaru |
5 | 6203 Kibiz0r |
6 | 6152 Onewing |
7 | 8173 GrantG |
8 | 2559 CGamesPlay |
9 | 3330 Simon |
10 | 6203 Kibiz0r |
11 | 3653 Jakub |
12 | 7616 Kikaru |
13 | 1468 Zaphos |
14 | 2981 BAF |
15 | 2559 CGamesPlay |
16 | 8173 GrantG |
17 | 6152 Onewing |
18 | 3330 Simon |
19 | 1468 Zaphos |
20 | 3653 Jakub |
21 | 7616 Kikaru |
22 | 6203 Kibiz0r |
23 | 2981 BAF |
24 | 8173 GrantG |
25 | 2559 CGamesPlay |
26 | 3330 Simon |
27 | 6152 Onewing |
28 | 2559 CGamesPlay |
29 | 3653 Jakub |
30 | 1468 Zaphos |
31 | 7616 Kikaru |
32 | 3330 Simon |
33 | 8173 GrantG |
34 | 2981 BAF |
35 | 6203 Kibiz0r |
36 | 6152 Onewing |
37 | 7616 Kikaru |
38 | 3653 Jakub |
39 | 1468 Zaphos |
40 | 2981 BAF |
41 | 8173 GrantG |
42 | 2559 CGamesPlay |
43 | 3330 Simon |
44 | 6203 Kibiz0r |
45 | 6152 Onewing |
46 | 3653 Jakub |
47 | 7616 Kikaru |
48 | 1468 Zaphos |
49 | 6152 Onewing |
50 | 8173 GrantG |
51 | 6203 Kibiz0r |
52 | 2981 BAF |
53 | 3330 Simon |
54 | 2559 CGamesPlay |
55 | 6152 Onewing |
56 | 3653 Jakub |
57 | 1468 Zaphos |
58 | 2981 BAF |
59 | 7616 Kikaru |
60 | 6203 Kibiz0r |
61 | 8173 GrantG |
62 | 3330 Simon |
63 | 2559 CGamesPlay |
64 | 8173 GrantG |
65 | 3653 Jakub |
66 | 1468 Zaphos |
67 | 7616 Kikaru |
68 | 2981 BAF |
69 | 6203 Kibiz0r |
70 | 3330 Simon |
71 | 2559 CGamesPlay |
72 | 6152 Onewing |
[edit]
Added Onewing's and GrantG's.
[append]
Kikaru, you should revise the entry with better timing.
Oops, forgot rate Kikaru. Kikaru gets one higher than Kibiz0r.
[edit]
Oh, by the way, my pong game isn't unwinnable. If you can hit the ball to hit the AI's paddle at the right angle, close enough to the bottom, it will hit my collision detection bug and give you a point. ;P
Oddly enough, I'm having fun dumping all the bitmap images in My Pictures to my program seeing what results I get.
This was a great MH, lots of people, great rule, etc.
Yeah, the biggest MinorHack yet, with some really great entries. I'm going to change this rule to read "allegro's text output functions", since I think that's what it really means.
Would someone tally the votes for me, please? I think I have it right, but I don't want to put them into the database wrong.
Huh? What 'timing' are you referring to?
I'm referring to it going at Mach 55 on my system.
(19:31:37) Ryan: hey you forgot to rank kikaru's entry
(19:32:56) BAF: i did
(19:32:57) BAF: ?
(19:33:03) Ryan: yes
(19:33:33) BAF: how do you play it
(19:33:54) Ryan: very quickly throw the stars at enemies using space
(19:33:58) Ryan: you are the green one
(19:34:08) BAF: QUICKLY
(19:34:09) BAF: holy shit
(19:34:12) BAF: it runs at mach 55
BAF agrees with me
Hmm... any idea why?
I used standard Allegro interrupt handler timing, and rest(1) within the waiting loops for less CPU usage. Did you have anything with flash in it running in the background?
Idk, install_int(update_timer, 1) probably.
What should I do instead?
Tried install_int_ex, and it goes crazy fast. Maybe something to do with that?
[EDIT]
found out why that was acting that way. Maybe replace install_int(update_timer, 1) with install_int_ex(update_timer, MSEC_TO_TIMER(1));?
The parameter for install_int is in msec. The parameter for install_int_ex is something completely different, consult the manual.
Anyway, timers are only reliable somewhere around 100 ticks per second. Anywhere below that, it's a grey zone. On some computers it will work flawlessly, while on others it will behave strangely. 100 ticks are enough for most purposes, especially for one-off things like MH entries.
install_int_ex(blah, BPS_TO_TIMER(x));
I used x=60 in my entry.
But does it run fine with the change?
Okay, there was some shakiness on the site because I was changing things. However, now votes are listen on the page. Everybody make sure they are correct
I've gone through about 5 drafts of trying to talk about me liking my game a lot more than how it was ranked, yet each draft comes off incredibly conceited. I'm just happy with how it turned out, but apparently no one else was. I guess all that matters in the end is what I think, but I just wonder where the disconnect is.
Edit: Although, if you can get past about level 5, it gets way too easy...
I'm just happy with how it turned out, but apparently no one else was. I guess all that matters in the end is what I think, but I just wonder where the disconnect is.
Well, we're not ranking the revised versions, and your un-revised version had a lot missing and was confusing. It's not clear what criteria we should be using to make our rankings, but having a "complete" game seems to be important to a lot of us.
I hope you won't worry too much about the ranking ... just have a good time, and do something interesting!
I don't worry about the rankings, I worry that I seem to not know how to make a game that appeals to people.
As for the revised vs. un-revised, I've always used the revised to see what they intended to make, and measured the un-revised against it to see how much of it they got done. I had everything implemented, and the only difference between my unrevised and my revised was deletion.
I think, in the future, I need to be more in the spirit of hackery. What ended up making my un-revised broken was that I was taking great pains to not leak memory.
Edit: Also, even though this is my 3rd MinorHack, I'm still not sure exactly what to do about the end of the deadline. When I saw the clock turn 4:00, I just made sure it compiled and dumped it into the site, problems and all.
I worry that I seem to not know how to make a game that appeals to people.
I think for MinorHack there are three basic rules, in this order:
1. Make it playable.
2. Make it fun.
3. Make it original.
(you can add "profit" as fourth)
1) Make sure the basic gameplay is there before you start to add features related to anything else. Basic ways to achieve this:
- use basic graphics (circles, lines and boxes do well),
- don't bother with title screen,
- make sure controls are comfortable (not too slow, not too sensitive),
- make ending screen as simple as possible (textout, "while(!key[KEY_ESC])" and exit(0) will do)
2) Make sure end results are reflecting player's actions. Don't make game unbeatable or so easy that player can play it infinitely. This can be done by gradually increasing game difficulty or adding "You Win!" screen. "You Win!" screen can bring life to even most ridiculously easy and boring game if you stop the game before player gets bored. Using some kind of maps (tile maps or wave information) is also good idea if you can get it done because it will add variety to your game that will keep player interested.
3) Pick an idea you think nobody else is going to pick. You can take first 5 minutes to think about the theme and try to come up with something unusual that will fit the theme.
And bottom guideline to everything: don't overshoot, all the time be aware of remaining time, cut features and simplify everything as much as possible when you feel you have too little time. Basically, no matter what you do, you will have to cut some features at one point or submit something unplayable. Whenever you feel you have some time, realize that you are wrong for 99%.
Well, this got a bit longer than I've intended it to be, but now it may be worth putting somewhere on the compo site, unless you have different view on how to do the 1h gamedev compo.
Well, this got a bit longer than I've intended it to be, but now it may be worth putting somewhere on the compo site
I would agree, sometimes you need a reminder to just not be an idiot.
Don't even bother reading this, I think I need a journal or something.
[introspection]
And, I'm regretting having said anything, earlier. I have a laid-back personality, but I have a type A way of communicating. It usually leads to conversations that give people the wrong impression of me, and I end up being friends with people I'm nothing like and pushing away people I am like. I need to take a speaking class or something.
My favorite is when I say something that makes me sound conceited, and then prove to them that I really am conceited by trying to explain that I'm not like that, because being conceited is, of course, not a positive character trait.
Good example: My sister was changing a light bulb, and she joked that she's being really dumb because there is metal all around the bulb-socket dealie and it continues into the ceiling. I said that it didn't matter because the switch was off, and she said you can get electrocuted anyways. My curiosity was piqued, and I tried to reason it out, and then went to the internet, all the while telling her what I thought the answer was at the time, and she thought I was just trying to be right. If I wanted to be right, why would I research it and risk being wrong, anyways?
Hm, I just realized that perhaps it's just that I'm so curious. With the light bulb thing, I just wanted to know the answer. With MinorHack, I wanted to know why I was voted so low. Well, I guess it's better to be someone who is trying to know everything, than someone who thinks they know everything...
[/introspection]
I wanted to know why I was voted so low.
Everything below is my opinion only, and you're free not to share these views:
A 1-hour compo is all about hacking together stuff that works in that 1 hour. We shouldn't in any way take the revised entries into consideration when judging, and, specifically, we shouldn't look at what the author tried to achieve. This is the only way to have a fair competition.
For me, the most important factor is completeness. A complete entry shows that the author correctly judged his abilities and stood up to the challenge. Originality and fun-factor are also important, but only if they're there in the original entry, and not only in the author's mind (or the revised entry).
I saw that you tried to do something original and even tried to have a theme with the "delete"'s and memory and so on. That's great, and that is why I rated you above BAF who went the easy way and made a pong game. But your entry crashed when I pressed the mouse button, so the gameplay just wasn't there - I could imagine it, but it wasn't in the entry. All I could was run around in circles until all the digits melted into one jittery being, and then commit suicide. I would've ranked you much higher had the original worked like the revised version does.
Anyway, my recipe for MinorHack is:
19:57 - close the door to my room, put on headphones, turn on ambient music, turn off IM
19:58 - open the text editor, save an empty file as mhack.cpp.
19:58:30 - open the command line, type "g++ mhack.cpp -omhack -lalleg -g3", press enter
19:59 - start refreshing the page .
20:00-20:05 - coming up with an idea. If I don't come up with a good idea in that time, I just go with what I have, because there isn't much time really. During this time I also type up the basic framework with timers, initialization and so on - it's a routine task, so I can think about the idea while typing the framework.
20:05-20:30 - creating something that works.
20:30-20:50 - creating something that plays nice.
20:50-20:55 - creating something that looks nice.
20:55-21:00 - tweaks/submitting.
I always try to come up with an idea that I think I can do in 40 minutes or less. It always takes longer than you think .
[edit]
Oh, and \o/. Unanimous win .
coming up with an idea. If I don't come up with a good idea in that time, I just go with what I have, because there isn't much time really. During this time I also type up the basic framework with timers, initialization and so on - it's a routine task, so I can think about the idea while typing the framework.
I'm the same way! That's one of the reasons I won't use a template framework
As far as my timing goes, when I saw the clock strike the end, I commented out the collision detection which I had just added and submitted.
How do you guys feel about not allowing entrants to upload revised versions until after judging is completed?
How do you guys feel about not allowing entrants to upload revised versions until after judging is completed?
It's a great idea.
Sounds good. Helps keep the games in perspective.
[EDIT]
Third Place! Woo!
Hey, another one scheduled for the 30th. That's the first day of TINS! Does that mean it's like an exponential hack or something?
No, it's before the first day of TINS.
It's a warmup!
TINS 2007 will be held from Friday March 30, 12.00 pm GMT, to Monday April 2, 12.00 pm GMT.
March 31st at 1:00 am UTC
I fail to see how March 31st is before March 30th.
(they're both the 30th for me, since I'm in -5 GMT)
Okay, I seem to have mistaken 12 PM for 12 AM, and then March 31 for March 30. I've moved the competition 1 day closer to avoid collision with TINS. If this means you guys who voted for it can't participate, feel free to propose another one. Personally, I won't be able to play right before TINS starts (10 am March 30 UTC), but if you European people are, you might want to get together on it
Compo in 2 8 days. AKA, bump.
Today is the 21st, and the competition is on the 30th. It starts in 8 days and 6 hours.
Hmmm... What a shame, it's on 4am.
Like I said, if you European ones want to have a different one at like 10 am GMT, feel free to propose it.
10 AM GMT would even work well for me. I'm generally still up at 5:00 AM here.
5 AM where? Are you Central time? Enjoy this.
EDT (-5 GMT)
Also, neat. Doesn't beat the convenience of Google, though...
Well, 10am still wouldn't be good as I study on Fridays as well.
Oh. Right, got the dates mixed up.
Should probably rollover the thread at some point before the next MH.
y/n: ?
"rollover"?
Eh, make a new thread for the next MinorHack... trying to use some hip terminology and I guess it didn't quite work out... sorry about that.
Edit: Though this one was made with 3 days to go, so I guess it would be out of character to remake it already... I'm just anxious.
trying to use some hip terminology and I guess it didn't quite work out
It's just as well for you that it's hip to be square.
Actually, hips are vaguely bean-shaped... sort of...