Instrumentalist, the (not) GH copycat!

Show off your games, demos and other (playable) creations.
Post Reply
User avatar
ArchAngel075
Party member
Posts: 319
Joined: Mon Jun 24, 2013 5:16 am

Instrumentalist, the (not) GH copycat!

Post by ArchAngel075 »

Guitar Hero, GH, is a popular rhythm and music based game where colored notes "fall" towards the bottom of the screen and the player must hit corresponding keys as needed when they pass into a zone. The reward is that of having (sometimes) wonderful music playing and the almost like feeling of being a guitarist. The game focuses mainly on fast reflexes, a good sense of rhythm and the ability to match colored circles to colored circles.

I stumbled upon this question on playing GH or GH like games :
It would be more fun should one be able to play his/her/its own music.
Intrumentalist hopefully provides a way for one to take a song and "fret" it so that one can happily enjoy that song in game.

Instrumentalist currently features :
1. A weak but semi-live editor for "fretters",
2. A RB matching design. - but will be changed to use themes in future!
3. A working notes system with some powerful customization (some customization not yet possible, but its as easy as adding "padding = X" to a file)
4. A working tempo-like system, its not real tempo, but it works perfectly.
5. Customize notes semi-live, that is add/remove/change a note and jsut rerun the song to update and preview changes!
6. Multiple audio file format support and easy song adding (not really since songs are loaded from within a folder in the program for now)
7. Easy to do fretting! its a single line = a single note!
8. Control the song ingame using Q E S and O!
Q - Previous song.
E - Next song.
S - Play if paused or stopped, pause if playing.
O - JUMP - jump to a specific time specified in fret.lua (see fretting)
9. Current keys are :
Z (Green) X (red) C (yellow) V (blue) B (orange) and "kp0" (strum)

DOWNLOAD
https://www.dropbox.com/s/soam21o33b85u ... ental.love

There are currently two somewhat fretted songs provided with the program for examples and experimenting, but feel free to fret your own songs!
(the example songs are not owned by me, i merely use them to test the program)

A very extensive changelog is available in the .love file.

How do I add or edit a song using instrumentalist? (aka fretting)

For now songs are loaded from the "songs" folder provided inside the .love, this means that to edit and add your own songs you need to unzip the program!
-in future songs will be loaded from %appdata%.


Now you need to go into songs folder!
Next make a folder and name it how ever you wish, inside this folder make a fret.lua file and copy the audio file your song will use. (formats supported are mp3 and ogg)

Now open the fret.lua and you can begin adding notes!

to add a note use this :

Code: Select all

fret_newfret({t = (integer),colors = {table},long = false or integer,chord = boolean,soft = boolean})
NOTE - you must specify as shown, the only optional values are soft and long (defaults to false)
what does this mean?
1. t = () ; this specifies at what point in the song does the note appear, it can be very specific as 4.666666667892, BUT you must use "t ="

2. colors = {} ; this is a table containing what colors are used in the note in ascending order [green,red,yellow,blue,orange]. ie a green note is "colors = {"green"}" and a green and red chord is "colors = {"green","red"}" NOTICE HOW its ascending green -> red not red -> green.

3. long = false or integer ; this defines long notes, that is if a note is held down. If the note is a long note then specify the time the note stops being held, if it isnt held (ie not a long note) then either omit long, or set long to false.

4. chord = boolean ; this is a double check for chords, it is optional(yet reccomended) to use this if you note is a chord.

5. soft = boolean ; a soft note is a note that doesn't require you to strum, ie hit the color and strum key. in GH is it a glowing note and currently it renders as a normal note with a black rectangle top in instrumentalist.

and thats IT! every note is specified as one of those lines, so three fret_newFret() will mean three notes!
OPTIONAL : TEMPO and JUMP
The Tempo can be specifically set for that song by adding "GLOBAL.TEMPO = integer" to the songs fret.lua .
I recommend a tempo between 350 and 500.

Similarly a feature called JUMP can be set by adding "JUMP = integer" to the fret.lua file.
JUMP is a feature where on pressing "o" during the playing of a song the song will automatically skip to the number defined by JUMP. This is perfect for crossing large sections of a song quickly.

for a good example if you are lost. here is a extract of one of the provided songs :

Code: Select all

  
GLOBAL.TEMPO = 350
JUMP = 25
  fret_newfret({t = (0.7),colors = {"green","red"},long = 4.8,chord = true})

  fret_newfret({t = (8.7),colors = {"green","red"},long = false,chord = true})
  fret_newfret({t = (10.7),colors = {"red","yellow"},long = false,chord = true})
	fret_newfret({t = (12.7),colors = {"red","blue"},long = false,chord = true})
	fret_newfret({t = (14.7),colors = {"yellow","orange"},long = false,chord = true})
	
	fret_newfret({t = (16.7),colors = {"green","red"},long = false,chord = true})
  fret_newfret({t = (18.7),colors = {"red","yellow"},long = false,chord = true})
	fret_newfret({t = (20.7),colors = {"red","blue"},long = false,chord = true})
	fret_newfret({t = (22.7),colors = {"yellow","orange"},long = false,chord = true})
	
	fret_newfret({t = (24.2),colors = {"yellow","blue"},long = false,chord = true})
  fret_newfret({t = (24.38),colors = {"yellow","blue"},long = false,chord = true})
Planned for next release :
Open up more customization options,
Load songs from %appdata% instead
Basic better editor!
some small graphic changes.

-If you feel my OP is ugly and needs tidying up please speak out! it is really a wall of text atm
Post Reply

Who is online

Users browsing this forum: No registered users and 30 guests