Custom Minecraft Classic / ClassiCube client written in C from scratch (formerly ClassicalSharp in C#)
Find a file
2015-06-30 20:08:58 +10:00
2D Add public methods to send PlayerClick packets (code that calls them not yet implemented), simplify reading strings in FastNetReader and backspace key handler in TextInputWidget. 2015-06-29 09:25:39 +10:00
Blocks
Commands Add mention of built-in client commands to readme, separate view distance setting in to a separate command, general simplification of commands. 2015-06-28 08:13:41 +10:00
DefaultPlugin/Renderers Inline some string date format constants, only check whether a directory exists when opening a file. 2015-06-30 20:08:58 +10:00
Entities Remove file that shouldn't be there. 2015-06-28 18:58:54 +10:00
Game Inline some string date format constants, only check whether a directory exists when opening a file. 2015-06-30 20:08:58 +10:00
GraphicsAPI Only send final matrix result of multiplications to graphics api. 2015-06-30 07:26:09 +10:00
Ionic.Zlib Fix map chunk decompressing with Mono. 2015-06-19 11:16:15 +10:00
Launcher Use dynamic VBOs instead of immediate mode. 2015-05-31 12:59:03 +10:00
Map Properly unsubscribe from TerrainAtlasChanged events. 2015-06-30 13:10:16 +10:00
Model Only send final matrix result of multiplications to graphics api. 2015-06-30 07:26:09 +10:00
Network Add public methods to send PlayerClick packets (code that calls them not yet implemented), simplify reading strings in FastNetReader and backspace key handler in TextInputWidget. 2015-06-29 09:25:39 +10:00
OpenTK Use optimised matrix multiplication code from later version of OpenTK. 2015-06-30 07:46:37 +10:00
Physics Keep track of picked block face in PickedPos class, rearrange MouseButton enum order to match CPE PlayerClick specification. 2015-06-28 19:55:29 +10:00
Properties
Rendering Properly unsubscribe from TerrainAtlasChanged events. 2015-06-30 13:10:16 +10:00
Selections Better selection box sorting. 2015-06-27 12:11:47 +10:00
Utils Some simplifications in utility functions, remove some old unused debug code, do not use magic constants for writing packet ids. 2015-06-28 18:58:17 +10:00
.gitignore
app.config Downgrade to C# 3.0, use shorthand array initialisers where possible. 2015-05-31 08:57:05 +10:00
ClassicalSharp.csproj Rearrange particle classes into separate folder, move selection box comparsions to own class, optimise memory allocation and size of SelectionBox class. 2015-06-24 19:48:12 +10:00
ClassicalSharp.sln Integrate OpenTK into the solution. 2015-06-07 08:53:12 +10:00
launcher instructions.txt
license.txt Fix map chunk decompressing with Mono. 2015-06-19 11:16:15 +10:00
Program.cs Only show the stack trace directly to the user if we were unabble to dump it to the crash log. 2015-06-27 12:21:57 +10:00
readme.txt Add mention of built-in client commands to readme, separate view distance setting in to a separate command, general simplification of commands. 2015-06-28 08:13:41 +10:00
todo.txt

ClassicalSharp is a custom MineCraft Classic client written in C# that works with Windows and Linux.
It is not affiliated with (or supported by) Mojang AB, MineCraft, or Microsoft in any way.

You can get the latest binaries from github.com/UnknownShadow200/ClassicalSharp/releases

=== What ClassicalSharp is === 
* Works with both MineCraft.net and ClassiCube.net
* Lightweight, minimal memory usage compared to standard client.
* Should work with effectively all graphics cards that support OpenGL.

It does not:
* Work with 'modern/premium' MineCraft servers.
* Provide single-player support.

=== Requirements ===
* Windows: The .NET framework 2.0 or Mono. (Vista and later have .NET framework 2.0 built in)
* Linux: Mono. (Not completely tested, but does work)
* Mac OS X: Mono. (Not tested at all yet - may just crash)

* When building from source and targeting Mono, you must either use the Mono compiler or
define '__MonoCS__' when building, otherwise you will get runtime errors when decompressing the map.

=== Instructions ===
To use ClassicalSharp, you can either
A) Use the launcher
B) Pass command line arguments directly to classicalsharp.exe

* Note that the first time you run the launcher, a dialog box will pop up with the message 
"Some required resources weren't found." Just click OK. (This is because I cannot redistribute 
the assets of Minecraft Classic with the application as they are the copyrighted property of Mojang)

The launcher interface should be straightforward. If you are confused about how to use the launcher, 
please read "launcher instructions.txt"

=== Key combinations ===
Press escape (after joining the first world) to switch to the pause menu. 
The pause menu lists all of the key combinations used by the client.
Key combinations can be reassigned in the pause menu by clicking on a key combination.
Press escape or click "Back to game" to return to the game.

* Note that if the server has disabled hacks, some of the key combinations will have no affect.
* Pressing F6 to change view distance can improve performance by limiting the number of visible chunks.
* Pressing F7 to toggle VSync on or off. On minimises CPU usage, whereas off maximises chunk loading speed.

=== Client commands ===
ClassicalSharp comes with a number of built in commands. You can see a list of them by typing /client commands,
and you can see help for a given command for typing /client help [command name].