Tracker song/tempo stops randomly at tempo change

Bug Description

I have tempo change FX, accompanied with random FX value.
Tempo is set to 88 and random FX is set to 40, so the minimum achievable tempo should be 48 according to FX hint. But when playing the pattern, it sometimes, often, stops completely at the step.

Reproduction Steps

  1. Set song tempo to 88, have pattern in 16 steps
  2. On track 1 select random step and set FX1 to T88 (Tempo 88), FX2 to f40 (Random FX value 40) on the same step, and no note or instrument value.
  3. Select next step and set tempo FX back to 88.
  4. Let it play infinitely, maybe have some other instruments playing to notice changes.
  5. I also have Midi CCs and notes going out on other tracks, all incoming midi is turned off.

Occurrence

Bug is reproducible sometimes, maybe outgoing midi CCs are the problem?

Found in

Version: 1.6
Build: I do not know

Attachments

None

1 Like

Update: i ran into the issue as well, after testing even further, see comments below this one.

Hey @Radiowaves i’ve reproduced your steps and let the pattern run for 20-30 minutes without issues.

My tracker is running the latest firmware (1.6.0).

Here’s a screenshot of my pattern just to confirm that i (hopefully) reproduced it as closely as possible to what yours looked like. Let me know if i missed something.

I’ve tried with placing a T88 right afterwards (on step 10), one later (step 11) and without. Seems to work regardless.

If this looks close enough, then i can’t reproduce your behaviour.
If you can - upload the project that you were working on to this post.
Maybe we can figure out what’s happening that way.

@Radiowaves Same problem here, was confused as well as i first encountered the issue. But i think i found out why it does stop sometimes:

  • the lowest tempo you can set the Tempo effect to is TSTP (tapestop; very handy to place in the last pattern of your song)
  • the first (real) bpm you can set it to is T10bpm, after that it’s T 12 bpm, T 14 bpm (always Txxx+2bpm)
  • Random FX Value always influences the steps as you can inputthem meaning, so 1 in random fx value will result in 1 settable difference

meaning e.g.

Tempo T 20 Random FX Value f 1 will lead to the tempo either being T 22 or T 18

or using the example you provided

Tempo T 88, Random FX Value f 40 will lead to Tempo being between TSTP and T 168

to fix that problem (with Tempo still set to T 88) u’d need to use Random FX Value f 29

u can calculate the Random FX Value you need for each Tempo so it’s in the range with TSTP just exclude by using the follwing formula:


WORKAROUND FORMULA

f = (T - 10) / 2

(f = Random FX Value, T = Tempo Value)


Still glad you reported this design issue though, it’s really confusing and took way too long to figure out…also it shouldn’t be too hard to fix (i hope).

Feel free to correct me if i got anything wrong.

2 Likes

@moe is definitely on to something! :partying_face:

I apparently got lucky and the randomness of it all ended in me never hitting TSTP :laughing:
I just restarted the test pattern one more time and within the first 4 cycles it finally stopped :rofl:

What?
I think you are on to something here but I can not really understand what am I supposed to be calculating. Tracker manual for random FX value clearly says random will affect +/- the amount set from set FX value. In case of T88 f40, it is 88 ±40, so the randomized value is between 48 and 128. What am I not understanding here? Or is the manual plain wrong?

Just tested it again and it happened again. I am really not sure why it is not reproduceable by others.

Muutlik.zip (1.6 MB)

I uploaded my project file, it is simple, just stock samples that come with tracker and some midi stuff.

Hopefully this explains better what i mean.
This table shows the first couple of values you can enter in different effects - the right side is is tempo.

→ there are no odd numbers in Tempo fx


i think that’s how it’s affecting the Tempo effect:

i can (kind of) prove that point:
recreate the bug but use Tempo Fx T 10 and Random Fx Value f 1. In

The formula i mentioned gives u the largest value u can put the Random FX value in without the possibility of getting TSTP.

I hope that this kind of explains the point i was trying to make. If that’s not the case, feel free to ask. I’m sorry that my explanations are a bit rough, but english isn’t my first language.

Thank you, I now understand, kind of.
So the explanation on random FX value effect is wrong, it does not act like is explained on tempo FX, because tempo FX acts differently. But doing this math while composing is confusing and makes me wonder how many else FXs are wrong.

2 Likes

@here Hi all, sorry you’re having issues and confusion and apologies for late reply. As others have already suggested, this behavior is “by design”: random FX value can trigger TSTP and stop the playback in some cases, exactly as explained above. Thanks for that. I will close the topic.

@Radiowaves please tell me if it’s still confusing for you or which part can be improved. Writing explanations in the Tracker UI would be a bit extreme, but maybe we can add some extra sentence to avoid others getting confused. Thanks!

1 Like

I appreciate your reply. Unfortunately I don’t understand this design choice, making the user do unnecessary maths. I assume it is due to some hardware limitations.
Simple solution would be to have it change the tempo according to value, but rounding the value either up or down to closest possible value? It still would not display correct value, but it would be closest.

Otherwise, I completely understand that it is difficult and counterintuitive to write lengthy explanations into UI. But in this case I, and perhaps some others, was taken by surprise by this tempo behaviour.

Perhaps the explanation to chance would include something like this: “The range (from -255 to 255) is scaled to the range of FX value.” – although this would not be true, but perhaps gives some direction for better wording.

i’ve got an idea, though this wouldn’t be just a graphic update or an extra sentence, but change the way the Tempo FX and Random FX value FX work together. This is how it would be the most intuitive in my opinion:

when using random fx value on tempo…

  • when the tempo is set to Txxx (> TSTP), exclude TSTP
    for example: T012 f002 → only T010 - T016

  • when the tempo is set to TSTP, it is included
    for example: TSTP f002 TSTP - T012

like that, it would still be possible to have tapestop in your random selection of tempos if u want to, though it wouldn’t be included by accident anymore.

Feel free to critize or improve the idea.

@here OK, I talked to the team once again and we decided to accept this. We’ll exclude the “stop” value when randomizing Tempo FX and update the description.

4 Likes