Suppose we have an infinite bag that spams tokens and global empty list a, then
Code:
for i = 1, 10 do
a[i]= bowl.takeObject({})
print(a[i].guid)
end
will print 10 identical guids. However, if you just save token objects into a and access it later
Code:
for i = 1, 10 do
a[i]= bowl.takeObject({})
end
...
Some other function that are called much later
...
for i = 1, 10 do
print(a[i].guid)
end
will correctly print 10 different guids.
It seems that game spawns 10 tokens at the same time and need more time than script to reassign guids.