Jump to content

Recommended Posts

Hey there everyone.

 

I was putting all the gems in my servers' traders but I would really like to know if anyone knew the rarity of each gem so I could change the price accordingly. It seems that Rubies seem to be the most rare, but I cannot find any documentation on it. Does anyone know the gem rarity?

Link to comment
Share on other sites

my guess is you have to 'unpbo' all of the dayz_code.pbo in a folder and use an advanced notepad like notepad++ or ultraedit to search for all occurrences of MaxMineVeins in the files in the folder.

Some script will be using that value and probably somewhere near there would be the function that generates gems on Veins based on that value.

Or search the word Topaz, etc...to see whats happening and where...eventually you'll find it :)

Link to comment
Share on other sites

my guess is you have to 'unpbo' all of the dayz_code.pbo in a folder and use an advanced notepad like notepad++ or ultraedit to search for all occurrences of MaxMineVeins in the files in the folder.

Some script will be using that value and probably somewhere near there would be the function that generates gems on Veins based on that value.

Or search the word Topaz, etc...to see whats happening and where...eventually you'll find it :)

 

Alright that's great! Thank you very much once again buddy. For the quick replies and for your knowledge. I'll make sure I do that. I'll report back to the thread once I'm finished to see if it works.

 

Thanks once again!

Link to comment
Share on other sites

Alright that's great! Thank you very much once again buddy. For the quick replies and for your knowledge. I'll make sure I do that. I'll report back to the thread once I'm finished to see if it works.

 

Thanks once again!

 

Found it for you :P

 

\actions\remove.sqf

        if (_isMine) then {
            if((random 10) <= 4) then {
                _gems = ["ItemTopaz","ItemObsidian","ItemSapphire","ItemAmethyst","ItemEmerald","ItemCitrine","ItemRuby"];
                _gem = _gems select (floor(random (count _gems)));
                _selectedRemoveOutput set [(count _selectedRemoveOutput),[_gem,1]];
            };
        };

40% chance to spawn a random gem.

 

If you want to overwrite it..copy this file in your MPMission\dayz_code\actions

 

and in your compiles.sqf change player_removeObject to this:

player_removeObject =        compile preprocessFileLineNumbers "dayz_code\actions\remove.sqf";

Then make your changes there in remove.sqf

Link to comment
Share on other sites

  • 2 months later...

necro bump.

 

Trying to do this, not working D:

		if (_isMine) then {
			if((random 10) <= 10) then {
				_gems = ["ItemTopaz","ItemObsidian"];
				_gem = _gems select (floor(random (count _gems)));
				_selectedRemoveOutput set [(count _selectedRemoveOutput),[_gem,1]];
			};
		};

Still dropping other gems. 

 

init.sqf

//Load in compiled functions
call compile preprocessFileLineNumbers "\z\addons\dayz_code\init\variables.sqf";				//Initilize the Variables (IMPORTANT: Must happen very early)
progressLoadingScreen 0.1;
call compile preprocessFileLineNumbers "\z\addons\dayz_code\init\publicEH.sqf";				//Initilize the publicVariable event handlers
progressLoadingScreen 0.2;
call compile preprocessFileLineNumbers "\z\addons\dayz_code\medical\setup_functions_med.sqf";	//Functions used by CLIENT for medical
progressLoadingScreen 0.4;
call compile preprocessFileLineNumbers "\z\addons\dayz_code\init\compiles.sqf";				//Compile regular functions
progressLoadingScreen 0.5;
call compile preprocessFileLineNumbers "server_traders.sqf";				//Compile trader configs
call compile preprocessFileLineNumbers "custom\compiles.sqf";       //Compile custom compiles
progressLoadingScreen 1.0;

custom/compiles.sqf

fnc_usec_selfActions = compile preprocessFileLineNumbers "custom\fn_selfActions.sqf"; // fnc_usec_selfActions - adds custom actions to dayz code
player_removeObject =        compile preprocessFileLineNumbers "dayz_code\actions\player_removeObject.sqf";
if (!isDedicated) then {
	player_build		= compile preprocessFileLineNumbers "custom\snap_build\player_build.sqf";
	player_buildControls	= compile preprocessFileLineNumbers "custom\snap_build\player_buildControls.sqf";
	snap_object		= compile preprocessFileLineNumbers "custom\snap_build\snap_object.sqf";
};
Link to comment
Share on other sites

  • 1 month later...

Found it for you :P

 

\actions\remove.sqf

        if (_isMine) then {
            if((random 10) <= 4) then {
                _gems = ["ItemTopaz","ItemObsidian","ItemSapphire","ItemAmethyst","ItemEmerald","ItemCitrine","ItemRuby"];
                _gem = _gems select (floor(random (count _gems)));
                _selectedRemoveOutput set [(count _selectedRemoveOutput),[_gem,1]];
            };
        };

