Jump to content

[Discontinued] Emerald Interior Designer


Recommended Posts

Check for typo in name or missing comma, should work.

Personally I would suggest sticking with 3D editor to add buildings. You can see tutorial in my signature, its for aircraft, but same applies to any models in game.

Link to comment
Share on other sites

This looks amazing! I'll be installing it tomorrow! (00:15am for me and I still have a couple of hrs 'IRL' work to do or I'd install now!)

 

Hey and, thanks for the credit in the OP! I'd read the whole post and page 1 of this thread then only noticed the credit when I went to bookmark it :D lol.

 

Liking what you've done - it goes way above anything I've done and I think it looks super-cool! Can't wait to install it tomorrow!

Link to comment
Share on other sites

I use castles on my server - on a right-click build system (Maca's, with a modified player_build sqf file - The thread is quoted in the OP on this threat).

 

The following is what I use as an offset: [0,15,3.2]

 

The castle part I found this works for is: MAP_A_Castle_Bergfrit

 

I also modified the rotate bit too, to make it flip 90 degrees instead of 180... So players can get the door facing them to be sure they put it the right height ;) It IS a bit fiddly to place, but it works fine :)

 

If you'd like a copy of the scripts I use pop me a PM, I'll zip em up and ping em over to you ;)

 

EDIT: Just noticed raymix has already replied re: Offset so feel free to ignore the above! If you do need a hand with the castle parts tho, let me know - I spent a while getting the right offset for a few of them so they don't kill folks when they place em :D

 

Raymix,

 

 Got a question. I added some castle pieces to the exterior section of the script and ran into 2 problems. 1.) The items are soooo big they spawn nearly on top of the player. I tried adjusting the _offset in the spawn.sqf from 3.5 to 4.5 but it didn't seem to make much difference. how far out can I adjust this offset before it becomes a problem with the other, smaller objects? 2.) When I remove the castle pieces using the fn_selfactions method, they blow up or turn into rubble and sometimes kill the player. lol. Any thoughts on this and a way around it? Wondering if you came across this in your testing.

 

I am thinking I may just have to leave the castle pieces out for now but my player base is really wanting it. Im also going to look for another way to spawn them as I heard you can do it using ingredients like building other buildables. Thanks for your time!

 

Zero

Link to comment
Share on other sites

The objects dissapear when i place them, right when it says Object saved to database..

i have looked in the database and i cant see anything, any ideas why the objects wouldnt save?

yeah, you missed dayzAllowed part. It requires you to variables.sqf

You can find variables.sqf in dayz_code.pbo in your client files.

Link to comment
Share on other sites

Great mod. I'd love to install this but...Wait for host...I cannot  progress this install beyond this point.

 

I have other mods installed which use the same Defines.hpp. Obviously this is casing a conflict. But I have other mods which use dialogs & defines but they have slightly different names such as HW_RscPicture. These mods do not conflict as the names are different to default. To save people from going bald, would it not be better to rename the defines with a different tag eg: ID_RscPicture and so forth?

 

ErrorMessage: File mpmissions\DayZ_Epoch_11.Chernarus\interior\dialogs.hpp, line 47: /WGT_INTERIOR1/Controls.dialogPic1: Undefined base class 'RscPicture'

 

This error appears despite commenting out the RscPicrure, RscShortcutButton and RscText in Defines.hpp. They appear again in Dialog.hpp...do I comment them from there too?

Link to comment
Share on other sites

I did everything it said and I get this error. ErrorMessage: File mpmissions\DayZ_Epoch_11.Chernarus\interior\defines.hpp, line 21: .RscText: Member already defined. I tried removing that line and it still gives me the same error.

Link to comment
Share on other sites

@cartoonrboy: probably yeah, but you don't have to delete defines from your old addons, infact reuse them and delete class from dialogs.hpp instead.

It's quite messy to publish work with dialogs, probably that's why you don't see many addons using them.

 

@Yames: it's not a single line, it's the whole class you have to delete:

class { //delete
<defines for class> //delete
}; //delete
Link to comment
Share on other sites

