Thanks Benjamin,
Thanks for being honest and for giving your review and opinion and offer for help I really appreciate it.
So yes the rhythm of the music the beat isn't perfect, right now we just play it repeatedly and you can advanced (skip) or music.
This is because I wanted to defer it. When you're making a game you have to replay it over and over, I wanted some music, non copyrighted stuff, but didn't want to let it occupy me until I made a working prototype. My bad friend.
We have right now 40 music tracks, made in a midi format but literally expressed in lua text. Custom made functions that work only in the prog at moment, although I have considered an external tool lol.
We use 2 synth modules:
https://github.com/sinshu/meltysynth
And:
https://sourceforge.net/p/mscore/code/HEAD/tree/trunk/mscore/share/sound/TimGM6m...
I liked them for their size and gritinessssssssss lolz.
But you're right we should add more energy. Horde mode is really just a demo, the quest mode is the future, have you tried that, and thought about how cinematic music might be applied or just horde?
I really do thing a story driven mode (if you like it) will give to moods and swings more.
But if its Horde you are interested, let me know how the moods and swings should ride.
But as far as adjustments I have tried to make quest mode ride with the mode, but less with horde and that might be a probelm Its hard to program queues, and if you have expirence please help me. Most of my quests are in lua also, and we try to do things in a declerative way. If an enemy enters the room in a circus honestly? I want menacing circus music!!! Lol.
Here are some samples of the lua DSL I've got here for writing songs, these are all just pieces and need assembling into full pieces:
-- 41. Witch's Brew - Spooky / Quirky Potion-Brewing Theme
-- ========== Section A: Creeping Into the Lab ==========
-- Celesta melody; creepy, music-box-like with detuned intervals
local celesta_a = {
{EXPRESSION, 70},
{SUSTAIN, ON},
{E4, Q, 75, 0}, {F4, E, 60, -30}, {Gs4, Q, 80, 15},
{A4, E, 55, 0}, {REST, E},
{B4, Q, 85, -20}, {C5, E, 60, 0}, {B4, E, 55, -20},
{Gs4, Q, 75, 15}, {E4, Q, 70, 0},
{REST, Q},
{Ds4, E, 65, 25}, {E4, E, 60, 0}, {Gs4, Q, 80, 15},
{B4, Q, 85, -20}, {A4, E, 55, 0}, {Gs4, E, 60, 15},
{F4, Q, 70, -30}, {E4, H, 75, 0},
{REST, Q},
-- Sudden loud accent
{C5, E, 120, 0}, {REST, E},
{E4, Q, 65, 0}, {F4, E, 55, -30},
{Gs4, Q, 75, 15}, {A4, Q, 70, 0},
{B4, E, 60, -20}, {Gs4, E, 55, 15},
{E4, H, 75, 0},
{REST, H},
{SUSTAIN, OFF},
}
One of the greatest inventions in this lua adventure was the drum rolls:
--
-- Section D: Half-time breakdown with heavy ghost work
-- Sparse kick, lots of ghost notes, splash and china accents
--
local breakdown = drums(S, {
-- | 1 e & a 2 e & a 3 e & a 4 e & a | 1 e & a 2 e & a 3 e & a 4 e & a | 1 e & a 2 e & a 3 e & a 4 e & a | 1 e & a 2 e & a 3 e & a 4 e & a |
CHINA_CYMBAL = "X...............................................X...............",
SPLASH = "..............X...............................X.................",
RIDE = "..x...x...x...x...x...x...x...x...x...x...x...x...x...x...x.",
SNARE = "..o.o...X...o.o...o.o...X...o.o...oo.o..X...o.o..oo.o.X.o.o.o.",
KICK = "X.......x.......X...............X.......x...........X.........",
CLOSED_HAT = "x...x...x...x...x...x...x...x...x...x...x...x...x...x...x...",
LOW_FLOOR_TOM = "..............................x.x...............................x.x.",
})
I'm geeking out a little, but basically the story is, the game can take direct midi if required for the music atm, I could add greater wav support easily enough.
rh.