#I am trying to make a timestop ability

1 messages · Page 1 of 1 (latest)

hasty umbra
#
    if not Timestop then return end

    overlaps.FilterType = Enum.RaycastFilterType.Exclude
    overlaps.FilterDescendantsInstances = {Timestop}
    
    
    local canfreeze = Timestop:FindFirstChild("CanFreeze")
    if not canfreeze or not canfreeze.Value then return end
    

    local partsInBox = game.Workspace:GetPartBoundsInBox(
        Timestop.CFrame,
        Timestop.Size,
        overlaps
    )

    for _, part in pairs(partsInBox) do
        local char = part:FindFirstAncestorOfClass("Model")
        if not char then continue end
        if char.Name ~= Timestop.Player.Value.Name then continue end
        if not processedChars[char] then continue end
        
        
    
                local streak = char:FindFirstChild("Streak")
                if streak or streak.Value < 100 then continue end
            
            local hum = char:FindFirstChildOfClass("Humanoid")
            local hrp = char:FindFirstChild("HumanoidRootPart")


            if hum and hrp then
                processedChars[char] = true -- prevent repeat processing
                

                for _, bodyPart in pairs(char:GetChildren()) do
                    if bodyPart:IsA("BasePart") then
                        bodyPart.Anchored = true
                    end
                end
            end
