GithubHelp home page GithubHelp logo

zkevz / growrust Goto Github PK

View Code? Open in Web Editor NEW
21.0 2.0 3.0 142 KB

Growtopia Private Server made in Rust.

License: MIT License

Rust 100.00%
growtopia server rust private-server private gt gtps zkevz kevz growtopiagame

growrust's Introduction

Grow Rust

Grow Rust is a Growtopia Private Server made in Rust.

Building

$ git clone https://github.com/zKevz/GrowRust
$ cd GrowRust
$ cargo build

Or cargo build --release for release mode and code optimization

After you've built it, create a directory named data in the same directory as your executable in. After that, put items.dat which can be found in the Growtopia local folder/cache in that data directory. Then simply just run the executable and it should work!

Features

  • Player Database
  • World Database
  • Account creation, login
  • World entering
  • Breaking and placing blocks
  • Respawn
  • Chat and commands (only /test and /give)
  • Clothes
  • Multiplayer of course
  • Clean code
  • Fast and safe of course!

Why Rust?

Because im interested in rust these days, but been struggling in what project what i should do. And then the idea came from the very first Growtopia Private Server in rust made by Alexander ( Growtopia.rs ). So im thinking of making a brand new server in rust with even more features than Alexander's has, which is why there is this project!

Small Documentation

Calling a variant function:

use utils::variant_function::VariantFunction::*; // in the top of the file!

player.send_varfn(OnConsoleMessage("Hello!"));

However, you can explicitly calls the VariantFunction enum by

use utils::variant_function::VariantFunction; // in the top of the file!

player.send_varfn(VariantFunction::OnConsoleMessage("Hello!"));

And then for variant calls with netid and delay arguments:

use utils::variant_function::VariantFunction::*; // in the top of the file!

let net_id = -1;
let delay = 6969;
player.send_varfn_v(OnConsoleMessage("Hello!"), net_id, delay);

To create another implementation variant function, you can add it in VariantFunction enum and then put the field with the arguments provided, and then create the serialization implementation in serialize function. You can see many examples there, it should be easy enough.

Contributing

Feel free to contribute in the development of the server! If you have found any bugs, feel free to fix or contact me. Any help would be appreciated.

Credits

Abood (Definitely a cool guy)

Mempler

Alexander#9673

free#1234

enet-sys

enet-rs (Some implementation were taken from here)

growrust's People

Contributors

aboodtbr avatar zkevz avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

Forkers

shapegt sensokaku

growrust's Issues

Error when I type ./server

I get a error when I type ./server. I dont know how to use Rust. Please help me I tried type RUST_BACKTRACE=1 ./server and _RUST_BACKTRACE=full ./server_ but doesnt work

GrowRust made by kevz#2211!
thread 'main' panicked at src/item/iteminfo_manager.rs:113:13:
assertion `left == right` failed
  left: 1
 right: 0
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

Can you provide us with a more detailed setup guide?

I have now succesfully built the server binary, but I cannot connect to the server.
I have set my windows hosts file to the correct settings and I have created a growtopia folder into my webserver's root directory and created a server_data.php file. I have also placed my items.dat file in the correct directory.

Getting an error while building "error: failed to run custom build command for `enet-sys v0.2.3`"

I have never in my life before used Rust so I have no idea what this shit means:

error: failed to run custom build command for `enet-sys v0.2.3`

Caused by:
  process didn't exit successfully: `C:\Users\my username\Desktop\GrowRust-main\target\release\build\enet-sys-0457ccb2d082d581\build-script-build` (exit code: 101)
  --- stderr
  thread 'main' panicked at 'Unable to find libclang: "couldn't find any of ['clang.dll', 'libclang.dll'], set the LIBCLANG_PATH environment variable to a path where one of these files can be found (skipped: [])"', C:\Users\my username\.cargo\registry\src\github.com-1ecc6299db9ec823\bindgen-0.35.0\src/lib.rs:1556:31
  note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
  
warning: build failed, waiting for other jobs to finish...
error: build failed

how do you connect?

i installed and started it on my android device, it said server is running but i couldnt connect. I used my ip address to connect but i failed. it says getting server address then says timed out

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.