generic image
Processing...
  • Games
  • Catalog
  • Develop
  • Robux
  • Search in Players
  • Search in Games
  • Search in Catalog
  • Search in Groups
  • Search in Library
  • Log In
  • Sign Up
  • Games
  • Catalog
  • Develop
  • Robux
   
ROBLOX Forum » Game Creation and Development » Scripters
Home Search
 

Re: Scripting Helpers site: Criticism of "Lag Removal" article

Previous Thread :: Next Thread 
Everoso is not online. Everoso
Joined: 26 Jul 2016
Total Posts: 189
29 Jul 2016 01:48 AM
TL;DR Scripters feel free to jump in on stuff I got wrong or add stuff to it. I'll be sending this to SH admins on the site?

I think this is the most poorly written article on the Scripting Helpers website.

"#2: Use less RemoteEvents

If you're using Network Filtering, chances are you're using RemoteEvents to communicate with the server. Though this is a very relevant way, this causes latency when used moderately enough."

First off, this clearly wasn't read over. A very relevant way? What? Relevant to what? Used moderately enough? This makes no sense to users who will be newer to these concepts.

"• Use one RemoteEvent for different purposes."

How does this help with "lag" at all? This makes no real difference because of how RemoteEvents are handled, more connections listening to more RemoteEvents will not increase the "lag".

"• Make use of ReplicatedStorage"

This helps with lag how? In addition, you can use value objects instead of RemoteEvents? How does the author think ROBLOX works? It's still going to be Server -> Clients. Value objects are not magic. I doubt there's any noticeable difference between the two. Not to mention the author doesn't know what he's talking about. You CAN'T write to ReplicatedStorage on the client, only read from it.

"ROBLOX has very good new methods on lag/latency removal, such as LoD. ROBLOX is making new breakthroughs all the time when it comes to the removal of lag."

This is total filler. First we were talking about network latency with absolutely no mention of lag in the game, and now we just switch topics?

Not to mention in his article he also doesn't properly wait for the character to be loaded.

His article explains things poorly, is full of errors, and appears to be written in five minutes.


Report Abuse
Everoso is not online. Everoso
Joined: 26 Jul 2016
Total Posts: 189
29 Jul 2016 01:50 AM
Also, there's no mention of things such as transparent parts or inefficient wait usage or anything substantial.


Report Abuse
arthas045 is not online. arthas045
Joined: 07 May 2014
Total Posts: 296
29 Jul 2016 02:04 AM
Link to that thing?
Report Abuse
Everoso is not online. Everoso
Joined: 26 Jul 2016
Total Posts: 189
29 Jul 2016 02:05 AM
I can't post a link because it's off-site and I don't want moderation action on my account, but if you Google "roblox lag removal scripting helpers" it is the first thing that comes up.


Report Abuse
Everoso is not online. Everoso
Joined: 26 Jul 2016
Total Posts: 189
29 Jul 2016 02:06 AM
And in case anyone here doesn't want the link, here's a copy paste:






The question that has been asked countless times. We've all heard and asked before "How do I remove lag from my game?" It has also been the subject of many questions on Scripting Helpers. So how do we answer it?

What NOT to use

Let's kick this off by telling you that what you absolutely don't need to use: Lag removal scripts. When found in free models, these can be obtrusive and also could even cause lag.

That said, let's begin.

Might not be lag

There are 2 different types of 'lag' — lag and latency. Lag is created by the client. This includes multiple processes going on locally at once. However, latency is caused by the server doing too much or handling too much at once. Because latency is server-wide, this will affect all clients in a negative way.

How do I remove lag?

There are multiple methods for removing client lag. One of the best is a ROBLOX feature — Part Streaming. Enable it by changing a value in game.Workspace, StreamingEnabled, to true. Basically, this adds a render distance to your player; if a part comes out of range, the part will be non-existent to the client. Beware, though, this can cause problems with LocalScripts searching for far-off parts. These parts will not exist, causing an error unless trying to find a part using WaitForChild.

Another great method is creating your own render distance script that parents objects somewhere where they aren't taking up as much storage. Here's an example:

01
while wait(10) do
02

03
local torso=game.Players.LocalPlayer.Character:WaitForChild("Torso")
04

05
for i,item in pairs(game.Workspace:GetChildren()) do
06
if item:IsA("BasePart") and (torso.Position-item.Position).magnitude>500 then
07
item.Parent=script
08
end
09
end
10

11
for j,item in pairs(script:GetChildren()) do
12
if (torso.Position-item.Position).magnitude<500 then
13
item.Parent=workspace
14
end
15
end
16

17
end
This removes parts from the workspace that are too far away to be interacted with. Used in part with part streaming, this can be extremely useful!

*Please note this script only works properly when FilteringEnabled is set to true (read here for more info)

How do I remove latency?

Now, ROBLOX may have some nice lag removal methods, but server latency is a little different. There are some more long-term commitments that can make your game faster.

#1: Use less ServerScripts ServerScripts are the leading cause of latency. Overusing them can make your game run slower. Using ServerScripts in any of the following ways (and more) will cause latency in your game.

• Cloning one part or model containing a ServerScript with an infinite loop inside it • Using ServerScripts to do things ROBLOX's physics engine can do (Such as Rotating parts constantly)

Now, you can fix this by using one ServerScript to handle multiple objects at once or using ROBLOX's physics engine when possible.

#2: Use less RemoteEvents

If you're using Network Filtering, chances are you're using RemoteEvents to communicate with the server. Though this is a very relevant way, this causes latency when used moderately enough.

