How to Secure your Game Against Exploiters

แชร์
ฝัง
  • เผยแพร่เมื่อ 16 ม.ค. 2025

ความคิดเห็น • 439

  • @AxmPlays
    @AxmPlays ปีที่แล้ว +558

    I am a former exploiter and own synapse. Most exploiters are children so you only need to really worry about speed and fly hacks, however, there are more experienced exploiters that can manipulate remotes and network ownership which will completely ruin your game. Thanks for publishing this video because I myself did not know about the network ownership one.

    • @MarxismOfficial
      @MarxismOfficial ปีที่แล้ว +1

      s

    • @OggySpelar
      @OggySpelar ปีที่แล้ว +100

      it is true most exploiters are script kiddies

    • @billybobjankens12
      @billybobjankens12 ปีที่แล้ว +4

      I also own a couple of exploits including Synapse X (sadly my router blocked it :sad_face:) and I know about network ownership and how it works. I don't know how an exploiter would forget about part:SetNetworkOwner(nil) because devs use that alot.

    • @pato_do_lago
      @pato_do_lago ปีที่แล้ว +2

      Ye that's what I was thinking, but maybe it's better to make a strong anti-cheat because experienced exploiters will eventually get in your game.

    • @BennydoesstuffYT
      @BennydoesstuffYT ปีที่แล้ว

      Ur cringe 😂

  • @PogoDigitalism
    @PogoDigitalism ปีที่แล้ว +157

    Experienced coder here, great way of explaining a not all too easy subject for learners in a funny story. Keep it up

    • @40kq
      @40kq ปีที่แล้ว +8

      I totally agree, he turned this scenario from a big and scary thing into a simple and easy thing. I hope I start seeing less of these remote vulnerabilities in good games.

    • @wouf_
      @wouf_ ปีที่แล้ว +2

      It’s kinda the most easy type of anticheat to make I’ve ever seen lmao and it never was hard to do something like that tf ?

    • @_Sickk
      @_Sickk ปีที่แล้ว

      You mean scripting?

    • @wouf_
      @wouf_ ปีที่แล้ว

      @@_Sickk scripting = coding in this case

    • @doncomputer5931
      @doncomputer5931 ปีที่แล้ว

      Exploiters are easy to deal with when I am in the game, I just delete them from the game and run a script on the server that will constantly check if they are in game and delete them from it, But if I am not in the game, Those filthy exploiters can get into mischief. This tutorial was useful for child-proofing my games from the fifthly darn kids who try to exploit.

  • @Dadwar_Real
    @Dadwar_Real ปีที่แล้ว +63

    you have outdone yourself once again, while most "hackers" are just script kiddies there are a few you gotta worry about so this video of yours is perfect to make games safer while also teaching new coders how it happens in the first place, well done and great job, keep it up.

    • @fitmotheyap
      @fitmotheyap ปีที่แล้ว +1

      Yeah, as someone who has never touched roblox studio and exploiting it's interesting

    • @uzidayo
      @uzidayo ปีที่แล้ว +1

      Yeah all it takes is one experienced programmer to reverse engineer your game and release a script for the masses

  • @VileKronecker
    @VileKronecker ปีที่แล้ว +33

    Your tutorials that go over various aspects of lua scripting are the most helpful that I could find and I've learned a lot through your previous tutorials to where I am confident that I could start a little project with the knowledge I have gathered. Thank you so much.

    • @GnomeCode
      @GnomeCode  ปีที่แล้ว +8

      Thank you, that's great to hear. Best of luck with your future developing!

    • @VileKronecker
      @VileKronecker ปีที่แล้ว +4

      @@GnomeCode Thanks! I will keep the luck with me!

  • @MrYEETman9820
    @MrYEETman9820 ปีที่แล้ว +37

    In my experience a solid portion of exploiters are teens/adults with depressing lives who waste their disposable income gaining unfair advantages over children because it gives them some semblance of control and power in their worthless lives. The reason I know this is because I was there once when I was 18-20 and I am still in many of their communities on Discord.
    NEVER underestimate the passion of greed and toxicity behind the exploit community. Imagine your defensive layers around your game are like a cheese grater, and the exploits are the cheese. No matter how small you make those holes in the defense, the exploiters will tirelessly work towards squeezing through the cracks and microscopic holes. Never stop updating your game, and always stay in the loop and keep up with exploit communities. Stay safe gamers, peace.

    • @Official_uoi5553_Channel
      @Official_uoi5553_Channel ปีที่แล้ว +6

      Wow you motivated me to secure my scripts even more now. Danke!

    • @40kq
      @40kq ปีที่แล้ว +7

      A majority of exploiters who do script their own stuff and know what they're doing are definitely an older audience (Older teens to adults). They also make up like 0.1% of the general roblox exploiting community as a whole. Although a huge number of them are not living depressing lives at all. Often times we just exploited because we liked trolling. Another thing to note is a lot of games player bases are entirely built upon exploiters. For example Fencing, Dollhouse Roleplay, Twisted Murderer, Jailbreak, Etc. I primarily scripted because it was a fun way to see how roblox's engine works and how to exploit that. I totally agree that exploiters will find any little thing to exploit and bring destruction to any game. I quit exploiting earlier this year due to personal reasons and of-course, the upbringing of byfron.

  • @LogoDev
    @LogoDev ปีที่แล้ว +88

    It's good to note that you can actually throw in dummy args in your remotes. Catches a LOT of people. E.G. Instead of completely removing the item price argument here, we could catch exploiters by keeping it, and comparing it to the itemPrices table. If the price isn't the same, then obviously, someone messed with the remotes. Little things like this add up a LOT. In one of my games, I caught a few people just by letting them think they could manipulate the force behind knockback.
    And, as the game gets more complex, the anticheat becomes easier to bypass. Be prepared to look through a lot of randomly released scripts when you make a release!
    Note: Exploiters will happen. Don't spend too long fighting them, your game's release is more important!

    • @unded1827
      @unded1827 ปีที่แล้ว

      Now im curious what you did with those exploiters.

    • @rumory
      @rumory ปีที่แล้ว

      once you catch them you can do whatever you want until you ban them...

    • @yesil_hiyar7335
      @yesil_hiyar7335 ปีที่แล้ว

      this is a minor inconvenience for whoever is trying to exploit in your game - to be honest i dont think this is a good idea as you'd have to actively update 2 scripts and one mistake in one could cause your some of your playerbase to be flagged - in my opinion its never right to kick the cheater as to restricting their access.

    • @LogoDev
      @LogoDev ปีที่แล้ว +2

      @@yesil_hiyar7335 I mean, I'd never kick an exploiter either. Also, it may be a minor inconvenience but it has always flagged hundreds of exploiters on my end.

    • @yesil_hiyar7335
      @yesil_hiyar7335 ปีที่แล้ว

      @@LogoDev that’s fair enough but it just seems like it’d be more messy to send dummy arguments

  • @realtitedog
    @realtitedog ปีที่แล้ว +29

    I'm glad you made this video for people who don't really know how exploiting works. I used to not understand but once I started using exploits in my own game I realized that a lot of my games were insecure and had remotes that could manipulate datastores, spawn admin-only items, etc.

    • @flowckey
      @flowckey ปีที่แล้ว +1

      He forgot to talk about teleporting

    • @flowckey
      @flowckey ปีที่แล้ว +1

      And spawning instances on client

    • @Blade3337R
      @Blade3337R ปีที่แล้ว +2

      @@flowckey well the anti speed cheat part of the script easily removes teleporting off the list, and if you do spawn instances on the client side, the server wont count it because the script is server-side. sorry that im responding after 2 weeks.

    • @flowckey
      @flowckey ปีที่แล้ว +1

      @@Blade3337R I do believe that spawning instances on client would be counted as in Jail Break but I think the falling mechanism would take that in charge. No worries, I also don't check my notifications often.

  • @vintagedegenerate
    @vintagedegenerate ปีที่แล้ว +4

    FYI for newcomers: Enum.RaycastFilterType has changed: Replace Blacklist with Exclude, and Whitelist with Include.

  • @7cogj
    @7cogj ปีที่แล้ว +27

    you make the best development content gnomecode!

    • @Kallax2
      @Kallax2 ปีที่แล้ว +2

      there is suphi kaner too that does in depths tutorials. You should totally check it out

  • @_pengwin
    @_pengwin ปีที่แล้ว +12

    These do work, but the floating check will flag on high ping players, yes you can whitelist that but then cheaters can use blink to hold network packets, another problem is if the player's game is like tower of hell, falling down will flag, vehicles will flag it. There is also a very knew method that it overpowered, but I won't mention it as most regular exploiters don't have access to this method.

    • @40kq
      @40kq ปีที่แล้ว +5

      Simple way to check to see if someone is falling or not! VELOCITY and CFRAMES! Both on the Y axis. Check if they are floating using racyast and then time that. If they're hovering over a part longer than a couple seconds and their velocity behavior is acting off then kick them for suspicious client behavior.

    • @_pengwin
      @_pengwin ปีที่แล้ว +3

      @@40kq hey that means i place a high down velocity and teleport boom or tween.

  • @HazelRoseWebs
    @HazelRoseWebs ปีที่แล้ว +4

    bookmarking for later on in my development; thank ya for pointing these things out! i had a relative grip on how speed/fly exploitation prevention worked, but never knew about Network Ownership and such. genuinely helpful, dude!

    • @40kq
      @40kq ปีที่แล้ว

      Network ownership manipulation is pretty much patched for the most part.

  • @ThatBoringDeveloper
    @ThatBoringDeveloper ปีที่แล้ว +3

    As a former member of rblx modding & exploiting community with the roles of “pen tester” traditional exploits can be very dangerous but a lot of traditional exploiters that manipulate the client are “script kiddies” with either no or very little knowledge of lua and how the environment works when unloaded or loaded/running, more experienced exploiters tend to exploit things like back doors (despite back doors not being considered exploits under Roblox’s TOS we will refer to them as exploits), backdoors can’t be very harmful too a game for reasons that likely don’t need to be explained

  • @420a.
    @420a. ปีที่แล้ว

    interesting... thank you for your tutorials, they helped me alot.

    • @GnomeCode
      @GnomeCode  ปีที่แล้ว +1

      Cheers!

    • @Ashthenotskilled
      @Ashthenotskilled 4 หลายเดือนก่อน

      @@GnomeCode can you put in the description the antiexploit code mine doesnt seem to be working

  • @refraysmusic
    @refraysmusic 6 หลายเดือนก่อน

    For the anti-speed part. One way to make jumping not affect the speed is to calculate the distance between the two positions, but using only the X and Z coordinates, and not the Y. You can do this using the good ol distance formula from Algebra class :P The distance formula calculates the distance between 2 points on an X,Y plane, but you can treat an X,Z plane the same way.

  • @StanVDevz
    @StanVDevz หลายเดือนก่อน +2

    i'll just make exploiters listen to thick of it until they stop

  • @Smurfis
    @Smurfis ปีที่แล้ว +8

    As someone that has been building a game, this system is absolutely amazing as a case study and something to build upon and I am highly supportive of this video except for in the case of reverse engineering.
    Wouldn’t it be better to host this in a module and pass a script to the player so then if they remove it you can import it again with a small loop and a check?

  • @PioVerdi28
    @PioVerdi28 ปีที่แล้ว +2

    Hello gnomecode! Currently at tower defense serie, ur tutorials are so good! Keep it up!

  • @paulstrobeck8947
    @paulstrobeck8947 ปีที่แล้ว +4

    Hey, I have a tip for you Gnome: when making functions and declaring variables, use a colon to set its data type. That way, the autocorrect works.

  • @EggdogStudios
    @EggdogStudios 21 วันที่ผ่านมา

    As an intermediate coder, it's important to secure your game if you have an admin command bar where admins, moderators or developers can type code. To use loadstring in ServerScriptService, be cautious: if an exploiter gains access, they can make server changes. To keep it safe, use a remote event to send commands to the server, where only trusted players (like developers, admins and moderators) are allowed to execute the code.

  • @OyoP4lma
    @OyoP4lma 2 หลายเดือนก่อน +1

    I think i recommend adding a warning system to count like 5 times, if they are caught more than that they get kicked

  • @nopfp416
    @nopfp416 ปีที่แล้ว +2

    you can create 2 new positions and ignore the y value in the speed check completely like
    local v1 = Vector3.new(root.Position.X,0,root.Position.Z)
    local v2 = Vector3.new(lpos.Position.X,0,lpos.Position.Z)
    And get the distance with those (this will fix the spikes in speed when jumping/falling and allows for lower walkspeed detection)

  • @chanzeyuan
    @chanzeyuan ปีที่แล้ว +7

    I develop hack clients as a way of learning (not distributing) and although I sometimes use it in some games to check if it works, I send it to the game owners once I'm done with it to get it patched.

    • @TheMaxGuy
      @TheMaxGuy ปีที่แล้ว +3

      one of the few cases where i'm okay with exploiting

    • @40kq
      @40kq ปีที่แล้ว +1

      It's okay to admit that you just make Ui and use public API's. We all know you don't know how to properly construct an actual executor.

    • @B2hots
      @B2hots 4 หลายเดือนก่อน

      You're a real one.

  • @5rolledupinacan
    @5rolledupinacan 5 หลายเดือนก่อน

    i make literal games out of these tutorials, really helpful, i can understand it alot, fun to watch, all of the code actually works.

  • @Rizzzzzzzzzzzzzzzzzzzzzzzzzzzz
    @Rizzzzzzzzzzzzzzzzzzzzzzzzzzzz ปีที่แล้ว +1

    I really wish he would make a seried expanding on this anti-cheat system, id love to hang around and learn more about it and also create one along the way

  • @tboleon
    @tboleon 3 หลายเดือนก่อน

    im interested in game development and i didnt want to start coding it and working on models etc without knowing it was secure first, thank you for your video

  • @betapacket
    @betapacket ปีที่แล้ว +1

    16:25 why not use Humanoid.FloorMaterial ~= Enum.Material.Air for ground checks?

    • @Moonzyss_
      @Moonzyss_ ปีที่แล้ว

      there are ways to spoof floor material, but since most exploiters are skids they most likely wont know how to bypass it.
      if you want even more detection you can combine the raycast method and floor material in the video for more security, but it is slightly more tricky to do.

    • @40kq
      @40kq ปีที่แล้ว

      @@Moonzyss_ As far as I am concerned, spoofing floormaterial has never been a big thing because they all got patched a long while ago.

  • @MindsetWorld1422
    @MindsetWorld1422 ปีที่แล้ว +4

    Thanks for the tutorial keep up the good work love your vids man

  • @noobikgaming6452
    @noobikgaming6452 ปีที่แล้ว

    Gnomecode is the real legend that will always make us happy :)

  • @oranskiii
    @oranskiii ปีที่แล้ว

    Great video as normal man! 😀

  • @ajusy1884
    @ajusy1884 ปีที่แล้ว +1

    Yessss I needed this

  • @MajesticUC
    @MajesticUC ปีที่แล้ว +3

    For the speed check, surely you could just ignore the y axis when checking the distance moved. You do
    DistanceMoved = (Vector3.new(lastposition.x, 0, lastposition.z - Vector3.new(root.position.x, 0, root.position.z)).magnitude?

  • @timme_
    @timme_ ปีที่แล้ว

    Thank you this is pretty useful keep up the work.

  • @alanafarah
    @alanafarah หลายเดือนก่อน +1

    Ok but how does Billy do this when he doesn’t have access to the studio server

  • @NorbYyY_GG
    @NorbYyY_GG ปีที่แล้ว +1

    billy mc'mischief is a piece of work

  • @furchad3574
    @furchad3574 ปีที่แล้ว +2

    How to secure your game against exploiters
    Make the game a “exploit simulator” with a built in “exploit” which mimics most actual exploits so everyone is always at equal starting level

  • @HaileyStudios1213
    @HaileyStudios1213 9 หลายเดือนก่อน

    Thanks man this helped in my doors recreation you made a tutorial for :)

  • @АртёмДолгоруков-ж3ш
    @АртёмДолгоруков-ж3ш ปีที่แล้ว +5

    About Anti "fly". If player froze client or get lag spike, he/she will tagged as cheater

    • @alexskorpik11play79
      @alexskorpik11play79 ปีที่แล้ว

      I mean , we dont want tab glitchers

    • @creationsdolly
      @creationsdolly ปีที่แล้ว

      yeah. plus, roblox is not exactly notorious for having great server connections. i think the best solution would be to not serve any bans for it, but rather save the position where they last made contact with the ground and if it goes over that 3 second buffer then set them back to the ground.

  • @madbliss9238
    @madbliss9238 ปีที่แล้ว +1

    *Lumber tycoon owner taking notes*

  • @Baburun-Sama
    @Baburun-Sama ปีที่แล้ว +1

    Byfron Update seems made this Tutorial High-Priority

  • @plasmatic1440
    @plasmatic1440 ปีที่แล้ว +1

    I have a request for a series what about a game similar to Pokémon because most games get banned so a customized theme similar to Pokémon?

  • @thesovereigngentleman2336
    @thesovereigngentleman2336 ปีที่แล้ว +2

    I'm just commenting for the algorithm. Another great video!

    • @GnomeCode
      @GnomeCode  ปีที่แล้ว +1

      Thanks for that!

  • @pneum7932
    @pneum7932 ปีที่แล้ว +2

    Gnome code!!!@ Love your tutorials man

  • @BunnyMasterRBLX
    @BunnyMasterRBLX ปีที่แล้ว +2

    the doors tutorial: imma go get some milk real quick

  • @jasoncebereros2057
    @jasoncebereros2057 ปีที่แล้ว +1

    this is still exploitable since you use :getcharacter and use primary parts, the exploiter can touch it then immediantly delete their humanoidrootpart (primarypart) or set the primarypart of their character to nil which will completely break your script

    • @jasoncebereros2057
      @jasoncebereros2057 ปีที่แล้ว +3

      also you could do player:CharacterAppearanceLoaded to wait until the player character loads

    • @jasoncebereros2057
      @jasoncebereros2057 ปีที่แล้ว

      AND the anti-speed can still be exploitable since there are certain exploits that detach your hmr and replace it with a fake one that still allows your character to move then it slowly brings the hmr towards it kinda like a lag-back

    • @bolekinds
      @bolekinds ปีที่แล้ว +2

      didn't roblox add an option where deleting any parts of your character would not register to the server? that would be useful to include in the video, since the thing you just said would not work anymore

    • @jasoncebereros2057
      @jasoncebereros2057 ปีที่แล้ว

      @@bolekinds no, since its your character you can control it delete any of your bodyparts and such and will replicate to the server since you own your character all of the time until you die, and no detaching your rootjoint wont kill you

    • @XaneMyers
      @XaneMyers ปีที่แล้ว

      @@bolekinds I'm not sure what that change did, but I do know that "invis-flinging" was patched sometime recently by Roblox. Try it and the spinning brick doesn't spin and just…falls to the floor.

  • @Profeshinal
    @Profeshinal ปีที่แล้ว

    Woah teaching people how to script and teaching people how to defend their games from scripters, never thought I’d see such luxury

  • @Nebula_Protogen752
    @Nebula_Protogen752 ปีที่แล้ว +1

    Imma add Billy Mischief to my game lmao

  • @thathistorykaiser
    @thathistorykaiser ปีที่แล้ว +1

    Hello GnomeCode! I really appreciate all the resources that you've provided to us, and it's definitely helping me become more of a seasoned developer, but I wanted to ask about an issue that comes with the AntiExploit. All the tutorials from this series have gone into one game I have made where I test and store these scripts for reference in future projects. In the video "The Dark Arts of Troubleshooting," you go over fixing and explaining out the process of finding and troubleshooting errors within a trampoline script. Well with that same trampoline, I am testing the AIR TIME feature and have found that I am getting rubber banded to my originalGoodPosition. If there is any way that I could overcome this, then I would greatly appreciate it as I am still learning and do not have a solution yet for on-the-spot problems. Thank you!

  • @silvianizzolini816
    @silvianizzolini816 ปีที่แล้ว +2

    Is the DOORS Tutorial abandoned?

  • @justmrkoala
    @justmrkoala ปีที่แล้ว +1

    a good punishment would be after u tp them back to the good pos then there will increase a value called warning and then if they have 3 warnings and do it again you ban them

    • @XaneMyers
      @XaneMyers ปีที่แล้ว

      I think increasing the number of warnings (to 5 or something) would be a good idea, in case there are any false positives. I've read about a genius way to punish players on the DevForum; After an exploiter sets off the anti-cheat enough times, rather than banning them (since they can easily return on an alt. account), instead mess with them. Add random delays to remote events, disable collisions at random, and make their experience frustrating. 😈

    • @alexskorpik11play79
      @alexskorpik11play79 ปีที่แล้ว

      @@XaneMyers i mean, delayed remote events, and collisions are client sided, unless the collisions are for a single player game, which then can still be avoided by just turning it back on constantly
      So like, yeaaaaaaaaaa

  • @ag_youtube14
    @ag_youtube14 ปีที่แล้ว +1

    Thanks gnome code! I'm working on a SCP horror game with acp's! I'm still working on it. I hope it's good!

  • @EliSky09
    @EliSky09 ปีที่แล้ว +3

    Yet again gnomecode knows just what we need at the right time, thanks gnomecode :) (I actually really needed this so thanks)

  • @B2hots
    @B2hots 4 หลายเดือนก่อน +1

    Those 30 dislikes are from exploiters lmao

  • @CreatorProductionsOriginal
    @CreatorProductionsOriginal 2 หลายเดือนก่อน +1

    Let’s say your game had something that changed the player’s walkspeed, in that case, you shouldn’t increase the max speed, but instead adapt it into the code, to check if that player has that thingy that changes their speed, correct?

    • @TheRealJ1
      @TheRealJ1 2 หลายเดือนก่อน

      like how doors does it. yes.

  • @b4con321
    @b4con321 ปีที่แล้ว

    pov: u tp 2 times at 0.1 delay and u get teleported back where u actually wanted to tp or the anticheat just has an delay so u still can grab all coins XD

  • @AlexDavidson-pm5qc
    @AlexDavidson-pm5qc ปีที่แล้ว

    also one way they can do something is trough grabbing themselves and going lightspeed since they are always network ownership of themselves

  • @bojjguppguy
    @bojjguppguy ปีที่แล้ว +1

    @GnomeCode I was just wondering are you done with the doors game

  • @noblebuild2550
    @noblebuild2550 ปีที่แล้ว

    Damn excellency as always

  • @IRWNum1
    @IRWNum1 ปีที่แล้ว +1

    Gnome code, are you still doing the Doors series, if so, can you add screech

  • @NeedToDev
    @NeedToDev ปีที่แล้ว +1

    That's awesome. Thank you for informing me about the network owner stuff, didn't know that, will certainly be useful!

  • @abadgurl2010
    @abadgurl2010 ปีที่แล้ว +2

    Billy McMischief is the hero I never knew I needed, lol. Too bad I'm on mobile and can't do anything he did.

    • @abadgurl2010
      @abadgurl2010 ปีที่แล้ว

      If I could I would just 100% the American Girl event game because I swear some of those Doll Stars aren't even placed into the world yet so it's literally impossible to find them all to get the badge for doing so. Plus the in-game clothes are cute and I want more despite not getting to have them outside of the game.

    • @Sewbetan
      @Sewbetan ปีที่แล้ว

      well uhm actually there are mobile exploits 🤓

  • @Funnis_stuffOFFICIAL
    @Funnis_stuffOFFICIAL ปีที่แล้ว +1

    can you make some sort of ai that grabs you and damages you? (comes with a animaton)
    i want a ai like that for a zombie game like biting zombies or whatever

  • @Mistake505
    @Mistake505 11 ชั่วโมงที่ผ่านมา

    how do you handle teleporting and speed buffs with the anticheat

  • @Chip95
    @Chip95 ปีที่แล้ว +1

    I know this is a big ask but could you make a video about redoing some of the tower Defense code as I cannot get past a certain part in the tutorial as the collision group code and body gyro keeps saying it is deprecated

  • @caz0gamz
    @caz0gamz ปีที่แล้ว +1

    I saw someone talk about this on your discord server. And you even responded. I wonder if that’s why you made the video

  • @adrianos76rbx
    @adrianos76rbx ปีที่แล้ว

    I was doing an anticheat for my game today ima add some of this thx gnome!!!

  • @MinkSquared
    @MinkSquared ปีที่แล้ว

    something i always do is sorta double check, once on the server, once on the client. its a pretty efficient way to weed out basic script kiddies

  • @thomasdixon6476
    @thomasdixon6476 ปีที่แล้ว +1

    I'll definitely use this video, but can you also make a video on console compatibility please. If not do you know any videos that would help me.

  • @krielol2743
    @krielol2743 ปีที่แล้ว +1

    the only issue here is that you used a raycast continuously on the server which can be expensive, a much easier way is Humanoid.FloorMaterial == Enum.Material.Air

  • @fmczmc4869
    @fmczmc4869 ปีที่แล้ว

    i use a custom system called CID and CMSG.
    cid just stands for client id, and cmsg is custom message.

  • @goofyahhhhbubba
    @goofyahhhhbubba 11 หลายเดือนก่อน

    As a noob dev, I ain't even put any arguments in my remotes, so I'm totaly safe 😎

  • @xxbluefangxx1927
    @xxbluefangxx1927 9 หลายเดือนก่อน +1

    Thank you so much for this video! I was so tired of these dumb gen alpha kids who think they're pro hackers or something trying to cheat in my game. It was so annoying! Thank you for helping me fix this :)!!!!!!!

  • @minecraftperson8412
    @minecraftperson8412 ปีที่แล้ว +1

    Imagine writing certain code so that if some kid uses speed hack scripts, he gets a cinematic cutscene shown to the whole server that he cheated and that he's bad at cheating, blows him up and then bans him permanently. Not too good with code so dunno if it's possible.

  • @templars44
    @templars44 ปีที่แล้ว +16

    Curse you, Billy McMischief!

  • @ensarkrl
    @ensarkrl ปีที่แล้ว

    Hey Gnome code , will you continue the Doors series?

  • @notlogic5694
    @notlogic5694 ปีที่แล้ว

    are you still going to do tutorials on how to make games ?

  • @epikwashere
    @epikwashere ปีที่แล้ว

    been subbed since 20k!

  • @eee_eee
    @eee_eee ปีที่แล้ว +2

    alternative title : how to not become prison life

    • @stavros222
      @stavros222 ปีที่แล้ว

      Thats accurate. This game suffers

  • @ٴٴٴٴۥۥ
    @ٴٴٴٴۥۥ ปีที่แล้ว +2

    cool one gnome!

  • @thatcardiologist3874
    @thatcardiologist3874 ปีที่แล้ว +1

    I have a question: if I have a teleport part in the game, will the speed/fly anti cheat kick the player falsely?

    • @msathwik8729
      @msathwik8729 ปีที่แล้ว

      Yes obv it will kick

    • @myithspa25
      @myithspa25 ปีที่แล้ว

      It would, but in the teleport script you could add another line that sets the lastGoodPosition to be the teleporter exit.

    • @XaneMyers
      @XaneMyers ปีที่แล้ว

      Yeah. If your game teleports players, you'll have to either set a flag on the server that temporarily disables the anti-cheat right before another server script moves them, or put the teleporting function inside of the anti-cheat script so it can update its variables to "ignore" the teleport.

    • @alexskorpik11play79
      @alexskorpik11play79 ปีที่แล้ว

      it will ,but you can make the anticheat ignore the player for like 0.1 seconds while its teleporting while the anti cheat still sets the lastgoodpos,etc by using an bool value.

  • @theofficiaIsteve
    @theofficiaIsteve ปีที่แล้ว

    "casually gives a descriptions for exploiters to debunk"

  • @GigaGnome
    @GigaGnome ปีที่แล้ว +2

    Thanks. Not like I have players in my game for there to be hackers though.

  • @NYANDAKKE
    @NYANDAKKE ปีที่แล้ว

    Oh, my head hurts😵‍💫

  • @kianshepherd8932
    @kianshepherd8932 ปีที่แล้ว

    Hey just wondering when you are gonna make part 8 of your doors series?

    • @GnomeCode
      @GnomeCode  3 หลายเดือนก่อน

      1 year later - It's finally here!

  • @AIO0110
    @AIO0110 ปีที่แล้ว +3

    NOOO!!! Billy!! you was suppossed to be the good kid who always does not use /e claim On every roblox marketplace ítem!!!

  • @lord_nom_conquersall2093
    @lord_nom_conquersall2093 ปีที่แล้ว

    GnomeCode delivers!

  • @phantomfills3833
    @phantomfills3833 ปีที่แล้ว +1

    You can set the player's network ownership to nil to make it server-owned and more difficult to move

    • @chibisayori20
      @chibisayori20 ปีที่แล้ว +1

      For server-owned player character, does the client send movement data to the server? If so would it be possible to tween the character or have a fake-simulated client character that lerps with the server-character and have the actual player character be a invisible part?

    • @alexskorpik11play79
      @alexskorpik11play79 ปีที่แล้ว

      @@chibisayori20 The client is only able to send W,A,S,D,Spacebar,etc movements, Anything other, like physics handling, is what server does. oh and server does the movement itself,
      Thats whatever it does

    • @chibisayori20
      @chibisayori20 ปีที่แล้ว

      @@alexskorpik11play79 wait so it is server authoritive, it just roblox gives network ownership to the client so movement is smooth/there isn't delay when server checking physics, it just goes: oh, player moved, updating it's position to every client

    • @alexskorpik11play79
      @alexskorpik11play79 ปีที่แล้ว

      @@chibisayori20 let me explain: so its basiclly like client moved so it fires sort of a remote event [no it doesnt , im just lazy to dig into the client files] which tells the ser ver to update it, thats why sometimes players complain about hitbox, because theres a small delay between client and server updating. client handles physics,etc basiclly.

    • @chibisayori20
      @chibisayori20 ปีที่แล้ว

      ​@@alexskorpik11play79 if you force the network owner of the player's character to server, client can still move (since it sends input data after all) but will wait more because server needs to check if physics are correct, vs if it was client owned physics, then server doesn't do much validating. No idea about Hitboxes tho, thought those we're just .Touched events

  • @EggdogStudios
    @EggdogStudios 20 วันที่ผ่านมา

    i would rather slow them if speed hacking

  • @TheMaxGuy
    @TheMaxGuy ปีที่แล้ว

    another way you can replicate exploits with studio is using the command bar (in view tab)

  • @campplayz11
    @campplayz11 ปีที่แล้ว

    @GnomeCode di you make this video because of that one guy who complained about hackers?

  • @mobilepro9263
    @mobilepro9263 ปีที่แล้ว

    I clicked on the video as soon as I saw it thank you

  • @HeyShattered
    @HeyShattered 10 หลายเดือนก่อน

    I understand the speed anticheat but what if your game has some ability which lets you go like 100 s/ps? How will the script detect exploiters in that situation?

  • @Gort_the_warcriminal
    @Gort_the_warcriminal ปีที่แล้ว

    hey i've been trying to find like a video for a jump pad that changes your gravity and you can walk on ceiling but none has made a video plus i had to remove couple items from my game like a jump orb for a obby and devforum is no help bc i cant post at all
    it could really help my game and which you already did with the 2d camera

  • @hi_semih
    @hi_semih ปีที่แล้ว

    When falling speed is going to like 200-300

  • @jamaysMVC
    @jamaysMVC ปีที่แล้ว

    What’s this game called that he’s testing in

  • @I_I_I_I_I713
    @I_I_I_I_I713 ปีที่แล้ว +1

    can't I just use the x/z speed than total speed to counter-act the cheat detection when jumping or falling?

    • @40kq
      @40kq ปีที่แล้ว +1

      Best way to detect if someone is jumping or falling is to check the character primarypart velocity. For example when you jump your velocity on the Y axis changes, same with falling.

  • @yousefsaleh3562
    @yousefsaleh3562 ปีที่แล้ว

    For npcs how would I go to manage make it smooth / not exploitable should I just make a part on the server and for every other client I render for them

  • @boogs7190
    @boogs7190 ปีที่แล้ว +3

    You can simplify this by just checking the humanoids floor material instead of raycasting, if it ~= air then they are touching the ground.

    • @alidoesvideos
      @alidoesvideos ปีที่แล้ว +1

      But what about if they are jumping

  • @springtrap456_yt4
    @springtrap456_yt4 ปีที่แล้ว

    Hello!
    I have one question,
    If I hide a client script in server script service, exploiters will see the script by using dark dex or orther explorer?
    Also great video!

    • @horse_loyal9740
      @horse_loyal9740 ปีที่แล้ว

      If you put a local script on the server it's no longer a local script and won't work

    • @springtrap456_yt4
      @springtrap456_yt4 ปีที่แล้ว

      @@horse_loyal9740 ok, tyyy

    • @alexskorpik11play79
      @alexskorpik11play79 ปีที่แล้ว

      local scripts only work when: they're inside replicatedfirst/player_character/playergui/backpack and or is triggered by remoteevent.OnClientFired

  • @mopsyyk_
    @mopsyyk_ ปีที่แล้ว

    Can you make a tutorial for a game similar to my supermarket?

  • @stewabletv3022
    @stewabletv3022 ปีที่แล้ว

    Exploits work via a script being injected into the remote control system. Clients like krnal use this