My favorites | Sign in
Project Home Downloads Wiki Issues Source
New issue   Search
for
  Advanced search   Search tips   Subscriptions
Issue 102: Add support for Rock Band style drum fills
10 people starred this issue and may be notified of changes. Back to list
Status:  Fixed
Owner:  chris.paiano@gmail.com
Closed:  Jan 2009


Sign in to add a comment
 
Project Member Reported by chris.paiano@gmail.com, Oct 25, 2008
-Add drum fill sections, with required green fret / cymbal hit at end to
continue streak (or maybe to activate starpower instead?)
Oct 25, 2008
Project Member #1 chris.paiano@gmail.com
Need more information on the specifics of how this works.

Need GFX for special neck
Nov 14, 2008
Project Member #2 chris.paiano@gmail.com
See  issue 108  for method to create the special neck GFX.
Nov 15, 2008
Project Member #3 chris.paiano@gmail.com
"
As for drum fills, the green note at the end activates OD/SP yes (its a mini-BRE but
with a different function).
"

OK, that makes sense.  So -- how does the game determine when to create a drum fill?
 I've never seen any MIDI text events that denote where valid drum fill sections
are... does it just replace a random full measure with a drum fill some time after
the drummer gains enough overdrive for activation?

These are the kind of details I just don't have access to without the real game. 
Anyone have some relevant observations?
Nov 15, 2008
Project Member #4 chris.paiano@gmail.com
This may require the ability to properly read in Rock Band starpower phrase markings;
I can almost see how perhaps drum fills are automatically placed X number of measures
after a starpower phrase.
Nov 15, 2008
Project Member #5 chris.paiano@gmail.com
Starpower phrase is  issue 107 .
Nov 17, 2008
#6 dutur...@gmail.com
"So -- how does the game determine when to create a drum fill?
 I've never seen any MIDI text events that denote where valid drum fill sections
are... does it just replace a random full measure with a drum fill some time after
the drummer gains enough overdrive for activation?"

I'm not exactly sure as when does the first fill start after you can activate
overdrive but it seems to be set to start on the beginning of midi events (chorus,
verse, solos etc ).

If the OD/SP isn't activated after a fill it just repeats the fill after x seconds /
measures (haven't actually looked the time between fills) till you eventually
activate it. If you have the time, look at this video
http://www.youtube.com/watch?v=awmdZ6vbuTE&fmt=18 from 1:46 (at the drums, to be more
precise).
Nov 22, 2008
#7 azman2000@gmail.com
If possible, can you put these fills in rock band style mods, and allow star power 
to activate by pressing Yellow-Blue in guitar hero style mods? Guitar Hero World 
Tour has star power activate by pressing Yellow and Blue at the same time on rock 
band drums, and both cymbals on the world tour drums.
Dec 7, 2008
Project Member #8 chris.paiano@gmail.com
Looks like I might be getting a drum set soon after all!

So... this is coming soon :)
Labels: -Priority-Low Priority-Medium Milestone-Release-3.035
Jan 2, 2009
Project Member #9 chris.paiano@gmail.com
(No comment was entered for this change.)
Labels: Milestone-Release-3.100
Jan 3, 2009
Project Member #10 chris.paiano@gmail.com
Beginning focused development on this issue.
Status: Started
Jan 3, 2009
Project Member #12 chris.paiano@gmail.com
Progress so far (not committed yet) - got MIDI note recognition working for note #124
(one of 5 drum fill / BRE / freestyle note markers always present), will generate and
display the 5 lanes for Guitar parts so far (using a new standard 2-image custom tail
with full width).

Demonstration screenshot in a test song with a ridiculously short freestyle section
marked so both ends of the lane tails can be seen:
http://i40.tinypic.com/hwczlx.jpg
Jan 3, 2009
Project Member #13 chris.paiano@gmail.com
Above progress committed in r686.
Jan 7, 2009
#16 ryanturcotte@gmail.com
The current progress on this issue from r713 doesn't work as intended, obv. All the
drum fill markers become BREs.
Jan 8, 2009
#17 ryanturcotte@gmail.com
I believe you also have to hit the drums during the fill at least 3 times before the
last cymbal note will show up.

It might be easier to get BREs working for drums first without drum fills and then do
the drum fills later.
Jan 8, 2009
Project Member #18 chris.paiano@gmail.com
Yep, thats the plan.
Jan 9, 2009
#19 ryanturcotte@gmail.com
voleshnebyi - You need Auto Drum SP : Off, else it will give a seg fault once you get
it I believe.