end
end)```
#

the player/entity are not being anchored and even if it did, it not very accurate/consistency. what am I'm doing wrong here?

hard belfry
# hasty umbra ```game:GetService("RunService").Heartbeat:Connect(function() if not Timesto...

this is overcomplicated, i personally wouldnt do this and instead would use GetPartsInPart() along with a for loop to anchor all the parts then countdown after to disable the effects and can simplify this

local function timestop(timeAmount)
  local parts = GetPartsInPart(--[[clone a part or make a sphere]]);
  local anchored = {};
  for i, v in parts do
    if v.Anchored == true then table.insert(v, anchored); continue end
    -- anchor parameters
  end
  task.wait(timeAmount);
  for i, v in parts do
    if anchored[v] then continue end;
    --unanchor parameters  
  end
end```
#

if this doesnt work its because im too tired to write working code rn and you canj prob solve it yourself from this

tardy tide
#

personally if I had to do a time stop ability I'd just do it clientsided where it would use os.clock so you can't modify the timing w exploits and have the timestop be stored in an array to just be stopped (as in you can cancel the time stop) later

#

though making a whole object for time stops may be inefficient if you have time constraints

tidal cypress
#

this probably gonna stop you too local streak = char:FindFirstChild("Streak") if streak or streak.Value < 100 then continue end

tidal cypress
tidal cypress
#

performance of creating one part i.e debris, or a hitbox for that matter, is negligible

#

if you were spawning 100's of parts per frame then ye maybe performance would be an issue

#

but one?

#

bruh

#

in the course of a single vfx many parts are created and destroyed in very rapid succession, that's what vfx is, and performance never been a problem there, why would it be a problem here?

tardy tide
#

and it's still not worth using partsinpart as you have to also know timestop abilities will also anchor anyone who enters the area

tidal cypress
#

bro can't get his timestop working in the first place and .. performance is your priority? why agony

#

legit question btw i see it a lot

hasty umbra
#

I decides to use Magnitude

tidal cypress
#

sure for vfx it should probably be on the client depending on what it is since you may not need physics sync and one small remote is cheaper than networking a bunch of part creation, but that's also saying that moving those purely-visual effects from server to client is not trivial in the first place. the actual timestopping would be server regardless to start with ;o

blissful wigeonBOT
#

studio** You are now Level 6! **studio

tardy tide
#

since you do need to watch for anyone going into the timestop radius

tidal cypress
#

still, trivial to move it to a one-shot when it is working

tidal cypress
# tardy tide y not

so what i'm really wondering here is why there is such an obsession with performance when those changes are usually pretty trivial and insignificant compared to "it doesnt work". why oh why is performance and optimization a priority over simply working as a first step?

#

it confuses me greatly

#

perhaps it is some unwitting device or strategy to eliminate competition so people get into performance (a rather difficult subject specially for beginners), get overwhelmed, and quit ? thonkoof

tardy tide
tidal cypress
#

a lil offtopic but this opportunity presented itself nicely 🤷

tardy tide
#

It really depends on if you want the bare minimum or the most optimum solution

tidal cypress
#

for a beginner who hasn't ever pulled off a particular effect before... isn't bare minimum the more desirable goal? why does it have to be perfectly optimal on a first attempt?

tardy tide
tidal cypress
#

it's like chucking a toddler into an olympic swimming pool and asking them to compete for the gold medal, and i can't tell if the expectation for said toddler to actually win is satire or sarcasm or whatever it might be, unwitting or not -- it just makes no sense to me

tardy tide
tidal cypress
#

just something i realized and it's hard to put it into words. maybe its unintended, or just wasn't recognized thats what was happening 🤷

#

maybe its just easy to talk about performance and sound like you know what you're talking about, when really its just all flash no photo

tardy tide
#

idk man I learned luau in a REALLY short time but still managed to make some decent stuff

#

adhd powers I suppose

tidal cypress
#

hyperfocus is a helluva drug

#

for this timestop tho i was actually wondering about how you would approach a tweened timestop, where stuff slows down while the world around it continues

#

if something happens to collide in the middle of that 'tween' and changes direction - i can't quite figure out how to translate that into the speedup

#

i'm sure there's a way but i aint even bothered about performance til working theory there ;p

tardy tide
tidal cypress
#

as they say;

  1. make it work.
  2. make it right (do it properly)
  3. make it fast (optimize).
    in that order.
tardy tide
#

roblox physics are just hard to control

tidal cypress
#

nah i think it can be done with roblox physics, it is more optimal and performant hehe

tardy tide
#

for characters just have the animation slow down until time gets stopped where their animation is frozen

tidal cypress
#

antigrav is relatively simple, the collisions between timestopped stuff and external stuff is relatively simple (make the timestopping stuff tween their mass as well so if you jump into it, it'll move but much slighter than it normally would)

#

and just tween assemblyvelocities down

#

but returning to original speed, not sure on that one..

#

particularly after a collision where the velocity reverses direction entirely

tardy tide
tidal cypress
#

as small bumps are unnoticeable

tidal cypress
hard belfry
#

id use it here because its simpler

tardy tide
tidal cypress
#

i think the difference in speed lost to intentional slowdown vs speed lost per frame needs to be recorded every frame, and the velocity direction on the final frame, then you average the total intentional slowdown as the target velocity (so you maintain 'natural' physics-based slowdown i.e friction) apply this to its current trajectory as the mass and gravity increases back up, or something. thonkoof

#

you'd want to get that math juuust right so it doesn't slam into the floor due to gravity, or maybe you intentionally calculate what the acceleration due to gravity should've been so you can then cancel that out.

#

gets a bit complicated trying to do this in a generic way thonkoof

#

now this, this system would be incredibly expensive at around 100 parts so you'd want to optimize this almost from the outset after first working proof of concept

#

...but not before fingerguns

tardy tide
tidal cypress
#

hah yeah game.timescale=0.1 when

#
  • at the very least -
#

if you wanted to localize it... yeaa more physics api would help... but i still think it can be done

#

localize as in timestop a part of the world but not all of it

tardy tide
tidal cypress
#

rather, how people would expect it to function

hard belfry
#

i mean its an annoying system if your not doing a full stop but i think a stop would be fine yeah

#

a slowdown would be horrible

tidal cypress
#

i might make something for this later on, physics time slowing and time stop is pretty cool effect

tidal cypress
#

or even simply bullet time

#

deffo not horrible

tardy tide
hard belfry
#

you would always do it on the server here

tardy tide
hard belfry
hard belfry
#

so everyone can see it

#

if its a single player game

#

you do it on the server

#

incase of a low end device

tardy tide
hard belfry
#

it would be so easy to bypass

tardy tide
hard belfry
#

if your recieving anything on the client its blockable

tardy tide
#

exploits can only block remote events called from the client itself (which highkey is a bad idea if your remote event isn't an input logger

hard belfry
tardy tide
hard belfry
#

its easy to

#

getconnections() is literally one of the most common exploit functions

tardy tide
#

what's the point of exploits if you can't even enjoy the game

hard belfry
hard belfry
#

send input

#

the client shouldnt be used for anything important because it is all changable from exploits

#

exploits run on the client, if something is ran from the client you can change that from the client

tardy tide
# hard belfry send input

why would one make a whole input logger js to send inputs outside of a connection made by the game

hard belfry
#

you could also juist

#

disable the freeze effect

#

fromt he client

#

instead of doing all taht

tardy tide
#

the thing is most people who use exploits are just googoo gaga babies

#

and the people who do use it with experience are just prob testing their own anticheat

hard belfry
#

yeah and the 1% who are actually developers are good at bypassing anticheats

#

people make a lot of money selling scripts

#

for popular games with strong anticheats

tardy tide
#

byfron is actually good now so the people who do exploit have the likelihood of just never getting their accounts back

#

also those team of anti-exploiters that make scripts to log peoples users and send them to roblox

#

which I forgot the name of

hard belfry
#

your just dodging your point of using the client for important things

#

you should never use the client for important things

#

its easy to bypass

tidal cypress
tardy tide
hard belfry
#

things that gameplay and enjoyability depend on

#

core systems are always in the server no question

#

things that gameplay and enjoyability depend on are things like (for example) a time stop system right

#

and if you do that on the client right

#

you can just disable the entire system right

#

because your setting it on the client not the server

tidal cypress
#

or just anchor the player's character on the server which also happens to strip them of network ownership at the same time then they cant do nothin hehe

hard belfry
#

yes

hard belfry
#

theres no point in doing fireallclients for that

#

its vulnerable

tidal cypress
#

but also roblox by default trusts the client for their character under normal circumstances so like... wat you gonna do, make your own prediction model?

tardy tide
#

exploiters can just unanchor their character and move freely again

#

this argument has no point of being an argument

#

but yeah

tidal cypress
hard belfry
#

no they cant

#

they can on their client and it looks fine

#

but they are still anchored on the server

#

its not replicated

tidal cypress
#

ye idk how this turned into exploiting

tardy tide
#

someone just trying to get help on their timestop logic and then it becomes an exploit debate

#

😭

tidal cypress
#

🙂

#

full server authoritative + predicted movement, just like how source engine does it.

#

idk why roblox doesn't, its dum for not doing it

#

maybe too hard for kids to develop for 🤷

#

as if this is any easier..

tardy tide
#

you can probably just use tags as a sort of detection

tardy tide
#

which is kind of annoying

#

but yeah

tidal cypress
hard belfry
#

iirc

tidal cypress
hard belfry
#

there was a dev forum post about it a while ago and the exploiter community started shitting themselves saying "IS THIS THE END OF EXPLOITING"

tardy tide
#

since they don't want their players to look like they're teleporting and accidentally triggering an anticheat

#

or something

hard belfry
#

i forget

tidal cypress
#

auroraservice in sept/oct? bs. cite sauce

hard belfry
#

lemme find it

tardy tide
#

aurorascripts when???

tidal cypress
#

silksong will be out long before auroraservice drops

tardy tide
#

apparently with flags you used to be able to use aurorascripts (using internal) but I think they patched it

#

I saw some guy use aurorascripts without it being public yet

hard belfry
#
#

server authority

#

or smth

tardy tide
#

if it does happen it will ruin a lot of games for the McDonalds wifi community

tidal cypress
hard belfry
#

oh wait

#

"our goal"

#

coming next year

#

or year after that

tidal cypress
#

Range limit for lights: We’re increasing the range limit for lights to 120 studs.
i like this one

hard belfry
#

mb

hard belfry
#

i thought it was like 1000 studs

#

i dont use lights that much tho

tidal cypress
#

no i think its like 70

#

server authority gonna get delay, calling it now

hard belfry
#

the only strong thing on the roblox engine is the anti-tamper

#

probably one of the best usermode ones out right now

#

its not kernel though ✌️

tidal cypress
hard belfry
#

that means its forever undetected to use external cheats on roblox, but its not really a game where external cheats would be preminent so its probably fine

hard belfry
#

they stopped all internal cheats for the time being

#

its been about a month with no new public ones i believe

#

then again most of the public/paid executor devs are skids who cant code for shit ✌️

tidal cypress
#

either way im still making my own, and if roblox releases a good one, should be trivial to refactor my code to use the new stuff since the design patterns for prediction are all the same

hard belfry
#

lowk the light thing got me thinking im probably gonna try to make a raytracing system in luau