ModPlug Central

OpenMPT => Help and Questions => Topic started by: ToaTheBoa on April 21, 2013, 11:58:37

Title: Problems with FastTracker retrigger command
Post by: ToaTheBoa on April 21, 2013, 11:58:37
I especially used lots of R03 to create drumrolls and stuff in FastTracker 2. When importing my fasttracker modules into OpenMPT, it sounds all wrong.

Make something like this on a hihat in FastTracker mode:

|G-401...R03
|G-401...R03
|G-401......

It doesn't sound very good.

Change type to "OpenMPT", the commands are converted to Q03, and everything sounds great. Thats also is how it used to sound in FT2. Seems like the FastTracker mode is less compatible with the FT2 retrigger command than the OpenMPT mode.

Is this really the only way getting it to sound right? Can't I have the module type as "FastTracker" if I want this right?

---

Also when importing I get typical 4 ticks/row and 125 bpm (default FT2 speed). Just converting to OpenMPT makes the Q03 command sound crappy. I have to change the module to 6 ticks/row and adjusting the bpm to 187,5 (which isnt possible, have to go for 187 or 188, creating problems...).

Q03 in OpenMPT mode with 4 ticks/row sounds just as crappy as R03 with whatever ticks/row in FastTracker mode.

Conclusion: R03 with 4 ticks/row in FastTracker mode should sound the same as Q03 with 6 ticks/row in OpenMPT mode.
Title: Re: Problems with FastTracker retrigger command
Post by: Saga Musix on April 21, 2013, 12:12:12
FastTracker 2's retrigger command is extremely dodgy, but to the best of my knowledge, OpenMPT emulates this quirkiness perfectly (i.e. it sounds as bad as FastTracker :) ). If you can find a case where FastTracker 2 sounds different from OpenMPT, please provide a minimal test case in the form of a module (not just pasted pattern content) and I'll have a look at it.
Title: Re: Problems with FastTracker retrigger command
Post by: ToaTheBoa on April 21, 2013, 12:27:03
Well my theory is that the retrigger command uses 6 ticks/row no matter what ticks/row the module has got. Can't remember R03 behaving any different, no matter what ticks/row you used in FT2. In OpenMPT mode, Q03 sounds different when changing ticks/row. Only in 6 ticks/row does it behave as in FT2.
Title: Re: Problems with FastTracker retrigger command
Post by: Saga Musix on April 21, 2013, 12:33:46
Well, sorry to disappoint you but that's simply not true. I have attached an example module, based on your original pattern, with FT2's WAV writer output loaded into the second sample slot. You will hear that FT2's output is just as idiotic as OpenMPT's. The solution is to not put any extra notes next to the Retrigger command, i.e.

ModPlug Tracker  XM
|C-501...R03
|........R03


Instead of this:

ModPlug Tracker  XM
|C-501...R03
|C-501...R03