You can make RemoteEvents less stressful on the server by doing the following:

• Use one RemoteEvent for different purposes. Some people will use one event to contact the server, another one to contact the client, then ANOTHER one to connect the client again. You could do this all in one event if you used a parameter that had an ID telling the server and client when to react.

• Make use of ReplicatedStorage. In ReplicatedStorage, both the server and clients can read/write. You can make use of this by using values instead of Remote Events. This is safest with dispensable values, such as messagebox GUIs. However, values such as scoreboards can be dangerous. Exploiters have direct access to ReplicatedStorage, which means you don't want to store any important values inside.

ROBLOX has very good new methods on lag/latency removal, such as LoD. ROBLOX is making new breakthroughs all the time when it comes to the removal of lag.

Have any more lag removal tips? Post them in the comments for other people to read!


Report Abuse
httpOmqCxpcake is not online. httpOmqCxpcake
Joined: 16 Feb 2016
Total Posts: 1223
29 Jul 2016 02:06 AM
I learned NOTHING about that article.


And yes. Let's tell the wiki mods how to improve it.
Report Abuse
Everoso is not online. Everoso
Joined: 26 Jul 2016
Total Posts: 189
29 Jul 2016 02:11 AM
I think the website is more or less a bad idea and a failure, though they have very well-written, informative, good articles on their blog (excluding this one) that I would love to see on the Wiki.

Nobody uses Scripting Helpers (the website), the actual community of Scripting Helpers (the subforum) is here and everyone gets help here.


Report Abuse
chimmihc is not online. chimmihc
Joined: 01 Sep 2014
Total Posts: 17143
29 Jul 2016 02:34 AM
"You CAN'T write to ReplicatedStorage on the client, only read from it."

That simply isn't true. That "the client can't write to x" stuff is nonsense spread by idiots.

Nothing is preventing the client from changing anything, it simply won't replicate to the server.
Report Abuse
arthas045 is not online. arthas045
Joined: 07 May 2014
Total Posts: 296
29 Jul 2016 02:35 AM
Just read it, what a bunch of complete BS.
Report Abuse
Everoso is not online. Everoso
Joined: 26 Jul 2016
Total Posts: 189
29 Jul 2016 02:37 AM
Bad phrasing: It won't replicate with FE. But my point still stands though terribly phrased.


Report Abuse
ChemicalHex is not online. ChemicalHex
Joined: 25 Jul 2013
Total Posts: 34
29 Jul 2016 05:29 AM
Overreacting much, dude? ^-^' This isn't what I needed to start out my day.


Report Abuse
Everoso is not online. Everoso
Joined: 26 Jul 2016
Total Posts: 189
29 Jul 2016 05:31 AM
How did I over-react? I'm not personally insulting you at all, I am critiquing the article, and everything on here seems to be fair criticism.

When posting to such a website centered around scripting, it matters the quality of the content posted.


Report Abuse
ChemicalHex is not online. ChemicalHex
Joined: 25 Jul 2013
Total Posts: 34
29 Jul 2016 05:36 AM
""You CAN'T write to ReplicatedStorage on the client, only read from it."

That simply isn't true. That "the client can't write to x" stuff is nonsense spread by idiots.

Nothing is preventing the client from changing anything, it simply won't replicate to the server."

I don't agree with this. The client may be allowed to change values in ReplicatedStorage, but the server won't give a darn. Nothing changes except objects appearing in the client. This could possibly break the game for the client, nothing else.w


Proud owner of -R$37 robux
Report Abuse
sanjay2003 is not online. sanjay2003
Joined: 03 Nov 2012
Total Posts: 740
29 Jul 2016 07:39 AM
You cant remove lag with a script...
Report Abuse
eLunate is not online. eLunate
Joined: 29 Jul 2014
Total Posts: 13268
29 Jul 2016 08:24 AM
Let's clear something up.

"RemoteEvents cause lag"
Do you have any tangible evidence that RemoteEvents inherently cause lag? No, you don't. If anything, RemoteEvents should reduce lag if used properly to delegate to the client. If they inherently increase lag, Roblox seriously needs to work out what they're doing.

"Use one RemoteEvent for different things"
No. No no no. Infer as much as possible. Every single RemoteEvent has to send the GUID for the RemoteEvent either way; make a ton, and infer as much data as you can.

"Make use of ReplicatedStorage"
Why? If you have to replicate it, it's going over the network. If you're using FE, it can replicate both directions. You can read and write to ReplicatedStorage. If anything, use ServerStorage.
Report Abuse
darthpyro is not online. darthpyro
Joined: 18 Aug 2009
Total Posts: 3569
29 Jul 2016 08:55 AM
I avoid Scripting Helpers because they won't allow me access to their content without registering.
Report Abuse
Previous Thread :: Next Thread 
Page 1 of 1
 
 
ROBLOX Forum » Game Creation and Development » Scripters
   
 
   
  • About Us
  • Jobs
  • Blog
  • Parents
  • Help
  • Terms
  • Privacy

©2017 Roblox Corporation. Roblox, the Roblox logo, Robux, Bloxy, and Powering Imagination are among our registered and unregistered trademarks in the U.S. and other countries.



Progress
Starting Roblox...
Connecting to Players...
R R

Roblox is now loading. Get ready to play!

R R

You're moments away from getting into the game!

Click here for help

Check Remember my choice and click Launch Application in the dialog box above to join games faster in the future!

Gameplay sponsored by:
Loading 0% - Starting game...
Get more with Builders Club! Join Builders Club
Choose Your Avatar
I have an account
generic image