Page 1 of 2

EARWORMZ (experimentalgameplayproject entry)

Posted: Sat Jul 21, 2012 9:52 pm
by stripwax
Experimental Gameplay Project
July 2012 is Audio Input

This is my entry - EARWORMZ. Made in one day.

This game doesn’t make much sense. Create a sound by whistling, and guide it into my ear to power up the laser inside my head. Use the laser to destroy the EARWORMZ.
screenshot-mini.png
screenshot-mini.png (110.05 KiB) Viewed 14293 times
Controls:
Whistling (first to create a sound, then steer it using pitch). While you whistle, the sound accelerates in the direction of the speechbubble (direction doesn't change if you stop whistling)
Shhhh or blow (to send the sound into my ear)

Operating instructions for the laser:
You can power up the laser using as few as 1 sounds or as many as 5. More sounds makes a more powerful laser, but it is also more difficult to engage.
After sending a sound into my ear, you get the option to engage the laser. Simply SHHHH (or blow) continually, until the yellow circle hits the green band. With more sounds, the laser takes longer to charge as well as requiring a higher accuracy / more continuous SHHH sound to engage it.
If you fail to engage it, don’t worry, simply send another sound down my ear and try again.

Win/Lose
You cannot win. But you can try for a high score.

link:
http://www.beermex.com/games/earwormz/

I’ll update the page later with more details, credit, source code, and maybe non-windows builds too.
This project reuses the prebuilt sdl audioin and kissfft libraries from Guitar Girl Crayon Cutout Monster Mayhem: http://love2d.org/forums/viewtopic.php?f=5&t=2076

EDIT - Updated, now saves highscores, automatically detects optimal fullscreen/windowed mode, toggle/save fullscreen (hit 'f').
EDIT 22Jul12 - Cosmetic update, fixes formatting of HighScore: text, and better visual indicator for noise-versus-pitch capture on the speech bubble graphic, as well as interpolated rotation (less visually glitchy). Clarified instructions above about whistling to change direction of the speech bubble.
EDIT 29Jul12 - Repacked .zip to include a top-level earwormz directory, and incorporated license notes for the game and the libraries used.

Re: EARWORMZ (experimentalgameplayproject entry)

Posted: Sat Jul 21, 2012 10:27 pm
by Nixola
1024x600 fullscreen may annoy the user quite a bit, I'm attaching an .exe that doesn't fullscreen
...Damn. Exes not allowed. I'm zipping everything, then

EDIT: I think that Ear2.exe contains 2 .love files

Re: EARWORMZ (experimentalgameplayproject entry)

Posted: Sat Jul 21, 2012 10:41 pm
by stripwax
Nixola wrote:1024x600 fullscreen may annoy the user quite a bit, I'm attaching an .exe that doesn't fullscreen
...Damn. Exes not allowed. I'm zipping everything, then

EDIT: I think that Ear2.exe contains 2 .love files
Cool, is there a way to determine the native resolution in LOVE and only fullscreen 1024x600 if that is the native resolution, otherwise run windowed? That was kinda-sorta the intention of my code but I didn't actually get a chance to test it on anything else other than my netbook..
EDIT - to be clear: my netbook has a 1024x600 resolution. So, windowed 1024x600 doesn't really make any sense for playing games, whereas fullscreen is quite natural.

Re: EARWORMZ (experimentalgameplayproject entry)

Posted: Sat Jul 21, 2012 11:35 pm
by Nixola
My netbook has 1024x600 too... But I use an external monitor, 1280x1024, and it was quite strange. Anyway, you can determine the current display size by putting in love.conf(t) the following:

Code: Select all

function love.conf(t)
t.screen.width = 0
t.screen.height = 0
end
After putting the code above in the file conf.lua, you get (in main.lua) the current width and height and then decide wether to set fullscreen or not
EDIT: Thanks Jasoco!

Re: EARWORMZ (experimentalgameplayproject entry)

Posted: Sun Jul 22, 2012 12:23 am
by stripwax
Nixola wrote:My netbook has 1024x600 too... But I use an external monitor, 1280x1024, and it was quite strange. Anyway, you can determine the current display size by putting in love.conf(t) the following:

Code: Select all

function love.conf(t)
t.screen.width = 0
t.screen.height = 0
end
After putting the code above in the file conf.lua, you get (in main.lua) the current width and height and then decide wether to set fullscreen or not
EDIT: Thanks Jasoco!
Nixola/Jasoco - great tip, I hadn't seen that before. I have updated the code to do exactly this (new .zip in first post)

Re: EARWORMZ (experimentalgameplayproject entry)

Posted: Sun Jul 22, 2012 11:23 am
by stripwax
Minor update, mostly cosmetic (but important cosmetics!)

Re: EARWORMZ (experimentalgameplayproject entry)

Posted: Sun Jul 22, 2012 4:30 pm
by TechnoCat
All my speech bubbles go through the red circle being briefly green and never go in the ear.

Re: EARWORMZ (experimentalgameplayproject entry)

Posted: Sun Jul 22, 2012 6:55 pm
by Nixola
Did you try to blow when they're inside the circle?

Re: EARWORMZ (experimentalgameplayproject entry)

Posted: Mon Jul 23, 2012 4:42 am
by TechnoCat
Nixola wrote:Did you try to blow when they're inside the circle?
no. :cry:

Re: EARWORMZ (experimentalgameplayproject entry)

Posted: Mon Jul 23, 2012 11:01 am
by stripwax
I'm interesting in finding out more about whether folks find this interesting or entertaining. I'm also interesting in what kind of scores people are getting. Did anyone beat a score of 45000 yet? The key to high scores is maximising your combos...