Difference between revisions of "HCraft"

From wiki.vg
Jump to navigation Jump to search
(hCraft!)
(hCraft)
Line 6: Line 6:
 
HEADING = '''Introduction''' |
 
HEADING = '''Introduction''' |
 
CONTENT =
 
CONTENT =
[[Image:HCraft-overhang.png|thumb|border|right|top|400px|hCraft's "overhang" world generator]]
+
[[Image:HCraft-overhang.png|thumb|border|right|top|300px|hCraft's "overhang" world generator]]
 
'''hCraft''' is a custom server written in C++ by BizarreCake, currently implementing the 78th version of the protocol (1.6.4).
 
'''hCraft''' is a custom server written in C++ by BizarreCake, currently implementing the 78th version of the protocol (1.6.4).
  
Although hCraft is designed at its core to become a general purpose server, it is currently leaning towards classic/creative functionality.
+
Although hCraft is designed to become a general purpose server, it is currently leaning towards classic/creative functionality.
 
Inspired by many classic custom servers, such as: WoM 2009, the new WoM (WoM Realms), D3, MCSharp/MCZall/MCLawl, and fCraft.
 
Inspired by many classic custom servers, such as: WoM 2009, the new WoM (WoM Realms), D3, MCSharp/MCZall/MCLawl, and fCraft.
  
hCraft's website can be found at: [http://www.hCraft.org/ www.hCraft.org] (It may be outdated at times) <br />
+
===== Links: =====
Source code can be found at [http://www.github.com/BizarreCake/hCraft github].
+
:Website: [http://www.hCraft.org/ www.hCraft.org] (Outdated at times) <br />
 +
:Source code: [http://www.github.com/BizarreCake/hCraft www.github.com/BizarreCake/hCraft].
 +
:IRC: #hCraft @ irc.panicirc.net/6667
 +
 
 
}}
 
}}
  
Line 24: Line 27:
 
CONTENT =
 
CONTENT =
 
[[Image:HCraft-multiworld.png|thumb|border|right|top|400px|A 32x32 flatgrass world.]]
 
[[Image:HCraft-multiworld.png|thumb|border|right|top|400px|A 32x32 flatgrass world.]]
[[Image:HCraft-super-overhang.png|thumb|border|right|top|400px|The "Super Overhang" world generator]]
 
 
hCraft has been designed to be a fully multiworld server from the grounds up.
 
hCraft has been designed to be a fully multiworld server from the grounds up.
 
Players can create worlds, switch between them at any time, backup them, restore them from backups, regenerate, resize, etc...
 
Players can create worlds, switch between them at any time, backup them, restore them from backups, regenerate, resize, etc...
  
Every world has its own world generator, provider (determines the format from which the world is loaded/saved to) and physics threads (up to 24).
+
Every world has its own world generator, provider (determines the format from which the world is loaded/saved to) and set of physics threads.
 +
 
 +
And just like the good ol' classic days, worlds can have a finite size and have that neat border (although they can be infinite as well).
 +
 
 +
 
 +
Some world-related commands:
 +
; /wcreate [-a] [-l] [-g <generator>] [-p <provider>] [-s <seed>] [-w <width>] [-d <depth>] <world name>
 +
: Creates a new world named <world name>, optionally loading it if -l is present.
 +
; /wload [-a] <world name>
 +
: Loads the world <world name>. The -a option will insert the world into the "autoload" list.
 +
; /wunload [-a] <world name>
 +
: Unloads the world <world name>. The -a option will remove the world from the "autoload" list.
 +
; /goto <world name>
 +
: Teleports the player into the specified world.
 +
}}
 +
 
 +
{{Box|
 +
BORDER = #7359F7|
 +
BACKGROUND = #A511F0|
 +
WIDTH = 100%|
 +
ICON = |
 +
HEADING = '''Block physics''' |
 +
CONTENT =
 +
[[Image:HCraft-physics1.png|thumb|border|left|top|300px|D3-style sand physics]]
 +
hCraft has a very powerful block physics system in place.
 +
 
 +
Initially, all worlds share a single block physics thread spawned by the server at startup time. At any time, the user may choose to allocate a set of threads for any world - from one thread up to 24 (although I doubt anyone would need that many, ...unless you have a 12-core system).
  
And just like the good ol' classic days, worlds can have a finite size and have that awesome border (although they can be infinite as well).
+
hCraft supports various ''custom blocks'' - regular blocks that have a special behaviour associated with them. Internally, they are usually assigned a custom ID (starting at 2000), and are converted transparently to the right type of blocks when sent to the player. Currently implemented custom blocks include: activewater (the type of water that existed in classic Minecraft), Langton's ant, sharks, fireworks, etc...
  
  
 +
World physics can be stopped, paused, and resumed at any time using the '''/physics''' command.
 
}}
 
}}

Revision as of 08:49, 25 September 2013

Introduction
hCraft's "overhang" world generator

hCraft is a custom server written in C++ by BizarreCake, currently implementing the 78th version of the protocol (1.6.4).

Although hCraft is designed to become a general purpose server, it is currently leaning towards classic/creative functionality. Inspired by many classic custom servers, such as: WoM 2009, the new WoM (WoM Realms), D3, MCSharp/MCZall/MCLawl, and fCraft.

Links:
Website: www.hCraft.org (Outdated at times)
Source code: www.github.com/BizarreCake/hCraft.
IRC: #hCraft @ irc.panicirc.net/6667
Multiworld
A 32x32 flatgrass world.

hCraft has been designed to be a fully multiworld server from the grounds up. Players can create worlds, switch between them at any time, backup them, restore them from backups, regenerate, resize, etc...

Every world has its own world generator, provider (determines the format from which the world is loaded/saved to) and set of physics threads.

And just like the good ol' classic days, worlds can have a finite size and have that neat border (although they can be infinite as well).


Some world-related commands:

/wcreate [-a] [-l] [-g <generator>] [-p <provider>] [-s <seed>] [-w <width>] [-d <depth>] <world name>
Creates a new world named <world name>, optionally loading it if -l is present.
/wload [-a] <world name>
Loads the world <world name>. The -a option will insert the world into the "autoload" list.
/wunload [-a] <world name>
Unloads the world <world name>. The -a option will remove the world from the "autoload" list.
/goto <world name>
Teleports the player into the specified world.
Block physics
D3-style sand physics

hCraft has a very powerful block physics system in place.

Initially, all worlds share a single block physics thread spawned by the server at startup time. At any time, the user may choose to allocate a set of threads for any world - from one thread up to 24 (although I doubt anyone would need that many, ...unless you have a 12-core system).

hCraft supports various custom blocks - regular blocks that have a special behaviour associated with them. Internally, they are usually assigned a custom ID (starting at 2000), and are converted transparently to the right type of blocks when sent to the player. Currently implemented custom blocks include: activewater (the type of water that existed in classic Minecraft), Langton's ant, sharks, fireworks, etc...


World physics can be stopped, paused, and resumed at any time using the /physics command.