This commit performs both lossless and lossy compression on every .obj and .png in homedecor. The .png files were all 100% losslessly compressed using ect.exe and optipng.exe (more details below) at maximum settings. The .obj files were lossy-compressed so that comments were removed, trailing 000's were removed and all numbers rounded to 3 decimal places max. Blender exports at 6 decimal places but for minetest, 3 decimal places is the absolute maximum a person with anything under a 256K screen will ever need.
## Results
```
Original entire modpack size: 6343.5 KB
New entire modpack size: 5312.2 KB
Total Reduction: 1031.3 KB (16.3% less)
```
Please note that actual media size is likely more like 4,500 KB so media reduction is more around 20-25%.
## Details / What actions were actually performed
Used these programs:
https://github.com/ExeVirus/Compress-Objhttps://sourceforge.net/projects/optipng/https://github.com/fhanau/Efficient-Compression-Tool
Ran this command on every .obj: (fast)
```
luajit.exe compress.lua -f <file> -precision 3
```
Ran these commands on every .png: (slow)
```
ect.exe -9 -strip --allfilters-b <file>
optipng.exe -o7 -strip all -clobber <file>
```
Note that for future compression, I recommend only using optipng.exe instead of both. ECT can get better results but it takes a LOT longer and only ever saves another 1-2% of the file size. Not worth an extra 10-20 seconds per texture file in my opinion.
## Time spent
Roughly 2 Hours from start to finish + commit + PR
if you express the connections in ascii where N is the Node 1 is connected and 0 is not connected:
```
y+0: 010
1N1
010
y+1: 010
111
010
y-1: 010
111
010
```
This code structure is more easy to read / a very close representation of the sketched layers.
```
Undeclared global variable "mesecon" accessed at ...etest/mods/homedecor_modpack/homedecor_lighting/init.lua:852
Undeclared global variable "mesecon" accessed at ...etest/mods/homedecor_modpack/homedecor_lighting/init.lua:898
```
- Remove intllib support
- Fix luacheck warnings (except for 1 I don't know what to do)
- Removes homedecor_common/mt_game_beds_functions.lua (we can get the
function directly from `beds` mod instead of using an obsolete copie; I
have not re-enabled bed-sleeping, but it should work)
- Add screwdriver to optional_depends
- Fix luacheck warnings (mostly removing unused/legacy stuff)
Note: sm_light used to be a light_source value for lattice small lantern,
but when this was changed, only half of the lines were deleted
(including the declaration). The other half has been preserved because
it was part of an if-arm that "seems" unrelated (but it only seems).
- Improve french translation
- Update .luacheckrc to allow signs_lib in globals since the current API
doesn't allow to have it read only (added a FIXME, needs a addition to
signs_lib, ping @VanessaE)