Edit: Forgot attachment.
Title: Re: Problems with FastTracker retrigger command
Post by: ToaTheBoa on April 21, 2013, 12:47:15
Thats very strange. Was that with speed 4 in FT2? Does it sound the same with 6 ticks/row? I'm 100% sure all my R03 commands in FT2 sounded like OpenMPT's Q03 command with 6 ticks/row. I think I always used speed 4. R03 in FT2-mode now sounds like Q03 does with 4 ticks/row.
Title: Re: Problems with FastTracker retrigger command
Post by: Saga Musix on April 21, 2013, 12:52:02
Apparently there seems to be a difference at speed 4 instead of speed 6, indeed. Everytime you think you know everything about FT2's idiotic behaviour, you just learn something new. I'll see if it can be fixed.
Title: Re: Problems with FastTracker retrigger command
Post by: ToaTheBoa on April 21, 2013, 12:55:07
Woho that would be great. :) I have many many modules with this problem.
Title: Re: Problems with FastTracker retrigger command
Post by: Saga Musix on April 21, 2013, 17:20:26
Alright, after several hours of head-desking and changing exactly one line of code, OpenMPT should be closer to FT2's behaviour now. http://sagagames.de/stuff/mptrack.exe
I won't say that it emulates FT2 perfectly now, because it's only a matter of time until I'm proven wrong again! :p
Title: Re: Problems with FastTracker retrigger command
Post by: ToaTheBoa on April 21, 2013, 18:36:49
Wow. Seems to sound right where I have tested this now. Thank you very much. Your hours of work saved me many more. :)
Title: Re: Problems with FastTracker retrigger command
Post by: ToaTheBoa on April 21, 2013, 19:18:46
One thing I noticed when I tested this. It seems like it doesn't start behaving "normal" until it gets a R03 without a volume command on it. I attached a module where the first 32 rows are wrong, and the next 32 are right (R03 without volume at row 31). Only happens first time after loading module.
Title: Re: Problems with FastTracker retrigger command
Post by: Saga Musix on April 21, 2013, 19:25:03
I hate Fasttracker.
Title: Re: Problems with FastTracker retrigger command
Post by: Saga Musix on April 21, 2013, 19:51:12
Now it should be even more compatible. http://sagagames.de/stuff/mptrack.exe
Please note that combining retrig with volume is still not a good idea, because volume commands effectively delay the retrigger effect by one tick. It's a pretty fucked up command (well, like most FT2 commands).
Title: Re: Problems with FastTracker retrigger command
Post by: ToaTheBoa on April 21, 2013, 20:10:48
Thanks again! I thought it was a good idea in the 90s :)
Title: Re: Problems with FastTracker retrigger command
Post by: Saga Musix on April 21, 2013, 21:02:11
Well, guess what, of course it was still wrong, so another obscure test case is now fixed. Basically, what I said about the volume command + Rxy combo is true, but if and only if the volume is not zero. Updated exe is available under the link found above. How many more bugs will I find in this?
Title: Re: Problems with FastTracker retrigger command
Post by: ToaTheBoa on April 22, 2013, 15:30:36
Hmm. I very oftes used the R command with volume without really noticing any difference in how it sounds. Like in the testmodule I posted. I actually meant it should sound like it did in the last 32 rows. 95% of my modules are made with speed 4 and 50% of my modules has some R02 or R03 in them, and I've never noticed anything strange. Are you sure the "don't use volume on R"-rule also is valid for speed=4? My guess is that the R03 command is somewhat hardcoded to sound right both with and without volume, while the other R's are part of some bizarre formula. Damn, I should have a working copy of FT2 to investigate myself instead of bringing you all these nightmares. :)
Title: Re: Problems with FastTracker retrigger command
Post by: LPChip on April 22, 2013, 15:34:52
I use retrigger a lot too, and the golden rule with retrigger normally is: if you want no volume change, use R8x (or rather Q8x with IT and MPTM) Its how it is described in the manual, at least for IT modules.
Title: Re: Problems with FastTracker retrigger command
Post by: ToaTheBoa on April 22, 2013, 16:02:04
Reading the FT2 manual, the R command is described in a whole different way then I have understood it. Im used to that the R03 gives me double notes and R02 gives me triple, and R01 gives 4 or 6 or whatever. It should sound the same no matter what speed you use (just found a speed 6 module where I've used both R03 and R02 commands). Never used any other R-commands, so different rules may apply there...
Title: Re: Problems with FastTracker retrigger command
Post by: Saga Musix on April 22, 2013, 16:05:35
Quote from: ToaTheBoa on April 22, 2013, 15:30:36
Are you sure the "don't use volume on R"-rule also is valid for speed=4?
Yes, it is true at any speed. It effectively delays the first retriggered note by one tick, which is why the hi-hats still sound a bit weird in that example file you provided. There is no hardcoded exception for R03, and certainly no hardcoded exception for speed 4 either. R03 at speed 4 with a volume command means that the note is effectively retriggered after 4 ticks instead of 3, which in return means that there is no retriggered note at all. You probably just never noticed this because it doesn't sound "wrong".

Quote from: LPChip on April 22, 2013, 15:34:52
I use retrigger a lot too, and the golden rule with retrigger normally is: if you want no volume change, use R8x (or rather Q8x with IT and MPTM) Its how it is described in the manual, at least for IT modules.
That is completely unrelated to the problem, and besides, Q0x and Q8x do the same in IT / MPTM - there is no volume slide memory for this. On the other hand, R0x repeats the last retrigger fade and R8x disables the retrigger fade in XM. If you quote the manual, at least quote it correctly.

QuoteReading the FT2 manual, the R command is described in a whole different way then I have understood it. Im used to that the R03 gives me double notes and R02 gives me triple, and R01 gives 4 or 6 or whatever. It should sound the same no matter what speed you use (just found a speed 6 module where I've used both R03 and R02 commands). Never used any other R-commands, so different rules may apply there...
The FT2 manual does not describe any of FT2's bugs and thus does not describe the command correctly. In theory R02 should just retrigger the note after two ticks, but as I have now said multiple times, there are several factors which influence this in FT2 - one being instrument numbers (which reset the tick count to 1) and volume commands (which prevent the tick count from increasing on the first tick).
Title: Re: Problems with FastTracker retrigger command
Post by: ToaTheBoa on April 22, 2013, 16:39:21
Taking a look at a module where I used the R03 effect quite heavy, and that module sounds correct. The interesting thing is that I then used R02 when also setting volume on note, and I used R03 when not having volume on note. Both gives nice double effect. Damn, I kinda knew about it in 1997! (guess I experimented until it sounded right...). I will check more modules....
Title: Re: Problems with FastTracker retrigger command
Post by: Saga Musix on April 22, 2013, 16:49:35
If everything sounds as intended, you're just lucky that it worked in your module, but the difference with and without volume effects next to Rxy should be really obvious. I really cannot say much more about this except from reiterating that Rxy parameters seldomly ever do what you expect them to do by just looking at the plain parameter numbers. Is really much more to argue about this? Just set the tempo of your example module to 32 to make it really obvious, and then remove all volume effects. Quite a drastic change in the rhythm, eh?
Title: Re: Problems with FastTracker retrigger command
Post by: ToaTheBoa on April 22, 2013, 17:26:53
I'm starting to remember I always struggled with this command in FT2, and usually just tested out what sounded best. Thats always the right answer.

Strangely enough, in another module here I see I used R03 on a note with volume command, where R02 sounds more right. (tempo=130, speed=4) Oh well. Maby it sounded weird back then too.

Seems to me most modules are ok now, so thanks a bunch for your help. :)