Sign in to follow this  
D-Day Josh

exad hacking how to install

7 posts in this topic

Hi, i'm trying to install exad hacking.

i've done this part

# Installation

Remember for this plugin to work you first need to install  
* [Core](https://github.com/Bjanski/ExAd/blob/master/docs/core/installation.md)
* [(VirtualGarage)](https://github.com/Bjanski/ExAd/blob/master/docs/VirtualGarage/installation.md) - Only necessary if you want to be able to hack it <-- don't want this so didn't install it
  
## Client

* Place the folder "Hacking" into "mpmissions\exile.<MAP>\ExAdClient\"  

* Goto "mpmissions\exile.<MAP>\ExAdClient\CfgFunctions" and uncomment  

_From_  
```cpp  
        //#include "Hacking\CfgFunctions.cpp"     
```  
_To_  
```cpp  

but i don't understand the rest... Need some help

Share this post


Link to post
Share on other sites
Quote

In "config.cpp" find ("CfgInteractionMenus") and add the actions you want used. If you don't want to use a specific action e.g. hacking safe just ignore adding it.
Available actions are

  • HackVG -> ("CfgInteractionMenus" >> "Flag" >> "Actions" >> "HackVG")
  • HackSafe -> ("CfgInteractionMenus" >> "Safe" >> "Actions" >> "HackSafe")
  • StopHack -> ("CfgInteractionMenus" >> "Laptop" >> "Actions" >> "StopHack")

Open config.cpp, search for cfginteractionmenu, find:

class Safe
    {
        targetType = 2;
        target = "Exile_Container_Safe";

        class Actions
        {
            class ScanLock: ExileAbstractAction
            {
                title = "Scan Lock";
                condition = "('Exile_Item_ThermalScannerPro' in (magazines player)) && !((ExileClientInteractionObject getvariable ['ExileIsLocked',1]) isEqualTo 1) && !ExilePlayerInSafezone";
                action = "_this call ExileClient_object_lock_scan";
            };

            // Locks a vehicle
            class Lock : ExileAbstractAction
            {
                title = "Lock";
                condition = "((ExileClientInteractionObject getvariable ['ExileIsLocked',1]) isEqualTo 0)";
                action = "true spawn ExileClient_object_lock_toggle";
            };

            class Unlock : ExileAbstractAction
            {
                title = "Unlock";
                condition = "((ExileClientInteractionObject getvariable ['ExileIsLocked',1]) isEqualTo -1)";
                action = "false spawn ExileClient_object_lock_toggle";
            };

            class Pack : ExileAbstractAction
            {
                title = "Pack";
                condition = "((ExileClientInteractionObject getvariable ['ExileIsLocked',1]) isEqualTo 0)";
                action = "_this spawn ExileClient_object_container_pack";
            };

            class SetPinCode : ExileAbstractAction
            {
                title = "Set PIN";
                condition = "((ExileClientInteractionObject getvariable ['ExileIsLocked',1]) isEqualTo 0)";
                action = "_this spawn ExileClient_object_lock_setPin";
            }; // Below here, x2 [Enter] ;)

            class HackSafe : ExileAbstractAction
            {
                title = "PC1337 Hax";
                condition = "call ExAd_fnc_canHackSafe";
                action = "_this spawn ExAd_fnc_startHack";
            };

add code below the last bracket above:

class HackSafe : ExileAbstractAction
        {
            title = "PC1337 Hax";
            condition = "call ExAd_fnc_canHackSafe";
            action = "_this spawn ExAd_fnc_startHack";
        };
Quote

Modify - "mpmissions\exile.\stringtable.xml" - add package="Hacking" and change to desirable notifications

<Package name="Hacking">
		<Container name="Notifications">
			<Key ID="STR_ExAd_HACKING_NOTI_MAX_TERRITORY_HACKS_REACHED">
				<Original>Connection failed! Territory Wi-Fi is down!</Original>
			</Key>
			<Key ID="STR_ExAd_HACKING_NOTI_TERRITORY_ONE_HACK">
				<Original>Wi-Fi occupied!!</Original>
			</Key>
			<Key ID="STR_ExAd_HACKING_NOTI_MAX_SIM_HACKS">
				<Original>The laptop overloaded and got destroyed! Another hacker is already using the grid.</Original>
			</Key>
			<Key ID="STR_ExAd_HACKING_NOTI_NO_PLAYER_PRESENT">
				<Original>No Wi-Fi available!</Original>
			</Key>
			<Key ID="STR_ExAd_HACKING_NOTI_VG_SUCCESS">
				<Original>Hack successful! The Virtual Garage unloaded a %1</Original> <!-- %1 indicates the vehicle class name that's going to be shown-->
			</Key>
			<Key ID="STR_ExAd_HACKING_NOTI_VG_NO_VEH">
				<Original>Hack successful! No vehicles were stored in the Virtual Garage.</Original>
			</Key>
			<Key ID="STR_ExAd_HACKING_NOTI_SAFE_SUCCESS">
				<Original>Hack successful! The safe is now unlocked.</Original>
			</Key>
			<Key ID="STR_ExAd_HACKING_NOTI_INTERUPTED">
				<Original>Hack has been interupted</Original>
			</Key>
			<Key ID="STR_ExAd_HACKING_NOTI_FAILED">
				<Original>Hack failed! Circuits overloaded!</Original>
			</Key>
		</Container>
		<Container name="Hint">
			<Key ID="STR_ExAd_HACKING_HINT_TITLE">
				<Original>Hack Activity</Original>
			</Key>
			<Key ID="STR_ExAd_HACKING_HINT_HACK_START">
				<Original>A brute force hack is detected on the grid!</Original>
			</Key>
		</Container>
	</Package>
Quote

Now you can go into "mpmissions\exile.\ExAdClient\Hacking\customize.sqf" and change to desirable settings.

https://github.com/Bjanski/ExAd/blob/master/mpmissions/Exile.Altis/ExAdClient/Hacking/customize.sqf

Quote
  • Copy over and pack "@ExileServer\addons\exad_hacking" into a pbo.

https://github.com/Bjanski/ExAd/tree/master/%40ExileServer/addons

Edited by wernerz

Share this post


Link to post
Share on other sites
Advertisement
37 minutes ago, wernerz said:

Open config.cpp, search for cfginteractionmenu, find:


class Safe
    {
        targetType = 2;
        target = "Exile_Container_Safe";

        class Actions
        {
            class ScanLock: ExileAbstractAction
            {
                title = "Scan Lock";
                condition = "('Exile_Item_ThermalScannerPro' in (magazines player)) && !((ExileClientInteractionObject getvariable ['ExileIsLocked',1]) isEqualTo 1) && !ExilePlayerInSafezone";
                action = "_this call ExileClient_object_lock_scan";
            };

            // Locks a vehicle
            class Lock : ExileAbstractAction
            {
                title = "Lock";
                condition = "((ExileClientInteractionObject getvariable ['ExileIsLocked',1]) isEqualTo 0)";
                action = "true spawn ExileClient_object_lock_toggle";
            };

            class Unlock : ExileAbstractAction
            {
                title = "Unlock";
                condition = "((ExileClientInteractionObject getvariable ['ExileIsLocked',1]) isEqualTo -1)";
                action = "false spawn ExileClient_object_lock_toggle";
            };

            class Pack : ExileAbstractAction
            {
                title = "Pack";
                condition = "((ExileClientInteractionObject getvariable ['ExileIsLocked',1]) isEqualTo 0)";
                action = "_this spawn ExileClient_object_container_pack";
            };

            class SetPinCode : ExileAbstractAction
            {
                title = "Set PIN";
                condition = "((ExileClientInteractionObject getvariable ['ExileIsLocked',1]) isEqualTo 0)";
                action = "_this spawn ExileClient_object_lock_setPin";
            }; // Below here, x2 [Enter] ;)

            class HackSafe : ExileAbstractAction
            {
                title = "PC1337 Hax";
                condition = "call ExAd_fnc_canHackSafe";
                action = "_this spawn ExAd_fnc_startHack";
            };

add code below the last bracket above:


class HackSafe : ExileAbstractAction
        {
            title = "PC1337 Hax";
            condition = "call ExAd_fnc_canHackSafe";
            action = "_this spawn ExAd_fnc_startHack";
        };

<Package name="Hacking">
		<Container name="Notifications">
			<Key ID="STR_ExAd_HACKING_NOTI_MAX_TERRITORY_HACKS_REACHED">
				<Original>Connection failed! Territory Wi-Fi is down!</Original>
			</Key>
			<Key ID="STR_ExAd_HACKING_NOTI_TERRITORY_ONE_HACK">
				<Original>Wi-Fi occupied!!</Original>
			</Key>
			<Key ID="STR_ExAd_HACKING_NOTI_MAX_SIM_HACKS">
				<Original>The laptop overloaded and got destroyed! Another hacker is already using the grid.</Original>
			</Key>
			<Key ID="STR_ExAd_HACKING_NOTI_NO_PLAYER_PRESENT">
				<Original>No Wi-Fi available!</Original>
			</Key>
			<Key ID="STR_ExAd_HACKING_NOTI_VG_SUCCESS">
				<Original>Hack successful! The Virtual Garage unloaded a %1</Original> <!-- %1 indicates the vehicle class name that's going to be shown-->
			</Key>
			<Key ID="STR_ExAd_HACKING_NOTI_VG_NO_VEH">
				<Original>Hack successful! No vehicles were stored in the Virtual Garage.</Original>
			</Key>
			<Key ID="STR_ExAd_HACKING_NOTI_SAFE_SUCCESS">
				<Original>Hack successful! The safe is now unlocked.</Original>
			</Key>
			<Key ID="STR_ExAd_HACKING_NOTI_INTERUPTED">
				<Original>Hack has been interupted</Original>
			</Key>
			<Key ID="STR_ExAd_HACKING_NOTI_FAILED">
				<Original>Hack failed! Circuits overloaded!</Original>
			</Key>
		</Container>
		<Container name="Hint">
			<Key ID="STR_ExAd_HACKING_HINT_TITLE">
				<Original>Hack Activity</Original>
			</Key>
			<Key ID="STR_ExAd_HACKING_HINT_HACK_START">
				<Original>A brute force hack is detected on the grid!</Original>
			</Key>
		</Container>
	</Package>

https://github.com/Bjanski/ExAd/blob/master/mpmissions/Exile.Altis/ExAdClient/Hacking/customize.sqf

https://github.com/Bjanski/ExAd/tree/master/%40ExileServer/addons

cheers, managed to do it. had to add the stop hack aswell, worked out the coding for it.

all that's left is to add batteries to the game for grinding.

Do you know how to do that? I'm unsure on that one

 

Share this post


Link to post
Share on other sites

Find the class for the battery, I believe it's Exile_Magazine_battery add this to the cfg_arsenal and trader (if you wish for it to be purchasable) inside missionfile/config.cpp and add to loot tables  inside your exile_server/config and you'll be good to go.

Share this post


Link to post
Share on other sites

bump, would also like to know because my class code somehow breaks the game kind of: some interactons stop working and the xm8 infistar apps are going away :D

Spoiler

Dont use this:

    class StopHack : ExileAbstractAction
            {
                title = "Stop Hack";
                condition = "call ExAd_fnc_stopHack";
                action = "_this spawn ExAd_fnc_stopHack";
            };

 

Edit:

This is the fix/correct code:

Spoiler

            class StopHack : ExileAbstractAction
            {
                title = "Stop Hack";
                condition = "call ExAd_fnc_canStopHack";
                action = "_this spawn ExAd_fnc_stopHack";
            };

 

Edited by Auoryus

Share this post


Link to post
Share on other sites
Advertisement

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
Sign in to follow this  

  • Recently Browsing   0 members

    No registered users viewing this page.