- Sat Aug 18, 2012 5:00 pm
#116338
Hey guys, so I have been developing a client side mod aimed specifically at MineRealm. Please note that this is not an "official" mod. If you are interested, I have attached a .zip containing the files that need to be added to your jar. Here's a list of the features it includes:
This client is compatible with Optifine. I have no clue as to its compatability with any other mods that might be allowed on MineRealm. Unfortunately, it is no longer compatible with MCPatcher. If you would like to use OptiFine, you must install it first.
ModLoader and MCForge based mods will not work with ShaddowCraft. Sorry!
Current Version: 1.5.2
You can type /shelp to display information about available commands!
Ignore Capability
To ignore a player, type /ignore <playername>
To list ignored players, type /ignore list
Typing /ignore will explain how to fully use it.
Chat Toggling
Turn off guild and buddy chat by typing /b or /g, with no message after it.
Anti-Spam
Minor spam protection has been added! Consecutive messages that are exactly the same will be grouped together. Example:
VVolfie: I love bloo, I love bloo, I love bloo!
ShaddowDemon: I love it more!
VVolfie: I love bloo, I love bloo, I love bloo!
VVolfie: I love bloo, I love bloo, I love bloo!
---becomes---
VVolfie: I love bloo, I love bloo, I love bloo!
ShaddowDemon: I love it more!
VVolfie: I love bloo, I love bloo, I love bloo! [x2]
Chat Hilighting
Currently this feature can be slightly buggy, but I think in general it can still be helpful. Clicking on a player's public chat message will cause all past and future public messages from that player to be hilighted in light blue. You may have to click above the chat message is you use high-resolution texture/font packs.
Your name may now be highlighted when mentioned anywhere except in private messages. This includes the name that is displayed when you type. You can change the color, but it is defaulted to green. Type /shelp for info, or /name to toggle this feature.
Overlay
In the upper-left corner, you can find your current coordinates. You can also find your credit count The credit count is not always 100% accurate. Rather than attempting to duplicate Intelli's script, it will poll the server every 3 minutes to get your actual credit amount to make corrections. Basically, it is a very good approximation of your credits, and is USUALLY correct. If it isn't, then it will be within 3 minutes. Oh and I didn't include realm purchases/sales... so you will just have to wait for the auto-sync for it to update. I'm not postive it always immediately updates with credit transactions either... I don't test the larger numbers often lol. You can type /overlay to toggle it. Overlay hides when F3 is pressed.
Stalking
An interesting name for it, yes? This feature allows you to keep a list of players to query their online status. I generally use this to keep track of people who I need to talk to, but do not necessarily want to add to my buddy list. As the name implies, the person will not be aware that they are being tracked.
To add a player to the list, /stalk <playername>
To list, /stalk
To clear, /stalk clear
To remove, /stalk remove <playername>
To list guild members when connecting to MR: /stalk guild
To list buddies when connecting to MR: /stalk buddy
Sound Control
Support for disabling certain sounds. A list of available sounds to disable is displayed by typing /sound. Ah, I can finally disable the crackling of fire in my basement... And the doors of villager travels...
Afk Recording
If you type /afk, it will record private messages and display all of them and their timestamp when you type /afk again. It will not auto-respond.
Chat Logging
All chats are logged on your local computer. Since public chat and notifications can end up creating some decently large files (~1 MB/day), you can toggle off those chats. It is still slightly glitchy, but workable. I figured I might as well include it in this release, and make it more polished in the future. Chats are saved in a folder in your MC directory.
If you do not want chat logging at all, you can delete the following three files from the zip before you install it:
In net\shaddow\mcmod: The three files starting with _modChatLogger. Make sure you delete all three.
Mapping
A mapping module allows you to record the coordinates where you walk. Commands are:
/map record <filename.csv>
/map point <name>
/map stop
/map time <updateInterval>
The point command will save x,y,z coordinates as well as a name.
Tax calculator
When you are giving credits, simply add +tax to the end in order to have it calculate tax.
/credits give VVolfie 1000+tax
sends-> /credits give VVolfie 1111
Mob Spawn Detector
By typing /ll (for light level), the UI will display if a mob can spawn where you are standing based solely on the light level of the block you are standing on.
The Cons
Everything in this client is built specifically for MineRealm. This means two things. One, if Intelli decides to change something, even as simple as the confirmation messages from credit transactions, the format of chat, or even the section signs that you can't see, it could cause problems. So, my client is only stable as long as current MineRealm things stay the same.
Two, this client is really only for this server. In an effort to make your lives easier, it should auto-disable when connecting to other servers. Recognized MineRealm "IPs" include: game.minerealm.com, survival.minerealm.com, ch2.minerealm.com, 69.162.76.50. If you don't use one of those, the client will auto-disable. Let me know if it doesn't for some reason.
Also, while I consider myself to be a decent programmer, Minecraft clients are a hack job, especially without using a standardized API. I'm sure there are some bugs in the client, somewhere.
Last, I have a high-end computer. This means that when I test it, I will not notice any additional lag my client may cause. The fact is, it does a lot of pattern matching on incoming messages, so if your computer is kind of old, it could generate lag.
Future Features
If you would like to see a feature, let me know. I will decide to implement it based on the amount of time I have and the potential usefulness of the idea. Please do not suggest anything that would give you an advantage over other players, as they will not be added.
Example Images
An example of the ignore feature:
An example of the stalk feature:
An example of the highlight feature:
The Details
This section is mainly for the Staff/Intelli. Some of my features send automated commands to the server to get information, so I would like to state exactly what my client does in regards to those.
/credits: This command is issued every three minutes. This is done to ensure that the counter on the screen does not become grossly out of sync, due to small details in the credit script that I am not privy to. However, I built in a bit of a safety feature. If the credit value of the overlay does not change, the server will not be queried. This means that people who are afk and not doing anything will not be sending /credit requests.
Downloads:
Jar File (with OptiFine): MediaFire Link Make sure you click the correct "download" link on the page. Some ads try to trick you.
ChangeLog
Version 1.5.2
-Added /stalk buddy and /stalk guild to toggle displaying online guild/buddy members when logging in. Default off.
-That's it for now =/
Version 1.5.1
- Decided to have my version match MC, then use a/b/c etc for updates between.
- Updated to work with MC 1.5.1
Version 1.4.3 (FOR MC 1.4.7)
-Added "map" feature. Records your location to a text file as you move.
-Added minor antispam capabilities. Messages sent one after another that are exactly the same will be grouped. I have seen excessively high spam rates result in [[[[[[[[[[[[x12]]]x8]]]]] or something similar, but it's better than all of them on your screen
-Added a lightlevel detector. If the light level at the block you are standing on is >6, it will detect that mobs can spawn there. It probably isn't 100% correct (i.e. half slabs)... it merely takes whatever the game says the light value is at the block you are standing on. Activate with /ll (that is, lowercase LL, for light level).
-Added "+tax" for when you are giving credits. Simply type /credits give someone 1000+tax, and it will send /credits give someone 1111. You still need to type /yes to confirm, since someone may have a username I didn't think was possible (like %^$&^*), lol.
-Updated stalk feature to have an option to filter logins only to those on the stalk list (although, they are colored red/green regardless). Toggle with /stalk filter
-Stalk should be more accurate. If you log in with public chat off though, it will cause problems (there is no way for me to tell if chat is already off, so I assume it is on).
Version 1.4.2
-Updated for MC 1.4.7.
-Improved chat hilighting feature (From my experience at least)
-Stalk feature now colors login/logout messages of users you are stalking.
-Slight restructure to files... make sure to start with a clean jar file.
Version 1.4.1
-Fixed a bug preventing loading of submods.
-Added name highlighting.
Version 1.4:
-Updated to work with MC 1.4.6.
-Updated /shelp menus a bit.
-Added /afk
-Added chatlogging.
-Admitted that my versioning system is horrible.
Version 1.3:
-Updated to work with MC 1.4.4.
-Added a few sounds that can be disabled (ladders, rain, thunder, fall damage).
Version 1.2:
- Updated to work for Minecraft 1.4.2
- Added sound control feature.
- Fixed tax glitch in credit count.
- Added /shelp
- Reconfigured how stalking works. Less server communication.
Version 1.1:
- Restructured code. May introduce bugs, but will make it easier to add features in the future.
- Added toggle ability for /b and /g.
- Fixed mod being enabled in single player.
- Typing /credits manually will now update the credit counter.
- Broke compatibility with MCPatcher Optifine does everything it does though, so it's okay.
This client is compatible with Optifine. I have no clue as to its compatability with any other mods that might be allowed on MineRealm. Unfortunately, it is no longer compatible with MCPatcher. If you would like to use OptiFine, you must install it first.
ModLoader and MCForge based mods will not work with ShaddowCraft. Sorry!
Current Version: 1.5.2
You can type /shelp to display information about available commands!
Ignore Capability
To ignore a player, type /ignore <playername>
To list ignored players, type /ignore list
Typing /ignore will explain how to fully use it.
Chat Toggling
Turn off guild and buddy chat by typing /b or /g, with no message after it.
Anti-Spam
Minor spam protection has been added! Consecutive messages that are exactly the same will be grouped together. Example:
VVolfie: I love bloo, I love bloo, I love bloo!
ShaddowDemon: I love it more!
VVolfie: I love bloo, I love bloo, I love bloo!
VVolfie: I love bloo, I love bloo, I love bloo!
---becomes---
VVolfie: I love bloo, I love bloo, I love bloo!
ShaddowDemon: I love it more!
VVolfie: I love bloo, I love bloo, I love bloo! [x2]
Chat Hilighting
Currently this feature can be slightly buggy, but I think in general it can still be helpful. Clicking on a player's public chat message will cause all past and future public messages from that player to be hilighted in light blue. You may have to click above the chat message is you use high-resolution texture/font packs.
Your name may now be highlighted when mentioned anywhere except in private messages. This includes the name that is displayed when you type. You can change the color, but it is defaulted to green. Type /shelp for info, or /name to toggle this feature.
Overlay
In the upper-left corner, you can find your current coordinates. You can also find your credit count The credit count is not always 100% accurate. Rather than attempting to duplicate Intelli's script, it will poll the server every 3 minutes to get your actual credit amount to make corrections. Basically, it is a very good approximation of your credits, and is USUALLY correct. If it isn't, then it will be within 3 minutes. Oh and I didn't include realm purchases/sales... so you will just have to wait for the auto-sync for it to update. I'm not postive it always immediately updates with credit transactions either... I don't test the larger numbers often lol. You can type /overlay to toggle it. Overlay hides when F3 is pressed.
Stalking
An interesting name for it, yes? This feature allows you to keep a list of players to query their online status. I generally use this to keep track of people who I need to talk to, but do not necessarily want to add to my buddy list. As the name implies, the person will not be aware that they are being tracked.
To add a player to the list, /stalk <playername>
To list, /stalk
To clear, /stalk clear
To remove, /stalk remove <playername>
To list guild members when connecting to MR: /stalk guild
To list buddies when connecting to MR: /stalk buddy
Sound Control
Support for disabling certain sounds. A list of available sounds to disable is displayed by typing /sound. Ah, I can finally disable the crackling of fire in my basement... And the doors of villager travels...
Afk Recording
If you type /afk, it will record private messages and display all of them and their timestamp when you type /afk again. It will not auto-respond.
Chat Logging
All chats are logged on your local computer. Since public chat and notifications can end up creating some decently large files (~1 MB/day), you can toggle off those chats. It is still slightly glitchy, but workable. I figured I might as well include it in this release, and make it more polished in the future. Chats are saved in a folder in your MC directory.
If you do not want chat logging at all, you can delete the following three files from the zip before you install it:
In net\shaddow\mcmod: The three files starting with _modChatLogger. Make sure you delete all three.
Mapping
A mapping module allows you to record the coordinates where you walk. Commands are:
/map record <filename.csv>
/map point <name>
/map stop
/map time <updateInterval>
The point command will save x,y,z coordinates as well as a name.
Tax calculator
When you are giving credits, simply add +tax to the end in order to have it calculate tax.
/credits give VVolfie 1000+tax
sends-> /credits give VVolfie 1111
Mob Spawn Detector
By typing /ll (for light level), the UI will display if a mob can spawn where you are standing based solely on the light level of the block you are standing on.
The Cons
Everything in this client is built specifically for MineRealm. This means two things. One, if Intelli decides to change something, even as simple as the confirmation messages from credit transactions, the format of chat, or even the section signs that you can't see, it could cause problems. So, my client is only stable as long as current MineRealm things stay the same.
Two, this client is really only for this server. In an effort to make your lives easier, it should auto-disable when connecting to other servers. Recognized MineRealm "IPs" include: game.minerealm.com, survival.minerealm.com, ch2.minerealm.com, 69.162.76.50. If you don't use one of those, the client will auto-disable. Let me know if it doesn't for some reason.
Also, while I consider myself to be a decent programmer, Minecraft clients are a hack job, especially without using a standardized API. I'm sure there are some bugs in the client, somewhere.
Last, I have a high-end computer. This means that when I test it, I will not notice any additional lag my client may cause. The fact is, it does a lot of pattern matching on incoming messages, so if your computer is kind of old, it could generate lag.
Future Features
If you would like to see a feature, let me know. I will decide to implement it based on the amount of time I have and the potential usefulness of the idea. Please do not suggest anything that would give you an advantage over other players, as they will not be added.
Example Images
An example of the ignore feature:
An example of the stalk feature:
An example of the highlight feature:
The Details
This section is mainly for the Staff/Intelli. Some of my features send automated commands to the server to get information, so I would like to state exactly what my client does in regards to those.
/credits: This command is issued every three minutes. This is done to ensure that the counter on the screen does not become grossly out of sync, due to small details in the credit script that I am not privy to. However, I built in a bit of a safety feature. If the credit value of the overlay does not change, the server will not be queried. This means that people who are afk and not doing anything will not be sending /credit requests.
Downloads:
Jar File (with OptiFine): MediaFire Link Make sure you click the correct "download" link on the page. Some ads try to trick you.
ChangeLog
Version 1.5.2
-Added /stalk buddy and /stalk guild to toggle displaying online guild/buddy members when logging in. Default off.
-That's it for now =/
Version 1.5.1
- Decided to have my version match MC, then use a/b/c etc for updates between.
- Updated to work with MC 1.5.1
Version 1.4.3 (FOR MC 1.4.7)
-Added "map" feature. Records your location to a text file as you move.
-Added minor antispam capabilities. Messages sent one after another that are exactly the same will be grouped. I have seen excessively high spam rates result in [[[[[[[[[[[[x12]]]x8]]]]] or something similar, but it's better than all of them on your screen
-Added a lightlevel detector. If the light level at the block you are standing on is >6, it will detect that mobs can spawn there. It probably isn't 100% correct (i.e. half slabs)... it merely takes whatever the game says the light value is at the block you are standing on. Activate with /ll (that is, lowercase LL, for light level).
-Added "+tax" for when you are giving credits. Simply type /credits give someone 1000+tax, and it will send /credits give someone 1111. You still need to type /yes to confirm, since someone may have a username I didn't think was possible (like %^$&^*), lol.
-Updated stalk feature to have an option to filter logins only to those on the stalk list (although, they are colored red/green regardless). Toggle with /stalk filter
-Stalk should be more accurate. If you log in with public chat off though, it will cause problems (there is no way for me to tell if chat is already off, so I assume it is on).
Version 1.4.2
-Updated for MC 1.4.7.
-Improved chat hilighting feature (From my experience at least)
-Stalk feature now colors login/logout messages of users you are stalking.
-Slight restructure to files... make sure to start with a clean jar file.
Version 1.4.1
-Fixed a bug preventing loading of submods.
-Added name highlighting.
Version 1.4:
-Updated to work with MC 1.4.6.
-Updated /shelp menus a bit.
-Added /afk
-Added chatlogging.
-Admitted that my versioning system is horrible.
Version 1.3:
-Updated to work with MC 1.4.4.
-Added a few sounds that can be disabled (ladders, rain, thunder, fall damage).
Version 1.2:
- Updated to work for Minecraft 1.4.2
- Added sound control feature.
- Fixed tax glitch in credit count.
- Added /shelp
- Reconfigured how stalking works. Less server communication.
Version 1.1:
- Restructured code. May introduce bugs, but will make it easier to add features in the future.
- Added toggle ability for /b and /g.
- Fixed mod being enabled in single player.
- Typing /credits manually will now update the credit counter.
- Broke compatibility with MCPatcher Optifine does everything it does though, so it's okay.