Insert Object+ Plugin | Change default properties, save objects locally, create profiles, and more!

Do you ever get slightly annoyed by unanchored parts, frames with borders, anchor points not being in the center, or Hello World! spamming the output?

Do you get tired of having to repeatedly change properties to the same values over and over and over?

Do you hate having to recopy and repaste the same object between different locations?

Worry no longer! With the Insert Object+ plugin you can now overwrite any item’s default properties, save models locally for quick & easy access, change blank script defaults, import cloud assets, and more!

Insert Object Plugin Example

Insert Object Plugin Custom Object Example


Roblox Creator Marketplace Roblox Creator Marketplace

Full Version:

LITE Version (minimal features, faster performance, no required permissions)

Features:

  • Allows you to change the default properties for any item.
  • Supports all properties, attributes, and tags.
  • Works in Team Create and collaboration projects.
  • Ability to save your models and objects locally instead of publishing to the cloud.
  • Import tool allows importing any public model from the cloud without the need of ownership.
  • Can change the code in your default scripts*. Say goodbye to print("Hello World!") :sunglasses:
  • Custom profile creation for different projects and developing situations.
  • Profile-specific “Frequently Used” objects.
  • Collapsible categories for better navigation.
  • Many customizable plugin settings.
  • Backup and Restoration tools for plugin data.
  • Designed with Dark Mode in mind but Light Mode is also supported.

*Script-based plugin features have reduced functionality due to Roblox’s ProtectedString writing safeguard. Scripts larger than 195KB are not fully supported until Roblox removes this plugin limitation.

Screenshots:

Screenshot_4248 Screenshot_4249

How To’s


How to Save Default Properties, Tags, and Attributes
  1. Create or select a profile.

Screenshot_3752

  1. Select any object.

  1. Change the object properties, attributes, and tags to whatever you desire.

Screenshot_3756

  1. Click the Save Defaults button.

Screenshot_3757

  1. You’re good to go! The next time you insert that item, it should be just as you configured!

Insert Object Plugin Example

Available Settings

Click to view setting descriptions

Backup Method

You can change your backup method to ModuleScript or Output Dump.

NOTE: Output Dump can completely crash or cause Studio to hang! The output is not optimized to view large sets of data. If you are exporting, I don’t recommend using the output for any total plugin size over 500 KB. Be sure to save your progress first and export to the output at your own risk.

Cache Local Objects

By default, this setting is enabled. Inserting locally saved objects is significantly faster with this enabled (at the cost of a slower plugin bootup speed). Disable this setting if you require your locally saved objects to be completely inaccessible from untrustworthy collaborators in team create sessions.

Group Multiple Cloud Objects As

Model, Folder, or <OFF>. This is what your cloud items are grouped into if your asset is not already grouped. (This occurs when you publish more than one selection to Roblox under the same model.)

Hide Connection Warnings

This can be enabled to keep proxy connection warnings from being sent to the output if you have the domain blocked or if there is a repeating connection error.

Hide Script Length Warnings

By default, the plugin will print warnings in the output if you try to create or save a script that exceeds the current script creation limitations implemented by Roblox. This setting can be enabled to keep those warnings from being sent to the output.

Insert Method

Single Click, Double Click, and Drag and Drop is supported. However, you can only have one insert method enabled at a time.

Remove Duplicate Names When Saving Local Objects

This setting is used for accurate save data when dealing with object values. You can disable this if you generally don’t use properties that are set to other instances (Welds, Attachments, ObjectValues, PrimaryParts, etc.)

NOTE: I recommend keeping this enabled. This setting greatly helps with saving object variables properly. If there are duplicate names in your custom object and this setting is disabled, it may run into errors or set properties to the wrong objects.

Replace Defaults While Closed

By default, the plugin only replaces the defaults if the plugin is open. Enable this setting if you’d like it to replace defaults even while the plugin is not open.

Replace Defaults While In Team Create

You can disable this setting if you want the plugin to stop replacing defaults while collaborating.

Seconds Before Refreshing Changes

Default is set to 1. This is the delay after your selection is changed and will yield the plugin for X amount of seconds before processing to see if your selection can be saved to your profile.

NOTE: The lower the number, the greater the impact on performance. You can decrease this to 0.1 if you have a modern desktop CPU. You can increase the value if you have a low-performance or mobile CPU. There are prechecks in place to keep change events from spamming but if you are having bad hangups when changing an object’s properties (like Size), try increasing this value (this will lower the plugin’s processing frequency).

