SingSong Karaoke

SingSong is karaoke with a twist: the game tracks the notes the players sing and scores them against the notes they are supposed to be singing.

Some key features:

  • Sing scored karaoke with ANY song in the world.
  • Supports any number of simultaneous players (limited only by the number of microphones).
  • Players singing at the same time can sing different lyrics (eg, a duet or lead/backup vocals).
  • Powerful tools to quickly add support for new songs.
  • Java, so cross platform: Mac, Linux, Windows

The game is commercial but a free trial version is available with a limited song selection. The website is here:
http://singthegame.com/
The game itself is here:
http://singthegame.com/trial.jnlp

Constructive feedback on the game and website is highly appreciated! :slight_smile:

Because I know someone will mention it, similar games exist for the PS2, PS3, Xbox360, etc. These games have a limited track listing or make you buy songs from a limited selection at something like $1.50 each. There is also an open source PC game called UltraStar that does pitch detection. SingSong differs by having more game play features that these other games, more accurate pitch detection, and the ability to use any song in your digital music library.

Much thanks to Kev for the awesome Slick 2D library that made this possible!

I haven’t tried it yet, but the features and screenshots look excellent. Great job. I have been looking for something like this for a while. I want to learn to sing, but don’t have time for singing lessons and this software is exactly what I need. Now as soon as I can afford it I will buy it.

The website is good also. It’s simple, clean and easy to navigate.

Looks nice.
The program loaded fine but the songs couldn’t download for some reason. Therefore was unable to try it out fully.

Same here…

Ha ha ha, awesome. I’ll try this out whenever I have a window of non-embarrassment… i.e. I’m alone. ;D

Demonpants: :stuck_out_tongue: A few drinks also helps if you are into that. ;D

CaptainJester, I’d be interested to hear if you think you improve by singing with the game. I’m definitely better than I was when I started developing the game, though my wife still stomps me almost every time.

I’m concerned you guys were unable to download the songs. What OS and version of Java are you running? Can you post your JWS log? To turn it on go to Java settings (on Windows: Start -> Settings -> Control Panel -> Java) and on the Advanced tab check Settings/Debugging/Enable logging. Then run the game again and look in “user.home/Application Data/Sun/Java/Deployment/log” for the latest log file.

Sorry this is such a pain, it is supposed to log to “user.home/.singsong/singsong-game.log” but it looks like it just creates an empty file. I’m guessing I can’t redirect System.out when running through JWS.

If your game is in beta, people may be more open to share their stdout and stderr.

Just redirect System.out and System.err to two socket outputstreams and listen for horrible crashes at the other end :slight_smile:

It’s the best approach, IMHO as you also get the stacktraces that the enduser doesn’t notice, or doesn’t care to send you.

Heh, I’d have to at least have a way to turn that off. People get upset when you start sending even harmless info without their knowledge. The game isn’t supposed to be in beta… :-\ It is definitely supposed to work!

Then redirect your stderr to a custom stream, that asks the user (when the first byte is written) whether he agrees to do a bugreport, if yes, connect to a server and push some bytes.

I got it running on my machine. No problem downloading a song either. The only problem I had was that it froze my machine. This is not your programs fault. I am having the same problem with almost any game that uses OpenGL/DirectX calls into my video card. Up until that point it worked fine.

Can you tell me what graphics calls you are making? Anything beyond normal like CG or GLSL?

Thanks.

It is pretty standard Slick/LWJGL stuff. If it downloaded a song ok I assume you made it to the sing screen. There it just draws images, quads, and uses an alpha map.

Anyone have more info on the error? I haven’t had any other reports that it was crashing.

Thanks.

I did a little searching and it looks like this is a problem with the 9600pro. It’s time for me to get rid of it.

Started without a hitch, but the actual lyrics scrolling seems to be terribly jerky. They’ll be a noticable jump every second or so - looks suspiciously like the gc kicking in.

