I am having a very frustrating issue on my server with some custom textures that I made for a mod. The mod is called 'antum_overrides' & simply overrides item definitions & craft recipes of other installed mods. The mod & its textures are currently installed in the game that the server runs:
The mod's code overrides the horses (craft items) from kpgmobs to simply change the textures for the inventory & give the horses a different description.
Your phone or window isn't wide enough to display the code box. If it's a phone, try rotating it to landscape mode.
- Code: Select all
minetest.register_craftitem(':kpgmobs:horsearah1', {
description = 'Black Horse',
inventory_image = tdir .. '/horse_black',
on_place = function(itemstack, placer, pointed_thing)
if pointed_thing.above then
minetest.env:add_entity(pointed_thing.above, 'kpgmobs:horsearah1')
itemstack:take_item()
end
return itemstack
end,
})
Originally, the textures were working fine. But I later moved the textures from the mod & placed them in a texture pack in the client's home directory (${HOME}/.minetest/textures/antum) for testing, restarted the server & the client. The test worked fine, so I moved the textures back to the mod's directory & restarted the server & client once again. But now, the client can't locate the textures & I don't understand why. The directory layout & code are the same as before I moved them.
I have tried clearing the clients cache:
Your phone or window isn't wide enough to display the code box. If it's a phone, try rotating it to landscape mode.
- Code: Select all
$ rm -rf ${HOME}/.cache/minetest
I don't know if the problem resides client or server side.
I hope that my problem is clear, & apologize if it is not. I'm very frustrated because I think it is probably a very simple issue & I am just missing something.
OS info:
Linux Mint 64-bit
Your phone or window isn't wide enough to display the code box. If it's a phone, try rotating it to landscape mode.
- Code: Select all
$ uname -srm
Linux 4.4.0-34-generic x86_64
Minetest server info:
No customizations were made the server code. I only made a custom build so that I could run it in place & use a current version that has the 'minetest.clear_craft()' method.
Your phone or window isn't wide enough to display the code box. If it's a phone, try rotating it to landscape mode.
- Code: Select all
$ /opt/games/minetest-server/bin/minetestserver --version
Minetest 0.4.14-dev-fb20b45-dirty (Linux)
Build info: VER=0.4.14-dev-fb20b45-dirty BUILD_TYPE=Release RUN_IN_PLACE=1 USE_GETTEXT=1 USE_SOUND=0 USE_CURL=1 USE_FREETYPE=1 USE_LUAJIT=1 STATIC_SHAREDIR="."
Minetest client info:
Your phone or window isn't wide enough to display the code box. If it's a phone, try rotating it to landscape mode.
- Code: Select all
$ /usr/bin/minetest --version
Minetest 0.4.14 (Linux)
Using Irrlicht 1.8.3
Build info: VER=0.4.14 BUILD_TYPE=None RUN_IN_PLACE=0 USE_GETTEXT=1 USE_SOUND=1 USE_CURL=1 USE_FREETYPE=1 USE_LUAJIT=1 STATIC_SHAREDIR="/usr/share/minetest"
--- SOLVED ---
I figured out what was wrong. It seems there is a little bit of a naming convention incompatibility between the server & client. While the client will load textures from subdirectories, the server cannot. And, the client will also load textures if the '.png' extension is omitted. The server requires the extension.
So, I moved the images out of the subdirectories & explicitly declared the filename with '.png' in the scripts.