If you're going to be going into the overflows I'd get 2.36.1 and compare the DNAOps from the two. I'm pretty sure the problem is somewhere in there.
Okay Bots, after sorting through pointless timer conditions (if any of those functions take longer than 10 seconds, there's a BIG problem. You'd better not just ignore it) I am left with this:
DNAInsertRandomValue Function:
You changed:
r = Random(0, 1)
DNA(pos).tipo = r
If r = 0 Then
DNA(pos).value = Gauss(-10000, 10000)
x = x + "Inserted value, " + Str$(DNA(pos).value) + " , at pos " + CStr(pos) + vbCrLf
Else
DNA(pos).value = Random(1, 1000)
x = x + "Inserted label, *" + Str$(DNA(pos).value) + " , at pos " + CStr(pos) + vbCrLf
End If
to:
r = Random(0, 2)
DNA(pos).tipo = r
If r = 0 Then
DNA(pos).value = Gauss(-10000, 10000)
x = x + "Inserted value, " + Str$(DNA(pos).value) + " , at pos " + CStr(pos) + vbCrLf
ElseIf r = 1 Then
If Random(0, 2) = 1 Then
Do
Dim t2 As Integer
t2 = Random(0, 200)
Loop Until (sysvar(t2).Name <> "")
DNA(pos).value = sysvar(t2).value
Else
DNA(pos).value = Random(1, 1000)
End If
x = x + "Inserted label, *" + Str$(DNA(pos).value) + " , at pos " + CStr(pos) + vbCrLf
ElseIf r = 2 Then
DNA(pos).tipo = 0
'random sysvar
Do
t2 = Random(0, 200)
Loop Until (sysvar(t2).Name <> "")
DNA(pos).value = sysvar(t2).value
End If
That's change one.
In the mutate function, you changed
newvars (n)
a = a + vartovar(n, x, DNAfrom, DNAto)
at the beginning to:
'''newvars (n)
''''a = a + vartovar(n, x, DNAfrom, DNAto)
(You do know that you only need one apostrophe, right?)
That's change two. Why are we commenting out these lines?
And that's it!
So, what's up with change one and change two? What were you trying to accomplish with each?