View Full Version : Arcade Music Trivia Challenger
Hypnoziz
07-04-2011, 12:20 PM
Recently I've been working on a program to quiz the musical knowledge of our Hyperspin community. It's based on music from arcade games, but can be altered to provide trivia for music from literally ANYTHING.
My goal was to create something that's:
-able to be launched from within Hyperspin
-compatible with any arcade cabinet design
-customizable for key input
-addicting and challenging at the same time
I've made some progress so far and thought it might be time to share with the Hyperspin community. Please check out this video and let me know what you think.
http://www.youtube.com/watch?v=VnrjA8ylbUE
(Video is outdated. Please download current program version from the link below)
Features (07/04/2011):
-Compatible with Hyperspin (can be launched from wheel)
-Remappable button configuration
-Addicting musical trivia fun
-Entertaining addition to any Hyperspin cabinet
Update (07/05/2011)
-Customizable content from any arcade/console/artist
Update (07/08/2011)
-50 songs preloaded in database
-Countdown timer added
-Scoring system based off accuracy and speed
-Persistent highscore saving
DOWNLOAD: http://www.mediafire.com/?qqlhkcnankn5k54
Default controls are as follows:
Up = Up Arrow
Down = Down Arrow
Left = Left Arrow
Right = Right Arrow
Select = Enter
Coin = Space
Exit = Escape
I like this... I really really do. I actually did something liek this long long ago on a forum. I just cut about 50 mp3's and hosted links.
I think something like this is great, but would be even better if people could create their own content. IE: add new songs/images
I'm not sure what you have planned, but I think an XML style system would be great... The XML could link to the song and show which images to pick from. Perhaps the user could simply supply the correct answer/mp3 and the system could select 3 incorrect ones at random.
Hypnoziz
07-04-2011, 12:39 PM
I'll have to look into that. Good idea. I've actually got it programmed in such a way that you could potentially have the ability to add custom content later. It's just a matter of creating a script that'll grab external resources. The game stores its song database in arrays, so the user could basically add to a text file and it'll upload the content into the program's resources.
It would be something like this:
//Database
global.maxgames=39;
global.games[1,0]=tmnt_spr;
global.games[1,1]=tmnt_snd;
global.games[1,2]="Teenage Mutant Ninja Turtles";
All variables are stored as global for database fetching purposes. All you'd have to do is change the maxgames variable to reflect how many games you've got altogether, then the first variable for the game is the image you want to appear, the second variable is the sound file, and the third is the actual title of the game. The title isn't even used in the game, but I've got it there anyway in case I decide to use it later.
I was just thinking... if you could get the system to read an XML it would be easy for anyone to add content to.
For instance:
Images could be loacated in an /images folder
music would be in a music folder
the XML would be something like:
<game>
<game name="Teenage Mutant Ninja Turtles">
<image="tmnt.png">
<music="tmnt.mp3">
</game>
You would only enter the correct game into the XML. The system could then pull at random the correct game from the XML and 3 incorrect images from the image folder.
Difficulty modes - You could also increase difficulty by adding more incorrect answers like 3 for easy, 6 to 9 for medium and 12 for hard mode. Perhaps you could also shorten the length of the music depending on the difficulty mode.
Genre - Let users be able to choose a genre before the game starts. For instance console only, arcade only, console & arcade, pinball, etc. An additional tag could be added <genre="console"> to the XML or database and depending on the selection the system will only select games based on that selection.
Sorry, I don't mean to step on your toes or anything... just brain storming things that I personally think would allow a more robust trivia/game system. User generated content is all the rave now days and allows for some creative collaboration.
Hypnoziz
07-04-2011, 01:23 PM
Haha! I'm liking all this. Please, by all means, keep the ideas flowing. I can't promise to get it all completed real quick, but I'll add as much as I can. Hopefully I can get the custom content feature added by the end of today. =)
My priority is custom content for now. Next, I'll be adding in the scoring system with the timer and the highscore saving feature so the highscore will be persistent. Meaning basically, even if you exit the program, the next time you launch it through Hyperspin, that same highscore is going to be there. Should help to add a competitive element to the game as well as giving those cab owners another thing to brag about (arcade musical knowledge!). Heh heh!
Oh and the XML file isn't necessary. I'm just simply going to use a text file for reading the data. (.txt)
nickynooch
07-04-2011, 01:59 PM
Awesome idea. As a child of NES gaming, it would be amazing to make a NES version.
Hypnoziz
07-04-2011, 02:02 PM
Once the custom content feature is complete, you can add whatever you'd like from any arcade, console, or musical artist. All you need is a clip of the music and an image to accompany it.
Check your PM's when you get a minute.
deanmorrison
07-04-2011, 03:31 PM
saw this yesterday the idea and look is realy good and its something different..thx for the help also....
Hypnoziz
07-04-2011, 05:07 PM
Customizable content: COMPLETE
Alright...custom content is now manageable. You can now add whatever you want and the game can load it all into its own resources.
Next on the list: remappable buttons.
This is essential!!!
Hypnoziz
07-04-2011, 11:00 PM
Remappable buttons: COMPLETE
Highscore saving: COMPLETE
Time to take a break from programming. I think I'm gonna add more songs next. I want this to have a database of at least 50 songs before it's packaged and released. I'm running on 40 songs right now, so not much further to go. If you guys have any suggestions for game music you want included in this, please let me know. Also, try and think of a better name for this thing! The temporary one I have now SUCKS. Heh heh.
And if anyone can edit the first post of this thread and have the YouTube video embedded in the post, that'd be amazing. I couldn't get it embedded. Ahhh!!
mattedsmith
07-05-2011, 12:03 AM
This looks fun! I swear there used to be a 'game' on the iPod Mini (that doesn't look so mini any more) which played clips of music that was stored on your phone and invited you to guess which tune within a period of time. Whichever iPod it was on, I enjoyed playing that.
I think it'd be good to speed up the interface somewhat, make it more snappy. The fades, etc look pretty but I'd be worried that it'd become irritating after a while. I also agree with Dazz's comment about genres.
Hypnoziz
07-05-2011, 12:21 AM
I swear there used to be a 'game' on the iPod Mini (that doesn't look so mini any more) which played clips of music that was stored on your phone and invited you to guess which tune within a period of time. Whichever iPod it was on, I enjoyed playing that.
Yes, every iPod these days has a musical trivia app built in, based off the music you have stored. I have to admit, I've spent more time playing that little "game" than I want to admit to...
I think it'd be good to speed up the interface somewhat, make it more snappy. The fades, etc look pretty but I'd be worried that it'd become irritating after a while.
Speed up the interface? Not a problem. I would agree that it's too slow. Even I was getting irritated during the numerous hours of testing.
I also agree with Dazz's comment about genres
Now genres...that's going to come down to how you build your database. I'll look into a convenient way of having the program present genres and have you choose from them. What sort of genres are we considering? A small list of examples would help me greatly.
--------------------
Also, right now the database construction is rough. The program expects a VERY particular format and will throw an error if you do anything wrong (including even a simple space in between certain characters). I'm wondering if I should work on making the database construction easier to manage next...or go towards adding more features before I consider fixing this issue...hmmmm. Just thinking aloud. I think I might go towards developing more features before I tackle the database format issue. After all, if people find the database management to be easy for them, then it shouldn't be an issue.
You see...that's the problem with creating a program. I can use it perfectly fine with NO errors...but making it user-friendly for a community is an entirely different issue. You can't expect everyone to understand its mechanics like you do. =(
Dude, don't rush through development just to get something out. You can't rush a good product. Take your time, program in spurts and don't get burned out. Program the features that you want and build on that later.
mattedsmith
07-05-2011, 01:46 AM
Now genres...that's going to come down to how you build your database. I'll look into a convenient way of having the program present genres and have you choose from them. What sort of genres are we considering? A small list of examples would help me greatly.
Let users define the genres...whatever you pick will piss someone off!
I'd also consider a way of letting one music entry be part of many genres.
Also, right now the database construction is rough. The program expects a VERY particular format and will throw an error if you do anything wrong (including even a simple space in between certain characters). I'm wondering if I should work on making the database construction easier to manage next...or go towards adding more features before I consider fixing this issue...hmmmm. Just thinking aloud. I think I might go towards developing more features before I tackle the database format issue. After all, if people find the database management to be easy for them, then it shouldn't be an issue.
Dazz has already said it...XML is the way forward and will give you some validation of the format of the data before you suck it into the DB. Depending on what you're using to write this software, there are a bunch of libraries to help you parse it, and once you've gotten your head around it, it's so easy to use.
Hypnoziz
07-05-2011, 02:19 AM
Let users define the genres...whatever you pick will piss someone off!
I'm going to make the genres user-definable. Basically, there will be a main database file that lists all genres. Whatever the user inputs here will be used as a genre for the game to run off of. From there, the program can draw out the genres you can choose from. Once you choose a genre, the program will create the trivia options from the genre file referenced from the main database. It's very similar to how Hyperspin has a Main Menu database and then various wheel databases within. Consider each genre to be a wheel of its own and you'll understand the idea.
XML is the way forward and will give you some validation of the format of the data before you suck it into the DB.
Logically, I've got the database issue figured out. That's not a problem. It's just a matter of putting what's in my head down onto paper (or in this case...into a script). I won't require XML files, nor do I plan on using them. Simple text files can do the job and I actually prefer them, since they're easier to edit for the average user. It'll require more program-end editing to ensure that the data is accurate, but I believe the payload will be worth it.
Hypnoziz
07-08-2011, 10:42 PM
I've worked out some kinks and got a fully playable version ready to go. Please feel free to download it and give me your thoughts. I'd be interested to hear what you have to say.
I'm still looking into user-defined genres and difficulty levels, as well as changing the length of the timer. It's currently set at 15 seconds, which is too long, but you'll be able to change that in the next update. Enjoy the freebie of 50 songs to test yourself against (that took a lot of my time too!).
Download link is on the first post of this thread.
metalthrix
07-09-2011, 06:12 AM
I just tried your trivia and i very like the finished product (even if its not finished :) ) But seriously i think this will be in my cab at soon as i can make my own trivia !!! And do you think that when we will have more and more kind of trivias is there will be a trivia choosing menu ?
Hypnoziz
07-09-2011, 06:16 AM
It's definitely not a finished product! Haha!
And do you think that when we will have more and more kind of trivias is there will be a trivia choosing menu ?
Yes there will be a menu to choose what genre of trivia you'd like to use. This genre will be defined by you, the user. For example, you can make your own "Sega Genesis" genre and only have Sega Genesis songs or you could make a genre and call it "Adventure" and fill it with songs from adventure games from every console/arcade.
metalthrix
07-09-2011, 08:39 AM
Just got an idea for you Hypnoziz. One thing that would be awesome is a way to point your hyperspin folder and do the trivia based on what you got in your wheels. That way you could use the actual wheel image for your trivia directly from the hyperspin setup ! Even we could make a sfx folder into the Console system folder that your trivia could use in the same way as wheel image and videos ! what do you think ?