FLockClient - Server
FLockClient
ATTENTION: At this time I'm not able to maintain this project. If any experienced developer wants to maintain this project while I can't, contact-me.
FLockClient is a small and simple tool to force players to use the server defined .jar, It might be useful to modded server and also can work to prevent hacked clients, forcing all the players to use a clean .jar. A client-side modification is required.
Pages: Instructions || Permissions || Key Numbers || Jenkins
Features
- Highly Configurable
- Random security keys
- Multiples clients
- Force player to use a defined client
- Permissions to each client
- Download files from the server
- Permanent ban by MAC address
- more
Permissions
Permission | Effect |
---|---|
FLockClient.Debug | Receive in-game debug messages |
FLockClient.F3 | Access access to the "F3" menu |
FLockClient.Texture | Ability to bypass the texture pack lock |
FLockClient.hash.<client> | Access to the <client> defined |
FLockClient.Gui.Debug | Show debug information on download |
FLockClient.ByEmpty | Join the server without the client |
Commands
- /lc ban - Ban the player MAC address
- /lc unban - unBan the player MAC address
- /lc info - Show information about a client
- /lc list - List players using any authorized client
- /lc reload - Reload the configuration
- /lc unex - Re-enable the anti-cheat protection
Attention
This plugin is made to work with a client mode that is available here, if you don't use the mod, the server will not recognise you!
Know Bugs
- Sometimes the kick message will not be properly shown, this is not related to FLockClient.
- Let me know if you find any!
v2.7.4 uploaded, should fix disconnect issues and preventions not working properly (blocking players that are using the valid client) as usual, I dont remember everything that I have changed (i'm planning to buy a premium github account, it is better to control what I'm doing and rollback when needed)
@o0Julia0o
Parhaps do you have "RequiredMods" set to true? if yes, try to set it to false.
This error "PLAYER is using an invalid jar" happens when you is trying to join the server using a different .jar than the one that is inside the jars folder, have in mind that you need to restart the server (or reload the plugin with /lc reload) after changing the content of the jars folder.
Disconnected issues should be solved with the lastest upload (v2.7.3), at least the plugin wont handle any external block interactions anymore.
Question: No, unless you try to join the server using an invalid jar (which is whats happening acording to your server.log)
Question2: replace <client> which the name of the file of the jar that is inside the jars folder, without the .jar, like here: "PLAYER dont have the permission: FLockClient.hash.Minecraft" Minecraft.jar is the name of the file inside the jars folder.
Question3: It is used for bans, it is only usefull for servers that have this mod as a requirement to join.
general remark: ups xD in portuguese is indeed "exemplo", sometimes I mix them up.
@o0Julia0o
What versions of FC and Forge are you using? I'll set it up and test to see if I get the same thing. The latest for me just doesn't work, errors out.
@FurmigaHumana @saki2fifty
so i get this: The correct Minecraft.jar is here: jars\Minecraft.jar & here: send\bin\Minecraft.jar
mods & config-folder is empty(i am using optifine, but it´s in the minecraft.jar already(i first added optifine, then the files from vanilla from FLockClient.zip).
so my minecraft.jar in %appdata%/bin is the same like in the jars-folder & send\bin-folder(the timestamp is different, of course).
1. http://s14.directupload.net/images/130604/bnob46or.png directly after joining the server
2. http://s1.directupload.net/images/130604/jlbd4ffa.png client is clothing
3. http://s7.directupload.net/images/130604/lnitybvz.png and downloading
after that..it starts by step 1 again. Here is a Server.log: http://pastebin.com/b22mUJmm
so i am in a loop... :(
config-changes: Required: true & SendFiles: true
i deleted all other plugins and get the following message: http://s14.directupload.net/images/130605/berw3kfl.png If the admin(PEX with *.node) joins the server, he can join(without downloading any files, but if he opens a door or chest, he exits from the game by :"connection lost: end of streaming/end of data transmission". -> as already said without downloading any file. Only downloading minecraft.jar, if i changed something in the minecraft.jar :-)
->but if i make fasthook on false i can open doors & chests, etc.(any right-click). But every second time joining the server, the Minecraft.jar is downloaded again :( So i have the same problem link here: @NL_Alexxx after the PLAYER can play(every second time he joins the server), this messge comes up: http://pastebin.com/9HksgjZt (after that the PLAYER quits manually). You written before: "This is a safe-guard in case some player get identified by mistake, without the proper client." but the PLAYER can play, so he is identified correctly!? So why comes this message up? With fasthook: true it seems to work: http://pastebin.com/h25nJGw1
Question: are the files in send-folder send every time i join the server? Or are they before compared with the files already on the client-pc? In my case, they are the same, but all the time downloaded(or copied form cache) again. I have read the instructions-page some times.
Question2: What does that mean: "Access to the <client> defined". Do i have to give a permission? Do i have to set <PLAYERNAME> in this field: <client>?
Question3: why does he read the mac-adress? Isnt´t it possible to run 2 Accounts from the same NIC/PC?
general remark: In the external.txt is always written "exemple".. hadn´t it to be "example" instead(in portuguese it´s exemplo, i think)?
thx
Julia :)
@o0Julia0o
Read this: @saki2fifty
and take a look at the instructions page.
@saki2fifty
"java.lang.NoClassDefFoundError: net/minecraft/server/v1_5_R3/Packet"
grrr MCPC+ is obfuscating the final jar, I don't know how it wasn't a problem before, I'll fix it today/tomorrow.
Getting this error with 2.7.1 : http://pastebin.com/s4BbhA8R
@o0Julia0o
**
Configure your client how you like it. Put whatever clent mods into the minecraft.jar on the client side.
Then, copy that minecraft.jar to [server]/jars and [server]/send/bin.
Turn off all other features except to force sending, and force client (for testing).
And that's it. So, when you launch the game, the server will look at your [client]/%appdata%/bin/minecraft.jar and compare it to [server]/jars/minecraft.jar and if it doesn't match, then it'll download a copy of [server]/send/bin/minecraft.jar to [client]/%appdata%/bin/minecraft.jar.
Man, this mod/plugin is getting complex! :D
@FurmigaHumana
thx, again - FurmigaHumana
Q: i still get all files send of the send-folder. I have them already, but everytime i join the server i get this files send :( And why should i copy the minecraft.jar to the %appdata%/bin-folder? It is downloaded automatically there from the Flock-Client(i can see it in file-date & time). But o.k., i tried to copy the file by myself - but on next serverjoin, i get the file again & after that minecraft ends & i have to join again.. and get the file(the 2 test-files in send-folder, too) again. And i can make that hours and hours, but can´t play.... :-(
A: In this case, copy the .jar file which is inside the /send folder to the /jars folder, if your minecraft.jar that is inside the %appdata%/bin is not the same as the one inside /plugin/FLockClient/jars, a new download will start and send all the files inside the /send folder. If the .jar that is inside the send folder is not the same as the jars folder, you will enter in an infinite loop.
Q: i have no Minecraft.jar in the send-folder(i had one only for test, but it isn´t needed). I have the following: send\test.txt send\resources\sound.egg(just for testing - it´s an empy file)
The correct minecraft.jar is in the jars-folder: jars\minecraft.jar
mods & config-folder is empty(i am using optifine, but it´s in the minecraft.jar already(i first added optifine, then the files from vanilla from FLockClient.zip).
so my minecraft.jar in %appdata%/bin is the same like in the jars-folder(the timestamp is different, of course).
1. http://s14.directupload.net/images/130604/bnob46or.png directly after joining the server
2. http://s1.directupload.net/images/130604/jlbd4ffa.png client is clothing
3. http://s7.directupload.net/images/130604/lnitybvz.png and downloading
do you know the film: Groundhog Day ;) after that..it starts by step 1 again. Here is a Server.log: http://pastebin.com/b22mUJmm
thx thx
julia :)
@o0Julia0o
Q: if i stop the server, open the settings.yml & go behind the "1" of 61 & do backspace 6 times, check with yaml-parser and safe the file. Then start the server & stop the server, the 2 keys are back in the settings.yml :(
A: Set it to [] if you want an empty list
_
Q: o.k., i tested it with the op - he can join despite of using the flockclient.zip
A: op have all permisions, they can join using any client because they have the "FLockClient.ByEmpty" permission. _
Q: i still get all files send of the send-folder. I have them already, but everytime i join the server i get this files send :( And why should i copy the minecraft.jar to the %appdata%/bin-folder? It is downloaded automatically there from the Flock-Client(i can see it in file-date & time). But o.k., i tried to copy the file by myself - but on next serverjoin, i get the file again & after that minecraft ends & i have to join again.. and get the file(the 2 test-files in send-folder, too) again. And i can make that hours and hours, but can´t play.... :-(
A: In this case, copy the .jar file which is inside the /send folder to the /jars folder, if your minecraft.jar that is inside the %appdata%/bin is not the same as the one inside /plugin/FLockClient/jars, a new download will start and send all the files inside the /send folder. If the .jar that is inside the send folder is not the same as the jars folder, you will enter in an infinite loop.
@FurmigaHumana THX! Q: the locked keys always are: "LockedKeys: 59, 61" even if i delete them. Why should i wan´t the users can´t use the F3-menue? but despite all that i can use the F3-key :´(
A: If you change the lockedkeys and reload/restart the server, everybody that still is with the client open will stay with the old configuration in-memory, the new configuration will only be effective after the player restart his client.
Q: if i stop the server, open the settings.yml & go behind the "1" of 61 & do backspace 6 times, check with yaml-parser and safe the file. Then start the server & stop the server, the 2 keys are back in the settings.yml :(
_
Q: " Required, if true, players must be using the client to join the server Required: false" I can see no difference if seeting this option to true oder false. What does it mean?
A: The main reason of all your questions, if Required is true, players without the "FLockClient.zip" installed or without the correct minecraft.jar won't be able to play in the server
Q: o.k., i tested it with the op - he can join despite of using the flockclient.zip
_
Q: if i wan´t to join with the correct minecraft.jar (with flockclient & get a message "PLAYER is using an invalid jar".) Then i get new files from send-folder(there is no minecraft.jar in send-folder), and minecraft ends. I get a java-message: "All done". But if i restart Minecraft.. i get this files again & again.. so i can´t play :( And only the 2 files in the "send-folder" are sendet ever & ever again(the same files!). But not the jar-file. Does FlockClient not proof if the files are the same & just download all files in send-folder everytime loggin into the server?
Or do i have to put the jar-file into send\bin-folder? But if i do so, it´s downloaded on every login again & again. It´s much quicker than at the first download(because it´s cached in windows?). But i still can´t play :-(
A: The download is cached, if there is no changes in the file that the server is sending, it will use a local one, take the .jar that is inside the plugin/FlockClient/jars/ folder and replace with your minecraft.jar at %appdata%/bin
Q: i still get all files send of the send-folder. I have them already, but everytime i join the server i get this files send :( And why should i copy the minecraft.jar to the %appdata%/bin-folder? It is downloaded automatically there from the Flock-Client(i can see it in file-date & time). But o.k., i tried to copy the file by myself - but on next serverjoin, i get the file again & after that minecraft ends & i have to join again.. and get the file(the 2 test-files in send-folder, too) again. And i can make that hours and hours, but can´t play.... :-(
@FurmigaHumana
i would like to here your accent :) are you from brazil?
thx
Julia :)
@saki2fifty
I was about to make a video but I have such a terrible accent.
@FurmigaHumana Sure, no problem.
I might even create a video on how to install, test and troubleshoot, maybe.
@NL_Alexxx
I dont think this is related to the fasthook, the blockbreak is on bukkit listener, which should not have anything to do with the fasthook, do you get any errors?
Ok I don't get it:
Everytime a player on my server (client or no client) right-clicks on a block (doesnt matter what) without something in his hand! he crashes with a End of Stream... I don't get errors in the console.
I though it has something to do with my fastHook (it was true)
But when I set it to false it's going to send the files EVERY time because of an invalid .jar (which it doesn't give when using fastHook = True)
@saki2fifty
I think this is possible, I'll see if I can include it for the next release.
@saki2fifty
Nice instructions, would be a problem if they mysteriously appeared on the instructions page?
@Darkandro
Fixed with v2.7.1
@o0Julia0o
Q: nocheatplus i am using nocheatplus. What does this option mean?: NoCheatPlus, exempt on nocheatplus NoCheatPlus: false
A: Everybody that is using a valid client will not be logged by NoCheatPlus _
Q: Movement i have set this to true: Movement, if true, player that are not using the client will be unable to move Movement: true but players can walk, be drowned, and kill pigs. The other options work fine, like "arend able to destroy blocks" f.e.
A: Players will be able to walk something like 10 blocks, damage is only disabled if 'Required' is set to false at settings.yml.
_
Q: Send i put a test.txt in the send-folder, but a client without the flock-client don´t downloads the test.txt in .minecraft-folder(in no folder) instead they are locked out automatically: http://s7.directupload.net/images/130603/xq93uycp.png i have: "SendFiles: true" i have set: SendFiles, if true, all required files will be sent to the client SendFiles: true but the users don´t get any file. The don´t geht the correct.jar file, to be able to destroy blocks f.e.
A: Vanilla players (without the flock-client mod) can't download files, there is no way to do it without modifications. If 'Required' is set to true, players will be unabled to do anything until they get identified or kicked with the message you sent on the image.
_
Q: the locked keys always are: "LockedKeys: 59, 61" even if i delete them. Why should i wan´t the users can´t use the F3-menue? but despite all that i can use the F3-key :´(
A: If you change the lockedkeys and reload/restart the server, everybody that still is with the client open will stay with the old configuration in-memory, the new configuration will only be effective after the player restart his client.
_
Q: if i wan´t to join with the correct minecraft.jar (with flockclient) then i can´t break blocks ingame ;( & i addionally get the following error: http://s1.directupload.net/file/d/3274/vdg2atps_png.htm
A: Plugin v2.6 is not compatible with Client v2.2, you need to update. _
Q: i get the following message/error: 20:52:37 [INFO] Checking PLAXER packet data... 20:52:37 [INFO] PLAYER failed to sent hash data in 600 ticks!
A: This is a safe-guard in case some player get identified by mistake, without the proper client. ______
i am now using craftbukkit 1.5.2-R0.1 & FlockClient 2.7 with FockClient.zip: 2.2 & minecraft portable: http://www.minecraftforum.net/topic/37311-minecraft-portable-271-java-portable-%C2%B7-minecraft-on-your-usb-%C2%B7-now-supports-macs
this problems are still there/ new:
__
" Required, if true, players must be using the client to join the server Required: false" Q: I can see no difference if seeting this option to true oder false. What does it mean?
A: The main reason of all your questions, if Required is true, players without the "FLockClient.zip" installed or without the correct minecraft.jar won't be able to play in the server
_
Q: if i wan´t to join with the correct minecraft.jar (with flockclient & get a message "PLAYER is using an invalid jar".) Then i get new files from send-folder(there is no minecraft.jar in send-folder), and minecraft ends. I get a java-message: "All done". But if i restart Minecraft.. i get this files again & again.. so i can´t play :( And only the 2 files in the "send-folder" are sendet ever & ever again(the same files!). But not the jar-file. Does FlockClient not proof if the files are the same & just download all files in send-folder everytime loggin into the server?
Or do i have to put the jar-file into send\bin-folder? But if i do so, it´s downloaded on every login again & again. It´s much quicker than at the first download(because it´s cached in windows?). But i still can´t play :-(
A: The download is cached, if there is no changes in the file that the server is sending, it will use a local one, take the .jar that is inside the plugin/FlockClient/jars/ folder and replace with your minecraft.jar at %appdata%/bin
thx for help!
Julia
@o0Julia0o
This error is safe to ignore, it is just the flat-file that have failed to load, it'll be sql based on the next release.
@NL_Alexxx
The download will start if you dont have the valid minecraft.jar, copy the same file you have inside the plugin/FLockClient/jars folder to your %appdata%/bin folder.
I found it strange that I was not getting any notification of comments xD I changed my email password and forget to update on my cell which is where I read them. anyway, sorry for the delay, I thought nobody was commenting.
People with this error: "me.FurH.Core.exceptions.CoreException: inboundQueue" downgrate your mcpc to #481, I'll upload a fix tomorrow, mcpc+ changed some stuff and broke everything.
I'll answer the other comments tomorrow.
@saki2fifty
thx - but why can´t i unlock this 2 keys?
if i have NOT installed the client, does the autoupdate-function work or not?
i get the following errors in console using craftbukkit 1.5.2-R0.1 & FlockClient 2.7 with FockClient.zip: 2.2: http://pastebin.com/4QuyZxQ3
Julia :)
I have an error when using the latest client / server. (2.2 / 2.7) :
http://pastebin.com/1EgAg4Wb
Everything should be setup correctly with the correct permissions.
I am using the client in the ./technic folder.
God I keep editing this... Everything works but now it keeps resending everytime I join! I have checkConfigs enabled and in ./jars/configs I placed a .txt file. Then in ./send/configs I placed the same file and in ./send the important .txt file that needs to be there.... But it keeps resending because I have "an invalid jar"
Oh, after you get it to work, you'll see that this is the most awesome mod out there... bar none! If its fully secure, it should get top Mod of year award! (trying to win some points here :D ).
Why?, because if it is secure, then there is no real need for NoCheatPlus, or any other anticheat out there... which admins have been struggling with forever.