Skip to content

Commit

Permalink
README
Browse files Browse the repository at this point in the history
  • Loading branch information
TheCymaera committed Dec 22, 2024
1 parent 9239e7e commit 1af9144
Show file tree
Hide file tree
Showing 3 changed files with 76 additions and 10 deletions.
82 changes: 74 additions & 8 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,12 @@
This plugin was developed for a video series about procedural animations.
1. Procedural Walking Animation: https://youtu.be/Hc9x1e85L0w
2. Procedural Galloping Animation: https://youtu.be/r70xJytj0sw
3.


This plugin is very experimental and untested with multiplayer. Use at your own risk.



## Installation
1. Download the JAR from the [releases page](https://github.com/TheCymaera/minecraft-spider/releases/).
Expand All @@ -22,20 +28,80 @@ This plugin was developed for a video series about procedural animations.

## Commands
Autocomplete will show available options.

Get control items:
```
/items
```
# Set option (gait, gallop_gait, debug_renderer)
/options gait <option:string> <value:double>

# Reset options
/options gait reset
Load preset:
```
/preset <name:string> <segment_length:double?> <segment_count:int?>
/preset hexbot 1 4
```

# Get option
/options gait <option:string>
Load torso or leg model
```
/torso_model <name:string>
/leg_model <name:string>
```

Modify or get options
```
/options gait maxSpeed 3
/options gait maxSpeed
```

# Change body plan (quadruped, hexapod, octopod)
/body_plan <plan:string> <scale:double?> <segment_length:double?> <segment_count:int?>
Scale the spider
```
/scale 2
```

Play splay animation (Spider must be spawned)
```
/splay
```

Change eye or blinking lights palette
```
/animated_palette eye cyan_blinking_lights
/animated_palette blinking_lights red_blinking_lights
# Custom palette (block_id, block_brightness, sky_brightness)+
/animated_palette eye custom minecraft:stone 15 15 minecraft:redstone_block 15 15
```

Fine-grained model modification
```
/modify_model <...selectors> <...operations>
# Selectors can be either a block id or a tag
# e.g. Select all cloaks in the torso
/modify_model cloak torso ...
# e.g. Select diamond blocks and netherite blocks
/modify_model minecraft:diamond_block or minecraft:netherite_block ...
# Set block
/modify_model cloak set_block minecraft:gray_concrete
# Set brightness
/modify_model cloak brightness 0 7
# Copy block from the world
/modify_model cloak copy_block ~ ~1 ~
```

Stealth Variant Example:
```
/torso_model stealth
/scale 1.3
/modify_model cloak set_block minecraft:gray_concrete
/modify_model cloak or minecraft:netherite_block or minecraft:cauldron or minecraft:anvil or minecraft:gray_shulker_box brightness 0 7
# You may need to pick a different brightness depending on your shaders
```
## Development
1. Clone or download the repo.
2. Run Maven `package` to build the plugin. The resulting JAR will be in the `target` folder.
Expand Down
2 changes: 1 addition & 1 deletion pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@

<groupId>com.heledron</groupId>
<artifactId>SpiderAnimation</artifactId>
<version>2.1-SNAPSHOT</version>
<version>3.0-SNAPSHOT</version>
<packaging>jar</packaging>

<name>SpiderAnimation</name>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -408,7 +408,7 @@ fun registerCommands(plugin: SpiderAnimationPlugin) {
setExecutor { sender, _, _, args ->
val name = args.getOrNull(0) ?: return@setExecutor false

val segmentCount = args.getOrNull(1)?.toIntOrNull() ?: 4
val segmentCount = args.getOrNull(1)?.toIntOrNull() ?: if (name.contains("bot")) 4 else 3
val segmentLength = args.getOrNull(2)?.toDoubleOrNull() ?: 1.0

val createPreset = presets[name]
Expand Down

0 comments on commit 1af9144

Please sign in to comment.