Mike Serfass
February 21st, 2024, 01:20
I have an extension with a block of code that activates a few modules on the host and client on startup.
At some point the client side stopped working. I noticed it recently when I added a new module and the players said they didn't see it.
In testing, I confirmed that the Module.activate works on the host machine but not the client for all modules.
Permissions are set correctly on the host. On the client, in the Module Activation window, looking at the list of available modules, all the modules show as available and loadable. The player can manually load all the modules, so it's not permissions.
Here's my block of code:
for _,modules in ipairs(moduleset) do
for _,module in ipairs(modules.modules) do
local info = Module.getModuleInfo(module.name)
if info and not info.loaded then
Module.activate(module.name)
Debug.console(module.name .. " post-activate: loaded", info.loaded, "loading", info.loading, "permission", info.permission)
end
end
end
I added a debug line. On the host machine it emits this:
[2/20/2024 8:02:31 PM] s'SWADE Player Guide post-activate: loaded' | bFALSE | s'loading' | bFALSE | s'permission' | s'allow'
[2/20/2024 8:02:31 PM] s'Quar Dai - Player post-activate: loaded' | bFALSE | s'loading' | bFALSE | s'permission' | s'allow'
[2/20/2024 8:02:32 PM] s'SWADE Effects post-activate: loaded' | bFALSE | s'loading' | bFALSE | s'permission' | s'allow'
[2/20/2024 8:02:32 PM] s'SWADE Adventure Deck post-activate: loaded' | bFALSE | s'loading' | bFALSE | s'permission' | s'allow'
[2/20/2024 8:02:32 PM] s'Mike's Random Tables post-activate: loaded' | bFALSE | s'loading' | bFALSE | s'permission' | s'allow'
[2/20/2024 8:02:32 PM] s'Quar Dai Adventure Deck post-activate: loaded' | bFALSE | s'loading' | bFALSE | s'permission' | s'allow'
On the client machine it emits this:
[2/20/2024 8:03:19 PM] s'SWADE Player Guide post-activate: loaded' | bFALSE | s'loading' | bFALSE | s'permission' | s'disallow'
[2/20/2024 8:03:19 PM] s'Quar Dai - Player post-activate: loaded' | bFALSE | s'loading' | bFALSE | s'permission' | s'disallow'
[2/20/2024 8:03:19 PM] s'SWADE Effects post-activate: loaded' | bFALSE | s'loading' | bFALSE | s'permission' | s'disallow'
[2/20/2024 8:03:19 PM] s'SWADE Adventure Deck post-activate: loaded' | bFALSE | s'loading' | bFALSE | s'permission' | s'disallow'
[2/20/2024 8:03:19 PM] s'Mike's Random Tables post-activate: loaded' | bFALSE | s'loading' | bFALSE | s'permission' | s'disallow'
[2/20/2024 8:03:19 PM] s'Quar Dai Adventure Deck post-activate: loaded' | bFALSE | s'loading' | bFALSE | s'permission' | s'disallow'
Of note is the fact that all these modules are loaded on the host, yet it indicates they're not loaded and enters the if block, after which loaded is still false.
None of these modules are loaded on the client machine, but they're installed.
I even added a block for the host to set permissions. That made no difference.
if Session.IsHost then
moduleset = aDataModuleSet["client"]
for _,modules in ipairs(moduleset) do
for _,module in ipairs(modules.modules) do
Module.setModulePermissions(module.name, "allow")
end
end
end
Did something change?
Thanks in advance.
At some point the client side stopped working. I noticed it recently when I added a new module and the players said they didn't see it.
In testing, I confirmed that the Module.activate works on the host machine but not the client for all modules.
Permissions are set correctly on the host. On the client, in the Module Activation window, looking at the list of available modules, all the modules show as available and loadable. The player can manually load all the modules, so it's not permissions.
Here's my block of code:
for _,modules in ipairs(moduleset) do
for _,module in ipairs(modules.modules) do
local info = Module.getModuleInfo(module.name)
if info and not info.loaded then
Module.activate(module.name)
Debug.console(module.name .. " post-activate: loaded", info.loaded, "loading", info.loading, "permission", info.permission)
end
end
end
I added a debug line. On the host machine it emits this:
[2/20/2024 8:02:31 PM] s'SWADE Player Guide post-activate: loaded' | bFALSE | s'loading' | bFALSE | s'permission' | s'allow'
[2/20/2024 8:02:31 PM] s'Quar Dai - Player post-activate: loaded' | bFALSE | s'loading' | bFALSE | s'permission' | s'allow'
[2/20/2024 8:02:32 PM] s'SWADE Effects post-activate: loaded' | bFALSE | s'loading' | bFALSE | s'permission' | s'allow'
[2/20/2024 8:02:32 PM] s'SWADE Adventure Deck post-activate: loaded' | bFALSE | s'loading' | bFALSE | s'permission' | s'allow'
[2/20/2024 8:02:32 PM] s'Mike's Random Tables post-activate: loaded' | bFALSE | s'loading' | bFALSE | s'permission' | s'allow'
[2/20/2024 8:02:32 PM] s'Quar Dai Adventure Deck post-activate: loaded' | bFALSE | s'loading' | bFALSE | s'permission' | s'allow'
On the client machine it emits this:
[2/20/2024 8:03:19 PM] s'SWADE Player Guide post-activate: loaded' | bFALSE | s'loading' | bFALSE | s'permission' | s'disallow'
[2/20/2024 8:03:19 PM] s'Quar Dai - Player post-activate: loaded' | bFALSE | s'loading' | bFALSE | s'permission' | s'disallow'
[2/20/2024 8:03:19 PM] s'SWADE Effects post-activate: loaded' | bFALSE | s'loading' | bFALSE | s'permission' | s'disallow'
[2/20/2024 8:03:19 PM] s'SWADE Adventure Deck post-activate: loaded' | bFALSE | s'loading' | bFALSE | s'permission' | s'disallow'
[2/20/2024 8:03:19 PM] s'Mike's Random Tables post-activate: loaded' | bFALSE | s'loading' | bFALSE | s'permission' | s'disallow'
[2/20/2024 8:03:19 PM] s'Quar Dai Adventure Deck post-activate: loaded' | bFALSE | s'loading' | bFALSE | s'permission' | s'disallow'
Of note is the fact that all these modules are loaded on the host, yet it indicates they're not loaded and enters the if block, after which loaded is still false.
None of these modules are loaded on the client machine, but they're installed.
I even added a block for the host to set permissions. That made no difference.
if Session.IsHost then
moduleset = aDataModuleSet["client"]
for _,modules in ipairs(moduleset) do
for _,module in ipairs(modules.modules) do
Module.setModulePermissions(module.name, "allow")
end
end
end
Did something change?
Thanks in advance.