Also the audio seems to get progressivly more out of sync as the song went on, but that just could be markup problems I guess.

What with this and Ultrastar it’d be nice to see something other than straight copying of a certain other game’s look-and-feel wholesale, but that’s a rant for another day. ;D

Orangy Tang, what version of Java (including update number) are you using? I found Java 1.5u16 specifically to be jerky. Doesn’t seem to happen in Java 6.

Ultrastar copies SingStar. SingSong is nothing at all like SingStar. IMO the SingStar interface, while closer to a traditional karaoke machine, does a poor job of conveying information.

The current UI is a first milestone. I wanted to get it working and out there else I might not have ever gotten it out there, given my past track record with releases. :slight_smile: I hope to build upon it in the future. I do think the scrolling lyrics style is the best way to go, so I don’t see that changing, but more effects are needed along with a tournament mode, party games, etc.

I think it was 1.6.something, but I’m not sure. I’ll check next time I’m on that machine.

FWIW, I fixed the jerkiness in SingSong a while ago. The OS and/or audio hardware on some computers doesn’t update the playback time very often, so scrolling was jerky. I now do some magic based on the system clock and smoothly transitioning to the playback time when it changes, since playback may actually be faster or slower than real time.

This was great fun, and worked very well! Despite sucking at singing I did pretty well. Featured!

+1 point the game installs and uninstalls correctly
+1 point the game doesn’t crash ever
+1 point the game is slickly presented
+1 point the game has “good” graphics that suit the game
+1 point the game has “good” sound that suit the game
+1 point the game’s overall style is “good”
+1 point the game is original or brings a great new original twist
+1 point your judge enjoyed playing the game
+1 point you don’t whine and you demand nothing of the mods (simply saying “can you rate my game please” is fine)

9/10.

I didn’t give you a “+1 point if the game is complete enough that doesn’t feel anything is missing” because having to manually download mp3s felt really segmented from the game itself and didn’t seem like something I should have had to do. Obviously the reason you did this is because of rights, but it forced the game to not feel nearly as complete. I clicked a song to play and the had to find it on my computer, where of course it doesn’t exist. That’s a little tough, plus because it needs mp3s I can’t play anything I bought from iTunes. So basically I need to steal it or rip it from a CD, neither of which are good options. Can you do anything about that? I don’t think so, unfortunately.

Lots of fun playing the free songs, though! Keep it up!

Eli

Thanks Demonpants! :slight_smile: Glad you found it fun. 9/10 isn’t bad. 8)

To play the free songs it has to download them, otherwise the JWS would take forever (3mb game + 10 free MP3s @ ~3mb each = 33mb!). By “manually download mp3s” I assume you mean that you have to choose your own song file to play one of the three commercial songs (Eric Clapton, Madonna, Gloria Gaynor)? Yeah, no way around that. I didn’t originally have any commercial songs, just the free ones, but I found people wanted to try it out with songs they know.

FWIW, the full version of the game uses some fancy fuzzy matching to search through all your music and find songs the game supports. This way you don’t have to manually choose each song. It supports 300+ out of the box, so chances are you have a few supported songs. Also you can add support for new songs yourself using the provided tools. 8)

The game supports MP3, OGG, FLAC, and APE. These are all decoded using pure Java. If you have QuickTime installed then it will use that to play M4A, M4P, M4B, AAC, MID, and WAV. This means you can use music purchased from iTunes, even DRMed music, with SingSong.

Special thanks go out to Kevin for Slick and MatthiasM for TWL. :slight_smile:

Wow, I didn’t know it supported all those options. That’s pretty awesome, great work there. And yeah, I meant the Madonna etc. tracks. Having a little load time for the music as it is downloaded is really not a big deal at all, and makes sense to me. I wouldn’t really want to have all those songs stored on my hard drive, either.

Eli

Check it out, how cool is this!? :smiley:
http://n4te.com/singsong/commercial.mpg
Non non non! Avec son petite balcon! :smiley: