Jump to content

[scarCODE] P.S.R. (Player Support Requester)


IT07

Recommended Posts

Going to try and explain how to install just this script

1a. a3_scarcode_server - open a3_scarcode_server\PSR\initServer_PSR.sqf add your admins or playersUID's that will accept the request on Line 14, repack and place in @epochhive\addons - Thats done

1b. edit run sqf if you have a antihack

_UNC = false;

_CAP = false;

_OAP = false;

_OAO = false;

/* 277: S.C.M.P. menu by IT07 */

_allowedDialogs pushBack 277;

/* 297: S.I.M. menu by IT07 */

_allowedDialogs pushBack 297;

/* 298: P.S.R. menu by IT07 */

_allowedDialogs pushBack 298;

/* 299: S.T.M. menu by IT07 */

_allowedDialogs pushBack 299;

2. Mission file

Examples of my Init.sqf and description.ext

init.sqf

if (isServer) then {

execVM "\q\addons\traderATMs\init.sqf";

};

if (hasInterface) then

{

[] ExecVM "semClient.sqf";

[] execVM "custom\halo_out.sqf";

[] execVM "addons\paintshop\paintshop.sqf";

[] ExecVM "ScarCode\SCSF_init.sqf";

};

if (isDedicated) then

{

[] ExecVM "\a3_scarcode_server\init.sqf";

};

//Status Bar

if(hasInterface) then{[] execVM "addons\Status_Bar\init_statusBar.sqf"};

if(isNil "admin_list") then

{

[] execVM "admin.sqf";

};

if(isNil "donor_list") then

{

[] execVM "donor.sqf";

};

EPOCH_spawnLimits = [5, 5, 1, 5, 1, 5, 5];

if (isServer) then {

execVM "\q\addons\custom_server\init.sqf";

} else {

[] spawn {

//This is to spawn the markers when players enter after server has started

[] execVM "debug\addmarkers.sqf";

[] execVM "debug\addmarkers2.sqf";

[] execVM "debug\addmarkers75.sqf";

[] execVM "debug\addmarkers752.sqf";

//Event handler to show messages to players // this can be used for other scripts to send messages to players -- see AIM.sqf

"blck_Message" addPublicVariableEventHandler {titleText[format["%1",_this select 1],"PLAIN DOWN",1];};

};

};

description.ext

#include "infiSTAR_AdminMenu.hpp"

#include "trader\tradedialog.hpp"

#include "trader\HSPricing.hpp"

#include "addons\paintshop\paintshop.hpp"

author = "Epoch Mod Team";

class Header

{

gameType = Sandbox;

minPlayers = 1;

maxPlayers = 100;

};

respawn = "BASE";

respawnDelay = 600;

respawnDialog = 0;

onLoadMission= "Epoch";

OnLoadIntro = "Welcome to Over30Gaming";

loadScreen = "\x\addons\a3_epoch_assets\pictures\loadScreen_ca.paa";

OnLoadIntroTime = False;

OnLoadMissionTime = False;

onLoadName = "Epoch Mod/Over30Gaming.com";

disabledAI = true;

scriptedPlayer = 1;

disableChannels[]={0,1,2,6};

enableItemsDropping = 0;

briefing = 0;

debriefing = 0;

enableDebugConsole = 0;

joinUnassigned = 0;

respawnOnStart = 0;

forceRotorLibSimulation = 0;

corpseManagerMode = 1;

corpseLimit = 2;

corpseRemovalMinTime = 600;

corpseRemovalMaxTime = 1200;

wreckManagerMode = 1;

wreckLimit = 2;

wreckRemovalMinTime = 60;

wreckRemovalMaxTime = 120;

class CfgRemoteExecCommands

{

// Class used in respawnTemplates entry

class deploy

{

// Function or script executed upon death. Parameters passed into it are the same as are passed into onPlayerKilled.sqf file

onPlayerKilled = "scripts\fn_selfActions.sqf";

// Function or script executed upon respawn. Parameters passed into it are the same as are passed into onPlayerRespawn.sqf file

onPlayerRespawn = "scripts\fn_selfActions.sqf";

};

};

#include "CfgPricing.hpp"

#include "cfgCrafting.hpp"

class RscTitles

{

#include "addons\Status_Bar\statusBar.hpp"

};

class cfgFunctions

{

class ScarCode

{

tag = "SC";

#include "ScarCode\cfgFunctions\fn_PSR.hpp"

};

};

#include "ScarCode\GUI\Defines\global.hpp"

#include "ScarCode\GUI\PSR.hpp"

#include "outlw_magRepack\MagRepack_config.hpp"

class CfgEpochClient