I'm testing it right now, with SP : Off the song plays normally but I forgot to turn
BREs on so no fills. Maybe need some new option for automatic star power vs. drum
fill SP.
Jan 9, 2009
#20 ryanturcotte@gmail.com
Yup, closer but not all there. Can't activate the SP with the last green hit. 

Might want to make it so the standard drum sounds from rock band play during the drum
fill instead of the drum track (the start of drum fill shuts off drum track).
Jan 9, 2009
#21 ryanturcotte@gmail.com
Also, you shouldn't be awarded any points during the drum fill notes (so not like the
BREs). 

I *believe* you get points for the last green hit, but I'm not positive.
Jan 9, 2009
#22 MofoMan2...@gmail.com
Also, Jurgen needs logic to hit the crash cymbal at the end. It'd also be funny if he
had some simple fill playing logic, i.e. hitting a snare every 16th note until the crash.
Jan 9, 2009
Project Member #23 john.stumpo
My brother just tried to test drum fills (he's more of a drummer than me), and when
he didn't have enough OD the game was leaving gaps where the drum fills would have
been.  On two occasions so far, he had no OD, and on hitting a green note after such
a gap, the game crashed with the following in the log:

Traceback (most recent call last):
  File "L:\fofix\trunk\src\GameEngine.py", line 801, in main
    done = Engine.run(self)
  File "L:\fofix\trunk\src\Engine.py", line 132, in run
    self._runTask(task)
  File "L:\fofix\trunk\src\Engine.py", line 123, in _runTask
    task.run(ticks)
  File "L:\fofix\trunk\src\Input.py", line 232, in run
    self.broadcastEvent(self.keyListeners, "keyPressed", id, u'\x00')
  File "L:\fofix\trunk\src\Input.py", line 151, in broadcastEvent
    if getattr(l, function)(*args):
  File "L:\fofix\trunk\src\GuitarScene.py", line 4067, in keyPressed
    res = self.keyPressed3(key, unicode, control)
  File "L:\fofix\trunk\src\GuitarScene.py", line 4283, in keyPressed3
    self.handlePick(pressed, hopo = hopo, pullOff = pullOff)
  File "L:\fofix\trunk\src\GuitarScene.py", line 2528, in handlePick
    score = int ( score / numFreestyleHits )
ZeroDivisionError: float division

Auto Drum SP is off.
Jan 10, 2009
Project Member #24 chris.paiano@gmail.com
The option "Auto Drum SP" needs to be removed, with a new option in its place:

"Drum Starpower":
  * "Off"
  * "Button"
  * "Auto"
  * "Drum Fill"
Jan 10, 2009
Project Member #25 chris.paiano@gmail.com
(let it be known that the PS button on the PS2/PS3 RB2 drumset is indeed mappable; it
is button # 13)
Jan 10, 2009
Project Member #26 chris.paiano@gmail.com
Progress committed in r742:

Drum fills now actually activate starpower when Auto SP is off.
They still appear to break your streak though.
Jan 10, 2009
Project Member #27 chris.paiano@gmail.com
And Jurgen doesn't play drum fills.  Not gonna fix it, Jurgen just doesn't play drum
fills.  He continues to play the song, which is fine for someone of his skill level.
Jan 10, 2009
Project Member #28 chris.paiano@gmail.com
Progress committed in r743:

Freestyle drum sections will actually play the freestyle drum sounds now.  Seems to
work nicely.
Jan 10, 2009
Project Member #29 chris.paiano@gmail.com
To assist my debugging the freestyle breaking streak and other such strangeness, a
new debug setting has been added in r745:

"Show fill status":
  * "Off" - (default) will not show anything
  * "On" - will show status of freestyle and drum fills' active status similar to
HOPO debugging

Also, now the drum fill cymbal activation note won't show until you have hit 4
freestyle notes - and as you hit those 4 notes, the lanes will grow to full size
instead of just changing to full size.
Jan 10, 2009
Project Member #30 chris.paiano@gmail.com
It seems I've flushed out another bug; certain drum fill sections are too short to be
given a cymbal activation note. Or rather, there is a prerequisite size of at least
one board length - or no activation cymbal note.
Jan 10, 2009
#31 MofoMan2...@gmail.com
Nice work. Couple things though:
1. Sometimes I get a drum fill/freestyle section when I have insufficient overdrive
to actually activate. As such, it just breaks my streak and refuses to give my a
cymbal at the end of the fill, lol. (This is probably something you were referencing
in "strangeness" but I thought I'd clarify.)
2. There needs to be a wait of maybe one or two measures after half the OD meter is
gained before a drum fill is allowed; in some cases the notes right after the OD
phrase become a drum fill right before your eyes, which is something we probably want
to avoid. But isn't extraordinarily important and could probably be its own issue
(the hard part was getting them to work, right).
Jan 10, 2009
Project Member #32 chris.paiano@gmail.com
Progress committed in r746:
You don't always lose your streak during drum fills now... 
Jan 10, 2009
Project Member #33 chris.paiano@gmail.com
Progress committed in r748:

Attempts to locate the RB MIDI section event "big_rock_ending" to use as an indicator
that the next drum fill should be a BRE (the last drum fill is not always a BRE, the
song must have one for it to be treated as such...)
Also, you might actually get through a drum fill or two without losing your streak now.

(also forcing rtmidi module to NOT initialize, as this causes problems on computer
systems with 0 MIDI ports...)
Jan 10, 2009
#34 ryanturcotte@gmail.com
I was going to report that I think p@hotmail.com #1 bug is what you just fixed - it
thinks the last drum fill is some drum fill/BRE thing and inserts it (although
doesn't give you BRE points). I'll test r748 now.

Awesome so far!
Jan 10, 2009
#35 ryanturcotte@gmail.com
I don't think r748 fixed the bug I mentioned, I still saw it on 29 Fingers and Testify.
Jan 10, 2009
Project Member #36 chris.paiano@gmail.com
Progress committed in r749:

If there is a drum fill marker note currently in view, and you just gained enough
starpower to activate overdrive, then the current drum fill marker will be marked as
complete and skipped over.  (no more drum fills popping up in the middle of view;
they will always scroll in).
Jan 10, 2009
Project Member #37 chris.paiano@gmail.com
Progress committed in r754:

Drum fills will no longer break your streak!!!
Jan 11, 2009
Project Member #38 chris.paiano@gmail.com
Progress committed in r757:

1) Enhanced logic that detects when there is a drum fill already in progress or too
close to activate directly after gaining starpower -- now it will track multiple drum
fill sections and mark any that are too close as "completed" (actually "happened" is
the flag name).  Looks like surprise drum fills appearing out of nowhere are gone.

2) The final drum fill won't show up as a BRE unless the song specifically has a
section marker before the last drum fill "[section_big_rock_ending]" just like all RB
and RB2 songs.  Otherwise it should be treated as a normal drum fill.  Guitar and
bass parts will continue to recognize the single BRE marker they have; only drums
will require the [section_big_rock_ending] MIDI section event marker in order to
participate in the BREs.
Jan 11, 2009
Project Member #39 chris.paiano@gmail.com
I've created two very short, simple, silent test songs with Drum and Guitar tests for:

[http://www.mediafire.com/?nvyhczzj0fh MFH's test songs - BREs, Fills, OD, Solos - 9kB]

Big Rock Endings
Drum Fills
Overdrive Sections
Solo Sections

One "song" has a Big Rock Ending; the other does not.

This should demonstrate how to mark these things to anyone who is familiar with a
piano roll and MIDI events.  
Jan 11, 2009
Project Member #40 chris.paiano@gmail.com
Implemented in r759:

Progress on  issue 102 , implements  issue 465  - the game now will find the last drum
note and disable drum scoring after that note has passed, allowing the drummer to
have fun at the end of a song.
Jan 11, 2009
Project Member #41 chris.paiano@gmail.com
Progress committed in r761:

Drum fills will now require you to hit 4 freestyle notes before you are allowed to
activate starpower (even though the cymbal note wasn't showing, it was still hittable).
Jan 11, 2009
#42 ryanturcotte@gmail.com
The fix in r749 doesn't appear to work for me (in r763) with RB Co-op. Not sure if
it's related to co-op code. 

Some appeared out of nowhere once gaining star power.
Jan 12, 2009
Project Member #43 worldrave111@gmail.com
(No comment was entered for this change.)
Labels: Theme-RB
Jan 17, 2009
Project Member #44 chris.paiano@gmail.com
Progress committed in r796:

Now, notes behind drum fills and BREs will be discounted correctly from the note
totals, resulting in proper note hit percentages.
Jan 17, 2009
Project Member #45 chris.paiano@gmail.com
Progress committed in r797:

Now really fixed the note counting / discounting, they still were being counted the
old way in GameResultsScene in two places.  Scores will actually save with the
correct percentage now.
Jan 18, 2009
Project Member #46 chris.paiano@gmail.com
Also, FYI:

RB1's drum freestyle sounds had a crash cymbal instead of a third tom because that's
all those drums could be.

RB2's drum freestyle sounds have a third tom instead of a crash because they expect
you to purchase the Cymbal expansion kit, which will provide up to three cymbals that
can be used to hit notes of the same color (and will also make cymbal sounds during
freestyle).

Yes, I plan to get a cymbal expansion kit (once donation funds reach a high enough
level again) so that I can add support for the three cymbals to FoFiX. They should
appear differently and allow me to play different freestyle sounds when they are hit.
Jan 18, 2009
Project Member #47 chris.paiano@gmail.com
As posted here:
http://www.fretsonfire.net/forums/viewtopic.php?f=11&t=25040&sid=c5b8e2f3a4af4e2a0a86e847d0835ef2&p=341877#p341877

"
Heres what i discovered looking better into it.

1: On freestyle, if u keep your foot down on the kick pedal, one note it plays what u
want and the other dont matter what you play it plays just the bass drum sound.

2: On notes (normal playing), again bass pedal down, it plays the bass drum sound
every note.

3: On drumfills, again bass pedal down, play the bass drum sound every "note".

4: On BRES, again bass pedal down, is the same as drumfills, every "note" it plays
drum sound.

2, 3 and 4 u can resolve the problem by setting the DRUM KICK PEDAL SOUND off. About
the 1 theres nothing u can do about.
"
Jan 18, 2009
Project Member #48 chris.paiano@gmail.com
Well then FoFiX needs to keep track of the event when the bass pedal is released, so
it can tell on hits whether the bass pedal was already held or if it was just hit.

Then I can fix the logic everywhere else, make drum hit sound playing code modular so
it doesn't have to be duplicated everywhere, and this shouldn't be a problem anymore.
Jan 18, 2009
Project Member #49 chris.paiano@gmail.com
Progress committed in r808 should fix all drum sound issues.  I completely rewrote
all drum sound logic, it is now a part of the Drum object as it should be.  Even the
bass kick option works great now, holding the bass pedal down or not.
Jan 20, 2009
#52 janh.d...@gmail.com
Im testing the drum fill, and i noticed that there are some problems. Please don't
see this comment/suggestions as complaint/insulting.

1. Some drum fills just shows up asap my overdrive is ready.
2. Sometimes i don't hear a thing while doing a drum fill. which makes me feel that
im just doing nothing but banging my kit..
3. Graphics/FX is a bit dull compare to the real rb game,(I really want to help if
you tell me how to add fx on it, im a motion graphic artist/ graphic designer)
4. You have to hit the last green note in drum fills more like 98% accurately, i did
hit the green a little bit late and it just break my stroke and do nothing.

That's what i noticed after playing a bit with the beta release, i do know that it's
not yet perfect, but your doing pretty amazing(i've been longing to test the drum
fill feature of RB game since i can't buy an Xbox360 console just to play RB)

I hope i can find a way to help you in development and in funds. Kudos!

Jan 20, 2009
Project Member #53 chris.paiano@gmail.com
Thanks, good notes -- obviously it's still being worked on (well, this weekend when I
have time again).

#1 - Thanks, I know this is still a problem but it's always good to confirm.

If you'd like to help further, you can help me track down #2.  Could you just keep
playing and try to note the situation every time this happens to you?  If you
discover that it only happens when in a certain situation, I will be able to track
the problem down and solve it much faster.  (basically, keep doing what you're doing
and let me know if you find out anything interesting)


Also, on #3 - I still have to add support for hitflames for drum fills (and BREs)...
other than that, feel free to take a look at your theme of choice and examine the
.PNG graphic files.  Edit or re-create any of them you'd like and see how it looks
in-game.  If you come up with some better graphics for either MegaLight theme, please
post the new graphics and some screenshots in the development thread... if you come
up with new graphics for any other theme post in that theme's thread and the theme
owner will most likely use them.

#4 - This is something I will fix; the initial code is quick and dirty, and I know I
have to rewrite it to actually use your selected hitwindow for that note.

Jan 20, 2009
Project Member #54 chris.paiano@gmail.com
(also, the drum fill neck / lanes graphics can be found as freestyletail1.png and
freestyletail2.png in the game's data\ folder.)
Jan 20, 2009
#55 azr...@suddenlink.net
Aside from the sudden drum fills after the OD phrases, the only issue I've noticed 
is in RB Co-op. Completing a drum fill when your partner is awaiting an OD save, 
will activate overdrive and not save the other player. However, if that same drummer 
activates OD through a keymap, it will save the other player as in RB.
Jan 21, 2009
#56 janh.d...@gmail.com
I'll be making a theme strictly for FoFix bundle to make the interface better. How i
wish i can use .swf files as fx for animated effects/backgrounds. I will report other
bugs that i'll find. :D
Jan 21, 2009
#57 janh.d...@gmail.com
Can we somehow rebrand/change the name of the Game? I just thought Frets on Fire
won't make sense anymore since it supports drum notes(which obviously doesn't have
frets). Just a suggestion though. ^^ I was thinking of its name as "Rockstars"
Jan 21, 2009
Project Member #58 azzc...@gmail.com
guitar hero world tour. There's drums in it, but it's still called GUITAR hero. No 
real need for a name change.
Jan 21, 2009
#59 janh.d...@gmail.com
Yeah, because the brand was established before they we're able to think that they can
add a drum part after 3 game releases and Rockband making more money than GH, they
can't afford to lose all those GH fans/players so they just released World Tour,
making it more sensible in solo & band tours, which is why rockband 2 doesn't get the
solo tour option cause it'll ruin the sense playing "Rockband". 

I'm not saying that Frets on Fire isn't establish, as i have said im just suggesting.. :D
Jan 21, 2009
Project Member #60 azzc...@gmail.com
Still FoFiX is a mod of Frets On Fire (and FoF doesn't support drums), is it maybe 
time to start calling it a fork?

In any case this is OT, sorry.
Jan 22, 2009
Project Member #61 evily...@gmail.com
Still OT, FoFiX has been already called a fork for awhile now... see the short
description at the very top of each googlecode page!
Jan 24, 2009
Project Member #62 chris.paiano@gmail.com
Note to self... last on-topic comment was c55.
Jan 24, 2009
Project Member #63 chris.paiano@gmail.com
Progress committed in r844:

Progress on  issue 102 ,  issue 108 , and  issue 477 :

 * Drum freestyle sections now have some basic freestyle hitflames.  
 * Guitar / bass freestyle sections now have some basic freestyle hitflames
 * The regular notes underneath the freestyle lanes will no longer incorrectly show
their hitflames during freestyle.
 * Missing logic was added to ensure no drum fills pop up suddenly when gaining >= 50
starpower
 * Missing logic was added to ensure that a Big Rock Ending section is not killed by
the above starpower gain / sudden drumfill fix above
 * Fixed problem where "Restart"ing a song would result in no "get ready" countdown
Jan 24, 2009
Project Member #64 chris.paiano@gmail.com
Progress committed in r848:

The Overdrive activation cymbal note at the end of drum fills can now be hit late
(after the drum fill section has actually ended but before the late hitwindow has
completely passed).

Also, you can no longer activate overdrive by hitting the cymbal at the appropriate
time at the end of a Big Rock Ending.
Jan 25, 2009
Project Member #65 chris.paiano@gmail.com
I'm considering this issue fixed for the upcoming 3.100 beta 3; any remaining
problems or enhancements for this feature can now be made into separate issues.  The
basic feature of drum fills is complete.
Status: Fixed
Jan 25, 2009
Project Member #66 chris.paiano@gmail.com
Progress committed in r857:

Progress on issue 486:
New setting to replace "Auto Drum SP" --> "Drum SP Mode":

 * "Auto / Fills" (default) - Will use drum fills for starpower activation if markings
exist, otherwise it will be activated automatically when there is enough.
 * "Manual / Fills" - Will use drum fills for starpower activation if markings exist,
otherwise it will require a button press to activate.

Progress on   issue 102  :
Last bit of missing logic was added to prevent the final case in which gaining
starpower while you already had over 50% would cause an incoming drum fill to vanish.

Jan 25, 2009
#67 azr...@suddenlink.net
Does this fix also trigger a player save/rez on drum fills in RB Co-op (I can't 
check, I'm a beta tester) ?
Jan 25, 2009
Project Member #68 chris.paiano@gmail.com
Looks to me like that was already fixed, I checked the code.  Someone will have to
verify.  3.100 beta 3 will be out later today.
Jan 27, 2009
#69 azr...@suddenlink.net
You are correct, it did correct it. Drum fills now rez correctly.
Jan 27, 2009
Project Member #70 chris.paiano@gmail.com
r867 should resolve any remaining crashes involved with drum fills or Big Rock
Endings and GH themes.
Sign in to add a comment

Powered by Google Project Hosting