Skip to content

Commit

Permalink
Make readme more actual
Browse files Browse the repository at this point in the history
  • Loading branch information
grepsedawk committed Jun 9, 2023
1 parent 0ec4ad4 commit 76b2253
Showing 1 changed file with 16 additions and 12 deletions.
28 changes: 16 additions & 12 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,21 +5,11 @@ Minecraft client written in [Crystal](http://crystal-lang.org/), following the [
### Rosegold is a custom Minecraft botting client with the following goals:

1. **Efficiency and accessibility**: Rosegold aims to make botting accessible to all Civ users by providing a clean and easy-to-understand DSL for creating bots, while also ensuring that the client remains efficient.
2. **Headless with a headful feel**: Although Rosegold is a headless client, it seeks to address the limitations of current bots by providing a proxy that allows a standard vanilla Minecraft client to connect, spectate, and control. This approach offers the benefits of headless clients while maintaining a headful user experience.
2. **Headless with a headful feel (coming soon)**: Although Rosegold is a headless client, it seeks to address the limitations of current bots by providing a proxy that allows a standard vanilla Minecraft client to connect, spectate, and control. This approach offers the benefits of headless clients while maintaining a headful user experience.
3. **Compliance with server-specific botting rules**: Rosegold is designed for use on servers with specific botting rules, such as CivMC, which restrict bots from seeing or hearing. The client makes it challenging to create bots that violate these rules, ensuring a fair gameplay experience.
4. **Portable and easy-to-distribute**: Leveraging Crystal's ability to compile into portable binaries, Rosegold aims to simplify the distribution process for developers, making it easier to set up and manage bots for their nations.


## Use as a standalone client

1. [Install Crystal](https://crystal-lang.org/install/)
1. [Install the Shards dependency manager](https://github.com/crystal-lang/shards#install)
1. Download the code: `git clone [email protected]:grepsedawk/rosegold.cr.git`
1. Install the dependencies: `shards install`
1. Build the executable: `crystal build src/rosegold.cr`
1. Launch the client: `./rosegold`
1. Follow the instructions to log into your Minecraft account

## Use as a library

1. Add the dependency to your `shard.yml`:
Expand All @@ -28,13 +18,27 @@ Minecraft client written in [Crystal](http://crystal-lang.org/), following the [
dependencies:
rosegold:
github: grepsedawk/rosegold.cr
version: ~> 0.1
```
2. Run `shards install`
3. Import the module:
3. Start with a basic example:

```crystal
require "rosegold"
bot = Rosegold::Bot.join_game("play.civmc.net")
sleep 3
while bot.connected?
bot.eat!
bot.yaw = -90
bot.pitch = -10
bot.inventory.pick! "diamond_sword"
bot.attack
bot.wait_ticks 20
puts bot.feet
puts "Tool durability: #{bot.main_hand.durability} / #{bot.main_hand.max_durability}"
end
```

## Contributing
Expand Down

0 comments on commit 76b2253

Please sign in to comment.