I have managed to get this working - thanx very much for an awesome addition...my error was due to a typo on my part. My apologies for the grumble post. I can confirm that following your install guide to the letter works. So long as you comment out from your defines.hpp any other defines you already have in yer description.ext. Mine were RscPicture, RscText and RscShortcutButton.

 

Once again - thankyou so much - have some beans.

Link to comment
Share on other sites

Just got this installed. I'd recommend clarifying the installation instructions telling people they need to have extra_rc installed. It took me a while to realize this as I was trying to figure out why nothing was happening when right clicking.

 

*edit* Having a problem. I placed a plot pole, tried to place an item, and it says someone's plot pole is nearby, but it's my own plot pole. I have a feeling it may be due to me running this plot pole mod: 

Link to comment
Share on other sites

Hello raymix,

 I have your addon running on all 4 of my Epoch servers.  Yesterday I updated my Infistar AH to version AH0330 and your addon no longer works for players.

I will also email infistar about this issue.

STENCH

Hi there, can you please tell me which part doesn't work? If right click menu doesn't come up, it has nothing to do with this mod in particular. If it's removing items - then you'll need to whitelist actions specified in fn_selfactions

 

Just got this installed. I'd recommend clarifying the installation instructions telling people they need to have extra_rc installed. It took me a while to realize this as I was trying to figure out why nothing was happening when right clicking.

 

*edit* Having a problem. I placed a plot pole, tried to place an item, and it says someone's plot pole is nearby, but it's my own plot pole. I have a feeling it may be due to me running this plot pole mod: 

There's a tiny bug with this script, it always fails to build first time, just ESC and try again. Let me know if you figure out what's causing it

Link to comment
Share on other sites

about the defines.hpp  , i have one already defines for the bulding mod 1.3 , and your clean file of the defines has ones that are also already defined , if i change one it will effect the other right or how something looks in the others menu system? (the values are different in the defined) how do i fix this issue?

Link to comment
Share on other sites

anyone help  server wont start and rpt says "RscShortcutButton: Member already defined."  but I looked in my description pbo and I don't have it defined there. so idk where its already defined.  will it be ok if I just remove it from the script here?

Link to comment
Share on other sites

about the defines.hpp  , i have one already defines for the bulding mod 1.3 , and your clean file of the defines has ones that are also already defined , if i change one it will effect the other right or how something looks in the others menu system? (the values are different in the defined) how do i fix this issue?

if you want to reuse both defines so you have differently defined dialogs, it is certainly possible by using class inheritance. Problem is - I'm only now learning about them and it's not as easy, since there is feck all documentation on the subject. Lucky for those who comes here with c++ programming background, ofcourse.

If you don't care about particular fonts, text or background colors, then simply delete my defines that you already have, yours will be reused instead.

 

anyone help  server wont start and rpt says "RscShortcutButton: Member already defined."  but I looked in my description pbo and I don't have it defined there. so idk where its already defined.  will it be ok if I just remove it from the script here?

it is not defined in description.ext file per-say. Script uses include files with .hpp extension, that's where you will find conflicting defines. In this case it is defines.hpp file. Delete whole RscShortcutButton class in it and any other classes that will conflict in future.

Delete both - class name, brackets and anything that's within them like so:

class className {
defines
}; 

These issues has been resolved over and over in every single page of this thread, guys.

Link to comment
Share on other sites

i ran into problems, i can't get right clickmenu open, possibly errors or something lacking in extra_rc.hpp, mind you i am really new

to modding DayZ Epoch servers (been doing this for 3 days now) i did try to search and i managed to get past most problems except the 

right clickmenu not showing.

 

heres my extra_rc.hpp

class ExtraRc {
class ItemEmerald {
        class PicFrame {
            text = "Picture Frame";
            script = "createDialog ""WGT_INTERIOR1"";";
        };
class Chairs {
            text = "Chair";
            script = "createDialog ""WGT_INTERIOR2"";";
        };
class Beds {
            text = "Bed";
            script = "createDialog ""WGT_INTERIOR3"";";
        };
class Bath {
            text = "Bathroom";
            script = "createDialog ""WGT_INTERIOR4"";";
        };
class Shelf {
            text = "Shelf";
            script = "createDialog ""WGT_INTERIOR5"";";
        };
class Misce {
            text = "Misc";
            script = "createDialog ""WGT_INTERIOR6"";";
        };
class Tablz {
            text = "Table";
            script = "createDialog ""WGT_INTERIOR7"";";
        };
class extr {
            text = "Exterior";
            script = "createDialog ""WGT_INTERIOR8"";";
        };
    };
};

 
my description.ext

