Better file overriding. This work is done on the server which allows for smaller filepaths, less trash on the pack and less work on the client.
Changed the structure of the pack file. Less seeking back and forth on the server, less bytes to write. A little bit harder to reconstruct the filesystem on the client though.
Oy vey, get out of here.
How didn't I noticed weapons.OnLoaded? Entity loading modified.
Exchanged RunStringEx for CompileString and immediate function calling. Let's hope this mitigates some problems with debug stacks.
file.Find sorting.
We're getting there.
Very functional and *ready* for mass prod- I mean testing.
One time CRC check with caching.
Removed a return after an error throwing (cleaning).
Removed dependencies and requiring our single internal binary module.
"Hacky" way to send the pack file hash to the clients (using stringtables, they're supposed to be super reliable, let's hope they're fast enough).
Code cleaning.
Possible perfomance improvements (don't require the creation of tables where it isn't needed).
Replaced multiple Get calls with GetSingle (2 tables less per call).
CRC check is made even if file is apparently empty (might not be the case and util.Decompress simply failed).