|
| 25 Jun 2013 10:55 AM |
It just hit me that there can only be 2 realistic fire rates due to the way wait() works with FPS.
1800 RPM (1/30) is unrealistic in most cases. 900 RPM (2/30) is the first suitable fire rate. 600 RPM (3/30) is the second suitable fire rate. 450 RPM (4/30) is too slow in most cases.
So there you have it, whenever you see those fancy 0.090909, 0.10909 and other fire rate numbers with decimal places which never seem to end, it is all for nothing, because its going to fall into either 900RPM, or 600RPM anyway. (450RPM if the initial wait was below 0.133) |
|
|
| Report Abuse |
|
|
| |
|
|
| 25 Jun 2013 10:57 AM |
I hope you realize that there is an infinite amount of numbers in between 2/30 and 3/30.
You're also not thinking of things that aren't automatic. |
|
|
| Report Abuse |
|
|
|
| 25 Jun 2013 11:05 AM |
@BrandonFireflower I hope that you realize that Roblox's wait system works hand in hand with the framerate, locked at 30fps. |
|
|
| Report Abuse |
|
|
Oysi
|
  |
| Joined: 06 Jul 2009 |
| Total Posts: 9058 |
|
| |
|
cntkillme
|
  |
| Joined: 07 Apr 2008 |
| Total Posts: 44956 |
|
|
| 25 Jun 2013 11:07 AM |
| Fire is bahd, real bahd, it lag mee cuz of mai terribad grphiccarddd |
|
|
| Report Abuse |
|
|
| |
|
|
| 25 Jun 2013 11:15 AM |
So what you are saying is that if I wanted my gun to shoot at 900RPM, which on a simulator with no lag would be every 2/30 of a second, I would have to take nothing of which you said into consideration.
Although the average computer doesn't play Roblox at 30fps perfectly, so I would have to see the time between the shots and deduct when suitable. Timeline example - | being a shot, Underscore_ being wait, space being lag. __|__|__|__|__|__|__|__|__|__|__|__|__|__|__| When I would like the gun to shoot. __ |__ |__ |__ |__ |__ |__ |__ |__ |__ |__ |__ |__ |__ |__ | When the gun actually shoots. __ |__ |_ |__ |_ |__ |__ |_ |__ |_ |__ |__ |_ |__ |_ | Oysi's logic |
|
|
| Report Abuse |
|
|
|
| 25 Jun 2013 11:17 AM |
| Oysi is correct. Wait is not consistent. |
|
|
| Report Abuse |
|
|
|
| 25 Jun 2013 11:19 AM |
Quad, you have it alll wrong.
Oysi's method is the closest to when it actually shoots and it IS in fact properly spaced. Occasionally you'll get two bullets in one shot - not noticeable to the user, but accounts for the bullet that would not have been shot. |
|
|
| Report Abuse |
|
|
|
| 25 Jun 2013 11:19 AM |
| The awkward moment when every single gun on Roblox is scripted using wait(). |
|
|
| Report Abuse |
|
|
|
| 25 Jun 2013 11:20 AM |
You silly person, Oysi's method involves wait too!
You fail to comprehend the basics of one of the most basic methods that the basic engine offers you! Your less than basic mind can't handle the fact that wait returns the delta time! e.e |
|
|
| Report Abuse |
|
|
|
| 25 Jun 2013 11:21 AM |
And also, 2 bullets in 1 shot would completely ruin the idea of having a gun which fires at a certain speed anyway.
In projectile guns it would collide with a different projectile In raycast guns, not as noticeable, although it would give a shotgun effect. |
|
|
| Report Abuse |
|
|
|
| 25 Jun 2013 11:23 AM |
Also, how about you stop being a snob just because your little friend helped explain your giberish to me?
I fully understand what oysi was saying, and you don't need to act like a know it all when in fact you can't achieve anything. |
|
|
| Report Abuse |
|
|
Oysi
|
  |
| Joined: 06 Jul 2009 |
| Total Posts: 9058 |
|
| |
|
|
| 25 Jun 2013 11:31 AM |
Thanks, In that case, I don't think that the shooter could argue that he's shooting 1 less bullet per second. xD |
|
|
| Report Abuse |
|
|
|
| 25 Jun 2013 11:43 AM |
"And you wouldn't have several bullets per frame,"
That stems from when the delta time adds to the running total to be at least twice as much as the step time.
local stepTime=1/30 local totalTime=0 while true do totalTime=totalTime+wait() while totalTime>=stepTime do totalTime=totalTime-stepTime shoot() end end
My comment about his lack of understanding is that all of our methods use wait().
"every single gun on Roblox is scripted using wait()." |
|
|
| Report Abuse |
|
|
Oreology
|
  |
| Joined: 15 Sep 2012 |
| Total Posts: 507 |
|
|
| 25 Jun 2013 11:48 AM |
The graph is accurate? Isn't wait() subject to throttling meaning that it isn't consistent as in it would shoot at varyingly similar intervals and not waiting for a consistent amount of time?
No, it's not biology or psychology, it's oreology. The study of attraction. |
|
|
| Report Abuse |
|
|
|
| 25 Jun 2013 11:52 AM |
| Brandon, what is getting on my nerves is your lack of understanding that not everyone uses the same vocabulary as yours. Of course everything works with wait(), but you can also see that most guns on Roblox don't harness the use of your useless chunk of code which you've just presented to us. |
|
|
| Report Abuse |
|
|
|
| 25 Jun 2013 12:00 PM |
"useless chunk of code"
That code produces the perfect fire rate that you want, it's not my problem if you think it's useless.
"Of course everything works with wait()"
Then don't imply this method doesn't. |
|
|
| Report Abuse |
|
|
|
| 25 Jun 2013 12:02 PM |
"Then don't imply this method doesn't"
Brandon, when you assume, you make a ***(ume) out of (***)u(me) and (***u)me |
|
|
| Report Abuse |
|
|
| |
|
noliCAIKS
|
  |
| Joined: 08 Mar 2010 |
| Total Posts: 917 |
|
|
| 25 Jun 2013 12:40 PM |
You can use coroutine.yield as the fastest way to "wait." I recommend using a combination of tick and coroutine.yield to achieve a high and reliable frame count. |
|
|
| Report Abuse |
|
|
Oysi
|
  |
| Joined: 06 Jul 2009 |
| Total Posts: 9058 |
|
| |
|