respawn = "BASE";
respawndelay = 5;
onLoadMission= "DayZ Epoch Chernarus";
OnLoadIntro = "Welcome to DayZ Epoch Chernarus";
OnLoadIntroTime = False;
OnLoadMissionTime = False;
disabledAI = true;
disableChannels[]={0,2,6};
enableItemsDropping = 0;
 
briefing = 0;
debriefing = 0;
 
onPauseScript = "";
loadScreen = "\z\addons\dayz_code\gui\dayz_logo_ca.paa";
 
class Header
{
 gameType = COOP;            //DM, Team, Coop, ...
 minPlayers = 1;             //min # of players the mission supports
 maxPlayers = 100;            //Max # of players the mission supports
};
 
aiKills = 1;
diagRadio = 1;
diagHit = 1;
 
class RscText
{
type = 0;
idc = -1;
x = 0;
y = 0;
h = 0.037;
w = 0.3;
style = 0x100; 
font = Zeppelin32;
SizeEx = 0.03921;
colorText[] = {1,1,1,1};
colorBackground[] = {0, 0, 0, 0};
linespacing = 1;
};
class RscPicture
{
access=0;
type=0;
idc=-1;
style=48;
colorBackground[]={0,0,0,0};
colorText[]={1,1,1,1};
font="TahomaB";
sizeEx=0;
lineSpacing=0;
text="";
};
class RscLoadingText : RscText
{
style = 2;
x = 0.323532;
y = 0.666672;
w = 0.352944;
h = 0.039216;
sizeEx = 0.03921;
colorText[] = {0.543,0.5742,0.4102,1.0};
};
class RscProgress
{
x = 0.344;
y = 0.619;
w = 0.313726;
h = 0.0261438;
texture = "\ca\ui\data\loadscreen_progressbar_ca.paa";
colorFrame[] = {0,0,0,0};
colorBar[] = {1,1,1,1};
};
class RscProgressNotFreeze
{
idc = -1;
type = 45;
style = 0;
x = 0.022059;
y = 0.911772;
w = 0.029412;
h = 0.039216;
texture = "#(argb,8,8,3)color(0,0,0,0)";
};
//
// the loading screen itself
//
class DayZ_loadingScreen
idd = -1;
duration = 10e10;
fadein = 0;
fadeout = 0;
name = "loading screen";
class controlsBackground
{
class blackBG : RscText
{
x = safezoneX;
y = safezoneY;
w = safezoneW;
h = safezoneH;
text = "";
colorText[] = {0,0,0,0};
colorBackground[] = {0,0,0,1};
};
/*
class nicePic : RscPicture
{
style = 48 + 0x800; // ST_PICTURE + ST_KEEP_ASPECT_RATIO
x = safezoneX + safezoneW/2 - 0.25;
y = safezoneY + safezoneH/2 - 0.2;
w = 0.5;
h = 0.4;
text = "img\nicePic.paa";
};
*/
};
class controls
{
class Title1 : RscLoadingText
{
text = "$STR_LOADING"; // "Loading" text in the middle of the screen
};
class CA_Progress : RscProgress // progress bar, has to have idc 104
{
idc = 104;
type = 8; // CT_PROGRESS
style = 0; // ST_SINGLE
texture = "\ca\ui\data\loadscreen_progressbar_ca.paa";
};
class CA_Progress2 : RscProgressNotFreeze // progress bar that will go reverse
{
idc = 103;
};
class Name2: RscText // the text on the top-left
{
idc = 101;
x = 0.05;
y = 0.029412;
w = 0.9;
h = 0.04902;
text = "";
sizeEx = 0.05;
colorText[] = {0.543,0.5742,0.4102,1.0};
};
};
};
 
