
Piston Pro Plus
A Minecraft 1.20.1 Fabric mod that dramatically enhances piston functionality with customizable push limits, command block support, and the ability to push nearly any block through configurable commands and settings.
- Загрузки
- 529
- Подписчики
- 2
- Обновлён
- 20 июля 2026 г.
- Лицензия
- GPL-3.0-or-later
Опубликован 4 февраля 2026 г.
PistonProPlus
Make Piston Great Again.
A server-side Fabric mod for Minecraft that enhances piston behavior with configurable push limits, advanced block pushing control, and NBT data preservation.
Features
- Configurable Push Limit -- Break the vanilla 12-block restriction, set any limit from 1 to 4096
- Infinite Push Mode -- Set the limit to a negative value to enable virtually unlimited pushing
- Type-Based Block Control -- Individually toggle whether command blocks and all other blocks can be pushed
- NBT Preservation -- Block entity data (e.g. command block commands) is retained through piston pushes
- Hot-Reload -- Change configuration on the fly with
/pistonproplus reload, no restart needed - Full i18n -- English and Chinese built-in; easy to extend
Commands
Push Limit
| Command | Permission | Description |
|---|---|---|
/pistonproplus pushlimit set <limit> |
OP (level 4) | Set piston push limit (1-4096). Use -1 for infinite mode. |
/pistonproplus pushlimit get |
None | Display the current push limit and mode. |
Type Limit
| Command | Permission | Description |
|---|---|---|
/pistonproplus typelimit commandblock [true/false] |
OP (level 4) | Toggle or query command block pushing. |
/pistonproplus typelimit all [true/false] |
OP (level 4) | Toggle or query all-blocks pushing (except MOVING_PISTON and command blocks). |
Omitting the boolean argument displays the current status (ON/OFF).
Utility
| Command | Permission | Description |
|---|---|---|
/pistonproplus help |
None | Show the help menu. |
/pistonproplus reload |
OP (level 2) | Hot-reload configuration from disk. |
Configuration
Settings are stored in config/pistonproplus.json and can be edited directly or via commands.
{
"maxPushLimit": 12,
"allowInfinitePush": false,
"allowPushCommandBlock": false,
"allowPushAllBlocks": false
}
| Key | Type | Default | Description |
|---|---|---|---|
maxPushLimit |
int | 12 | Maximum blocks a piston can push (1-4096) |
allowInfinitePush |
boolean | false | When true, push limit becomes 4096 |
allowPushCommandBlock |
boolean | false | Allow pistons to push command blocks (NBT preserved) |
allowPushAllBlocks |
boolean | false | Allow pistons to push nearly all blocks (except MOVING_PISTON) |
Warnings
- MOVING_PISTON (block 36) can never be pushed. This is a hard safety constraint.
- Command blocks may lose NBT data in edge cases; the mod preserves NBT through capture/restore, but complex setups should be tested.
- Pushing all blocks may cause unexpected behavior. Attached blocks (redstone dust, torches, etc.) on slime blocks can behave unexpectedly during large pushes.
- Very high push limits may cause server lag. Test incrementally before deploying on production servers.
License
This project is licensed under the GNU General Public License v3.0.
Links
This mod is not affiliated with or endorsed by Mojang Studios. Minecraft is a trademark of Mojang Studios.
Ченджлог
1.1.4Релиз1.20.2, 1.20.3, 1.20.4 · 14 июля 2026 г.
GitHub juzizhen/PistonProPlus Commit 22b3916
- Fixed an item spawn bug when using slime blocks with "push all blocks".
- Replace emojis with other characters to fix a bug where emojis were not displayed on some systems.
- Replace part of the text.
- Refactor the README.md file.
The new README.md file is as follows:
PistonProPlus
Make Piston Great Again.
A server-side Fabric mod for Minecraft that enhances piston behavior with configurable push limits, advanced block pushing control, and NBT data preservation.
Features
- Configurable Push Limit -- Break the vanilla 12-block restriction, set any limit from 1 to 4096
- Infinite Push Mode -- Set the limit to a negative value to enable virtually unlimited pushing
- Type-Based Block Control -- Individually toggle whether command blocks and all other blocks can be pushed
- NBT Preservation -- Block entity data (e.g. command block commands) is retained through piston pushes
- Hot-Reload -- Change configuration on the fly with
/pistonproplus reload, no restart needed - Full i18n -- English and Chinese built-in; easy to extend
Commands
Push Limit
| Command | Permission | Description |
|---|---|---|
/pistonproplus pushlimit set <limit> |
OP (level 4) | Set piston push limit (1-4096). Use -1 for infinite mode. |
/pistonproplus pushlimit get |
None | Display the current push limit and mode. |
Type Limit
| Command | Permission | Description |
|---|---|---|
/pistonproplus typelimit commandblock [true/false] |
OP (level 4) | Toggle or query command block pushing. |
/pistonproplus typelimit all [true/false] |
OP (level 4) | Toggle or query all-blocks pushing (except MOVING_PISTON and command blocks). |
Omitting the boolean argument displays the current status (ON/OFF).
Utility
| Command | Permission | Description |
|---|---|---|
/pistonproplus help |
None | Show the help menu. |
/pistonproplus reload |
OP (level 2) | Hot-reload configuration from disk. |
Configuration
Settings are stored in config/pistonproplus.json and can be edited directly or via commands.
{
"maxPushLimit": 12,
"allowInfinitePush": false,
"allowPushCommandBlock": false,
"allowPushAllBlocks": false
}
| Key | Type | Default | Description |
|---|---|---|---|
maxPushLimit |
int | 12 | Maximum blocks a piston can push (1-4096) |
allowInfinitePush |
boolean | false | When true, push limit becomes 4096 |
allowPushCommandBlock |
boolean | false | Allow pistons to push command blocks (NBT preserved) |
allowPushAllBlocks |
boolean | false | Allow pistons to push nearly all blocks (except MOVING_PISTON) |
Warnings
- MOVING_PISTON (block 36) can never be pushed. This is a hard safety constraint.
- Command blocks may lose NBT data in edge cases; the mod preserves NBT through capture/restore, but complex setups should be tested.
- Pushing all blocks may cause unexpected behavior. Attached blocks (redstone dust, torches, etc.) on slime blocks can behave unexpectedly during large pushes.
- Very high push limits may cause server lag. Test incrementally before deploying on production servers.
License
This project is licensed under the GNU General Public License v3.0.
Links
This mod is not affiliated with or endorsed by Mojang Studios. Minecraft is a trademark of Mojang Studios.
1.1.3Релиз1.21.2, 1.21.3, 1.21.4 · 3 июня 2026 г.
update to 1.20.5+
1.1.2Релиз1.20.2, 1.20.3, 1.20.4 · 1 июня 2026 г.
Fixed an issue where NBT tags were lost after pushing special blocks.
1.1.1Релиз1.20.4, 1.20.5, 1.20.6 · 5 февраля 2026 г.
The upper limit will be raised to 4096.
1.1.0Релиз1.20.4, 1.20.5, 1.20.6 · 4 февраля 2026 г.
PistonProPlus
This is a Minecraft 1.20.1 Fabric Mod
Make Piston Great Again !
✨ Features
PistonProPlus is a powerful mod that enhances piston functionality in Minecraft, allowing you to break through vanilla limitations and customize piston behavior to your needs.
🔧 Core Features
Customizable Push Limit
- Break the vanilla 12-block limit (up to 1024 blocks!)
- Set any value between 1 and 1024
- Default is 12 (same as vanilla)
Advanced Block Pushing Control
- Command Blocks: Enable/disable pushing command blocks
- All Blocks: Push almost any block (except 36 - MOVING_PISTON)
- Safety warnings for potentially destructive operations
Infinite Push Mode
- Enable virtually unlimited pushing capacity
- Perfect for creative builds and large-scale projects
Hot-Reload Configuration
- Change settings on-the-fly with
/pistonproplus reload - No server restart required
- Change settings on-the-fly with
Complete Command System
- Intuitive commands with permission levels
- Colored, formatted messages for better UX
- Comprehensive help system
Full Internationalization (i18n)
- English (en_us) and Chinese (zh_cn) built-in
- Easy to add more languages
- Automatic language detection
JSON Configuration
- Persistent settings stored in
config/pistonproplus.json - Easy manual editing if preferred
- Persistent settings stored in
📋 Commands
Help Command
/pistonproplus help
Displays the complete help menu with all available commands.
Push Limit Commands
/pistonproplus push set <1-1024>
Set the maximum number of blocks pistons can push.
Requires OP permission (level 4)
/pistonproplus push get
Get the current piston push limit.
No permission required
/pistonproplus push infinite <true/false>
Enable/disable infinite push mode.
Requires OP permission (level 4)
Block Control Commands
/pistonproplus block commandblock <true/false>
Enable/disable command block pushing.
Requires OP permission (level 4)
⚠️ Warning: Pushed command blocks may lose NBT tags!
/pistonproplus block all <true/false>
Enable/disable pushing of all blocks (except block 36 - MOVING_PISTON and command blocks unless separately enabled).
Requires OP permission (level 4)
⚠️ Warning: Pushing all blocks may cause unexpected behavior!
Configuration Command
/pistonproplus reload
Hot-reload the configuration from file.
Requires OP permission (level 2)
⚙️ Configuration
Configuration File
Located at: config/pistonproplus.json
Default Configuration
{
"maxPushLimit": 12,
"enableMessages": true,
"allowInfinitePush": false,
"allowPushCommandBlock": false,
"allowPushAllBlocks": false
}
Configuration Options
- maxPushLimit: Maximum blocks pistons can push (1-1024)
- enableMessages: Whether to show success/failure messages
- allowInfinitePush: Enable infinite push mode
- allowPushCommandBlock: Allow pistons to push command blocks
- allowPushAllBlocks: Allow pistons to push all blocks (except 36 and command blocks unless enabled separately)
🌍 Language Support
Built-in Languages
- English (en_us) - Complete translation
- Chinese (zh_cn) - 完整中文翻译
Adding New Languages
- Create a new JSON file in
assets/pistonproplus/lang/ - Name it with the locale code (e.g.,
fr_fr.json,es_es.json) - Translate all keys from
en_us.json - The mod will automatically detect and use the language based on client settings
📦 Installation
For Players
- Install Fabric Loader for Minecraft 1.20.1
- Install Fabric API
- Download the latest PistonProPlus jar from Releases
- Place it in your
modsfolder - Launch Minecraft!
For Server Admins
- Install Fabric Loader on your server
- Install Fabric API
- Place PistonProPlus jar in the server's
modsfolder - Configure permissions as needed:
- Level 2:
/pistonproplus reload - Level 4: All other configuration commands
- Level 2:
🛠️ Building from Source
Prerequisites
- Java 17 or higher
- Gradle
Build Steps
# Clone the repository
git clone https://github.com/yourname/PistonProPlus.git
cd PistonProPlus
# Build the mod
./gradlew build
# The built jar will be in build/libs/
🚀 Use Cases
Creative Building
- Move large structures easily
- Create complex piston machines without space constraints
- Experiment with command block contraptions
Technical Minecraft
- Build more efficient flying machines
- Create advanced redstone contraptions
- Push previously immovable blocks for technical builds
Adventure Maps
- Create custom mechanics with movable command blocks
- Design puzzles with pushable barriers
- Implement dynamic map elements
⚠️ Warnings & Limitations
Important Notes
- MOVING_PISTON (block 36) can NEVER be pushed - This is a vanilla safety mechanism
- Command blocks may lose NBT data when pushed - Back up important command blocks
- Pushing all blocks may cause instability - Use with caution in survival worlds
- Very high push limits may cause lag - Test performance on your server
Best Practices
- Start with small limits and increase gradually
- Test in creative mode before survival
- Backup worlds before enabling experimental features
- Monitor server performance with high push limits
🤝 Contributing
Contributions are welcome! Here's how you can help:
- Report Bugs - Open an issue with detailed information
- Suggest Features - Share your ideas for improvements
- Submit Translations - Add support for more languages
- Code Contributions - Fork and submit pull requests
📄 License
This project is licensed under the GPLv3 License - see the LICENSE file for details.
🙏 Credits
- Mojang Studios - For creating Minecraft
- Fabric Team - For the amazing modding framework
- All Contributors - For making this mod better
🔗 Links
Note: This mod is not affiliated with or endorsed by Mojang Studios. Minecraft is a trademark of Mojang Studios.
Комментарии
Загружаем…