Roblox (Windows, Mac OS X)/Removed Features
This is a sub-page of Roblox (Windows, Mac OS X).
This page or section needs more images. There's a whole lotta words here, but not enough pictures. Please fix this. |
Contents
Decommisioned/Altered Services
DHTML
DHTML, as the name suggests, was a service which allowed players to display HTML documents within ROBLOX. Unlike GUIs, DHTML windows were completely new windows that would open on a player's computer.
A sample code of the above would look like:
local w = game:service("HtmlService"):NewWindow() <!--T:5--> w.DocumentComplete:connect(function () w:SetBody([==[ <table width="420" height="190" border="0"> <tr> <td width="490" bgcolor="#FFFFFF"><font color="#000000"> </font><div align="center"> <p><font color="#000000"><b>Hello, World!</b></font></p> <p><font color="#000000">I am a DHTML window!</font></p> </div> </td> </tr> </table> ]==]) w:Show() end) w:Navigate()
The main reason for its removal was because it was easily exploitable, mainly for place stealing. Its very short life span (being removed in January of 2008) suggests that Roblox was very aware of the security issues it created. A year and a half later, in 2009, Roblox would release a replacement for DHTML, known as PlayerGUIs, a built-in GUI display system which could do nearly everything DHTML could.
"Controller" Variable
This variable was in almost all physical objects, and when it was set to a Player, the player set to it would be able to control whatever the instance was, provided that the model had the correct parts for doing so. This variable was to control many old models, one example being The Hammer.
There is KeyboardLeft, which controls the model with WASD, KeyboardRight, which controls it with HUJK, Joypad1 and Joypad2, which don't do anything, Chase, which has it chase the player, and Flee, where it runs away from you. However, the model needs wheels to move around on, so it will not work without them. The surface that connects has to be SteppingMotor or Motor, and the ring on it changes color depending on what controller type you chose.
There was a variable called "ControllerFlagShown" where if you checked it on models with a controller set, a 3D flag would appear ontop of them, with the same color as the rings. When set to KeyboardRight it appears solid blue, KeyboardLeft it appears solid red, when set to Chase it appears pitch black, and when set to Flee it appears solid yellow.
Around mid 2007 the 3D flag would not show and ControllerFlagShown was removed in April 2009 in favor of a easier to use class called VehicleSeat. Barely anyone knew about this until recently, where some people rediscovered it.
InsertService
Like DHTML, this service was also unfortunately very exploitable and was changed by Roblox in mid 2011. While the service still exists, it can no longer insert any instance not made by the game's creator or the Roblox account in any way. This service was famously used to power the insert tool, introduced by Roblox in 2009.
PointsService
PointsService was a service released in September 2014. The PointsService was removed on the 30th of June 2023. The PointsService was a service used for giving players points when they completed certain tasks in games. These points didn't do anything and were completely useless. Giving the LocalPlayer points on joining was done with the following code.
local PointsService = game:GetService("PointsService") game:GetService("Players").PlayerAdded:Connect(function(player) PointsService:AwardPoints(player.userId, 10) --This part gives the Player points end)
Reading how many points a player had was done with the following code.
local PointsService = game:GetService("PointsService") game:GetService("Players").PlayerAdded:Connect(function(player) local points = PointsService:GetGamePointBalance(player.userId) print(points) end)
Events and methods from PointsService.
Type | Name | Security | Parameters |
---|---|---|---|
Tuple (function) | AwardPoints() | None | userId (int64), amount (int) |
int (function) | GetAwardablePoints() | None | None |
int (function) | GetGamePointBalance() | None | userId (int64) |
int (function) | GetPointBalance() | None | userId (int64) |
null (Event) | PointsAwarded | None | userId (int64), pointsAwarded (int), userBalanceInGame (int), userTotalBalance (int) |
AdService
AdService was a service added to Roblox on the 21st of May 2014. AdService was used for showing video ads on the mobile version of Roblox. Ads could not be played more than 5 times within an hour and it was recommended to clarify to the player that they were watching an ad. The service was decommisioned on the 23th of may 2017.
The adservice was used by developers to earn money. With a payout rate of 1 Robux per 20 Impressions it was a good way to earn money on the platform. The adservice worked well in games were Players had to wait between rounds.
Events and methods from AdService.
Type | Name | Security | Parameters |
---|---|---|---|
Tuple (function) | GetAdTeleportInfo() | RobloxScriptSecurity | None |
Array (function) | GetReportAdInfo() | RobloxScriptSecurity | None |
null (function) | ReturnToPublisherExperience() | RobloxScriptSecurity | AdTeleportMethod |
null (function) | ShowVideoAd() | None | None |
null (Event) | AdTeleportEnded | RobloxScriptSecurity | None |
null (Event) | AdTeleportInitiated | RobloxScriptSecurity | None |
null (Event) | PortalPrompt | RobloxScriptSecurity | destinationId (int64), portal (Instance), requiresNoButton (bool) |
null (Event) | VideoAdClosed | RobloxScriptSecurity | adShown (bool) |
Events and methods from AdTeleportMethod.
Type | Name | Security |
---|---|---|
Enum (EnumItem) | PortalForward | RobloxScriptSecurity |
Enum (EnumItem) | InGameMenuBackButton | RobloxScriptSecurity |
Enum (EnumItem) | UIBackButton | RobloxScriptSecurity |
Enum (EnumItem) | PortalReturn | RobloxScriptSecurity |
SafeChat
This was a feature that allowed users with custom chat disabled in their game to still to talk with others. This was also used by guests and under-13s to talk in chat. This was a feature around since 2007 from 2013 when they added a new white list system. Safechat was able to be edited by going to contents/fonts/ and opening safechat.xml on a notepad.
This is not to be confused with under 13 limitations in chat, which is occasionally called SafeChat.
Bevels
This was a detail on parts that was implemented in October 2007[1] to early 2013. This was able to be turned off through Roblox studio or back on if turned off. The only thing that would hide bevels without turning them off was using decals. In early 2013, Roblox released a blog post stating they are removing bevels to reduce lag.
Image below shows what bevels look like.
Stencil shadows
The stencil shadows technique was used to render shadows cast by objects during 2006 to early 2014. It was slowly replaced by the less resource intensive shadow mapping technique during 2012 to mid 2018.
LDraw
LDraw is a standard for Lego CAD programs, essentially letting you create 3D scenes using virtual Legos. Roblox Studio originally had the ability to insert LDraw files, which was silently removed in 2010. It only really worked for builds featuring basic parts, otherwise builds would not contain the parts it couldn't import, or even crash Studio. Here is an LDraw file of a small pyramid imported into the Roblox 2007 client's studio.
0 Example Pyramid for Demonstration of LDRAW Library 0 Name: pyramid.ldr 0 Author: James Jessiman <!--T:16--> 1 1 -40 -24 60 1 0 0 0 1 0 0 0 1 3001.dat 1 1 40 -24 60 1 0 0 0 1 0 0 0 1 3001.dat 1 1 60 -24 0 0 0 1 0 1 0 -1 0 0 3001.dat 1 1 40 -24 -60 1 0 0 0 1 0 0 0 1 3001.dat 1 1 -40 -24 -60 1 0 0 0 1 0 0 0 1 3001.dat 1 1 -60 -24 0 0 0 1 0 1 0 -1 0 0 3001.dat <!--T:17--> 0 STEP <!--T:18--> 1 4 -20 -48 40 1 0 0 0 1 0 0 0 1 3001.dat 1 4 40 -48 20 0 0 1 0 1 0 -1 0 0 3001.dat 1 4 20 -48 -40 1 0 0 0 1 0 0 0 1 3001.dat 1 4 -40 -48 -20 0 0 1 0 1 0 -1 0 0 3001.dat <!--T:19--> 0 STEP <!--T:20--> 1 14 0 -72 20 1 0 0 0 1 0 0 0 1 3001.dat 1 14 0 -72 -20 1 0 0 0 1 0 0 0 1 3001.dat <!--T:21--> 0 STEP <!--T:22--> 1 0 0 -96 0 1 0 0 0 1 0 0 0 1 3003.dat <!--T:23--> 0 STEP