Custom servers/MCSharp

From Minecraft Wiki
Jump to: navigation, search
The contents of this page are not supported by Mojang AB, the Minecraft Wiki, the Minecraft IRC channel or the Minecraft Forums.
Please note that this is not Release server software which means no Release support (only Classic, outdated or inactive).
This page has been tagged for and is currently pending deletion per user request Discuss
Reason: Outdated mod


MCSharp is a Windows C# Minecraft server, compatible on linux using Mono. The current release can be found on Crafted.


Check the Custom servers/MCSharp/FAQ



Unzip the latest build from the Crafted site. Configure your server properties in the '' file. If one does not exist then it will be created for you on the first run of the server.

To run the server in linux, use mono.

Initial Configuration
  1. Edit to change your Server-name, and motd.
  2. Add yourself to operators.txt under the 'ranks' folder. operator = YourMom (aka Admin)
  3. Add any moderators to moderators.txt under the 'ranks' folder. moderator = (previously)operator
  4. If you have maps (that have been converted to .lvl) add them to the 'levels' folder. You may also specify if you would like your server to auto load any maps by adding them to the autoload.txt with the following format: main = 1 where main is the map name and 1 is the physics level (0=Off, 1=Normal, 2=Advanced.)
  5. Start your server by running the Minecraft Server.exe

  • If you would like to add users to the operators.txt you must restart the server for it to take effect.
  • The rules.txt can be changed while the server is running.
  • You can add a welcome message to welcome.txt file. If the server does not generate one, create it in the main directory. This can also be modified while the server is running.
  • joker.txt should contain joke messages that a "jokered" player will say rather than what they normally type.
  • news.txt should contain news relevant to your server.


Copy 'MCSharp CLI.exe' , 'MCSharp.dll' and 'Meebey.SmartIrc4net.dll' over the previous ones.

You can either copy over the file or run the server to add the new lines to your old con-fig then edit them and reload the server.

MCsharp 0.8.1+[edit]

When upgrading to MCsharp 0.8.1 or higher you will need to redo your ranks. The old text files are still present meaning your operators will be changed.

operators.txt now defines a superop equivalent rank.

moderators.txt now defines an operator equivalent rank.

uberops.txt is no longer processed. Anybody listed in this file will be a guest upon logging in.

To be perfectly clear:

214 ====>> 0.8.1+

operator ====>> moderator

superop ===>> operator


Block changes made by a banned user will be ignored by the server causing the griefer to think he's still doing harm. The block changes (made after they were banned) will only show for the banned user and don't actually affect anything. You can also use /ban # username to "stealth ban" them if you do not wish for them to know they have been banned. (The # is not a number, it is the # character.) Stealth bans will only notify OP/Admin that the player was banned and will not display the message to the user or anybody else on the server.
By default only allowed to build/visit the main map. If anti-tunneling is on, they are only allowed to tunnel the set amount below sea level. The default is 4. Guest commands: /about, /admins, /afk, /goto, /help, /info, /levels, /mapinfo, /me, /ops, /rules, /time, /players, /spawn, /whois, /whowas
Adds the following commands: /paint, /lava, /water, and /tp
Adds the following commands: /abort, /activelava, /activewater, /cuboid, /kick
Moderator (previously Operator)
Adds the following commands:/ban, /banip, /banned, /bannedip, /bind, /guest, /kickban, /load, /op, /opglass, /replace, /restore, /resetbot, /save, /say, /setrank , /setspawn, /solid, /unban, /unbanip, /unload, /hide
Operator (previously Super Operator)
Immune to rank change, can only be given this rank by changing uberops.txt and restarting server. Adds the following commands: /circle, /color, /newlvl, /perbuild, /pervisit, /physics, /botadd, /botremove, /botsummon, /serverreport
Reserved for pre-programmed Minecraft clients.


@username message
sends a private message to that user.
/whisper username
All text is sent to this user. You may still manually use "#" for operator only chat. See FAQ for usage examples.
sends a message only OP/Admin can read. Anybody can use this (even banned), but the message will only be displayed for the person sending the message, and OP's/Admins.
All text is sent to operator only chat. You may still manually use "@" to whisper.
If global chat is disabled in, this will send a message all players can see, otherwise regular chat is restricted to the map you are on.