Select Object After Insert

Enable this if you want Studio to focus your selection after inserting an object. (If you are using Drag and Drop, this setting is overridden and will always focus your selection on your drag.)

Snap to Grid

Inserted objects using the plugin will snap to your current grid size (Model Tab → Snap to Grid → Grid Size)

Note: Settings apply across the entire plugin, settings are NOT profile specific. Settings are not available in the LITE version.

Plugin Permissions

HTTP Requests (Full Version Only)

Official Roblox Server (Required)

  • This plugin uses the Converter Module: Instance to Table to fetch the latest properties and instances with GET requests to the official Roblox https://setup.rbxcdn.com/ domain.

RoProxy (Optional)

  • This plugin’s cloud-import tool is powered by RoProxy. GET requests are used to get the models in your inventory using the following domains:

    https://inventory.roproxy.com/
    https://itemconfiguration.roproxy.com/

Script Injection

  • This plugin requires Script Injection permissions to create and insert script objects. All inserted scripts come from your saved local objects, your saved script defaults, or are export backup files.

Limitations and Considerations

  • Other plugins that automatically change object properties, attributes, or inserted scripts may cause conflicts with Insert Object+.
  • This plugin does not support UnionOperations. Any union parts within a locally saved object are automatically converted into normal parts.
  • Vertical list view is the only view supported. I do not have plans on implementing a horizontal view.
  • Studio has ProtectedString limitations. If your saved scripts exceed 195KB, they will be trimmed to account for the ProtectedString safeguard implemented by Roblox.
  • Saving local objects and defaults is not instantaneous. The larger the object is, the longer it will take Studio to process.
  • The larger your profiles, the slower your startup speed and general performance will be. I recommend that your combined size (all profiles) should not exceed 10 MB if you want decent performance. Performance varies depending on your hardware and Studio itself.
  • This plugin autosaves every 10 minutes and while exiting Studio. If Studio crashes before it autosaves, your recent local objects and default overrides will not be saved. Be sure to click the plugin’s save button :floppy_disk: every once and a while!
  • This plugin is not intended to be a dedicated storage. If your local objects are important, you should “save to file” or keep them in the cloud instead. If the plugin is unable to load or if you accidently click the item delete buttons, you won’t be able to regain access to your items.
Click to view changelog

Changelog History

June 17th, 2022 | v1.0.0

  • DevForum Launch & Public Release
  • Known Issues: Saving defaults and custom items is quite slower than expected. Loading large custom objects can cause hiccups. Saving plugin settings causes small hangups. I have a planned patch coming in v1.1.0 to address some of these issues.

June 19th, 2022 | v1.1.0

  • Plugin now only runs during Edit mode.
  • Added a manual save button.
  • Great optimization changes. Saving defaults and custom items should be much faster.
  • Added a cache option to help with custom item creation (enabled by default). Inserting large custom objects with this option enabled takes significantly less time to insert than without it.
  • Added an option for Drag and Drop insertion. Only one insert mode can be used at a time due to a Studio conflict. I spent at least 4 hours trying to debug why they couldn’t be used in tandem. I believe the drag function conflicts with MouseButton1 actions.
  • Fixed a label issue where the entire label was deleted instead of just the custom flag.
  • Fixed an issue where custom objects could be created with existing ClassNames.
  • Fixed a BrickColor replication issue. (I forgot to add the variable to a function parameter.)
  • Fixed an OnInsert positioning issue.
June 20th, 2022 | v1.1.1
  • Fixed an issue where defaults were still being replaced while closed and ReplaceDefaultsWhileClosed was set to false.
  • Known Issue: Drag and Drop does not behave as intended due to what I believe is a Studio bug. Once dragged into the screen, you have to re-click in order to view your drag. I believe this is another bug with mouse inputs between windows. This did work as intended during testing but now has randomly stopped working properly, even during testing.
June 24th, 2022 | v1.1.2
  • Fixed a typo when loading settings. (A setting was being loaded as a different saved setting.)
July 2nd, 2022 | v1.1.3
  • Fixed a default settings typecheck error causing no settings to be loaded for new users.
