Merely
|
  |
| Joined: 07 Dec 2010 |
| Total Posts: 17266 |
|
|
| 09 Jan 2013 07:22 PM |
A recent Roblox update causes raycasting weapons to break across-the-board. Most games with raycasting guns now look like a laser show with all of the permanent beams scattered around the map.
Has anyone bothered to ypcall a gun script and see what is causing this to happen?
Example: http://www.youtube.com/watch?v=63gkrBJ3kxc&t=1m13s |
|
|
| Report Abuse |
|
|
Garnished
|
  |
| Joined: 09 Apr 2012 |
| Total Posts: 12695 |
|
|
| 09 Jan 2013 07:29 PM |
Holy mother of god.
My place must be ruined...... |
|
|
| Report Abuse |
|
|
|
| 09 Jan 2013 07:31 PM |
| Just tried several different raycasting guns and no problems. |
|
|
| Report Abuse |
|
|
|
| 09 Jan 2013 07:33 PM |
| It broke my game also, but it is not due to the raycasting, it is featherweight parts. I fixed it now. |
|
|
| Report Abuse |
|
|
8SunTzu8
|
  |
| Joined: 30 Sep 2011 |
| Total Posts: 8199 |
|
|
| 09 Jan 2013 07:50 PM |
I heard it was a rendering issue. If you leave and come back, the laser shots go away. They aren't really there. I haven't been able to re-create the error on my laptop in solo mode or while playing online alone. Once one other person enters the server, it will leave behind a couple lasers, but it leaves quite a bit with 3 people, and when you're around 20, it's insane. (It happens more quickly with more people, and it doesn't just come from your weapon).
Anyway, I attempted to store all of the lasers in a model, and let the gun remove them naturally. If they weren't removed, I'd used a script to remove them. Since they don't exist as parts in the hierarchy, I am unable to remove them.
@Monkey, please elaborate... :/
I did use a ypcall to remove lasers that got left behind if it was a problem with the removal... (I didn't want the script to break if the part was removed before the script attempted to remove it).
"If you want to become a Developer or Innovator for CSA, contact me." |
|
|
| Report Abuse |
|
|
Sorcus
|
  |
 |
| Joined: 29 Nov 2010 |
| Total Posts: 3775 |
|
|
| 09 Jan 2013 07:57 PM |
I don't understand how you relate this to raycasting weapons? It seems more like any tool that creates anchored parts and removes them isn't fully functional. Is that the correct assumption? Also need a simpler lua code to show off this problem so we can narrow down that this is really a bug in the engine or something functionally changed with the engine that the script borked.
~Sorcus |
|
|
| Report Abuse |
|
|
|
| 09 Jan 2013 07:58 PM |
| Perhaps it's instead regarding your 'inefficient scripting'. |
|
|
| Report Abuse |
|
|
8SunTzu8
|
  |
| Joined: 30 Sep 2011 |
| Total Posts: 8199 |
|
|
| 09 Jan 2013 08:02 PM |
Maybe it is the coding...
But my guns, that didn't use the raycast method, would not reproduce the error... So, Holo is suggesting that the coding is inefficient, and that must mean my code is either efficient or what Sorcus suggested is not truly the case, and it is only related to raycasting.
I don't quite understand how it's only raycasting weapons that seem to be involved, but sometimes a 1x1x1 brick with bevels is created at the end of a laser... That might be used for targeting or something.
I just know that my lasers didn't have the issue, even after I removed the transparency loop. (Gradually reduces transparency in a fraction of a second, probably useless). But those that were not made transparent didn't get stuck.
I had to use old WIJ guns to reproduce the problem, and like I said, it only worked with 2 people in the server.
"If you want to become a Developer or Innovator for CSA, contact me." |
|
|
| Report Abuse |
|
|
8SunTzu8
|
  |
| Joined: 30 Sep 2011 |
| Total Posts: 8199 |
|
|
| 09 Jan 2013 08:04 PM |
I'll check the WIJ guns for some code. I don't know if it is only the tools that are using the raycast method or not, but it doesn't make sense for it to be.
Most clans these days use raycast methods, and so, all of the places with the issue in the clan world contain tools that use the raycast method. Velocity based bullets probably fly so far away that we wouldn't notice (many go through walls, or might fall through the ground,) That is just an assumption.
As I said before, my gun, which is a laser gun in style, without a raycast method, has not been able to reproduce the effect. (Of course I enhanced the firerate of these weapons to produce the problem quicker).
"If you want to become a Developer or Innovator for CSA, contact me." |
|
|
| Report Abuse |
|
|
MrNicNac
|
  |
| Joined: 29 Aug 2008 |
| Total Posts: 26567 |
|
|
| 09 Jan 2013 08:14 PM |
@Sorcus
It would be that most of the mainstream public who don't understand raycasting believe it literally shoots a ray. That the exact method of raycasting...involves...a physical ray... |
|
|
| Report Abuse |
|
|
8SunTzu8
|
  |
| Joined: 30 Sep 2011 |
| Total Posts: 8199 |
|
|
| 09 Jan 2013 08:20 PM |
local deb=game:FindFirstChild("Debris") if deb==nil then local debris=Instance.new("Debris") debris.Parent=game end check() game.Debris:AddItem(bullet,.05) game.Debris:AddItem(sX, .3)
WIJ's removal code.
And, "check()", seems to be related to the battery system. But to be thorough...
function check() if equiped==true then if player:findFirstChild("PlayerGui")~=nil then if player.PlayerGui:findFirstChild("GunGui")~=nil then if batteryLife.Value<=0 then batteryLife.Value=0 battery=false player.PlayerGui.GunGui.Battery.Status.Text=tostring(batteryLife.Value) player.PlayerGui.GunGui.Battery.Status.TextColor3 = Color3.new(256-95, 256-95, 256-95) player.PlayerGui.GunGui.Battery.sign.TextColor3 = Color3.new(256-95, 256-95, 256-95) else player.PlayerGui.GunGui.Battery.Status.Text=tostring(batteryLife.Value) battery=true if batteryLife.Value<=50 and batteryLife.Value>25 then player.PlayerGui.GunGui.Battery.Status.TextColor3 = Color3.new(256-218, 256-215, 256-0) player.PlayerGui.GunGui.Battery.sign.TextColor3 = Color3.new(256-218, 256-215, 256-0) elseif batteryLife.Value<=25 then player.PlayerGui.GunGui.Battery.Status.TextColor3 = Color3.new(256-255, 256-0, 256-0) player.PlayerGui.GunGui.Battery.sign.TextColor3 = Color3.new(256-255, 256-0, 256-0) else player.PlayerGui.GunGui.Battery.Status.TextColor3 = Color3.new(256-255, 256-255, 256-255) player.PlayerGui.GunGui.Battery.sign.TextColor3 = Color3.new(256-255, 256-255, 256-255) end end end end
if player.PlayerGui:findFirstChild("GunGui") ~= nil then player.PlayerGui.GunGui.Back.Frame:TweenSize(UDim2.new(Charge.Value/MaxCharge,0,1,0),"In","Linear",0.1) if overheated == false then player.PlayerGui.GunGui.Back.Status.Text = Charge.Value.."%" player.PlayerGui.GunGui.Back.Frame.BackgroundColor3 = Color3.new(256-0, 256-102, 256-255) --sp.Name=ToolName.." | "..Charge.Value.."%" end end sp.Overheat.Value = Charge.Value end end
"If you want to become a Developer or Innovator for CSA, contact me." |
|
|
| Report Abuse |
|
|
Cenort
|
  |
| Joined: 20 Nov 2009 |
| Total Posts: 9679 |
|
|
| 09 Jan 2013 08:32 PM |
| I'm not sure whether it's a problem with raycasting itself or if it's related to the addition of featherweight parts, but it is showing up mostly in games that use raycasting weapons, and it's occurring in many different places. |
|
|
| Report Abuse |
|
|
|
| 09 Jan 2013 09:05 PM |
| I think somethings bonkered with the debris service. |
|
|
| Report Abuse |
|
|
Anaminus
|
  |
 |
| Joined: 29 Nov 2006 |
| Total Posts: 5945 |
|
|
| 09 Jan 2013 09:06 PM |
> I heard it was a rendering issue. If you leave and come back, the laser shots go away. They aren't really there. I haven't been able to re-create the error on my laptop in solo mode or while playing online alone.
I'm going to take a wild guess and say that the removal of these parts isn't getting replicated to the client. That would explain why they don't appear on the server (they've been removed), why they disappear when you rejoin (they're not on the *new* client), and why you're unable to reproduce it in solo (no network). The reason it's more likely to occur with more people might be due to network congestion.
Is there a model of a gun that has this problem? |
|
|
| Report Abuse |
|
|
xSIXx
|
  |
| Joined: 06 Aug 2010 |
| Total Posts: 9202 |
|
|
| 09 Jan 2013 09:22 PM |
"WIJ's removal code."
oh my god just go. |
|
|
| Report Abuse |
|
|
|
| 09 Jan 2013 09:29 PM |
local deb=game:FindFirstChild("Debris")
-- Ever heard of :GetService()?
if deb==nil then local debris=Instance.new("Debris")
-- Debris can't be created. -_-
debris.Parent=game end check() game.Debris:AddItem(bullet,.05) game.Debris:AddItem(sX, .3)
-- Lovely variable names! I'm sick of 'ese 'script0rz'.
Though, to be fair, stamper models have equally disgusting code.
|
|
|
| Report Abuse |
|
|
|
| 10 Jan 2013 12:53 AM |
| @Anaminus The parts are only visual artifacts on the client, the Humanoid does not act like there's a stair infront of then when they walk over it. I could look into it further by changing the material of my bullets back to Plastic... |
|
|
| Report Abuse |
|
|
|
| 10 Jan 2013 01:12 AM |
I believe its inefficient coding + a possible error in the debris/rendering system.
Surely if you code it properly this will have a lower error margin, but it could still be present due to, as said before, the debris/rendering system.
☜▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬▬☞ |
|
|
| Report Abuse |
|
|
zars15
|
  |
| Joined: 10 Nov 2008 |
| Total Posts: 9999 |
|
|
| 10 Jan 2013 03:46 AM |
| Yay, sorcus made one of those useful posts! |
|
|
| Report Abuse |
|
|
8SunTzu8
|
  |
| Joined: 30 Sep 2011 |
| Total Posts: 8199 |
|
|
| 10 Jan 2013 05:07 AM |
Sorcus believed it to be from the removal of anchored parts, so I showed him code from a WIJ made gun that has this issue.
I'll post a link to a model that has the issue.
What Animinus said makes sense, though.
http://www.roblox.com/For-mods-and-such-item?id=103222830
"If you want to become a Developer or Innovator for CSA, contact me." |
|
|
| Report Abuse |
|
|
|
| 10 Jan 2013 05:09 AM |
| @Anaminus: I've reproduced the glitch in solo with the Fishing Rods in Survival 303. Quite honestly there's a lot of bad coding in them I haven't bothered to fix, but it can be done in solo. |
|
|
| Report Abuse |
|
|
8SunTzu8
|
  |
| Joined: 30 Sep 2011 |
| Total Posts: 8199 |
|
|
| 10 Jan 2013 05:14 AM |
Maybe I need to make my guns very inefficient then...
Raycasting is probably CPU intensive, compared to most other methods. I do know, that in my testing, my gun would have a script activity level under 1%, and once I added an algorithm to prevent wall shooting, that spiked to nearly 2%.
"If you want to become a Developer or Innovator for CSA, contact me." |
|
|
| Report Abuse |
|
|
| |
|
|
| 10 Jan 2013 11:25 AM |
@Sorcus
Right... If something broke, or not behaved as expected to and it hasn't been edited, then it cannot be a code problem. Something has been changed in the game itself that has caused the problem. |
|
|
| Report Abuse |
|
|
|
| 10 Jan 2013 11:57 AM |
| @Candymaniac It is not a coding error on our part, as it worked perfectly fine. Then in one day, I noticed that my place and daxter's place had this ugly residue. No code was changed. |
|
|
| Report Abuse |
|
|