/about - Allows you to see the info about a block by destroying it (or placing a block inside of lava/water.)

/abort or /a - Cancels /about, /cuboid, and /replace

/afk <awaymessage> - set yourself to AFK with message (message not required) or just /afk to return.

/afk list - show all afk players

/aid [block] - Puts a block under the player (client side). Defaults to yellow.

/ban <username> - Ban a player by name (not kicked, any blocks they change after the ban will revert upon them leaving server.)

/ban #<username> - Silently Ban a player by name (not kicked, any blocks they change after the ban will revert upon them leaving server.)

/banip <ip address or username> - IP ban by IP or name of the user. If you stealth banned somebody, you can use /whowas after they leave to acquire their IP to ban.

/banned - shows the banned list

/bannedip - shows the banned IP list

/bind <block 1> <block 2> - binds block 2 to block 1 (ex. /bind stone water will make the stone block place water blocks.) Use /bind <block1> to unbind it.

/botadd <name> - Add a new bot at your position.

/botremove <name> - Remove a bot on the same level as you.

/botsummon <name> - Summons a bot to your position.

/builddoor - Activates / deactivates door building mode. All placed blocks are turned into their door_material.

/buildop - Activates / deactivates operator building mode. All placed blocks are turned into their op_material.

/cuboid <block> <type> or /z <block> <type> - create a cuboid with the held block (/cuboid), create a cuboid with the specified block (/cuboid water) and specify the cuboid type (/cuboid stone hollow) Cuboid types are "solid" (default type) "hollow" (only the outside 6 faces are created) and "walls" (only the 4 vertical walls are created) Once the command has been entered place/remove two blocks to set where the cuboid is to be created. Note that /z also works as cuboid.

/color <username> <colorname> - set the color of the specified users name. /color alone lists all colors available. /color colorname changes your own name to the color specified.

/deletelvl <level> - Permanently deletes a level. Creates a single backup before deleting. You must remove this backup manually before you can delete a level with the same name.

/door [ignoreblock1 to ignoreblock7] - Turns all blocks in a specified area to their door_material

/doorview [all] [ignoreblock1 to ignoreblock7] - Turns door_material in a specified area green (client side only) for ease of viewing. See FAQ for usage examples.

/fakemsg <player> <message> - Sends a chat message under that players name

/follow <player> - Puts you into hide mode and follows a player. Try not to click or you'll give yourself away.

/goto <map name> - go to the map specified

/help - shows a list of commands or use /help <command> to find more information about a specific command

/hide - Become invisible or visible to other players.

/hidden - Shows a list of hidden players

/info - Shows info about MCSharp

/joker <player> - Replaces the players messages with funny messages from joker.txt

/kick <username> - kick a player by name

/kickban <username> - kick and ban a player by name

/lava - enable/disable static lava building mode (any block placed becomes static lava)

/levels - shows a list of all levels on the server. This will list per rank, what maps they can visit. Ex. non guest maps will show up under "Can't Goto" for any guests that use /levels.

/load <map name> - Loads a map

/lock [all] [ignoreblock1 to ignoreblock7] - Turns blocks in a specified area to op_material. See FAQ for usage examples.

/mapinfo - shows the details for the current map including build/visit rights.

/me <text> - Used for roleplaying (ex. /me runs frantically away.)

/mute <player> - Toggles mute on the player so they cannot chat or use commands. Check the console for their chat messages.

/newlvl <level name> <length x> <height y> <width z> <type> - creates a new level of the specified type. Valid types are flat, pixel, island, mountains, forest, and ocean. (ex. /newlvl Underwater 128 64 128 ocean)

/news - Displays news from the news.txt file

/opchat - All text is sent to operator only chat. You may still use "@" to whisper someone.

/ops - shows a list of Operators

/opview [all] [ignoreblock1 to ignoreblock7] - Turns op_material in a specified area purple (client side only) for ease of viewing. See FAQ for usage examples.

/paint or /p - Enable/Disable paint mode (destroyed block is replaced with held block)

/perbuild <rank> - Sets the rank required to build on the current map.

/pervisit <rank> - Sets the rank required to go to the current map, you cannot prevent people from joining and loading into main with this, but they would not be able to return.

/players - shows a list of players online

/physics # - set the physics mode for the current level (0=off, 1=on, 2=advanced) See PHYSICS section for more information.

