So the only way I could work around is creating a server-sided script. On startUp calculating the filesizes, saving it into a variable. Then whenever the client joins, the client-side requests that variable (via events). If you need an example of the script.
 
local fileList = {"test.dff"}
local allSizes = 0
function calcAll()
	for i, k in pairs(fileList) do
		if fileExists(k) then
			allSizes = allSizes + fileGetSize(fileOpen(k))
		end
	end
end
calcAll()
function requestAll(requestClient)
	triggerClientEvent(requestClient, "startDownload", root, allSizes)
end
addEvent("requestSize", true)
addEventHandler("requestSize", root, requestAll)
local fileList = {"test.dff"}
function startDownload(fileSizes)
	outputChatBox("All size: " .. fileSizes)
	for i, k in pairs(fileList) do
		downloadFile(k)
	end
end
addEvent("startDownload", true)
addEventHandler("startDownload", root, startDownload)
triggerServerEvent("requestSize", root, localPlayer)