-
Notifications
You must be signed in to change notification settings - Fork 150
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add optional mod to skip missing Mod check #866
Conversation
@@ -20,6 +20,9 @@ FUNC(paranoid) = { | |||
|
|||
QGVAR(versions_serv) addPublicVariableEventHandler { (_this select 1) call FUNC(paranoid) }; | |||
|
|||
// Skip missing mod check if it is disabled. | |||
if (isNumber (configFile >> "CBA_skipMissingModCheck") && {getNumber (configFile >> "CBA_skipMissingModCheck") == 1}) exitWith {}; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why the isNumber
check?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Not sure if the getNumber could cause errors. But as I am writing this right now I remember the talk from a couple days ago. Fix incoming
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Better name for optional would be missing_mod_check_disable
or disable_missing_mod_check
to go along with other optionals naming.
units[] = {}; | ||
weapons[] = {}; | ||
requiredVersion = REQUIRED_VERSION; | ||
requiredAddons[] = {"CBA_Extended_EventHandlers", "CBA_Versioning"}; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should be lower-case really.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Copied from cache disable
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I figured, still wrong, components are all lower-case.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Uppercase CBA looks good to me tho. But the uppercase Versioning already looked weird when I wrote it.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
But it's still wrong, actual component is cba_versioning
. ¯\_(ツ)_/¯
Doesn't matter with Arma though.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I guess, bet there is a component that doesn't respect it. 😆
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
#endif | ||
|
||
#undef REQUIRED_VERSION | ||
#define REQUIRED_VERSION 1.00 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pointless, this optional requires 2 other components which have required version set from main\script_mod.hpp
anyways.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Same for cache disable then
#include "\x\cba\addons\main\script_mod.hpp" | ||
|
||
|
||
#ifdef DEBUG_ENABLED_CACHE_DISABLE |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should be #ifdef DEBUG_ENABLED_NO_MISSING_MOD_CHECK
.
#define DEBUG_MODE_FULL | ||
#endif | ||
|
||
#ifdef DEBUG_SETTINGS_CACHE_DISABLE |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should be #ifdef DEBUG_ENABLED_NO_MISSING_MOD_CHECK
.
#endif | ||
|
||
#ifdef DEBUG_SETTINGS_CACHE_DISABLE | ||
#define DEBUG_SETTINGS DEBUG_SETTINGS_CACHE_DISABLE |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should be #define DEBUG_SETTINGS DEBUG_SETTINGS_NO_MISSING_MOD_CHECK
.
I think the name |
I don't think I disable versioning completly (https://github.com/CBATeam/CBA_A3/blob/master/addons/versioning/XEH_postInitClient.sqf <- That is version comparison). I only disable the missing mod check. |
Related: #871 |
I still don't see why it has to be an optional PBO, when it could be just a config entry which people can define in In short it should literally be identical to |
So what now? CBA setting or config? Or both? |
A CBA setting for this would be "confusing" because it's only relevant on serverside. Meaning it shouldn't show up on client/mission settings which afaik isn't supported in CBA settings currently. Also to enable the setting you would then either need a serverside userconfig for the settings or you'd have to connect with CBA enabled on clientside and then configure it. Which is a chore on a vanilla server with bisigning enabled. Jonpas to do it the same way as I'm still for optional-pbo. In my case I want this for server-side Intercept. And as all users already need a PBO with config to register their plugin they could also add the config entry into their pbo instead of loading the CBA optional. I guess it wouldn't hurt to make it configFile or missionConfigFile. Just to let all options open. |
Provides the option to disable CBA versioning's missing Mod check which would alert everyone on clientside if client is missing a Mod that uses CBA versioning.
Allows Servers to use CBA (PFH, local events, stuff) in serverside only scripts without annoying each client with a useless message.