// GPC Online Library
// NGSCRIPTS_F4_1.4_AIO.gpc
//-------------------------------------------------
// Created by KamaluNg
// Script Version 1.0
// Written for Fallout 4, v1.4
//-------------------------------------------------
//------------------------------------------------------------
// Created For Automation Trade While Crafting Glitch
// https://www.youtube.com/watch?v=mRx_suWGNVQ
//
// Created for Crafting Without Resources Glitch
// https://www.youtube.com/watch?v=-AuOH2ls19M
//
// Created for Unlimited Settlement Size Glitch
// https://www.youtube.com/watch?v=1Oy1slUxp9o
//------------------------------------------------------------
//---------------------------------------------------------------------------------------
//
// View These Scripts In Action On Youtube
// https://www.youtube.com/watch?v=6o5kUnyBGSc&list=PLZruTEoGKtV8mGKJvq2BCQQQb8L_qCaUe
//
//---------------------------------------------------------------------------------------
//----------------------------------------
// READ ME FIRST
//----------------------------------------
//
// 1. The same button combination used to ACTIVATE a script will also DEACTIVE it.
// 2. Auto Mode Scripts will loop indefintely until you, the user, DEACTIVATES it.
// 3. Manual Mode Scripts will assist with simple tasks while the user is playing.
// 4. Some Scripts may require setup, please read the Notes section below first.
// 5. This script was written for Xbox One. However, Titan One automatically translates
//
//----------------------------------------
// CONTROLS
//----------------------------------------
//
// Toggle Crafting Glitch Scripts = D-pad Left (Hold for 4 seconds, Long Vibrate)
// Auto Crafting Glitch Up = Left Bumper (Dual Vibrate, Refer To Note #1 Below For Maximum Efficiency)
// Auto Crafting Glitch Down = Right Bumper (Dual Vibrate, Refer To Note #1 Below For Maximum Efficiency)
// Manual Crafting Glitch Up = Left Trigger (Single Vibrate)
// Manual Crafting Glitch Down = Right Trigger (Single Vibrate)
//
// Toggle Automation Glitch Scripts = D-pad Down (Hold for 4 seconds, Long Vibrate)
// Auto-Turbo A = View Button (Dual Vibrate)
// Manual-Turbo A = A Button (Will Turbo A as long as you hold A down)
//
// Toggle Settlement Size Scripts = D-pad Right (Hold for 4 seconds, Long Vibrate)
// Auto Scrap Assistant = Left Bumper (Dual Vibrate, Refer to Note #2 Below)
// Auto Store Assistant = Right Bumper (Dual Vibrate, Refer to Note #3 Below)
// Manual Scrap Assistant = X Button (Will automatically press A after you hit X)
// Manual Store Assistant = B Button (Will automatically press A after you hit B)
//----------------------------------------
// NOTES
//----------------------------------------
//
// #1 When using the Auto Crafting Glitch Scripts use/place a crafting table in an isolated area.
// Lag increases the odds of this script failing. Reduce lag by isolating background content.
// PRO TIP: The Devil's Due Quest allows you to create "Tasty Deathclaw Omelets" which creates 5 omelets per click worth 100 caps each.
// Which is easily 5X more caps then any other crafting glitch method.
//
// #2 Pressing the Left Bumper after enabling Settlement Size Scripts will automatically press X and then A repeatedly.
// To use the Auto Scrap Assistant Script properly:
// 1. Enter Workshop mode
// 2. Place Selection Box on an object that you do NOT have the materials to create
// 3. Press LB
// Why? This ensures that the A Button command does not accidently spawn objects within your bases.
// This is designed so you can Walk and Aim to easily scrap objects.
//
// #3 Pressing the Right Bumper after enabling Settlement Size Scripts will automatically press B and then A repeatedly.
// To use the Auto Store Assistant Script properly:
// 1. Enter Workshop mode
// 2. Place Selection Box on an object that you do NOT have the materials to create
// 3. Press RB
// Why? This ensures that the A Button command does not accidently spawn objects within your bases.
// This is designed so you can Walk and Aim to easily store objects.
//----------------------------------------
// BEGIN SCRIPT
//----------------------------------------
int ToggleCraft = FALSE;
int ToggleAutomation = FALSE;
int ToggleSettlement = FALSE;
int ACGULOOP = FALSE;
int ACGDLOOP = FALSE;
int ATURBOLOOP = FALSE;
int ASCRAPLOOP = FALSE;
int ASTORELOOP = FALSE;
main {
//-------------------------
//
// Begin Crafting Script
//
//-------------------------
// Toggle Crafting Glitch
if(get_val(XB1_LEFT) && get_ptime(XB1_LEFT) >= 4000)
{
combo_run(Alert)
}
if (event_release(XB1_LEFT) && get_ptime(XB1_LEFT) >= 4000)
{
ToggleCraft = !ToggleCraft;
set_val(XB1_LEFT,0);
}
// ACGU Activator
if(event_press(XB1_LB)&& ToggleCraft)
{
combo_run(DualRumble);
ACGULOOP = !ACGULOOP;
}
if(ACGULOOP && ToggleCraft)
{
combo_run(ACGU);
}
if(!ACGULOOP)
{
combo_stop(ACGU);
}
// ACGD Activator
if(event_press(XB1_RB)&& ToggleCraft)
{
combo_run(DualRumble);
ACGDLOOP = !ACGDLOOP;
}
if(ACGDLOOP && ToggleCraft)
{
combo_run(ACGD);
}
if(!ACGDLOOP)
{
combo_stop(ACGD);
}
// MCGU Activator
if (event_release(XB1_LT)&& ToggleCraft && get_ptime(XB1_LT) < 200)
{
combo_run(Rumble);
combo_run(MCGU);
}
// MCGD Activator
if (event_release(XB1_RT)&& ToggleCraft && get_ptime(XB1_RT) < 200)
{
combo_run(Rumble);
combo_run(MCGD);
}
//-------------------------
//
// Begin Automation Script
//
//-------------------------
// Toggle Automation Glitch
if(get_val(XB1_DOWN) && get_ptime(XB1_DOWN) >= 4000)
{
combo_run(Alert)
}
if (event_release(XB1_DOWN) && get_ptime(XB1_DOWN) >= 4000)
{
ToggleAutomation = !ToggleAutomation;
set_val(XB1_DOWN,0);
}
// Auto-Turbo A Script
if(event_press(XB1_VIEW)&& ToggleAutomation)
{
combo_run(DualRumble);
ATURBOLOOP = !ATURBOLOOP;
}
if(ATURBOLOOP && ToggleAutomation)
{
combo_run(TurboA);
}
if(!ATURBOLOOP)
{
combo_stop(TurboA);
}
// Manual-Turbo A Script
if (get_val(XB1_A) >= 100 && ToggleAutomation )
{
combo_run(TurboM);
}
//-------------------------
//
// Begin Settlement Script
//
//-------------------------
// Toggle Settlement Size Glitch
if(get_val(XB1_RIGHT) && get_ptime(XB1_RIGHT) >= 4000)
{
combo_run(Alert)
}
if (event_release(XB1_RIGHT) && get_ptime(XB1_RIGHT) >= 4000)
{
ToggleSettlement = !ToggleSettlement;
set_val(XB1_RIGHT,0);
}
// Manual Scrap Assistant Script
if (event_release(XB1_X) && get_ptime(XB1_X) < 200 && ToggleSettlement)
{
combo_run(ASETTLEMENT);
}
// Manual Store Assistant Script
if (event_release(XB1_B) && get_ptime(XB1_B) < 200 && ToggleSettlement)
{
combo_run(ASETTLEMENT);
}
// Auto Scrap Assistant Script
if(event_release(XB1_LB) && get_ptime(XB1_LB) && ToggleSettlement)
{
combo_run(DualRumble);
ASCRAPLOOP = !ASCRAPLOOP;
}
if(ASCRAPLOOP && ToggleSettlement)
{
combo_run(XSCRAP);
}
if(!ASCRAPLOOP)
{
combo_stop(XSCRAP);
}
// Auto Store Assistant Script
if(event_release(XB1_RB) && get_ptime(XB1_RB) && ToggleSettlement)
{
combo_run(DualRumble);
ASTORELOOP = !ASTORELOOP;
}
if(ASTORELOOP && ToggleSettlement)
{
combo_run(BSTORE);
}
if(!ASTORELOOP)
{
combo_stop(BSTORE);
}
}
//-------------------------
//
// Begin Crafting Combos
//
//-------------------------
//Auto Crafting Glitch Down Script
combo ACGD {
wait(100); // Delay - Sets an initial delay before running the button combo
set_val(XB1_RIGHT, 100); // Button - Hits dpad RIGHT
wait(50); // Requirement - This allows the button press to be registered by the console
set_val(XB1_RIGHT, 0); // Button - Releases dpad RIGHT
set_val(XB1_DOWN, 100); // Button - Hits dpad DOWN
wait(50); // Requirement - This allows the button press to be registered by the console
set_val(XB1_DOWN, 0); // Button - Releases dpad DOWN
wait(250); // Failsafe - Adjust this to increase/decrease crafting speed
set_val(XB1_A, 100); // Button - Hits A button
wait(50); // Requirement - This allows the button press to be registered by the console
set_val(XB1_A, 0); // Button - Releases A button
wait(100); // Failsafe - Adjust this to increase/decrease crafting speed
set_val(XB1_UP, 100); // Button - Hits dpad UP
wait(50); // Requirement - This allows the button press to be registered by the console
set_val(XB1_UP, 0); // Button - Releases dpad UP
wait(250); // Failsafe - Adjust this to increase/decrease crafting speed
}
//Auto Crafting Glitch Up Script
combo ACGU {
wait(100); // Delay - Sets an initial delay before running the button combo
set_val(XB1_RIGHT, 100); // Button - Hits dpad RIGHT
wait(50); // Requirement - This allows the button press to be registered by the console
set_val(XB1_RIGHT, 0); // Button - Releases dpad RIGHT
set_val(XB1_UP, 100); // Button - Hits dpad UP
wait(50); // Requirement - This allows the button press to be registered by the console
set_val(XB1_UP, 0); // Button - Releases dpad UP
wait(250); // Failsafe - Adjust this to increase/decrease crafting speed
set_val(XB1_A, 100); // Button - Hits A button
wait(50); // Requirement - This allows the button press to be registered by the console
set_val(XB1_A, 0); // Button - Releases A button
wait(100); // Failsafe - Adjust this to increase/decrease crafting speed
set_val(XB1_DOWN, 100); // Button - Hits dpad DOWN
wait(50); // Requirement - This allows the button press to be registered by the console
set_val(XB1_DOWN, 0); // Button - Releases dpad DOWN
wait(250); // Failsafe - Adjust this to increase/decrease crafting speed
}
//Manual Crafting Glitch Down Script
combo MCGD {
wait(100); // Delay - Sets an initial delay before running the button combo
set_val(XB1_RIGHT, 100); // Button - Hits dpad RIGHT
wait(50); // Requirement - This allows the button press to be registered by the console
set_val(XB1_RIGHT, 0); // Button - Releases dpad RIGHT
set_val(XB1_DOWN, 100); // Button - Hits dpad DOWN
wait(50); // Requirement - This allows the button press to be registered by the console
set_val(XB1_DOWN, 0); // Button - Releases dpad DOWN
}
//Manual Crafting Glitch Up Script
combo MCGU {
wait(100); // Delay - Sets an initial delay before running the button combo
set_val(XB1_RIGHT, 100); // Button - Hits dpad RIGHT
wait(50); // Requirement - This allows the button press to be registered by the console
set_val(XB1_RIGHT, 0); // Button - Releases dpad RIGHT
set_val(XB1_UP, 100); // Button - Hits dpad UP
wait(50); // Requirement - This allows the button press to be registered by the console
set_val(XB1_UP, 0); // Button - Releases dpad UP
}
//-------------------------
//
// Begin Automation Combos
//
//-------------------------
// Auto-Turbo A Script
combo TurboA {
wait(100); // Delay - Sets an initial delay before running the button combo
set_val(XB1_A, 100); // Button - Hits A button
wait(50); // Requirement - This allows the button press to be registered by the console
set_val(XB1_A, 0); // Button - Releases A button
}
// Manual-Turbo A Script
combo TurboM {
wait(100); // Requirement - This allows the button press to be registered by the console
set_val(XB1_A, 0); // Button - Releases A button
}
//-------------------------
//
// Begin Settlement Combos
//
//-------------------------
combo XSCRAP {
wait(100); // Delay - Sets an initial delay before running the button combo
set_val(XB1_X, 100); // Button - Hits X button
wait(50); // Requirement - This allows the button press to be registered by the console
set_val(XB1_X, 0); // Button - Releases X button
wait(100); // Delay - Failsafe (Ensuring the scrap menu has time to open)
set_val(XB1_A, 100); // Button - Hits A button
wait(50); // Requirement - This allows the button press to be registered by the console
set_val(XB1_A, 0); // Button - Releases A button
}
combo BSTORE {
wait(100); // Delay - Sets an initial delay before running the button combo
set_val(XB1_B, 100); // Button - Hits B button
wait(50); // Requirement - This allows the button press to be registered by the console
set_val(XB1_B, 0); // Button - Releases B button
wait(100); // Delay - Failsafe (Ensuring the store menu has time to open)
set_val(XB1_A, 100); // Button - Hits A button
wait(50); // Requirement - This allows the button press to be registered by the console
set_val(XB1_A, 0); // Button - Releases A button
}
combo ASETTLEMENT { // This code is being called by both the Manual Scrap & Store Scripts because all this combo does is hit A.
wait(100); // Delay - Sets an initial delay before running the button combo
set_val(XB1_A, 100); // Button - Hits A button
wait(50); // Requirement - This allows the button press to be registered by the console
set_val(XB1_A, 0); // Button - Releases A button
}
//-------------------------
//
// Shared Script Settings
//
//-------------------------
// Alert Settings
combo Alert
{
set_rumble(RUMBLE_A, 100); // Vibrates...
wait(300);
reset_rumble();
}
// Dual Rumble Settings
combo DualRumble
{
set_rumble(RUMBLE_A, 100); // Vibrates...
wait(200);
reset_rumble();
wait(100);
set_rumble(RUMBLE_A, 100); // Vibrates...
wait(200);
reset_rumble();
}
// Single Rumble Settings
combo Rumble
{
set_rumble(RUMBLE_A, 100); // Vibrates...
wait(200);
reset_rumble();
}
//----------------------------------------
// END SCRIPT
//----------------------------------------
//----------------------------------------
// Credits
//----------------------------------------
//
// Shoutouts to Neil Amouyal, BlueForce, UK_Wildcats_Fans, and Combo Magik, for using great adaptable coding techniques.
// I always make my code easy to understand so you can take & adapt my code for your own projects!
// All I ask if that if you do use my code to please give me a shoutout as well, Thank You!