ClanDoolittle Group Management

delpi

Well-Known Member
This is a group management tool that should work across any platform. The only real unique thing is where you would put the custom "ExtraRc" With that in mind, these directions are for 1.8.6.1 in mind.

I utilized ebay's work on DZGM to get started on this and I'm using his display as a basis for the interface window. His idea for the mod inspired me to do this. I only decided to release this since it looks like he retired from the effort. At any point he wants this taken down because it infringes, I will remove it instantly.

Feel free to setup the main folders different if you want, but if you do, don't ask for help.

Support Thread:
http://opendayz.net/threads/clandoolittle-group-management.22025/

ClientInstall

Add this in your description.ext above the 'description.hpp' call
Code:
#include "ClanDoolittle\Setup\GUI\defines.hpp"
Add this add to the bottom of your "description.ext"
Code:
#include "ClanDoolittle\Fixes\Configs\extra_rc.hpp"
#include "ClanDoolittle\Subs\Groups\Setup\GUI\groupManagement.hpp"
Create a custom 'description.hpp' and locate it at '/ClanDoolittle'
Code:
#include "ClanDoolittle\description.hpp"
In the custom 'description.hpp' file right inside 'class RscTitles {' add
Code:
#include "Subs\Groups\Setup\GUI\icons.hpp"
Contents for "extra_rc.hpp"
Code:
class ExtraRc {
    class ItemRadio {
        class ItemActions  {
            text = "Open GroupManagement";
            script = "execVM CD_Groups_Script_loadGroupManagement";
        };
    };
};
In your mission pbo create the file 'ClanDoolittle\Setup\GUI\defines.hpp' with the following contents:
class W_RscText {
idc = -1;
type = 0;
style = 0x00;
colorBackground[] = { 1 , 1 , 1 , 0 };
colorText[] = { 1 , 1 , 1 , 1 };
font = "Zeppelin32";
sizeEx = 0.025;
h = 0.25;
text = "";
};

class W_RscStructuredText
{
access = 0;
type = 13;
idc = -1;
style = 0;
colorText[] = {0.8784,0.8471,0.651,1};
class Attributes
{
font = "Zeppelin32";
color = "#e0d8a6";
align = "center";
shadow = 1;
};
x = 0;
y = 0;
h = 0.035;
w = 0.1;
text = "";
size = 0.03921;
shadow = 2;
};

class W_RscList
{
type = 5;
style = 69;
idc = -1;
text = "";
w = 0.275;
h = 0.04;
colorSelect[] = {1, 1, 1, 1};
colorText[] = {1, 1, 1, 1};
colorBackground[] = {1,1,1,1};
colorSelectBackground[] = {0.40, 0.43, 0.28, 0.5};
colorScrollbar[] = {0.2, 0.2, 0.2, 1};
arrowEmpty = "\ca\ui\data\ui_arrow_combo_ca.paa";
arrowFull = "\ca\ui\data\ui_arrow_combo_active_ca.paa";
wholeHeight = 0.45;
rowHeight = 0.04;
color[] = {0.7, 0.7, 0.7, 1};
colorActive[] = {0,0,0,1};
colorDisabled[] = {0,0,0,0.3};
font = "Zeppelin32";
sizeEx = 0.023;
soundSelect[] = {"",0.1,1};
soundExpand[] = {"",0.1,1};
soundCollapse[] = {"",0.1,1};
maxHistoryDelay = 1;
autoScrollSpeed = -1;
autoScrollDelay = 5;
autoScrollRewind = 0;
class ScrollBar
{
color[] = {1, 1, 1, 1};
colorActive[] = {1, 1, 1, 1};
colorDisabled[] = {1, 1, 1, 1};
thumb = "\ca\ui\data\ui_scrollbar_thumb_ca.paa";
arrowFull = "\ca\ui\data\ui_arrow_top_active_ca.paa";
arrowEmpty = "\ca\ui\data\ui_arrow_top_ca.paa";
border = "\ca\ui\data\ui_border_scroll_ca.paa";
};
};

class W_RscPicture
{
idc = -1;
type = 0;
style = 48;
font = "Zeppelin32";
sizeEx = 0.023;
colorBackground[] = {};
colorText[] = {};
x = 0.0; y = 0.2;
w = 0.2; h = 0.2;
text = "";
};

