Our Strict Consistency Checking, Fairness vs Fun and the limitation of mods

IeptBarakatIeptBarakat The most difficult name to speak ingame. Join Date: 2009-07-10 Member: 68107Members, Constellation, NS2 Playtester, Squad Five Blue, NS2 Map Tester, Reinforced - Diamond, Reinforced - Shadow
As pointed out by the recent thread here. It seems the necessary anti-cheat is doing more harm than it is actually helping. Consistency checking as we all know, prevents naughty players from playing with altered game files and is supposed to stop players from seeing bright pink skulks through walls and having built in aimbots. This sounds great and all until you realize the same bad players can still bypass that system, even moreso, the system adds a huge toll in the loading of game assets, sometimes adding minutes onto loading maps.

I can understand the desire to reduce cheating, you can have that in pro games if you want, but it's being detrimental to public gameplay and the player modding community.

Alongside increased load times by minutes, players are very limited in the modding potential of their mod friendly game. Take for example, the NS1 Knife, something which makes no difference to other players, but limited by consistency checking so only server operators can choose to allow it. Things like this reduces the community modding interest, if no one can use it, even themselves, why would they make the effort on creating something besides the usual weapon texture mod.

I'm probably just being nostalgic at this point, but when I look back to the ns1 days with great modding communities and the nsarmslab, I'm just a little sad that ns2 stepped away from it's original modding community.

This isn't meant to be a complaint as much as it is a plea, some gorges just wanna have fun.

zs3iALV.gif

