Go to file
iceiix e72cf4787c
Update to Visual Studio 2017 (#28)
* Update readme for Windows with rustup and VS17

* Update AppVeyor to build with Visual Studio 2017

* Drop Visual Studio 2015 support in favor of 2017
2018-11-20 07:06:31 -08:00
blocks Disable three stylistic Clippy warnings, var names/params, never loop 2018-11-04 15:01:44 -08:00
gl Remove unnecessary 'extern crate's in Rust 2018 edition, import macros 2018-11-04 12:39:23 -08:00
resources Update Cargo.tomls to Rust edition 2018, fix crate imports. Closes #13 2018-11-04 12:15:34 -08:00
shared Use field init shorthand, instead of x:x, just x, 2018-11-04 13:43:30 -08:00
src Revert "Change multisampling count to 0, improved fix/workaround for AMD GPUs (#26)" 2018-11-19 17:44:06 -08:00
.gitignore Update to Minecraft 1.11 (Fixes #63) 2016-12-09 14:32:02 +00:00
.travis.yml Remove use of OpenSSL for RSA PKCS1 encryption (#12). Closes #2 2018-11-04 09:40:51 -08:00
Cargo.lock Update to rsa_public_encrypt_pkcs1 0.2.0 2018-11-05 17:17:02 -08:00
Cargo.toml Update to rsa_public_encrypt_pkcs1 0.2.0 2018-11-05 17:17:02 -08:00
LICENSE-APACHE Duel license under MIT and ApacheV2 2016-03-26 17:34:47 +00:00
LICENSE-MIT Duel license under MIT and ApacheV2 2016-03-26 17:34:47 +00:00
README.md Update to Visual Studio 2017 (#28) 2018-11-20 07:06:31 -08:00
appveyor.yml Update to Visual Studio 2017 (#28) 2018-11-20 07:06:31 -08:00

README.md

Steven (Rust)

Build Status

A Minecraft client coded in Rust. Ported from steven-go. Don't expect it to go anywhere, just doing this for fun.

Images

Steven on Hypixel Steven

In action: http://gfycat.com/NeedyElaborateGypsymoth

Chat

I generally am on the irc.spi.gt irc network in the #think channel. Feel free to pop in to say hi, Webchat can be found here

Downloads

Windows users can download pre-compiled builds from here: https://ci.appveyor.com/project/iceiix/steven (Select your platform, Click the artifacts tab and download Steven.zip)

The Visual Studio 2017 Redistributable is required to run these builds.

Building

Currently requires SDL2, and beta or nightly Rust to build.

Compile and run:

cargo run --release

Just compile:

cargo build --release

If you get an error such as:

  = note: ld: library not found for -lSDL2                                                                                                                                                                                                   
          clang: error: linker command failed with exit code 1 (use -v to see invocation)     

then you need to install the prerequisites, see below:

Prerequisites

Compiling steven requires Rust beta and SDL2. Instructions for setting up SDL2 is platform-specific and will be covered as such outside of this section.

An easy way to manage multiple Rust toolchains is rustup. Installation instructions for rustup can be found on its website.

Once you've set up rustup, grab Rust beta by running

rustup install beta

Now we need to make sure that steven is compiled with beta. To do this without making beta the default across the entire system, run the following command in the steven directory:

rustup override set beta

Installing dependencies on Linux

Install SDL2 (with headers) via your distro's package manager. Packages with headers generally end with -dev. For example on Debian-based systems such as Ubuntu Linux:

apt-get install -y libsdl2-dev libsdl2-mixer-dev gcc libegl1-mesa-dev libgles2-mesa-dev

Installing dependencies on OS X

Installing them is easiest with Homebrew. To install SDL2 issue this command:

brew install sdl2

Installing dependencies on Windows

Install Visual Studio 2017 with the Visual C++ option. May build with other compilers, but not tested (previously was built with MinGW and the GNU toolchain).

Download SDL2-devel-2.0.4-VC.zip, extract and copy SDL2-2.0.4\lib\x64\SDL2.lib to .multirust\toolchains\beta-x86_64-pc-windows-msvc\lib\rustlib\x86_64-pc-windows-msvc\lib\SDL2.lib and SDL2-2.0.4\lib\x64\SDL2.dll to target\release.

Running

Standalone

Just running steven via a double click (Windows) or ./steven (everything else) will bring up a login screen followed by a server list which you can select a server from.