{

buildingNearbyMilitary = 1; //1 to allow building nearby

buildingNearbyMilitaryRange = 300; //Define radius of blocked area

buildingRequireJammer = 1; // 1 = to allow building without a jammer

buildingCountLimit = 225; // how many objects can be built within range of a jammer

buildingJammerRange = 75; // jammer range in meters

class Altis

{

blockedArea[] = { //[POS],radius

{ { 16085, 16997, 0 }, 250 }, //South Telos

{ { 12844, 16714, 0 }, 120 }, //Soldner Base

{ { 3085, 13184, 0 }, 300 }, //Kavalar Carstel

{ { 13493, 12013, 0 }, 450 }, //Makrynisi (Island)

{ { 17439, 13165, 0 }, 165 }, //Pyrgorsk Military

{ { 20084, 6728, 0 }, 55 }, //West of Selakano

{ { 25303, 21807, 0 }, 100 } //Sofia

};

};

class Chernarus

{

blockedArea[] = {

{ { 10203, 1886, 0 }, 430 }, //South Electro

{ { 6822, 2498, 0 }, 600 }, //Cherno

{ { 4612, 9670, 0 }, 140 }, //NWAF south barack

{ { 4907, 10117, 0 }, 250 }, //NWAF NE hangas

{ { 4707, 10384, 0 }, 200 }, //NWAF north barack

{ { 4069, 10778, 0 }, 75 }, //NWAF west hangas

{ { 4553, 10722, 0 }, 150 }, //NWAF NW hangas

{ { 12279, 9505, 0 }, 350 }, //Berenzino Mid

{ { 12816, 9816, 0 }, 400 }, //Berenzino SE

{ { 12991, 10147, 0 }, 375 }, //Berenzino Docs

{ { 2693, 5138, 0 }, 200 }, //Zeleno

{ { 11467, 7508, 0 }, 150 }, //Polana Factory

{ { 13092, 7096, 0 }, 140 } //Solnichniy Factory

};

};

};

class CfgEpochSapper

{

detonateDistMax = 8; //Random distance between 3m and this number at which sapper detonates. Min value = 4

groanTrig = 16; //Percentage chance of a groan. Min value = 4

sRange = 300; //Distance from target over which sapper will dispose. Range within which sapper code will be aware of targets. Distance up to which sapper will attempt to find a spot to hide in. Min Value = 150.

smellDist = 24; //Distance up to which sapper can smell. Used to decide if sapper can see target when deciding to charge and influences target selection. Is influenced by wind direction. Min Value = 8.

};

class CfgEpochUAV

{

UAVMinDist = 50; //Minimum distance to choose next position when roaming. Min Value = 8.

UAVMaxDist = 250; //Maximum distance to choose next position when roaming. Min Value = 42 / Max Value = 400.

UAVHeight = 100; //Set height when roaming, slight randomness is applied to this value. UAV will choose own height when locked onto target. Min Value = 42 / Max Value = 280. UAV can still spot targets from height !

};

class CfgEpochAirDrop

{

AirDropFreq = 1200; //AirDropChance, to decide if Air drop occurs, will only be checked once per AirDropFreq time period, for each player. Min value = 120.

AirDropChance = 20; //Percentage chance of air drop, for current player. Checked every AirDropFreq and upon antagonists spawn trigger. -1 To disable.

};

class CfgEpochCloak

{

cRange = 300; //Distance, from target, at which Cloak will dispose. Cloak is also aware of players within this range. (Min: 60 / Max: 600)

cAggression = 75; //Percentage chance of attack, currently a psychological attack (Cultist spooky voice). (Min: 1 / Max: 100)

attackFrequency = 120; //One attack only per this period. (Min: 120)

attackDistance = 40; // Distance, from target, up to which Cloak will attack. Lower for less vocals. (Min: 16)

targetChangeFrequency = 50; //Cloak will only attempt to change target once per this period. Make Higher to stick to first target player. (Min: 42)

teleportChance = 40; //Chance for cloak to teleport. (Min: 1)

hoverFrequency = 1280; //Cloak has new hover attack. When player is above cloak, and at a distance, cloak will float to player and teleport attack. Only perform one of these moves per this period. (Min: 240)

};

Copy the contents of the SC_scriptFramework_EPOCH folder and paste into the SC_PlayerSupportRequester_EPOCH once that is done copy the scarcode folder from SC_PlayerSupportRequester_EPOCH and paste that into your mission folder

Edit config.sqf like so

/*

Author: IT07

Description:

this file is used to enable/disable ScarCode scripts. Please do not forget to install the required file for each enabled script ;)

*/

/////// SCARCODE SCRIPTS CONTROL PANEL ///////

