AtomicTorch Studio Forums

CryoFall => Game discussion => Topic started by: ai_enabled on July 31, 2020, 07:23:40 pm

Title: Response to Odinswill suggestion regarding mods notarization/restriction
Post by: ai_enabled on July 31, 2020, 07:23:40 pm
In response to message https://discordapp.com/channels/344332261510086658/344332261510086658/738846466356936754 from @Odinswill. Copy of the message:
Quote
@ai_enabled implement transparency with mods is something hard to implement?

Instead of shooting down completely the idea, why not work with the community and try to understand people enjoy transparency?

Just implement all mods available on public forums to the game, letting us choose to have it on/off, not as mods, but as options, those which are not on public CANNOT be loaded in the pvp part of game on pvp servers.

If people have new mods that could affect pvp server, they simply have to pass through you guys, or/and put it public on forums and next wipe, patch it in

+Done problem solved.
+Gained in transparency
+Gained in dev time as you no longer need to do emergency updates to rectify balance.
+Getting community feedback on forums for all mods
+Getting community evolved
+People assured they playing on equal playing level
+No need to moderate reported suspicious complaints or activity and lose more time for devs

Seem's like a huge win win for everyone involved.

Don't think this will be hard technically to implement surely?

I'm not simply shooting down your idea...there are actual technical obstacles that make the whole approach futile, and many other concerns that we cannot neglect. Alas, you're likely not a modder and likely don't have technical background regarding the game development/programming in general, so it makes things complicated to explain. Anyway!

First, let's name your idea. "Mods notarization" sounds good, I think. The idea as I understood it: any mods should be first checked and approved by the community (through voting), then signed/notarized by developers and included with the game patches/updates or simply whitelisted in some way so the (updated) game client will allow their installation. Any following mod patches/updates by their creators should also go through this process to ensure that nobody abuses the system by smuggling unexpected features through the mod updates.

"Mods notarization" is a general idea, right? Let's try a more specific one to this idea—restrict the usage of mods altogether. Now it sounds much easier! However, everything regarding this topic is already addressed in great detail in our message on the forums https://forums.atomictorch.com/index.php?topic=1147.0 In particular, please re-read sections 1. Approach to modding, 3. Client-side changes, and (especially important) section 6. "But, but... cheats are bad! You should not allow this!". They explain why we believe that putting any client-side restrictions or completely removing modding capabilities from the game will not change anything besides just hurting modding and giving an advantage to those that could afford to hack the game client.

If a more specific version of the idea is not possible, a more general one is also not possible for the very same reasons, as something specific is a subset of something more general. So the mods notarization idea is not possible the same as preventing players from modifying the game is impossible, one requires another.

You may ask "I wish you to elaborate why exactly it's not possible to put such a restriction in the game client".
The problem is that the client can do anything. It's just a binary code that could be reverse-engineered (with tools such as debuggers, disassemblers, and packet sniffers it's just a matter of time and skill). Look for Artmoney and other software that is an easy way to modify memory. Look for billion of cracks, trainers, NoCDs, and other software written to hack software allowing to do anything with programs running on your PC. And not only this. You've probably heard about the console multiplayer game hacks—while the console is usually not hacked, the network protocol is deconstructed and cheats are injected right into the network traffic (if you want a good longread on the topic, I recommend this article https://www.wired.com/story/xbox-underground-videogame-hackers/ ). Not mentioning the simplest hacks like keyboard+mouse macro with Autohotkey. Bottom line, there is a whole black market industry built around writing hacks/cracks/etc. And it's not expensive to hire an experienced hacker that will research a game client and find ways to inject a bootloader to load any kind of modifications.

By understanding that the client protection is not possible and the network protocol is likely to get deconstructed, we've made sure the server has an authoritative model to prevent all kinds of cheats and hacks as explained in the section `1. Approach to modding` in the topic that I've linked above.

(1/2)
Title: Re: Response to Odinswill suggestion regarding mods notarization/restriction
Post by: ai_enabled on July 31, 2020, 07:24:12 pm
You've listed a lot of pros for implementing your idea:
Quote
+Done problem solved.
-Problem swiped under the carpet and still present...

Quote
+Gained in transparency
-Gained a false sense of transparency and security.

Quote
+Gained in dev time as you no longer need to do emergency updates to rectify balance.
-No improvements in this regard.
-Lost time by introducing the overhead to deal with every mod personally, notarizing the mods, making new builds of the game just to allow new/updated mods, etc.

Quote
+Getting community feedback on forums for all mods
+Getting community evolved
-Or likely, getting PvP part of the community to block most of the mods just because they don't wish anyone to have any theoretical advantage.

Quote
+People assured they playing on equal playing level
-A false sense of security...nobody will get assured in anything except the most naive people. It's not our way to deal with this problem, we never swipe things under the carpet.

Quote
+No need to moderate reported suspicious complaints or activity and lose more time for devs
-People still reporting that they smell somebody is cheating as this protection cannot be perfect...


Now, there are following cons: (the idea is definitely impossible but this list will provide another perspective as there are some aspects that you just cannot be aware of but we cannot neglect them)

On a separate note, I and Lurler would always defend modding (in its most unrestricted form) as it's modding that gives players maximum value in the long run from the game they purchased. It's modding that gives the games eternal life after their eventual death. It's modding that gives young people a way to peek into the game logic and learn stuff, become modders, become creators, and follow over our steps to become game developers and make completely their own games. There are many, many game developers that started as modders driven by curiosity and creativity—now they are people that are working in studios like Valve or Epic Games, often creating new genres (e.g. Dota was just a map (a scenario) for Warcraft 3, Counter-Strike was a mod to Half-Life, Team Fortress was a mod to Quake, DayZ was a mod to Arma 2, PlayerUnknown's Battle Royale was a mod to Arma 2 DayZ, etc). Not mentioning thousands of mods for games like Minecraft that inspired many new games.

And as an example, I'm a modder too. I was very young but I've spent way more time hacking Doom and creating maps with Warcraft editor than playing these games! Same goes for StarCraft (who else did a map staging a Starship Troopers (the movie) scenario when "zergs" assaulting a base from every side and the brave soldiers shooting the wave after wave and it looked epic? I believe there will be few among the readers! It was simple and fun), Age of Empires, Operation Flashpoint (that one used HTML for its map format and it was tough for me back then, still causing me nightmares), programming AI bot waypoints for Counter-Strike (PKBot anyone?), and dozens of others that I've dissected and researched, and learned something that eventually made me choose the career of a programmer and then working as an indie game developer.

Regards!

(2/2)