August 31st, 2022 | v1.1.4
September 4th, 2022 | v1.1.5
  • Small bugfix for a property discrepancy for instances with the FontFace property. (Instance.new used LegacyArial while Studio-Insert used SourceSans, causing conflict.)
September 27th, 2022 | v1.1.6
  • Small bugfix where the open/running state wasn’t checked properly after updates.
  • Known Issue: Icons for the plugin are not the latest Studio icons. This is a Studio issue and has been acknowledged by Roblox Staff in #studio-bugs.
November 10th, 2022 | v1.1.7
  • Bugfix for an issue when creating parts with CustomPhsyicalProperties. CustomPhysicalProperties should be set correctly now.
  • Icon Issue Update: Instance icons are still outdated and using legacy icons. Refer to this thread for updates.
November 11th, 2022 | v1.1.8
  • Fixed a few issues with MeshParts not being created properly.
  • Fixed an issue where properties weren’t being applied to newly inserted parts. (Studio’s API was updated, giving a few new unaccounted properties.)
November 12th, 2022 | v1.1.9
  • Fixed an attachment positioning issue.
  • Added an Organization category (Configurations, Folders, Models) and a Text Chat category (TextChannels, TextChatCommands).
November 13th, 2022 | v1.1.901 ← I don’t want to increase to 1.2.0 until a major update. :wink:
  • Models now use :MoveTo() instead of :PivotTo(). I’m unsure if this was a studio bug or not but there was an issue where pivoting models when inserted that had a mixture of anchored/unanchored parts with attachments/constraints caused only part of the model to be positioned correctly while the remainder was stuck in place. [Video of bug here.]
  • Moved Actors from Uncategorized to the Scripting category.
  • Fixed a typo that kept the Text Chat category hidden.
November 19th, 2022
  • Updated Marketplace Thumbnail. Replaced logo with a worded description of key features for better discoverability.
November 28th, 2022 | v1.1.902
  • Greatly improved insert reactions when dealing with inserts that have a large amount of descendants. Previously while processing new inserts, each object was unintentionally gathering properties off of a new individual thread instead of a cached thread.
  • Added a simple name precheck for inserted objects to reduce processing.
  • Plugin now takes longer to load. (Approx. 20-25 seconds) This is to throttle the requests to Studio’s API service. Previously while limits were left unchecked, it was possible to error the plugin while inserting objects with many descendants.
  • Added an Ads category.
  • Sorted many controller type instances to their proper categories.

December 9th, 2022 | v1.2.0

    Features

  • Added an import manager. You can now view a list of your inventory rather than having to paste the assetId. (Your inventory privacy settings must be public to utilize the inventory list.)
  • Script data is now supported! You can now change what goes in your default scripts! Also, locally saved objects with scripts will now no longer be blank!
  • Added Tag support.
  • Minimized categories will now persist between sessions! If you hide a category, that category should be hidden in your next session.
  • Added Import Profile Data, Export Profile Data, and Wipe Profile Data features (located in the settings menu).
  • Added LITE version detection. Now if you are running both versions, the plugin will give a popup prompting you to uninstall LITE.
  • Team Create/Collaboration (along with disabling replacements) is now supported.
  • Added a Single-Click Insert Method.
  • Added warnings for failed connections and lengthy scripts.
  • Added the following settings: Backup Method, Group Multiple Cloud Objects As, Hide Connection Warnings, Hide Script Length Warnings, Replace Defaults While In Team Create, Seconds Before Refreshing Changes, Snap To Grid

    Tweaks/Bugfixes

  • Flags are now CUSTOM (Saved Defaults), LOCAL (Local Objects), and CLOUD (Imported Objects)
  • Drag and Drop insert method should cause less lag during the drag if using Snap To Grid setting with a larger grid size.
  • Removed the ability to remove items while in search mode.
  • Fixed an issue where certain items weren’t appearing in search mode. Also fixed newly saved local objects not appearing in search and certain objects staying in search after being removed.
  • Fixed a few script property discrepancies.
  • All wordings of “Custom Objects” have been translated to “Local Objects”.
  • Fixed a settings conflict that allowed some users to have old settings, bypassing the approval check and crashing that specific setting functionality.
  • Fixed an bug where out-of-date users without certain settings weren’t receiving the intended defaults.
  • Changed HTTP precheck to only stop for required connections. Optional connections will bypass the stop but will still flag.
  • Fixed an issue that allowed the “overwrite defaults” option to appear when selecting certain unmodified objects.
  • Renamed many settings. Removed all old script settings. (Script settings are no longer needed because you can now save any script as a default script.)
  • Improved change detections and debounces. You can now use Seconds Before Refreshing Changes setting to reduce processing frequency (higher = less processing).
  • Fixed an issue that caused the LITE version to have an improper “frequently used” order.
  • Reduced http request throttle time by 70%. Completely removed throttle from LITE version.
  • Fixed a visual bug that displayed search results while managing settings.
  • Fixed an issue where plugin wasn’t detecting changes to attributes. Also added support for detecting Tag changes.
  • Fixed an issue where changes weren’t being followed if there were pre-existing defaults, resulting in the button being unavailable unless you unselected and reselected the object.
  • Fixed a bug where sometimes after drag insertion, the Studio tool would revert to select.
  • Fixed a cyclic check that was causing an unintentional debounce.
  • Thumbnail/Icon changes: Full version is now purple and LITE version is now green.
  • A few UI tweaks.
