We've all been there: You're playing on your favorite Minecraft PvP server, ready to get revenge on the player who just killed you, when suddenly, you're staring blankly at Minecraft's title screen. How could such a thing happen? Well, maybe Mr. McMillan has something to say about the matter:
Yes, Mr. McMillan, precisely. The death screen GUI has "Respawn" and "Title screen" buttons that are way too close to each other, resulting in players sometimes unintentionally leaving the game when they actually want to respawn. Now, this isn't something that happens all the time, but it happens occasionally and it's annoying.
So, in the first and only installment of the new (and old, by the time you read this) series "Weekly 1 Minute Minecraft Mods", we can fix the problem.
We will change this:
(Texture pack is the beautiful Plast Pack.)
The new layout isn't pretty, but in the case of PvP I'll definitely take function over fashion (with the exception of gold pants).
Making the Mod
You need to download and install Minecraft Coder Pack (MCP). There is a lot of information about how to do this online.
Once MCP is ready to go, find the file "GuiGameOver.java" in the minecraft/src subdirectory. In this file, there are only two lines we need to modify:
this.buttonList.add(new GuiButton(1, this.width / 2 - 100, this.height / 4 + 72, I18n.getString("deathScreen.respawn")));
this.buttonList.add(new GuiButton(2, this.width / 2 - 100, this.height / 4 + 96, I18n.getString("deathScreen.titleScreen")));
These files add the "Respawn" and "Title screen" buttons. The only thing we need to change is the third argument to the GuiButton constructor. We can shift the buttons up and down by changing the values of 72 and 96, with larger values corresponding to a lower position on the screen. The "after" photo shown above uses values of 70 and 120:
this.buttonList.add(new GuiButton(1, this.width / 2 - 100, this.height / 4 + 70, I18n.getString("deathScreen.respawn")));
this.buttonList.add(new GuiButton(2, this.width / 2 - 100, this.height / 4 + 120, I18n.getString("deathScreen.titleScreen")));
Once this is changed, save it and then proceed as you would with any other mod (recompile, reobfuscate, and drop the class in the appropriate Minecraft .jar file after backing everything up, etc.). Now you can crank up your mouse's sensitivity and fail to unintentionally disconnect from your favorite server with ease!
Note that this does involve changing core Minecraft files and so may result in issues if there is an overlap with another mod. Also, it seems this won't be an issue when 1.7 comes out.