How big is a binary allowed to be ?
How big is a binary allowed to be ?

Originally Posted by Jamie
Working as fast as I can on Fusion 3


But if you split it up into multiple messages, you could send a "binary" as big as you want.
Right, yeah okay I'll try that.
It's just the binary splitting business I'm not that familiar with but I'll play around a bit.

Really all you need to do is keep track of the position in the binary you are sending from, and make sure not to send too much binary when you reach the end of it.
Working as fast as I can on Fusion 3
So- forgive my not knowing anything- you send strings from the file/binary piece by piece as long as its less that 65500 bytes and reassemble the file at the receiving end ?
I notice on your original file sender, LB, you set the SendBytesSize at 416 ie. 416 bytes each time ... is that number significant ?
I feel I'm being awfully dim but it'll click soon hopefully :P

That number was very low, I now have it set to about 16384, and that's as far as I wanted to go because that number already makes it lag a little bit. However it's only because the method I used was very poor; I am no designing a file sender example which I hope will show a better way to do it.
The number is not significant at all, as long as your application isn't lagging a whole lot from it.
As I said before, just load the file into the binary object with the binary quickload object, and then use Lacewing's Push Binary action to push binary from the binary object. The binary object has an expression to get the address of the data, then you just add the offset to it for each file chunk. And for the size, you just have to make sure that you don't send more data than there is in the file. Be aware of the fact that there are not very many files that have a size that is an exact multiple of the size of each chunk you're sending; the last chunk of the file will generally be smaller than the chunk size.
And by chunk I mean how many bytes you send at a time.![]()
Working as fast as I can on Fusion 3
I definitely understand the theory now, I don't understand binary enough yet though I think - I'll do some reading!
I look forward to your new example :-)

If you are sending data using TCP (which you'd be insane not to for files) then send the Lacewing max each time. TCP automatically splits and joins individual sends to match the max packet size, so you get the least overhead by sending as much as you can at a time.