// Use false to DISABLE | Use true to ENABLE //

_PSR = true; // Player support Requester

_SIM = false; // Server Info Menu

// NOTE: if _PSR and _SIM are set true, ScarCode Menu Package needs to be installed too

_STM = false; // Spawn Teleport Menu

_PvE = false; // PvE script

/// Sub config for PvE script | ignore if you set _PvE to false ///

_PvPZone = true; // Requires a trigger on the map with name PvP_Zone

_debug = false; // If true, will display data in hintSilent

_PvEbyDefault = true; // Sets default mode to PvE if true

_SIC = false; // Server Intro Credits

_SRW = false; // Server restart Warnings

/////// CONFIG FILE LOCATIONS FOR SCARCODE MENUS ///////

// All config files for each ScarCode menu can be found in:

// ScarCode\GUI\Configs\

// Each config file will have its shortname at the end of the file name

// Example: config file for S.I.M. is called cfg_SIM.hpp

////////////////////////////////////////////////////////

SCSF_init.sqf

/*

Author: IT07

Description:

This grabs the config.sqf and starts launching stuff depending on what is enabled

*/

#include "config.sqf";

if (_PSR and not _SIM) then

{

[] ExecVM "ScarCode\Scripts\PSR.sqf";

};

Repack mission and I think thats it, trying to remember what I did was frustrating

Link to comment
Share on other sites

Ok issue to report on live server, it removed the crypto from the player but did not add to the player that completed the request

 

It is supposed to do that. I think I explained in the video that the cost for service gets ONLY removed from the requester, not added to the support unit.

Link to comment
Share on other sites

Oh I must have misunderstood that, so there really is no incentive for the supporter? Also can you check the install procedures and see if I missed anything

 

If a supporter is helping people to get Crypto, he/she is not a proper supporter.

 

About your tutorial:

"Copy the contents of the SC_scriptFramework_EPOCH folder and paste into the SC_PlayerSupportRequester_EPOCH" is wrong the rest looks ok though.

What they DO need to do is this: copy contents of SC_scriptFramework_EPOCH and from SC_PlayerSupportRequester_EPOCH into the root of mission file.

Link to comment
Share on other sites

If a supporter is helping people to get Crypto, he/she is not a proper supporter.

About your tutorial:

"Copy the contents of the SC_scriptFramework_EPOCH folder and paste into the SC_PlayerSupportRequester_EPOCH" is wrong the rest looks ok though.

What they DO need to do is this: copy contents of SC_scriptFramework_EPOCH and from SC_PlayerSupportRequester_EPOCH into the root of mission file.

Ya I assumed they would be copying the scar folder after they combined them. I will clarify that one
Link to comment
Share on other sites

UPDATE!

This version should be easier to install. Ignore all of the install guides for now, just read the readme that is inside the PSR folder of the ScarCode Script Bundle repository.

Link to comment
Share on other sites

@Tophi yeah sorry about that the repository is a complete mess right now because I am trying to find the best structure to make the installation easier. The file you need to have is global.hpp. It is inside the scriptFramework_EPOCH folder under ScarCode\GUI\Defines\

Link to comment
Share on other sites

@Tophi yeah sorry about that the repository is a complete mess right now because I am trying to find the best structure to make the installation easier. The file you need to have is global.hpp. It is inside the scriptFramework_EPOCH folder under ScarCode\GUI\Defines\

 

ok i find the file where do i put it?

Link to comment
Share on other sites

finally got it working ty IT07

 

they only problem:  The jobs can be accepted and completed, but the person providing the assistance does not receive the payment.

No problem. It is supposed to do that ;-)

I wanted to make it so people do not help people for the crypto but to actually just help instead.

Link to comment
Share on other sites

That is all well and good, but what if we do want the helpers to be paid ? haha. I think it would be a great way to get narrative on the server without creating AI etc.

 

Even if there was some way to track how many requests are accepted and completed by a given supporter? :)

 

I understand it would get complicated quickly, but I think being able to earn money by helping players would be fantastic :D

 

Link to comment
Share on other sites

  • 3 weeks later...

Any idea why players are banned when they try the PSR with no crypto on them? Happened to 2 players

 

13-07-2015 20:16:04 infiSTAR.de | Derek(76561XXXXXXXXXX) 1h 35min | Derek(76561XXXXXXXXXX) BANNED | Hacked: showNotification - [<null>,<null>,<null>,<null>,<null>,<null>,<null>,[["P.S.R. PAYMENT ERROR","\A3\ui_f\dat (v0188b)

Link to comment
Share on other sites

  • 1 year 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
×
×
  • Create New...