Roblox script

Master Pirate Script

✅ Last Updated: August 2026 - Full script source is posted below, copy it as it is.

Auto BossPastebin
2 scripts2 no key
Master Pirate Script2 working scripts
What you get
2 no key0 key needed
Fastest start, no keyScript 1
loadstring(game:HttpGetAsync("https://raw.githubusercontent.com/TOPCITY2/paman007/main/Protected%20(4).lua"))()

Master Pirate is a pirate-themed game where the grind for better gear, stronger abilities, and more power never really slows down. Every upgrade requires more resources than the last, and farming them manually takes a serious amount of time. These scripts take over the hard parts with Auto Boss, Pastebin so your progression keeps moving even when you step away.

Master Pirate Scripts (Auto Boss, Pastebin & More)

To run any of these scripts you will need a working Roblox executor. Check out the list at that link for free and paid options that work in 2026.

Script 1No key

Master Pirate Script Auto Farm, Auto Quests, Auto Stats, Auto Chests, Auto Boss, Server Hop, Teleports

Master Pirate Script Auto Farm, Auto Quests, Auto Stats, Auto Chests, Auto Boss, Server Hop, Teleports

Auto Boss
loadstring(game:HttpGetAsync("https://raw.githubusercontent.com/TOPCITY2/paman007/main/Protected%20(4).lua"))()
Script 2No key

Master Pirate Script Pastebin2026 :

Master Pirate Script Pastebin2026 :

Pastebin
//-------------------------------------------------
//
// Script to control flying pirate ship with arrow keys
// Requires zcmd include.
//
// Scott Reed (h02) 2011
//
//-------------------------------------------------

#include <a_samp>
#include <zcmd>

#define SHIP_OBJECT_ID          8493
#define SHIP_SKULL_ATTACH       3524
#define SHIP_RAILS_ATTACH       9159
#define SHIP_LINES_ATTACH       8981

new PirateShip[7];
new Float:carrierrot[3];
new Float:carrierspeed;
new carriercontrol;
new piratecam;

public OnFilterScriptInit()
{
	PirateShip[0] = CreateObject(8493, 0.0, 0.0, 0.0,   0.00, 0.00, 270.00);
	PirateShip[1] = CreateAttachment(PirateShip[0], SHIP_SKULL_ATTACH, 4.11, -5.53, -9.78, 0.0, 0.0, 90.0);
	PirateShip[2] = CreateAttachment(PirateShip[0], SHIP_SKULL_ATTACH, -4.11, -5.53, -9.78, 0.0, 0.0, -90.0);
	PirateShip[3] = CreateAttachment(PirateShip[0], SHIP_SKULL_ATTACH, -4.3378, -15.2887, -9.7863, 0.0, 0.0, -90.0);
	PirateShip[4] = CreateAttachment(PirateShip[0], SHIP_SKULL_ATTACH, 4.3378, -15.2887, -9.7863, 0.0, 0.0, 90.0);
	PirateShip[5] = CreateAttachment(PirateShip[0], SHIP_RAILS_ATTACH, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0);
	PirateShip[6] = CreateAttachment(PirateShip[0], SHIP_LINES_ATTACH, -0.5468, -6.1875, -0.4375, 0.0, 0.0, 0.0);
	SetObjectPos(PirateShip[0], 2250.0, -1656.0, 15.0);
	EditObject(0, PirateShip[1]);
}

stock CreateAttachment(attach, modelid, Float:X, Float:Y, Float:Z, Float:RX, Float:RY, Float:RZ)
{
	new obj = CreateObject(modelid, X, Y, Z, RX, RY, RZ);
	AttachObjectToObject(obj, attach, X, Y, Z, RX, RY, RZ);
	return obj;
}

public OnFilterScriptExit()
{
	for(new x;x<sizeof(PirateShip);x++)
	{
	    if(IsValidObject(PirateShip[x])) DestroyObject(PirateShip[x]);
	}
}
/*
public OnObjectMoved(objectid)
{
	if(objectid == PirateShip[0])
	{
	    new Float:x, Float:y, Float:z, Float:rx, Float:ry, Float:rz;
		GetObjectPos(PirateShip[0],x,y,z);
		GetObjectRot(PirateShip[0], rx, ry, rz);

		rz += 180;
		x -= (60 * floatsin(-rz, degrees));
		y -= (60 * floatcos(-rz, degrees));
		z -= (60 * floattan(-rx, degrees));

		MoveObject(PirateShip[0],x,y,z,carrierspeed, carrierrot[0] , carrierrot[1], carrierrot[2]);
	}
	return 1;
}
*/


