A Carpet mod (fabric-carpet) extension, a collection of carpet mod style useful tools and interesting features
Use with carpet mod in the same Minecraft version. Use newer carpet mod versions whenever possible
- blockEventPacketRange
- structureBlockLimit
- xpTrackingDistance
- tntDupingFix
- fakePlayerNamePrefix
- fakePlayerNameSuffix
- renewableDragonEgg
- dispensersFireDragonBreath
- renewableDragonHead
- HUDLoggerUpdateInterval
- hopperCountersUnlimitedSpeed
- renewableElytra
- sandDupingFix
- railDupingFix
- commandRaid
- keepMobInLazyChunks
- dispenserNoItemCost
- opPlayerNoCheat
- redstoneDustRandomUpdateOrder
- instantCommandBlock
- lightUpdates
- microTiming
- microTimingTarget
- antiSpamDisabled
- blockPlacementIgnoreEntity
- chunkTickSpeed
- tileTickLimit
- poiUpdates
- tntFuseDuration
- entityMomentumLoss
- repeaterHalfDelay
- commandLifeTime
- optimizedFastEntityMovement
- optimizedTNTHighPriority
- optimizedHardHitBoxEntityCollision
- creativeOpenShulkerBoxForcely
- totallyNoBlockUpdate
- tooledTNT
Set the range where player will receive a block event packet after a block event fires successfully
For piston the packet is used to render the piston movement animation. Decrease it to reduce client's lag
- Type:
double
- Default value:
64
- Suggested options:
0
,16
,64
,128
- Categories:
TIS
,OPTIMIZATION
Overwrite the size limit of structure block
Relative position might display wrongly on client side if it's larger than 32
- Type:
int
- Default value:
32
- Suggested options:
32
,64
,96
,127
- Categories:
TIS
,CREATIVE
Overwrite the tracking distance of xp orb
Change it to 0 to disable tracking
- Type:
double
- Default value:
8
- Suggested options:
0
,1
,8
,32
- Categories:
TIS
,CREATIVE
Disable TNT, carpet and part of rail dupers
Attachment block update based dupers will do nothing and redstone component update based dupers can no longer keep their duped block
Dupe bad dig good
- Type:
boolean
- Default value:
false
- Suggested options:
false
,true
- Categories:
TIS
,BUGFIX
,EXPERIMENTAL
Add a name prefix for fake players spawned with /player
command
Which can prevent summoning fake player with illegal names and make player list look nicer
Set it to #none
to stop adding a prefix
- Type:
String
- Default value:
#none
- Suggested options:
#none
,bot_
- Categories:
TIS
,CARPET_MOD
Add a name suffix for fake players spawned with /player
command
Set it to #none
to stop adding a suffix
- Type:
String
- Default value:
#none
- Suggested options:
#none
,_fake
- Categories:
TIS
,CARPET_MOD
Make dragon egg renewable
When a dragon egg is in dragon breath effect cloud it has a possibility to absorb the effect cloud and "summon" a new dragon egg
Use with rule dispensersFireDragonBreath for more ease
- Type:
boolean
- Default value:
false
- Suggested options:
false
,true
- Categories:
TIS
,FEATURE
Dispenser can fire dragon breath bottle to create a dragon breath effect cloud
- Type:
boolean
- Default value:
false
- Suggested options:
false
,true
- Categories:
TIS
,FEATURE
,DISPENSER
Ender dragon killed by charged creeper will drop dragon head
- Type:
boolean
- Default value:
false
- Suggested options:
false
,true
- Categories:
TIS
,FEATURE
Overwrite HUD loggers update interval (gametick)
- Type:
int
- Default value:
20
- Suggested options:
1
,5
,20
,100
- Categories:
TIS
,CARPET_MOD
Make hopper pointing towards wool has infinity speed to suck in or transfer items
Only works when hopperCounters option in Carpet Mod is on
- Type:
boolean
- Default value:
false
- Suggested options:
false
,true
- Categories:
TIS
,CREATIVE
,CARPET_MOD
Phathom killed by shulker will drops an elytra with given possibility
Set it to 0 to disable
- Type:
double
- Default value:
0
- Suggested options:
0
,0.2
,1
- Categories:
TIS
,FEATURE
Disable sand and other gravity block duping using end portal
Gravity block includes sand, anvil, dragon egg and so on
In sand dupers sand will only get teleported to the other dimension
- Type:
boolean
- Default value:
false
- Suggested options:
false
,true
- Categories:
TIS
,BUGFIX
Disable rail duping using old school pushing lit powered or activator rail method
- Type:
boolean
- Default value:
false
- Suggested options:
false
,true
- Categories:
TIS
,BUGFIX
Enables /raid
command for raid listing and tracking
- Type:
boolean
- Default value:
true
- Suggested options:
false
,true
- Categories:
TIS
,COMMAND
The mobs in lazy chunks will not despawn, like the behavior before 1.15
This option has no effect in versions before 1.15
- Type:
boolean
- Default value:
false
- Suggested options:
false
,true
- Categories:
TIS
,FEATURE
,EXPERIMENTAL
Dispensers and droppers execute without having the itemstack inside decreased
Either dropping and using items do not cost, but dropper transferring item still costs
- Type:
boolean
- Default value:
false
- Suggested options:
false
,true
- Categories:
TIS
,DISPENSER
,CREATIVE
Disable some command to prevent accidentally cheating
Affects command list: /gamemode
, /tp
, /teleport
, /give
, /setblock
, /summon
- Type:
boolean
- Default value:
false
- Suggested options:
false
,true
- Categories:
TIS
,SURVIVAL
Randomize the order for redstone dust to emit block updates
It's useful to test if your contraption is locational or not
- Type:
boolean
- Default value:
false
- Suggested options:
false
,true
- Categories:
TIS
,CREATIVE
Make command blocks on redstone ores execute command instantly instead of scheduling a 1gt delay TileTick event for execution
Only affects normal command blocks
- Type:
boolean
- Default value:
false
- Suggested options:
false
,true
- Categories:
TIS
,CREATIVE
Pause or disable light updates
If set to suppressed, no light update can be executed
If set to off, no light update can be scheduled or executed
[WARNING] If set to suppressed or off, new chunks cannot be loaded. Then if the server tries to load chunk for player movement or whatever reason the server will be stuck forever
- Type:
enum
- Default value:
on
- Suggested options:
on
,suppressed
,off
- Categories:
TIS
,CREATIVE
,EXPERIMENTAL
Enable the function of MicroTiming logger
Display redstone components actions, block updates and stacktrace with a wool block
Use /log microTiming
to start logging
Might impact the server performance when it's on
EndRods will detect block updates and redstone components will show their actions
Block Type | How to log |
---|---|
Observer, Piston, EndRod | pointing towards wool |
Repeater, Comparator, RedstoneTorch, RedstoneDust, Rail, Button, Lever, PressurePlate, TripwireHook | placed on wool |
Beside that, a universal block actions logging method is using EndRod on wool block to point on the block you want to log
Check rule microTimingTarget to see how to switch logging method
- Type:
boolean
- Default value:
false
- Suggested options:
false
,true
- Categories:
TIS
,CREATIVE
Modify the way to specify events to be logged in microTiming logger
labelled
: Logs events labelled with wool
in_range
: Logs events within 32m of any player
all
: Logs every event. Use with caution
- Type:
enum
- Default value:
labelled
- Suggested options:
labelled
,in_range
,all
- Categories:
TIS
,CREATIVE
Disable spamming checks on players, including: chat message cooldown, creative item drop cooldown
- Type:
boolean
- Default value:
false
- Suggested options:
false
,true
- Categories:
TIS
,CREATIVE
,SURVIVAL
Disable entity collision check before block placement, aka you can place blocks inside entities
Works with creative mode players only
- Type:
boolean
- Default value:
false
- Suggested options:
false
,true
- Categories:
TIS
,CREATIVE
Modify how often the chunk tick occurs per chunk per game tick
The default value is 1
. Set it to 0
to disables chunk ticks
Affected game phases:
- thunder
- ice and snow
- randomtick
With a value of n
, in every chunk every game tick, climate things will tick n
times, and randomtick will tick n
* randomTickSpeed
times per chunk section
- Type:
int
- Default value:
1
- Suggested options:
0
,1
,10
,100
,1000
- Categories:
TIS
,CREATIVE
Modify the limit of executed tile tick events per game tick
- Type:
int
- Default value:
65536
- Suggested options:
1024
,65536
,2147483647
- Categories:
TIS
,CREATIVE
Whether block changes will cause POI to updates or not
Set it to false
to disable POI updates
- Type:
boolean
- Default value:
true
- Suggested options:
false
,true
- Categories:
TIS
,CREATIVE
Overwrite the default fuse duration of TNT
This might also affects the fuse duration of TNT ignited in explosion
- Type:
int
- Default value:
80
- Suggested options:
0
,80
,32767
- Categories:
TIS
,CREATIVE
Set it to false
to disable entity axis momentum cancellation if it's above 10m/gt when being loaded from disk
- Type:
boolean
- Default value:
true
- Suggested options:
false
,true
- Categories:
TIS
,EXPERIMENTAL
Halve the delay of redstone repeaters upon a redstone ore
The delay will change from 2, 4, 6 or 8 game tick instead of 1, 2, 3 or 4 game tick
- Type:
boolean
- Default value:
true
- Suggested options:
false
,true
- Categories:
TIS
,CREATIVE
Enables /lifetime
command to track entity lifetime and so on
Useful for mob farm debugging etc.
- Type:
boolean
- Default value:
true
- Suggested options:
false
,true
- Categories:
TIS
,COMMAND
Optimize fast entity movement by only checking block collisions on current moving axis
Inspired by the fastMovingEntityOptimization
rule in carpetmod112
Use with rule optimizedTNT
to greatly improve performance in cannons
- Type:
boolean
- Default value:
false
- Suggested options:
false
,true
- Categories:
TIS
,OPTIMIZATION
,EXPERIMENTAL
Use a Mixin injection with higher priority for carpet rule optimizedTNT
So the rule optimizedTNT
can overwrite lithium's explosion optimization
Of course rule optimizedTNT needs to be on for it to work
- Type:
boolean
- Default value:
false
- Suggested options:
false
,true
- Categories:
TIS
,OPTIMIZATION
,EXPERIMENTAL
Optimize entity colliding with entities with hard hit box
It uses an extra separate list to store entities, that have a hard hit box including boat and shulker, in a chunk
It reduces quite a lot of unnecessary iterating when an entity is moving and trying to search entities with hard hit box on the way, since the world is always not filled with boats and shulkers
Enable it before loading the chunk to make it work. ~20% performance boost in portal mob farms
Might not work with other mods that add new entities
- Type:
boolean
- Default value:
true
- Suggested options:
false
,true
- Categories:
TIS
,OPTIMIZATION
,EXPERIMENTAL
Allow creative players to open a shulker block even if the shulker box is blocked
- Type:
boolean
- Default value:
false
- Suggested options:
false
,true
- Categories:
TIS
,CREATIVE
Disable all block updates and state updates
- Type:
boolean
- Default value:
true
- Suggested options:
false
,true
- Categories:
TIS
,CREATIVE
Tools on the player's main hand is applied to item dropping during the explosion caused by the player
So you can ignite TNT to harvest blocks that require specific tool or enchantment as long as you are holding the right tool
For example, you can harvest ice with silk touch pickaxe, or harvest grass with shears
It also works for any other living entities beside player
Technically this rule applies the main hand item of the causing entity onto the loot table builder during the explosion
- Type:
boolean
- Default value:
false
- Suggested options:
false
,true
- Categories:
TIS
,FEATURE
/log ticket <types>
Info when a ticket is created or removed
Use csv format, like portal,dragon
for logging multiple types of ticket
Available option separators: ,
, .
and
(.
is the only choice in 1.14.4 version)
Warning: Logging unknown
ticket may make you get spammed
Attributes:
- Default option:
portal
- Suggested options:
portal,dragon
,start
,dragon
,player
,forced
,light
,portal
,post_teleport
,unknown
/log memory
Display current consumed and total memory of the server in HUD
Attributes:
- Default option: N/A
- Suggested options: N/A
/log item <events>
Info when something happens to an item entity, for example item despawned after 5min
Available events:
create
: An item entity is created in the world for any kinds of reason. Stack trace is included in the messagedie
: An item entity dieddespawn
: An item entity despawned
Use csv format, like despawn,die
for logging multiple events
Available option separators: ,
, .
and
(.
is the only choice in 1.14.4 version)
Attributes:
- Default option:
despawn
- Suggested options:
despawn
,die
,despawn,die
/log xporb <events>
Basically the same as item logger but logs experience orb entities
/log raid
Info when these raid related events happen:
- A raid has been created
- A raid has been invalidated
- The bad omen level of a raid has been increased
- The center Position of a raid has been moved
Attributes:
- Default option: N/A
- Suggested options: N/A
/log microTiming <type>
Log micro timings of redstone components. The ticket of the chunk the component is in needs to be at least lazy-processing (ticket level 32)
Check rule microTiming for detail. Remember to use /carpet microTiming true
to enable logger functionality
Available options:
all
: Default value, log all eventsmerged
: Log all events and merged continuous same eventsunique
: Log the first unique event in every gametick
Attributes:
- Default option:
merged
- Suggested options:
all
,merged
,unique
/log damage <target>
Info when a living entity gets damage and display how the damage gets calculated
Available logging targets:
all
: Log damage from all living entitiesplayers
: Log damage with player participationme
: Log damage related to yourself
Attributes:
- Default option:
all
- Suggested options:
all
,players
,me
/log commandBlock <option>
Info when a command block or command block minecart executes command
It's useful to find out where the annoying hidden running command block is
With default throttled
option every command block will log at the highest frequency once every 3 seconds
Attributes:
- Default option:
throttled
- Suggested options:
throttled
,all
/raid list [<full>]
List information of all current raids
/raid tracking [<start|stop|restart|realtime>]
Start a raid tracking to gather statistics from ongoing raids
/info world ticking_order
Show the ticking order of current dimensions in the game
A tracker to track lifetime and spawn / removal reasons from all newly spawned and dead entities
This tracker is mostly used to debug mobfarms. It aims to track the process from mob starting affecting the mobcap to mob being removed from the mobcap. The spawning tracking part of it doesn't cover every kind of mob spawning reasons
Other than being removed from the world, if a mob becomes persistent for the first time like nametagged or item pickup, it will be marked as removal too. If a mob doesn't count towards the mobcap when it spawns, it will not be tracked
This tracker also tracks lifetime of items and xp orbs from mob and block drops as an additional functionality. Note that it doesn't track all item / xp orb spawning, so you'd better have a test before actually using it
Adding a realtime
suffix to the command will turn the rate result from in-game time based to realtime based
/raid tracking [<start|stop|restart>]
Control the lifetime tracker
Tracked entity types:
- All kinds of mob (MobEntity)
- Item Entity
- Experience Orb Entity
Tracked entity spawning reasons
- Natural spawning
- Portal pigman spawning
- Trans-dimension from portal
- Spawned by item (spawn eggs etc.)
- Slime division (for slime and magma cube)
- Zombie Reinforce
/summon
command- Mob drop (item and xp orb only)
- Block drop (item only)
Note that only entities that have been tracked spawning will be counted to the statistic
Tracked entity removal reasons
- Despawn, including immediately despawn, random despawn, difficulty despawn and timeout despawn
- Damaged to death
- Becomes persistent. Note that the entity is still not removed from the world
- Rides on a vehicle (1.16+). Note that the entity is still not removed from the world
- Trans-dimension through portal
- Entity merged (item and xp orb only)
- Picked up by player (item and xp orb only)
- Collected up by hopper or hopper minecart (item only)
- Other (anything else not in the list)
The definition of lifetime is: The amount of spawning stage passing between entity spawning and entity removal, in other words, how many gameticks does the entity counts towards mobcap. Technically the injection point for the passing spawning stage counter increment is right before the world recalculating the mobcap (at the beginning of ServerChunkManager#tickChunks
for 1.16.5+)
Statistics are sorted by the proportion of the amount
/lifetime <entity_type> [<life_time|removal|spawning>]
Show the detail statistic of specific entity type. You can specify which part of the statistic will be output
For example, /lifetime creeper
shows all statistic of creeper in detail, and /lifetime creeper removal
only shows removal statistic of creeper in detail
- Set the maximum length of fake player's name to 16 to prevent kicking out other players
- Set the maximum
/tick warp
duration toInteger.MAX_VALUE
for fabric-carpet before v1.4.18 (fabric-carpet v1.4.18 removed the/tick warp
limit) - Display the version of TIS Carpet Addition inside
/carpet
command - Make carpet rule
tntRandomRange
works without carpet ruleoptimizedTNT
or with lithium mod
Current main development branch: 1.15.2
Current maintaining branches:
- 1.14.4, for Minecraft 1.14.4
- 1.15.2, for Minecraft 1.15.2
- 1.16.5, for Minecraft 1.16.2 to 1.16.5
- 1.17, for Minecraft 1.17 snapshots
Current archived branches:
- 1.16, for Minecraft 1.16 to 1.16.1
For general new features, implement them in 1.15.2 branch first then merge it into other branches
Branches merge order:
- 1.15.2 -> 1.14.4
- 1.15.2 -> 1.16.5 -> 1.17
- 1.15.2 -> master (when release)
For version specific fixes / patches, implement them in relevant branches
master branches usually only receives doc updates directly
Try not to affect version compatibility unless it's necessary
English doc and Chinese doc are aligned line by line btw