/ratio <name> - Displays block change statistics for the specified player.

/replace <block 1> <block 2> or /r <block1> <block2> - Works like /cuboid but replaces all of block 1 with block 2 in the set area. (ex. /replace stone adminium)

/restore <backup number> - Restore current map to revision number. /restore alone will list number of backups (highest number is latest backup.)

/reveal <player> - Updates the map for a banned player. They will see that all their block changes disappeared.

/rules - Displays the server rules, you can also send the rules to a player with /rules <username>, useful for enforcing rules if a player claims they have not read the /rules.

/save - Save the current level (automatically saved every 2 minutes anyway)

/setrank <name> <rank> - Sets a player to a rank. Available ranks are: Guest, Builder, Advbuilder, op. '/setrank <name> will display a player's rank.

/say <message> - Send a server message

/sendlevel <player> <level> - Sends a player to another level. They must have permission to visit the map.

/setspawn - Set the spawn point for the current level

/solid - Enable/Disable solid building mode (any block placed becomes adminium)

/spawn - Teleport to the map spawn regardless of your own set spawn point.

/summon <username> - Teleport the specified player to you

/time - Displays the server time

/tp <username> - Teleport to the specified user (you can also hold tab and click the person's name if its a long name)

/tree - Placed saplings will grow into trees (only grows on air blocks)

/unban <username> - unban a player by name

/unbanip <ipaddress> - unban an ip

/undoor [all] [ignoreblock1 to ignoreblock7] - Turns all door_material in an area back into regular blocks. See FAQ for usage examples.

/undoorview [all] [ignoreblock1 to ignoreblock7] - Turns "green viewed" door_material in a specified area back to normal (client side only) for ease of viewing. See FAQ for usage examples.

/Unflood - Ill Delete All Active_Water.

/Unflood <MapName> - You Can Delele All Active_Water From A Distance Ex:Player Can Delete Active_Water From Other Maps.

/unload <map name> - Unload a map

/unlock [all] [ignoreblock1 to ignoreblock7] - Turns op_material in a specified area back to normal. See FAQ for usage examples.

/unopview [all] [ignoreblock1 to ignoreblock7] - Turns "purple viewed" op_material in a specified area back to normal (client side only) for ease of viewing. See FAQ for usage examples.

/water - Enable/Disable static water building mode (any block placed becomes water)

/whisper <name> - Enables or disables whisper chat. See FAQ for usage examples.

/whois <username> - Show details on a connected player

/whowas <username> - Show details on a recently disconnected player

IRC Bot[edit]

The IRC bot and the in game bots (/botadd name) are not related.

To use the IRC Bot, you must first configure it in the It is heavily recommended you register nicknames on the IRC network you intend to use. You must also add your IRC username (not the bot's) to the IRC_controllers.txt file. Once this is configured, you may pm the irc bot the following commands that will be sent to your minecraft server:





say - This will not use /say in the minecraft server, instead it will make the bot say something in the IRC channel.

Example; /msg SOME_BOT kick user1234


In levels with physics enabled, the server will shut off the physics before mass flooding crashes it. The active water/lava becomes dormant and re-enabling physics will not cause the active water/lava to move unless it is disturbed by building/deleting an block adjacent.

If doors were open or air was flooding when the physics are shut off, those blocks will be "active" blocks and cannot be messed with. The easy solution to get rid of these is to use "/replace door_air air" exchanging door_air with air_flood if necessary. From revision 197 onwards, these blocks will automatically attempt to revert back into door blocks when physics are turned off.

Reverse flooding should not crash the physics, unless you are reverse flooding multiple large areas at the same time. Reverse flooding also only works on "active" water/lava, using it on "still" water/lava is the same as placing a single air block.

Water/lava does not flow through op_ blocks (op_air/op_water) or the door_air block. This means you can't use doors to release water but with op_ air/water you can simulate falling water. See the PHYSICS & LOOPS section below for more info.

Advanced Physics

When physics is set to 2 either on load or by using '/physics 2'

  • Active Lava will eat through (destroy and replace) the following materials: Wood, Tree, Leaves, Grass, Plant, Mushrooms, and Flowers.
  • Active Water will do the same as lava, but only to plant, mushrooms, and flowers.
  • Sand and Gravel blocks will fall 1 space at a time.

Special Blocks[edit]

If you need to use cuboid with the admin block (/solid) you must use /cuboid adminium. Using /cuboid with /solid enabled does not work.

Certain blocks can be bound to other blocks using the /bind command.

Operator only blocks, format: op_material

Example: op_brick, op_red, op_obsidian...etc.

only op/admin can build a block in op_air space. Useful for disallowing building in spawn jails/rooms.
"still" water
"still" lava
Same as /solid, dark admin rock.

Type in /cuboid (or z) <block name>

Physics Blocks[edit]

These are blocks that require physics on to work.

Format: door_material
Example: door_wood, door_tree, door_red, door_obsidian
This is the default format of a door block. Can only be removed by /cuboid air or /replace door air. All directly touching door blocks will affect each other. When you delete one door block, it will remove the other door blocks it's touching (think dominoes). The door block will respawn about 4 seconds after it is destroyed.
Door Air
Format: doorair_material
Example: doorair_blue, doorair_tree, doorair_obsidian
This is the space a door will occupy but has not respawned in yet. If you create a door block, and destroy it while physics are turned off, it will leave the door_air which cannot be affected (even by admins), unless you use /cuboid or /replace on it. You can use /cuboid door over it again to fix the hole or use /replace door_air door. From revision 197 onwards, these blocks will automatically attempt to revert back into door blocks when physics are turned off.
regular wood block but is affected by gravity and will float to the surface if placed underwater. Not useful for boats, but useful for building objects on the water surface.
This is the active water block that will flood with physics on. This cannot be bound to a block, but can be used with /cuboid or /replace.
This is the active lava block and floods at the default lava rate with physics on (slowly.) This cannot be bound to a block, but can be used with /cuboid or /replace.
This is the faster version of active_lava and floods at the same rate as active_water. This allows for creating lava loops. This can be bound to a block or used with /cuboid or /replace.
This will place an air block that essentially reverse floods lava/water. It only affects "active" water/lava and only works while physics are enabled.
This will air flood only the horizontal layer you place the initial air_flood block. Alternatives are: air_flood_up and air_flood_down

Physics & Loops[edit]

With physics enabled you can create infinite loops using active water or doors. Note, since these loops are constantly updating blocks, the more loops you create, the more strain you will put on the system causing more lag. Try to keep the total chunk updates below 200, as the physics can sometimes shutdown at a random point with chunk updates around 200-250.

A picture showing a basic loop
Water Loops
To create a water loop you must first have your circular route of water all at the same height. You then block one part of the route so that when you start the air_flood at that point, it only goes in one direction - [Fig1]. After you start the air_flood, delete the obstructing block to allow water through - [Fig2]. You should now have a snake-like section of water looping around the route you created for it - [Fig3].

Falling Water
To create the effect of constantly falling water, you must first start of with a water loop at the top part of the waterfall. First design your entire waterfall and, if you'd like, a basin for it to fall into. Once you have this created, you need to surround the structure with op_air, or at least the sections of air that directly touch the falling water but you don't want water to flow out to. One easy way to do this (and insure there are no holes for water to leak out of) is to place glass in the space you want your op_air. Alternatively, you may simply /replace air op_air around the entire structure. Make sure you cover all holes, and it's best if you completely surround even the regular blocks that will contain water so as to prevent accidental leaks. After you have your glass placed, simply use /replace glass op_air. Now, the air around will not leak water and you can let the water out of it's water loop up top to follow the air path. You can create multi-tiered water falls easily, you only need the one water loop up top.

Door Loops
To create a door loop you must first create the track of doors you want to loop but leave one open space somewhere. At the open space, you must first click one end to start the door loop, and then place a door in the space you left open. The track must be long enough for the doors to respawn in before it comes back around. The minimum doors required is 18 to make a loop (each door block can only have 2 sides touching another door block.) You can use this to create revolving doors or a maze with doors that are constantly opening/closing (make it a rule that user cannot create or destroy any block.) There are of course many more uses for this.

Toggled Modes[edit]

The toggled modes for blocks means all blocks placed will place the block specified. Example: with /solid mode ON, any block you place will change to adminium. The following block commands have toggled modes:


Active water/lava is only for the first block placed. Builddoor will turn any placed object into a door material. Buildop will turn any placed object into op material.

Complete Block List[edit]

Does not include special blocks listed above.