40% chance to spawn a random gem.

 

If you want to overwrite it..copy this file in your MPMission\dayz_code\actions

 

and in your compiles.sqf change player_removeObject to this:

player_removeObject =        compile preprocessFileLineNumbers "dayz_code\actions\remove.sqf";

Then make your changes there in remove.sqf

Hi Sandbird, thanks for finding this.

 

If I wanted to make them even rarer than 10% by having it set to:

if((random 10) <= 1) then {

 

could I change that line to read like this:

if((random 100) <= 4) then {

 

Would this make it a 4% chance? Or, am I way off piste! :)

 

Thanks again

Link to comment
Share on other sites

  • 4 weeks later...
  • 4 weeks later...

 

necro bump.

 

Trying to do this, not working D:

		if (_isMine) then {
			if((random 10) <= 10) then {
				_gems = ["ItemTopaz","ItemObsidian"];
				_gem = _gems select (floor(random (count _gems)));
				_selectedRemoveOutput set [(count _selectedRemoveOutput),[_gem,1]];
			};
		};

Still dropping other gems. 

 

init.sqf

//Load in compiled functions
call compile preprocessFileLineNumbers "\z\addons\dayz_code\init\variables.sqf";				//Initilize the Variables (IMPORTANT: Must happen very early)
progressLoadingScreen 0.1;
call compile preprocessFileLineNumbers "\z\addons\dayz_code\init\publicEH.sqf";				//Initilize the publicVariable event handlers
progressLoadingScreen 0.2;
call compile preprocessFileLineNumbers "\z\addons\dayz_code\medical\setup_functions_med.sqf";	//Functions used by CLIENT for medical
progressLoadingScreen 0.4;
call compile preprocessFileLineNumbers "\z\addons\dayz_code\init\compiles.sqf";				//Compile regular functions
progressLoadingScreen 0.5;
call compile preprocessFileLineNumbers "server_traders.sqf";				//Compile trader configs
call compile preprocessFileLineNumbers "custom\compiles.sqf";       //Compile custom compiles
progressLoadingScreen 1.0;

custom/compiles.sqf

fnc_usec_selfActions = compile preprocessFileLineNumbers "custom\fn_selfActions.sqf"; // fnc_usec_selfActions - adds custom actions to dayz code
player_removeObject =        compile preprocessFileLineNumbers "dayz_code\actions\player_removeObject.sqf";
if (!isDedicated) then {
	player_build		= compile preprocessFileLineNumbers "custom\snap_build\player_build.sqf";
	player_buildControls	= compile preprocessFileLineNumbers "custom\snap_build\player_buildControls.sqf";
	snap_object		= compile preprocessFileLineNumbers "custom\snap_build\snap_object.sqf";
};
I have the same situation. bump
 
I editing:
if((random 10) <= 4) then { 
to
if((random 100) <= 1) then {
But remained 40% and still dropping other gems..
 

 

Link to comment
Share on other sites

  • 4 weeks later...

 

The line in your custom compiles.sqf should point to the location of your customized remove.sqf file, like this:

player_removeObject = compile preprocessFileLineNumbers "scripts\remove.sqf";

 

I figured out that if you have a custom fn_selfActions.sqf you also need to go in and change the locations for the remove.sqf otherwise it wont work.

Link to comment
Share on other sites

  • 1 month later...

Hi sorry to ask here but where can I get the ore vein gems mod? I have searched but cant seem to find it.. guessing been so tired I'm missing it or something :S

It depends what you mean....ore veins exist as default in Epoch unless you have switched them off by zeroing this line in your mission init file:

MaxMineVeins = 50;

If you mean, how do I set up a trader where gems can be bought & sold there are a few different ways of doing that with various threads on these forums showing you how.

Link to comment
Share on other sites

hmm, ok, thought it was in there as standard.

 

Go ahead and add that in the config section of your init file and you should be good to go... :) something life this...:

DynamicVehicleFuelLow = 10;
DynamicVehicleFuelHigh = 35;
MaxMineVeins = 50;
DZE_vehicleAmmo = 0; //Default = 0, deletes ammo from vehicles with machine guns every restart if set to 0.
Link to comment
Share on other sites

veins already have topaz and stuff in them? or is that a script to add them?

the file to read and potentially override is called remove.sqf. You can find this in your dayz_code\actions folder.

 

If you leave it as standard it will drop any gem at a 40% chance. It is totally random which gem it chooses to drop if the 40% chance is successful.

 

I override this file by dropping it into my custom folder and changing the 3 calls to it (one in compiles and 2 in fn_selfActions) to point to the overridden file. I have then edited and reduced the % chance in the now custom remove.sqf as we use gems as higher currency on GoG's World and a 40% chance of a gem drop is too high.

 

Hope this helps.

Link to comment
Share on other sites

  • 5 months later...

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
  • Discord

×
×
  • Create New...