class W_RscButtonBase {
idc = -1;
type = 16;
style = 0;
w = 0.183825;
h = 0.104575;
color[] = {0.95, 0.95, 0.95, 1};
color2[] = {1, 1, 1, 0.4};
colorBackground[] = {1, 1, 1, 1};
colorbackground2[] = {1, 1, 1, 0.4};
colorDisabled[] = {1, 1, 1, 0.25};
periodFocus = 1.2;
periodOver = 0.8;
class HitZone {
left = 0.004;
top = 0.029;
right = 0.004;
bottom = 0.029;
};
class ShortcutPos {
left = 0.004;
top = 0.026;
w = 0.0392157;
h = 0.0522876;
};
class TextPos {
left = 0.05;
top = 0.025;
right = 0.005;
bottom = 0.025;
};
animTextureNormal = "\ca\ui\data\ui_button_normal_ca.paa";
animTextureDisabled = "\ca\ui\data\ui_button_disabled_ca.paa";
animTextureOver = "\ca\ui\data\ui_button_over_ca.paa";
animTextureFocused = "\ca\ui\data\ui_button_focus_ca.01.paa";
animTexturePressed = "\ca\ui\data\ui_button_down_ca.paa";
animTextureDefault = "\ca\ui\data\ui_button_default_ca.paa";
textureNoShortcut = "";
period = 0.4;
font = "Zeppelin32";
size = 0.023;
sizeEx = 0.023;
text = "";

soundEnter[] = {"\ca\ui\data\sound\mouse2", 0.09, 1};
soundPush[] = {"\ca\ui\data\sound\new1", 0.09, 1};
soundClick[] = {"\ca\ui\data\sound\mouse3", 0.07, 1};
soundEscape[] = {"\ca\ui\data\sound\mouse1", 0.09, 1};

action = "";

class Attributes {
font = "Zeppelin32";
color = "#E5E5E5";
align = "left";
shadow = "1";
};

class AttributesImage {
font = "Zeppelin32";
color = "#E5E5E5";
align = "left";
};
};

class W_RscButton : W_RscButtonBase {

w = 0.183825;
h = 0.0522876;

style = 2;

color[] = {1, 1, 1, 1};
color2[] = {1, 1, 1, 0.85};
colorBackground[] = {1, 1, 1, 1};
colorbackground2[] = {1, 1, 1, 0.85};
colorDisabled[] = {1, 1, 1, 0.4};

class HitZone {
left = 0.002;
top = 0.003;
right = 0.002;
bottom = 0.016;
};

class ShortcutPos {
left = -0.006;
top = -0.007;
w = 0.0392157;
h = 0.0522876;
};

class TextPos {
left = 0.002;
top = 0.014;
right = 0.002;
bottom = 0.005;
};

animTextureNormal = "\ca\ui\data\igui_button_normal_ca.paa";
animTextureDisabled = "\ca\ui\data\igui_button_disabled_ca.paa";
animTextureOver = "\ca\ui\data\igui_button_over_ca.paa";
animTextureFocused = "\ca\ui\data\igui_button_focus_ca.paa";
animTexturePressed = "\ca\ui\data\igui_button_down_ca.paa";
animTextureDefault = "\ca\ui\data\igui_button_normal_ca.paa";
animTextureNoShortcut = "\ca\ui\data\igui_button_normal_ca.paa";

class Attributes {
font = "Zeppelin32";
color = "#E5E5E5";
align = "center";
shadow = "1";
};
};

You will need to create a custom 'ui_selectSlot.sqf'' that contains the following code right before the section '_pos set [3,_height];'
contents:
_erc_cfgActions = (missionConfigFile >> "ExtraRc" >> _item);
_erc_numActions = (count _erc_cfgActions);
if (isClass _erc_cfgActions) then {
for "_j" from 0 to (_erc_numActions - 1) do {
_menu = _parent displayCtrl (1600 + _j + _numActions);
_menu ctrlShow true;
_config = (_erc_cfgActions select _j);
_text = getText (_config >> "text");
_script = getText (_config >> "script");
_height = _height + (0.025 * safezoneH);
uiNamespace setVariable ['uiControl', _control];
_menu ctrlSetText _text;
_menu ctrlSetEventHandler ["ButtonClick",_script];
};
};

In your "init.sqf' file, add this near top to make the system more silent
Code:
enableRadio false;
enableSentences false;

In your "init.sqf' file, add inside the 'if (!isDedicated) then {' section
Code:
if (!isDedicated) then {
    // Setup Main Calls
    call compile preprocessFileLineNumbers "ClanDoolittle\Subs\Groups\init.sqf";

Server Install


inside your 'server_monitor.sqf' file after the time set section add the following
Code:
[]execVM "\z\addons\dayz_server\ClanDoolittle\Subs\Groups\init.sqf";
// Need to pause for my stuff to initialize
sleep 1;
inside your difficulty file for chosen difficulty make sure you have the following
Code:
AutoSpot=0;
    ClockIndicator=0;

Adjustments
Inside the clients 'Group/Setup/variables.sqf' file:
CD_Groups_MapSelf = false; // true takes you off the group map
CD_Groups_NameActive = true; // true shows names for group instead of just icons
CD_Groups_ScaleIcon = true; // false causes icon to stop scaling
CD_Groups_TittleInstead = false; // true uses text in middle of screen instead of hints


Files
Get the two files "Groups_Client.zip" and "Groups_Server.zip"
https://sites.google.com/site/clandoolittle/group-management/group-management

The client file contents goes in your mission pbo under a folder "ClanDoolittle\Subs\"
The server file contents goes in your dayz_server pbo under a folder "ClanDoolittle\Subs\"
 
Last edited:
Top