Plugin category: Fix/Admin Tools Suggested name: SessionServerFix What I want: A plugin that logs the client's IP and adds it to a list of already used IPs for that client. When the Minecraft session servers go down, it will disallow anyone new from joining the server, and anyone who has joined the server in the past will be able to do so - if their IP matches an IP used in the past two week period. This will prevent large server outages and allow for playing SMP when there is a Mojang server outage. This will not allow for non-premium players to get in, as they must have logged in at one point with a premium account when the session / login servers were up. So, to sum up: Detect and log IPs. Detect when Mojang servers are down. Allow players who's IP matches previous IPs to log in when session/login servers down. Disallow new players when the session/login servers are down. Ideas for commands: No commands needed for this plugin. Ideas for permissions: No permissions needed for this plugin, even admins will be subject to this, so someone cannot log in using an admin name while the session / login servers are offline. When I'd like it by: Yesterday (kidding of course) but as soon as possible. The outages don't happen very often but when they do the servers can be down for hours - possibly during the only time of day you have to play Minecraft. An addict like myself could be put out for hours without talking to our friends and mining! (Another joke, but you get the idea. )
I like this idea and hope that it's actually possible. One more thing you'l have to keep track of is the Players name because if minecraft server is down and you join an offline-mode server. it doesnt know what your Playername is. (everyone would be called "player" and you can't have 2+ same named "players" at once
What Lax said, furthermore are you assuming that your players have a static IP, which might be true or might not be true depending on their location and/or ISP.
How often do "dynamic" IP's really change? Mine is dynamic, however I can usually keep the same IP for weeks on end, running small servers for testing between friends. I'm not saying this system would be perfect - but it would be better than no system at all - and what is the likelyhood that a person would have your specific IP address after it changes (without being on your network)? Furthermore - with everything that bukkit has, there is no event "OnLoginAttempt" or something along those lines? I mean, it would only have to ping for the server status of the session / login servers, and if they are down it would use it's own settings - something like a partial offline mode, that only takes control if the online mode can't be used. Edit: I'm almost sure I saw something like this in the past (beta-ish era) done with bukkit, I'll have to do a little more searching on that though.
Exactly! Gonna attempt to make it myself, if nobody thinks it can be done. I do like a challenge, just figured I'd ask the pro's first before I tried. Wish meh luck I suppose.
good luck, if you manage it, will you release it to the public, if not could you send me it. good luck
i would but, i like to support premium players, and want them to be able to log in when session servers are down, so(i hate piracy) this plugin would be epic EDIT: and Xauth, and the rest suck
I think this would be very risky, and not even possible without offline mode. Session servers are very rarely offline. I've seen them offline for a bit but they usually come back up real quick. I understand why this would eventually come to use, but it seems extremely risky if you ask me. Like others mentionned, dynamic IPs would also screw up. I have one and it tends to change every few days. I think it really changes when you either restart your router.
Would it be possible to run your server in offline-mode and only kick in the IP thing when the session servers are down? While the session servers are up, couldn't you just use the minecraft.net/haspaid.jsp to verify? Or would that page be down when the session servers are down? Just an idea.