December 14th, 2022 | v1.2.01
  • Small bugfix for FontFace Enum properties.
December 17th, 2022
  • Added descriptions to the Marketplace title for better discoverability.
  • Small change for text color consistency on the Overwrite Defaults button. (orange → purple)
  • Added selection conditional to prevent background processing while the plugin isn’t open.
  • Added debounces for importing and exporting.
  • Removed thumbnail API functionality from import manager. Previous thumbnails were generated from the rbxcdn URL, which weren’t rendering. Thumbnails now use in-game URLs and should render properly.
18 Likes

What do you mean by this?

They mean the default content in a Script.

1 Like

When you create scripts, by default Studio adds print("Hello world!") to the first line. If you have a few empty scripts in your place or just don’t bother removing it, every time you playtest or debug your output get spammed with a bunch of Hello world!'s.

Oh okay thanks, I forgot about that since I just always do ctrl a and del without even noticing

1 Like

Very good plugin! Def can be useful for some people.

2 Likes

I gotta put this one in my bookmarks.

I ran into problem. I can create a new profile but I can’t save custom objects and the custom object doesn’t even appear in the list. I reinstalled the plugin multiple times. No difference. The settings don’t load at all:

And the following are enabled:

No errors or warnings in the output.

Is there something else that is required?

1 Like

Whoops! Sorry about that. Looks like the previous patch ran into an error with the default settings typecheck. What happened was that new users wouldn’t have any settings to load and when loading the defaults, it ran into an issue. During testing I had previous settings from before the 1.1.2 patch so I didn’t come across the error!

Thanks for the bug report! I sent out a new patch (1.1.3) to fix the settings issue. With the settings fixed, the rest of the plugin should work as normal. :smile:

1 Like

Also one more thing I thought I mention about the previous patch is that it would refuse to insert any object no matter how many times you clicked it. Of course it is fixed now, thanks!

1 Like

I would like a feature in the settings that when you click the object you want to insert. A gui will come up and you will choose where to parent the object before inserting it.

The plugin works very similar to the original Insert Object menu so this functionality is actually already available as long as you aren’t using Click n’ Drag. Click n’ Drag objects will always be parented to the Workspace (since you are technically dragging it into your Workspace’s viewport) but if you use Double-Click as your insert method, you are completely in control of where the inserting object is placed.

You can set the object’s parent two different ways with the Explorer menu.

Option 1:
Select the instance that you want to be the Parent.

Screenshot_4060

In the image above, the inserted object will be parented under “SmallTree”.

Option 2:
Use the built-in gui for inserting objects.

Screenshot_4059

In the image above, any object selected from the + dropdown menu will be inserted into ServerStorage but you can use that dropdown menu for any instance in the Explorer.

2 Likes

Version 1.2.0 is now available!

ScriptChanges

Noteworthy Changes

  • Implemented script support for both default replacements and for saving local objects.
  • You can now save items/defaults with their tags.
  • Plugin is now compatible with Team Create sessions.
  • Added a few plugin data recovery tools.
  • Created an import menu for convienence so you can select a model from a list instead of having to copy/paste assetIds.
  • Many new settings added, bugfixes, tweaks, and small UI changes.
Click to view full patchnotes
1 Like

Thank you so much for adding a single click option!!! :smile:
Thanks
I was getting so tired of double clicking an object every time when I selected a Object in the Explorer!

1 Like