ROBLOX Studio Plugins
These are some of my best Studio plugins (but certainly not all of them). These are all works in progress and I improve them when I see fit. Let me know of any ideas or bug reports by contacting me.
The highest version number is the latest version. Some of my plugins are named after animals in the animal kingdom. The animal or animal body part that a plugin is named after has nothing to do with the plugin itself. It's just a fancy name!
I use a service called adf.ly to forward to the respective download page of each plugin on MediaFire. This allows me to collect revenue for any downloads of my work; I highly recommend it if you are a content creator and want a great URL shortener.
How to Install
Full Tutorial - Installing plugins is easy! Check out my tutorial video, my written tutorial or another written tutorial that I wrote on LuaLearners' forum. Basically, all you have to do is download the plugin and unzip the contents into ROBLOX Studio's plugins folder. To open the plugins folder, click Tools > Open Plugins Folder (screenshot) while in Studio.
These plugins will work with ROBLOX Studio 2013 on Macintosh, but since I don't have a Mac I cannot provide instructions on installing them for Mac users. Sorry! A quick Google search might solve your problems though :)
By downloading these plugins, you agree to the following terms:
You may use these plugins for your regular ROBLOX Studio usage. For derivative works, you must attribute me (Ozzypig) and share the new work under the same Creative Commons license as below. Do not represent my code as your own, and certainly do not sell these plugins in any way. Ask me before including in a "plugin pack".
Please note: the above is not the complete license; the complete version can be found here. This license applies to all my plugins individually.
Permissions beyond the scope of this license may be available by contacting Ozzypig.
Plugins are Virus-Free
These plugins are virus free and this website contains no viruses. If you have been told that this website or the plugins on it have viruses, then rest assured that whoever told you is lying. There are multiple checks that this site has passed in order to upload these plugins:
- Google search index (Google will blacklists virus distributors)
- MediaFire hosting (They don't allow virus hosting and will scan files)
- Linking through adf.ly
- AVG Scan
- Norton Safe Web
- Google Safe Browsing
- Yandex Review
- Sucuri SiteCheck
- VirusTotal Scan Report
Click a button icon to find out what it does. All plugin downloads that are dated July 7th 2013 (and later) will also contain an extra file called about.html. Open it in a web browser to find out more about the plugin.
|Download Most Recent||V5 (Jun 14th, 2013) - 398 KB|
V4 (Jul 12th, 2012) - 395 KB
V3 (Jun 13th, 2012) - 316 KB
V2 (Mar 28th, 2012) - 12 KB
V1 (Feb 10th, 2012) - 15 KB
This plugin is great for all scripters, beginners or experts. It provides easy-to-use scripting tools. Comes with a configuration file (config.lua) that you can disable/enable certain features.
If the source of a script changes in the place and there is a syntax error in the script, it will display an error so it can be fixed immediately. Click the error box to dismiss it, or right-click it for more options. The error also appears in the output
When you insert a script using the plugin, the script will put boilerplate code based on if the selected object is one of the following classes:
BasePart (with ClickDetector or Dialog as children), FlagStand, Seat, VehicleSeat, SkateboardPlatform, Players, HopperBin, Tool, Workspace, ScreenGui/GuiMain, BillboardGui, Frame, TextButton, ImageButton, TextLabel, ImageLabel, Model (with Humanoid)
This plugin comes with a command system in which if you type a certain comment in a script, the plugin can detect it and run certain processes. To run a command, type one of the following in a script:
These will run the #hello command. You can type #help for this list of commands:
Commands Help: #hello Replaces with "Hello, world!". #help Replaces with this message. #clear Clears the source of a script. #now Replaces with a timestamp. #hash Replaces with the script's hash. #index Select an object, then run the command. Replaces with an absolute indexing of the selected object (ie, game.Workspace.Model.Part)with an absolute indexing of that object (ie, game.Workspace.Model.Part). #nocomments Removes single-line comments from a script. #flatten Makes the entire script one line. #lines Gives the number of lines in a script. #syntax Checks the syntax of the script for any errors. #sync Replaces the source code of all scripts with the same tag with the one in which #sync was used. Use #synchelp for more info. #synchelp Gives instructions on how to use the syncing system. #tag Echos back the script's tag (if it has one). #about Replaces with information on the Falcon Scripting Plugin
The syncing system is perhaps the most dynamic and unique functionality of this plugin. In a nutshell, it syncs the source of multiple script objects together that are supposed to have the same source. For example, you might have a set of buttons that all have the same script in it. For this to work, scripts should be "tagged" on the first line like such:
This is like a unique identifier for a script source. Let's say you have 5 scripts tagged as !hello, and you change one of them. The syncing system allows you to automatically copy the source of the script you edit to the others, using the #sync (as described command above). When used, the source of the script in which the #sync command was used will be copied to the other scripts of the same tag. The output will tell you how many scripts' sources were synced, like this:
Sync'd 3 of 5 scripts with tag !hello
|Script Adder||This button will add a new Script object to all selected objects (if nothing selected, assumes workspace). Based on the class of each selected object, the scripts will have some boilerplate added to them. See above for the compatible object classes. It will also rename new scripts to avoid namaing conflicts (such as Script, Script2, Script3, etc).|
|Script Checker||Checks for syntax errors in game (or selected objects' children if something is selected) and prints the errors (if any) to the output. Good to press before uploading your game|
|Line Counter||Counts all lines of code in the game (or in selections' children if something is selected) and prints the number of lines (and lines from unique sources) to the output. Note: does not search for scripts in game.Players!|
|Local Toggle||Changes the first selected Script to a LocalScript and vice versa.|
|Script Runner||Sets the Disabled property of the first selected script to false, then back to true, essentially running the script if the game is not paused.|
|Clear Output||Clears the output by calling print() a bunch of times.|
Flamingo Cutscene Creator
|Download Most Recent||V3 (Apr 21st, 2012) - 11 KB|
V2 (Mar 28th, 2012) - 9 KB
V1 (Feb 23rd, 2012) - 12 KB
This plugin is all about creating smooth cutscenes for games. Supports CoordinateFrame, Focus, FOV (FieldOfView), and roll properties. It has pre-made scripts that will run through cutscene track models. Check out some of the buttons' functions for further detail. There are linear, cosine and cubic interpolation functions that can be used. Cubic is the best in my opinion. FOV and roll always use cosine interpolation.
V3 brings support for the rolling ability of cameras and the new Scriptable CameraType value. A new GUI was created to set edit the roll of the camera.
This documentation refers to "cutscene track models" and "shot objects". A cutscene track model is an arbitrary model with an object in it named "CutsceneTrack". A shot object is an arbitrary object whose name is the number shot that it is (the n-th shot, where `n` is the name of the object). The shot object contains CFrameValues ("SCoordinateFrame" and "SFocus") and NumberValues ("SFOV", "SRoll") that represent the camera's property values at that shot in the cutscene.
These instructions teach you how to make a brick that triggers a cutscene. They are much easier easier done than said, trust me...
- Move camera to shot. Apply roll/zoom.
- Press the New Shot button.
- Rename the newly selected object (the "shot object") to the n-th shot that was just taken, where `n` is the ordinal number of the shot. Note: The plugin does this for you as of V3!
- Repeat 1-3 for however many shots you want in the cutscene.
- To preview the cutscene, select the object containing the shots (the workspace) and press the Cutscene Playback button.
- Press the Playback Script Insert button to make a playback LocalScript.
- Copy the shots into a model. Name the model "Track", and move it into the playback LocalScript.
- Press the Button Playback Trigger button to insert a button Script.
- Drag the playback LocalScript into the inserted script.
- Put the button playback trigger script into a brick (usually an invisible one). Place the brick appropriately!
|New Shot||Using the CurrentCamera, it creates a shot object which is placed in a cutscene track (a model). The model is used for the Cutscene Playback button.|
|Recall Shot||Using the CurrentCamera, it creates a shot object which is placed in a cutscene track (a model). The model is used for the Cutscene Playback button.|
|Roll Camera||This opens up a GUI that allows you to roll the camera using :SetRoll(r) and :GetRoll(). You may input a number or use the bar at the top.|
|Cutscene Playback||Take the first selection and searches for camera shot objects inside it, and plays the cutscene back as it would for a player.|
|Playback LocalScript Insert||Adds a LocalScript (to go in a Backpack) to the workspace that will play back the cutscene inside it. If there's a cutscene track selected, it will use that instead of a black track. Note: There are some configurable aspects to the playback script. Edit this script!|
|Button Playback Trigger Script||Inserts a script that will put a playback LocalScript in a player's backpack. Note: There are some configurable aspects to the button script. Edit this script!|
|Download Most Recent||V2 (July 7th, 2013) - 107 KB|
V1 (Feb 10th, 2012) - 1 KB
This plugin displays numbers over selected 3D objects using BillboardGui. The numbers represent the order in which
game:GetService("Selection"):Get() would return. Single bricks have blue numbers while models have green numbers. The total objects selected is displayed in the bottom right of your screen (in the image above it is cut off at the bottom right).
This plugin goes well with other plugins like BuildEdit and CmdUtil, because those plugins sometimes require objects be selected in a specific order.
|Download Most Recent||V1 (Sep 4th, 2013) - 106 KB|
This plugin gives builders more control over outlines on models and bricks. Open the plugin window by clicking the icon. The Global Outlines button enables or disables outlines globally (via Lighting's Outlines property). The buttons underneath will only apply to BaseParts in current selection and its descendants.
The Enable button will make all BaseParts' SmoothNoOutlines surfaces into Smooth surfaces.
The Disable button will make all BaseParts' Smooth surfaces into SmoothNoOutlines surfaces.
The Toggle button will make all BaseParts' Smooth surfaces into SmoothNoOutlines surfaces, and their SmoothNoOutlines surfaces into Smooth surfaces.
Hovering over a button with your mouse will tell you what it does. If your selection is 32 or less items and you click any buttons to the right of Selection Outlines, your selection will briefly reset and then reselect so you can see the changes you just made.
|Absolute Scaler||Open the plugin GUI window (see above).|
|Download Most Recent||V1 (Aug 9th, 2013) - 224 KB|
This fun plugin allows you to scale Parts and Models up or down. You can scale by absolute value using the absolute scaling tool, or by the click and drag interface. There's also an options window to change where the model is to be scaled from (the Top, Bottom or Center). The plugin will automatically add BlockMesh objects to bricks that are smaller than .2 on any axis.
Note: You may encounter glitches or strange behavior if you scale bricks whose surfaces aren't set to Smooth or bricks that are jointed with other bricks. This strange behavior happens with many kinds of brick resizing operations. Make sure to work with smooth and unjointed bricks!
Absolute Scaling Tool
To the right is an animated screenshot of the absolute scaling tool in action. At the top is the number by which the selected models or parts will be scaled by (1 = 100%, 1.5 = 150%, .5 = 50%, etc). The "Scale" button performs the operation. The "Invert" button will take the current scale and divide 1 by it. Also, the TextBox that you input the number into accepts Lua expressions, like
6 * 3 or
1 / 5.
Hint: Pressing the Invert button then the Scale button will effectively "Undo" any scale action performed. In the animated screenshot, 0.8 is the inverse of 1.25 and vice versa.
The "Save" button will create a draggable button GUI on your screen which will set the current scale to its contents. It lets you make quick-change buttons to change the current scale quickly. Right-click to remove it.
Drag Interface Scaling Tool
Above is an screenshot of the click-and-drag interface of the scaling tool. The click-and-drag interface lets you make precise edits to the scale of your selection. Click and hold the mouse on the bar at the top. When finished, click "Confirm" to make your scale changes permanent. To reset the selection back to its original size, press "Reset". If you deselect, then the selection will reset to its original size as well.
This dialog allows you to change between the scale modes: Center, Bottom or Top. This simply changes at what point the model is scaled from. If you have a tree on the ground and want to scale it, use Bottom (shown in the animated screenshot above). If you have something on the ceiling, use Top. If it doesn't matter, use Center.
|Absolute Scaler||Activate the Absolute Scaling Tool (see above).|
|Drag-Interface Scaling||Activate the Drag-Interface; after clicking this be sure to have a Model or Parts selected.|
|Scaling Settings||Open the Scaling settings as described above.|
|Download Most Recent||V2 (July 16th, 2013) - 78 KB|
V1 (July 7th, 2013) - 76 KB
This fun plugin lets you cut Parts along an axis. Simply activate the plugin by clicking the icon and hover over a brick. You will see a line along the brick which tells you the direction it will cut. Right-click to change what axis to cut on (X-Y-Z). Left-click to slice! It even makes a satisfying slicing sound as if you were a ninja cutting fruit or a French nobleman during the French Revolution.
After a cut, the brick basically has two copies of itself (including all of its children) which are sized and CFramed to be right next to each other. The copy keeps all children, including Decals, Scripts, and any meshes. In the animation above, I made two cuts in the middle of a 2x4 brick, then I removed the middle part. Beware that there is no "snapping" to specific numbers (the cuts are made on any number).
If you click to make a cut, and drag to another part of the brick you just cut, you can cut a section out of the brick rather than just make two cuts and delete. If you accidentally start a drag cut, right click to cancel.
|Cut Brick||Activate the cutting ability of the plugin (see above).|
Brick Orient New!
|Download Most Recent||V1 (September 20th, 2013) - 1.1 MB|
This plugin allows the user to orient a brick in a certain direction. Essentially, it rotates bricks by 90 degrees on any axis, and flips the two other axis' on the Size so the brick takes the same space up as before.
This plugin is good for builders because it allows them to change how WedgeParts and TrussParts are oriented. You can use it to make surfaces match up, too. It works great on parts with decals.
|Orient Brick||Allow re-orientation of selected bricks (see above).|
Mesh Scale Editor
|Download Most Recent||V1 (Jul 11th, 2013) - 607 KB|
This plugin allows the user to quickly and visually edit Mesh objects' Scales. When a SpecialMesh, BlockMesh, or any other mesh is selected, blue handles appear to allow the user to drag. As you drag you can change the Scale property of a mesh. It acts like a resize tool for meshes. This plugin allows you to get extreme precision with mesh scales, so it's a valuable part of any builder's tools.
|Download Most Recent||V1 (Jul 11th, 2013) - 45 KB|
This plugin allows the user to quickly edit Vector3Value objects' values. When a Vector3Value is selected, blue handles appear to allow the user to drag the in-game point to the desired location. Basically, you can now visualize in the 3D world where a Vector3Value's Value is.
|Download Most Recent||V1 (Feb 10th, 2012) - 11 KB|
This plugin is a handles based tool that ignores other bricks and allows you to move/rotate/resize through other bricks. It has sounds, options and hotkeys along with a useful right-click context menu. It also has a unique tagging system that uses BillboardGuis and a lettering system.
|Move||Move on axis relative to brick or to the world (this is an option in the context menu).|
|Resize||Resize on axis. Can be in "center mode" which resizes other side as well (also an option in context menu). There is an "overdrag" option that allows moving a brick backwards if you resize it under 0.2 units.|
|Rotate||Rotate a brick relative to itself.|
Note: These only work if any of the tools are selected.
|X||move to next tool|
|T||tag the first selected brick|
|Z||undo the last action done|
Right click while any tool is selected and a menu will pop up around your mouse. The menu options should be pretty easy to understand. If you move your mouse outside the rectangle it fades away. If you click the rectangle it will lock and stay on-screen until you select an option.
Talon Handle Welding
|Download Most Recent||V1 (Feb 10th, 2012) - 4 KB|
This plugin allows you to select some bricks (one named "Handle") and weld them together. This is great for making multi-brick tools/gear.
|Simple Weld||Just creates welds from all the parts selected to the part named "Handle".|
|Script Weld||Creates a weld profile. The bricks are re-welded to the Handle if the welds break (ie, in a tool). This allows you to make multi-brick tools without letting your tool fall apart, ever.|
Tiger Copy Button
|Download Most Recent||V1 (Feb 10th, 2012) - 1 KB|
This plugin is great for builders who want a quick-clone button while building. Cloned bricks will be inside their originals (they don't jump above the original).
|Copy||This button will clone all of the currently selected objects and set their parent to the respective originals' parents. It then selects all the newly cloned objects.|