Jump to content
z80cpu

Building Heights - Keep X/Y, Modify Z

Recommended Posts

Hello Everybody!

 

I have a simple question (I think) about building heights.  Now, I know they changed the 'formula' to a '3d' build a while back.  And while this is ok, it does not solve an issue that any of us could run up against and is a 'pest'.

 

How can I change JUST the build height limit without messing with the x/y values?

 

Example:

 

A person plants a flag on top of a 30m hill, their land size is 15m.  They go to the bottom of the hill and put something down - It fails as the Z axis is 30m and the land size is 15m.  Even if the x and y are the SAME, it will still fail.

 

How can I set the Z (height) but leave the x/y alone?

 

I THINK these are the 2 files which address this:

 

ExileServer_object_construction_network_buildConstructionRequest.sqf


ExileClient_util_world_canBuildHere.sqf

 

 

The  issue started when I added more levels.  I added them correctly as they show and can be bought at the trader.  I also can build in a larger area.  The 'addition' also included bumping up the VG as it is required.

The max level's radius is 500m.  I must be less than 450m to build.  Otherwise I got the 'You are inside enemy territory' error.

 

I looked on here and tried the 'Build Limits For Bases':

 As I thought this MIGHT have something to do with it as the 'math' was sort of pointing to that (an altitude issue as it is a '3d' thing now).

 

So I installed the above script and it still will not work.

 

 

Here are the 'numbers':

 

Base flag is at 265m height with a 500m radius.

 

At 449m and a height of 129m (difference of 136m) I get the error 'You are inside enemy territory'.

 

I move 'further out' to  466m (difference of 17m) and about the same height, I get the 'You are inside enemy territory'.

 

With 'default' scripts or the script listed above, it just does not work.

 

I am hoping someone knows what to do!

 

Here is the values in the config.cpp concerning the build stuff:

 

class CfgTerritories
{
	// Base Cost / Radius
	// Level 1 is allways for Pop Tabs, >= 2 for Respect
	prices[] = 
	{
		// Purchase Price 		Radius 		Number of Objects
		{5000,					15,			35 					}, // Level 1
		{10000,					30,			70 					}, // Level 2 
		{15000,					45,			105 				}, // Level 3
		{20000,					60,			140					}, // Level 4
		{25000,					75,			175					}, // Level 5
		{30000,					90,			210					}, // Level 6
		{35000,					105,		250					}, // Level 7
		{40000,					120,		300					}, // Level 8
		{45000,					135,		350					}, // Level 9
		{50000,					150,		400					},  // Level 10
		{250000,				200,		500					},  // Level 11
		{500000,				250,		600					},  // Level 12
		{750000,				300,		700					},  // Level 13
		{1000000,				350,		800					},  // Level 14
		{5000000,				400,		900					},  // Level 15
		{25000000,				500,		1000				}  // Level 16	
	};

	// A shortcut of the above maximum radius
	maximumRadius = 500;

	// The above * 2 plus coverving the 20m you can move while placing things
	// (maximumRadius * 2) + 25 = Below
	minimumDistanceToOtherTerritories = 1025; 

	// Maximum number of territories a player can own
	maximumNumberOfTerritoriesPerPlayer = 3;

	/**
	 * Defines the minimum distance to safe zones / trader cities where players
	 * cannot build territories
	 */
	minimumDistanceToTraderZones = 500;

	/**
	 * Defines the minimum distance to spawn zones where players
	 * cannot build territories
	 */
	minimumDistanceToSpawnZones = 50;

	// Amount of pop tabs per object to pay
	popTabAmountPerObject = 75;

	// Amount of minutes building is disabled after a charge has been planted
	// in a territory. This basically prevents people from placing tons of walls
	// or removing walls while their territory is under attack.
	constructionBlockDuration = 5;
};

********************************

	/*
		The maximum number of vehicles that can be stored in the VG for that territory.
		Use -1 to disable the ability to store vehicles at that level.
		Make sure to have the same number of levels here as you do in CfgTerritories!
	*/
	numberOfVehicles[] = 
	{
		5,			// Level 1
		10, 			// Level 2 
		15, 			// Level 3
		20, 		// Level 4
		25, 		// Level 5
		30, 		// Level 6
		35, 		// Level 7
		40, 		// Level 8
		45, 		// Level 9
		50, 			// Level 10
		55, 			// Level 11
		60, 			// Level 12
		65, 			// Level 13
		70, 			// Level 14
		75, 			// Level 15
		100 			// Level 16
	};
    
    ****************************
    
    

 

Thanks!

 

😀

Share this post


Link to post
Share on other sites

×