class CfgSounds
{
    sounds[] = {dieScream, finalShot, madIncoming};
 
    class dieScream {
name="dieScream";
sound[]={diescream.ogg,0.8,1};
titles[] = {};
    };
    class madIncoming {
name="madIncoming";
sound[]={madincoming.ogg,0.8,1};
titles[] = {};
    };
    class finalShot {
name="finalShot";
sound[]={finalshot.ogg,0.8,1};
titles[] = {};
    };
};
 
//Emerald Interior Designer 
#include "custom\extra_rc.hpp"
#include "interior\defines.hpp"
 
 // Snap build
#include "custom\snap_build\points.hpp"
 
// Epoch Admin Tools
#include "admintools\dialog.hpp"

 
my ui_selectslot.sqf

//private ["_control","_button","_parent","_group","_pos","_item","_conf","_name","_cfgActions","_numActions","_height","_menu","_config","_type","_script","_outputOriented","_compile","_array","_outputClass","_outputType"];
disableSerialization;
_control = _this select 0;
_button = _this select 1;
_parent = findDisplay 106;
 
if (_button == 1) then {
private ["_conf","_name","_compile","_height","_item"];
_group = _parent displayCtrl 6902;
 
_pos = ctrlPosition _group;
 
_item = gearSlotData _control;
if (mouseOverCarry) then {
_item = DayZ_onBack;
};
 
_pos set [0,((_this select 2) + 0.46)];
_pos set [1,((_this select 3) + 0.07)];
 
_conf = configFile >> "cfgMagazines" >> _item;
if (!isClass _conf) then {
_conf = configFile >> "cfgWeapons" >> _item;
};
_name = getText(_conf >> "displayName");
 
_cfgActions = _conf >> "ItemActions";
_numActions = (count _cfgActions);
_height = 0;
 
//Populate Menu
for "_i" from 0 to (_numActions - 1) do
{
_menu = _parent displayCtrl (1600 + _i);
_menu ctrlShow true;
_config = (_cfgActions select _i);
_type = getText (_config >> "text");
_script = getText (_config >> "script");
_outputOriented = getNumber (_config >> "outputOriented") == 1;
_height = _height + (0.025 * safezoneH);
_compile = format["_id = '%2' %1;",_script,_item];
uiNamespace setVariable ['uiControl', _control];
if (_outputOriented) then {
/*
This flag means that the action is output oriented
the output class will then be transferred to the script
and the type used for the name
*/
_array = getArray (_config >> "output");
_outputClass = _array select 0;
_outputType = _array select 1;
_name = getText (configFile >> _outputType >> _outputClass >> "displayName");
_compile = format["_id = ['%2',%3] %1;",_script,_item,_array];
};
 
_menu ctrlSetText format[_type,_name];
_menu ctrlSetEventHandler ["ButtonClick",_compile];
};
_pos set [3,_height];
 
      // Add extra context menus
_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);
_compile =  format["_id = '%2' %1;",_script,_item];
                        uiNamespace setVariable ['uiControl', _control];
 
 
                        _menu ctrlSetText _text;
_menu ctrlSetTextColor [1,0.25,0.25,1];
                        _menu ctrlSetEventHandler ["ButtonClick",_script];
 
 
                };
        };
 
 
//hint format["Obj: %1 \nHeight: %2\nPos: %3",_item,_height,_grpPos];
 
_group ctrlShow true;
ctrlSetFocus _group;
_group ctrlSetPosition _pos;
_group ctrlCommit 0;
};

 

if you Raymix or someone here could assist me i'd be happy for it :)

 

thank you 

 

Funkybacon

Link to comment
Share on other sites

Hello raymix,

 I have your addon running on all 4 of my Epoch servers.  Yesterday I updated my Infistar AH to version AH0330 and your addon no longer works for players.

I will also email infistar about this issue.

STENCH

What happens is the player selection of item display is disappearing before players have chance to select item for spawn.

Link to comment
Share on other sites

What happens is the player selection of item display is disappearing before players have chance to select item for spawn.

That has nothing to do with antihack update, you just missed dayz_allowedObjects part in variables.sqf

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Advertisement
×
×
  • Create New...