public OnPlayerUpdate(playerid)
{
    if(carriercontrol == playerid)
    {
		new Keys,ud,lr;
	    GetPlayerKeys(playerid,Keys,ud,lr);

	    if(ud > 0)
		{
		    new Float:x, Float:y, Float:z, Float:rx, Float:ry, Float:rz;
			GetObjectPos(PirateShip[0], x, y, z);
			GetObjectRot(PirateShip[0], rx, ry, rz);

			rz += 180;
			x -= (60 * floatsin(-rz, degrees));
			y -= (60 * floatcos(-rz, degrees));
			z -= (60 * floattan(-rx, degrees));
			MoveObject(PirateShip[0],x,y,z,carrierspeed, carrierrot[0] , carrierrot[1], carrierrot[2]);

			if(carrierrot[0] > 360.0) carrierrot[0] = 0.0;
			else carrierrot[0] = carrierrot[0] + 1.0;
		}
	    else if(ud < 0)
		{
		    new Float:x, Float:y, Float:z, Float:rx, Float:ry, Float:rz;
			GetObjectPos(PirateShip[0], x, y, z);
			GetObjectRot(PirateShip[0], rx, ry, rz);

			rz += 180;
			x -= (60 * floatsin(-rz, degrees));
			y -= (60 * floatcos(-rz, degrees));
			z -= (60 * floattan(-rx, degrees));
			MoveObject(PirateShip[0],x,y,z,carrierspeed, carrierrot[0] , carrierrot[1], carrierrot[2]);

			if(carrierrot[0] < 0.0) carrierrot[0] = 360.0;
			else carrierrot[0] = carrierrot[0] - 1.0;
		}
	    if(lr > 0)
		{
			new Float:x, Float:y, Float:z, Float:rx, Float:ry, Float:rz;
			GetObjectPos(PirateShip[0], x, y, z);
			GetObjectRot(PirateShip[0], rx, ry, rz);

			rz += 180;
			x -= (60 * floatsin(-rz, degrees));
			y -= (60 * floatcos(-rz, degrees));
			z -= (60 * floattan(-rx, degrees));
			MoveObject(PirateShip[0],x,y,z,carrierspeed, carrierrot[0] , carrierrot[1], carrierrot[2]);

			if(carrierrot[2] <= 0.0) carrierrot[2] = 359.0;
			else carrierrot[2] = carrierrot[2] - 1.0;
			
			//if(carrierrot[1] < 90.0) carrierrot[1] += 1.0;
		}
	    else if(lr < 0)
		{
		    new Float:x, Float:y, Float:z, Float:rx, Float:ry, Float:rz;
			GetObjectPos(PirateShip[0], x, y, z);
			GetObjectRot(PirateShip[0], rx, ry, rz);

			rz += 180;
			x -= (60 * floatsin(-rz, degrees));
			y -= (60 * floatcos(-rz, degrees));
			z -= (60 * floattan(-rx, degrees));
			MoveObject(PirateShip[0],x,y,z,carrierspeed, carrierrot[0] , carrierrot[1], carrierrot[2]);

			if(carrierrot[2] >= 360.0) carrierrot[2] = 1.0;
			else carrierrot[2] = carrierrot[2] + 1.0;
			
			//if(carrierrot[1] > -90.0) carrierrot[1] -= 1.0;
		}
	}
    return 1;
}

CMD:tpship321(playerid, params[])
{
	new Float:X, Float:Y, Float:Z;
	GetPlayerPos(playerid, X, Y, Z);
	SetObjectPos(PirateShip[0], X, Y, Z);
	return 1;
}

CMD:control321(playerid, params[])
{
	if(carriercontrol == playerid)
 	{
  		carriercontrol = INVALID_PLAYER_ID;
  		KillTimer(piratecam);
  		//SetCameraBehindPlayer(playerid);
    	SendClientMessage(playerid, 0xFFFFFF, "Stopped Controlling");
   	}
    else
    {
   		carriercontrol = playerid;
   		//piratecam = SetTimerEx("CameraUpdate", 10, true, "i", playerid);
    	SendClientMessage(playerid, 0xFFFFFF, "Controlling");
	}
 	return 1;
}

CMD:setcspeed(playerid, params[])
{
	new string[64];
	carrierspeed = floatstr(params);
	if(carrierspeed == 0.0)
	{
	    if(IsObjectMoving(PirateShip[0])) StopObject(PirateShip[0]);
	}

	format(string, sizeof(string), "Carrier speed set to %f", carrierspeed);
	SendClientMessage(playerid, 0xFFFFFF, string);
	return 1;
}

forward CameraUpdate(playerid);
public CameraUpdate(playerid)
{
    new Float:x, Float:y, Float:z, Float:X, Float:Y, Float:Z, Float:rx, Float:ry, Float:rz;
	GetObjectPos(PirateShip[0],x,y,z);
	X=x; Y=y; Z=z;
	GetObjectRot(PirateShip[0], rx, ry, rz);
	
	rz += 180;
	x -= (-60 * floatsin(-rz, degrees));
	y -= (-60 * floatcos(-rz, degrees));
	
	SetPlayerCameraPos(playerid, x, y, Z+10.0);
	SetPlayerCameraLookAt(playerid, X, Y, Z);
}
7 steps

How to Use the Master Pirate Script

Copy a script from the list above first, then follow these in order.

  1. 01

    Get a working executor - see our Roblox Executor list for free options on PC, Mobile, and Mac.

  2. 02

    Launch Roblox and open Master Pirate.

  3. 03

    Open your executor, then click Inject or Attach.

  4. 04

    Copy any script above and paste it into the executor script box.

  5. 05

    Press Execute - the GUI will appear in-game.

  6. 06

    Toggle Auto Farm, Speed Hack, ESP and other features from the GUI menu.

  7. 07

    Always use an alt account to protect your main.

Master Pirate Script

About The Master Pirate Script

Master Pirate is a pirate-themed Roblox game where the grind for better gear, stronger devil fruit abilities, and higher stats never really slows down. Every tier of progression requires more farming than the last, and doing it all manually across multiple sessions adds up fast.

The auto farm and auto dungeon scripts are the biggest time-savers here since they keep your resources and stats climbing without any input. Add inf gem or auto sell on top and your currency never runs dry.

Always run these on an alt to keep your main account safe. The hubs in the list above push updates after game patches so check back here if one stops working.

Looking for free rewards? Check out our Master Pirate Codes page for every working code.

For everything outside the script side - character builds, zone unlocks, and what changed in the latest update - the Master Pirate has it covered.

Disclaimer

All scripts on this page are for educational purposes only. Using scripts in Roblox violates the Roblox Terms of Service and may result in your account being permanently banned or suspended without warning. RobloxDatabase.com is not responsible for any consequences from using these scripts. Always use an alt account - never your main.

More For Master Pirate

Keep exploring

More free stuff for your Roblox account.