Comments

  • AurOn2AurOn2 COOKIES! FREEDOM, AND BISCUITS! Australia Join Date: 2012-01-13 Member: 140224Members, Forum Moderators, NS2 Playtester, Forum staff
    Gorgeasauras rex just wanna have some fun**
    mind you i dislike the ns1 knife because it doesn't actually have a correctly timed animation so it throws you off. if the animation was good i'd love it but.. well..
  • IronHorseIronHorse Developer, QA Manager, Technical Support & contributor Join Date: 2010-05-08 Member: 71669Members, Super Administrators, Forum Admins, Forum Moderators, NS2 Developer, NS2 Playtester, Squad Five Blue, Subnautica Playtester, Subnautica PT Lead, Pistachionauts
    edited November 2013
    I really do wish more server owners took care to only check for the very few files needed, and allowed all else, since they do have that ability. (they can even disable it entirely, as you suggest)

    Edit: like this
  • IeptBarakatIeptBarakat The most difficult name to speak ingame. Join Date: 2009-07-10 Member: 68107Members, Constellation, NS2 Playtester, Squad Five Blue, NS2 Map Tester, Reinforced - Diamond, Reinforced - Shadow
    IronHorse wrote: »
    I really do wish more server owners took care to only check for the very few files needed, and allowed all else, since they do have that ability. (they can even disable it entirely, as you suggest)

    Edit: like this

    I'm not sure if it's a distrust in the community or a lack of communication. Honestly the system should be the opposite as it is right now, at least a lenient version of consistency checking on public games, with the optional pure ns2 for pro servers and competitions.
  • meatmachinemeatmachine South England Join Date: 2013-01-06 Member: 177858Members, NS2 Playtester, NS2 Map Tester, Reinforced - Shadow, WC 2013 - Supporter
    Agree^ However I love the twostroker's black/blue aliens reskin and wish I could use it on more/any servers :|
  • IeptBarakatIeptBarakat The most difficult name to speak ingame. Join Date: 2009-07-10 Member: 68107Members, Constellation, NS2 Playtester, Squad Five Blue, NS2 Map Tester, Reinforced - Diamond, Reinforced - Shadow
    So, the increased load times, additional hitching, and modding deterrence that our restrictive consistency check has become is considered a non-issue by the majority?

    Granted It's hard for threads to live when there isn't any controversy surrounding it and others simply agree on the issue.
  • crymearivercrymeariver Join Date: 2013-08-29 Member: 187185Members, Reinforced - Shadow
    Granted It's hard for threads to live when there isn't any controversy surrounding it and others simply agree on the issue.

    You are right, we need some drama up in here. It really is hard to disagree with a better performing, more customize-able game that still reasonably prevent exploits.
  • TurbineTurbine Join Date: 2012-09-13 Member: 159160Members
    Perhaps some form of script tolerance checking would allow mods which may not tap into potentially game breaking/cheating systems.

    There's so many ways to improve performance through modding, but they've got a rather primitive mod system in-place. Even server's can't edit client code without linking to some workshop mod. In Garrysmod it sends client sided scripts to the client adding a negligible amount of time in doing so.
  • 1dominator11dominator1 Join Date: 2010-11-19 Member: 75011Members
    I cant even get custom crosshairs to work.
  • DC_DarklingDC_Darkling Join Date: 2003-07-10 Member: 18068Members, Constellation, Squad Five Blue, Squad Five Silver
    @1dominator1
    then its a rare server with insane checks or the custom crosshair mod sucks.
    Custom ones work fine, and I use my own one always. :)
  • Omega_K2Omega_K2 Join Date: 2011-12-25 Member: 139013Members, Reinforced - Shadow
    edited November 2013
    From a security pov, it's more adviseable to blacklist everything and only allow specific files, such as view models or crosshairs.
    Turbine wrote: »
    Perhaps some form of script tolerance checking would allow mods which may not tap into potentially game breaking/cheating systems.

    There's so many ways to improve performance through modding, but they've got a rather primitive mod system in-place. Even server's can't edit client code without linking to some workshop mod. In Garrysmod it sends client sided scripts to the client adding a negligible amount of time in doing so.

    And how exactly would you tolerate lua scripts that can basically contain everything? Such as aimbot code.

    Regarding the workshop system, yeah it has some serious caveats. Also that mods can too easily accessed by the public.
  • IeptBarakatIeptBarakat The most difficult name to speak ingame. Join Date: 2009-07-10 Member: 68107Members, Constellation, NS2 Playtester, Squad Five Blue, NS2 Map Tester, Reinforced - Diamond, Reinforced - Shadow
    Omega_K2 wrote: »
    From a security pov, it's more adviseable to blacklist everything and only allow specific files, such as view models or crosshairs.

    And how exactly would you tolerate lua scripts that can basically contain everything? Such as aimbot code.

    Regarding the workshop system, yeah it has some serious caveats. Also that mods can too easily accessed by the public.

    So in total irony, lua, the coding language that was supposed attract modders to ns2, is actually the reason behind our dying mod scene.
  • Ghosthree3Ghosthree3 Join Date: 2010-02-13 Member: 70557Members, Reinforced - Supporter
    edited December 2013
    Omega_K2 wrote: »
    From a security pov, it's more adviseable to blacklist everything and only allow specific files, such as view models or crosshairs.

    And how exactly would you tolerate lua scripts that can basically contain everything? Such as aimbot code.

    Regarding the workshop system, yeah it has some serious caveats. Also that mods can too easily accessed by the public.

    So in total irony, lua, the coding language that was supposed attract modders to ns2, is actually the reason behind our dying mod scene.

    Yes. Imo if they wanted to make it moddable then it needed to be done like q3 did. With compiled dlls that could be server side only. Even if they were client and server side, still be better than lua. Takes a micro second to hash one or two dll files.
  • Omega_K2Omega_K2 Join Date: 2011-12-25 Member: 139013Members, Reinforced - Shadow
    Omega_K2 wrote: »
    From a security pov, it's more adviseable to blacklist everything and only allow specific files, such as view models or crosshairs.

    And how exactly would you tolerate lua scripts that can basically contain everything? Such as aimbot code.

    Regarding the workshop system, yeah it has some serious caveats. Also that mods can too easily accessed by the public.

    So in total irony, lua, the coding language that was supposed attract modders to ns2, is actually the reason behind our dying mod scene.

    Yeah, but it also has to do with the way it is implemented; I guess there are serveral reasons why this is the case some of the people using lua in ns2 on a more daily basis can probably elaborate in a more detailed fashion.

    Issues with the lua/mod implementation:
    - the lua set they use is highly restrictive; you can't just mod features in or install packages (without hacking the engine in some way). There are plently of basic features missing from what I heard, such basic file IO writing , sockets (which could be used for mysql), etc (guessing due to security reasons)

    - NS2 engine code is apprently not very mod friendly in the terms of how it's designed;
    -- little/no docs
    -- no APIs, which means changes directly to the code might simply break with an ns2 update; some server mods such as shine provide an API to some engine features, though
    -- seems quite messy in places, so it's really hard to get an idea just by looking at the code
    -- also what I've heard from of the lua devs: it isn't very lua-friendly, i.e. not optimized for lua, but made like in other langauges (which performance caveats)

    - The way it's currently done it seems the code should be on both server/client, though there are server-only possilbities as I see it it's not quite the same; thechnically one would have to write an API to send certain "mods" to a client from the server to do it, if you don't want clients to have the code actually.
    [Think how source does it, the GUIs/messages are implemented in game, but are used by mods. It works for everyone with basicially no download requiers by changing stuff on the server only]

    - The workshop system is nice, but I don't think it's implemented very well.
    -- First people have troubles with outdated mods, which makes it adviseable to run only a handful of mods, as clients can't connect if one of these mods get updated (until the server updated it too)
    -- also mod authors can potentially just public anything in their mods, which could make a normal mod harmful one day.
    -- Downloading though steam also seems to be quite slow at times (seen like 1mbits/s - on a 100mbit/s connection); I've I'd host the files on my own webserver I can almost guarantee it would be faster
    -- Instead of whitelisting files, you should be able to somehow whitelist hashes [though a client could be lie about them] / or send mod files to clients directly, so ensured they can't cheat by simply modifying a whitelisted mod
    -- you can't have private mods, which many server owners want to make your server unique, but there is obviouisly no uniqueness when everyone can just take your mod [also, you'd be suprirsed - as for many mods I've seen with source/goldsource games, they became public after people stopped running their own server, they wanted to promote their own or simply saw no reason in keeping it private any longer]


    I actually feel like a different language (python =P) and more code in c++ (which then exposed, by things such as boost::python) as well as some APIs would have been better, as well as a different system. But I don't think it's happening as it would require to essentially rewrite the game; and there is only so much they can do with their limited resources. Maybe some useability changes, how knows.
  • Ghosthree3Ghosthree3 Join Date: 2010-02-13 Member: 70557Members, Reinforced - Supporter
    Omega_K2 wrote: »
    -- Instead of whitelisting files, you should be able to somehow whitelist hashes [though a client could be lie about them]

    What makes you think clients can't already lie about hashes to bypass consistency?
    They can
Sign In or Register to comment.