Skip to content

Releases: TISUnion/TISCarpet113

TISCarpet build397

19 Mar 08:33
f63d22f
Compare
Choose a tag to compare

Rules

New general rules

  • Added rule deobfuscateCrashReportStackTrace
  • Added rule optimizedPushableEntityCollision
  • Added tiscm protocol rule tiscmNetworkProtocol
  • Added rule syncServerMsptMetricsData
  • Ported rule minecartTakePassengerMinVelocity
  • Ported rule clientSettingsLostOnRespawnFix
  • Ported rule voidRelatedAltitude
  • Ported rule creativeNetherWaterPlacement

New threadstone rules

  • Added rule asyncUpdatesAmplifier
  • Added rule asyncPacketUpdatesFix
  • Added rule commandSleep
  • Added rule commandCluster
  • Added rule commandPalette
  • Added rule commandThreadstone
  • Added rule debugNoteBlocks
  • Added rule endCityStructureStartFix
  • Added rule explosionPacketRange
  • Added rule threadstoneLogger

Changes

  • Ported update for rule creativeNoClip extra enhancements
  • Apply rule chunkCache in chunkExists too
  • Ported improved yeetUpdateSuppressionCrash

Loggers

  • Quoteable logging option

phantom

  • Ported phantom logger

microtiming

  • microtiming block state change events update
  • Added MicroTimingTarget MARKER_ONLY
  • Player phase stuffs improved
  • Only works in main thread

chunkdebug

  • More detailed tick phase info
  • Regexp as logging option for filtering in chunkdebug logger
  • Stacktrace display in chunkdebug logger
  • Add "Queued Unload" event

threadstone

  • Switchable with rule threadstoneLogger
  • Hooked beacon thread codes
  • Hooked PalettedContainer concurrent write crash code
  • Hooked chunk loader LRU hit / missed
  • Hooked async chunk load / async chunk generate

instantfall

  • Added instantfall logger

Commands

  • Added comand /info world weather for weather data and forecasting
  • Added command /info world container [detailed]
  • Ported command /removeentity
  • Added subcommand /chunkRegen add_area
  • Added command /sleep command
  • Added command /cluster command
  • Added command /palette command
  • Added command /threadsone command

Misc

  • Refactored carpet profiler
    • rewritten, optimized
    • minimum sampling duration in commands: 20gt -> 1gt
    • /tick entities supports topN arg
  • show commit hash in /carpet command

Mods

  • Updated mod Litematica Server Paster to v1.1.0

Fixes

  • Fixed lifetime tracker counter stops if gamerule doMobSpawning is false
  • Fixed /info entity crash when query slime
  • Fixed some persistant logger subscription issues
  • Fixed NPE when eula not accepted

Prefix WorldEdit Spark TISCM / Lithium optimizations Use cases
Full ✔️ ✔️ ✔️ CMP
Survival ✔️ ✔️ SMP
Optimization Only ✔️ Vanilla
Vanilla Too vanilla

TISCarpet Build298

25 Mar 11:01
2acb749
Compare
Choose a tag to compare

Changes

  • Rolled back worldedit mod to v7.2.6 to make sure it work properly

Prefix WorldEdit Spark TISCM / Lithium optimizations Use cases
Full ✔️ ✔️ ✔️ CMP
Survival ✔️ ✔️ SMP
Optimization Only ✔️ Vanilla
Vanilla Too vanilla

TISCarpet Build296

23 Mar 11:01
942726f
Compare
Choose a tag to compare

News

Mods

  • Added server-side RSMM v1.6 support (#25, #27), switchable with rule modRedstoneMultimeter
  • Added server-side Litematica Server Paster protocol, switchable with rule modLitematicaServerPaster
  • Bundle Lazy DFU logic (f032297) as TISCM optimization
  • Updated mod WorldEdit to v7.2.10

Carpet TIS Addition backport

  • Added rule lifeTimeTrackerConsidersMobcap
  • Added rule cauldronBlockItemInteractFix
  • Added rule entityPlacementIgnoreCollision
  • Added rule entityTrackerDistance
  • Added rule entityTrackerInterval
  • Added rule preciseEntityPlacement
  • Added rule snowMeltMinLightLevel
  • Added rule witherSpawnedSoundDisabled
  • Added rule entityTrackerDistance
  • Fixed data of historical /tick warp status is not completely frozen

Lifetime tracker

  • Added SUMMON, BREEDING, DISPENSED spawning reason
  • Reduced redundant style entry in Messenger#c
    • so lifetime tracker result can be colorful again

Changes

  • Make sure savestate logger logs on server thread
  • Showing more precision with hover text in spawn reporter type header
  • Sorted result lines for hopper counter, larger rate goes first

Fixes

  • Fixed lithium shapes.optimized_matching issue
  • Fixed lithium shapes.specialized_shapes issue

Prefix WorldEdit Spark TISCM / Lithium optimizations Use cases
Full ✔️ ✔️ ✔️ CMP
Survival ✔️ ✔️ SMP
Optimization Only ✔️ Vanilla
Vanilla Too vanilla

TISCarpet Build282

10 Dec 12:07
7450e80
Compare
Choose a tag to compare

News

  • Added option all for autosave logger to see the autosave time cost etc.
  • Added onLeftClickAir support for worldedit, much better /tool farwand
  • Added rule failSoftBlockStateParsing
  • Added rule tntIgnoreRedstoneSignal
  • Added blockPlacedCount scoreboard criteria

Optimizations

  • Added optimization CACHE_BLOCK_STATE_LIGHT_VALUES
  • Added lithium optimization entity.data_tracker.no_locks
  • Optimized performance during autosave
    • Added lithium optimization chunk.palette
    • Added lithium optimization chunk.serialization
    • Added optimization MULTI_THREAD_CHUNK_SAVING
    • Added optimization MERGED_SESSION_LOCK_CHECK
  • Replaced some costly String.format calls

Fixes

  • Fixed LOG4J2-3201 security issue

Prefix WorldEdit Spark TISCM / Lithium optimizations Use cases
Full ✔️ ✔️ ✔️ CMP
Survival ✔️ ✔️ SMP
Optimization Only ✔️ Vanilla
Vanilla Too vanilla

TISCarpet Build270

07 Nov 09:34
71379de
Compare
Choose a tag to compare

News

  • Ported microtiming marker support, without scarpet shape tho
  • Added /chunkregen command with rule commandChunkRegen to regenerating chunk
  • Added savestate logger. Logs when saving a chunk with content size larger than 50% of the chunk size limit (~1MB)
  • Added mod spark
    • Mod version: v1.6.2. A custom fork is used for stacktrace deobfuscating
    • Client-side spark funtionality is not included (/sparkc commands), stop lazy
    • Added rule modSpark for command access control
  • Uses mcp mapping from spark-mapping to deobfuscate stacktraces
    • Thanks carpetmod112 for the getMethodDesc stuffs
  • Added /raycount command, and ray count / probability infos added to /info command (#24)
    • Added rule commandRaycount
  • Updated /refresh command, added /refresh chunk sub command

Changes

  • Updated worldedit to 7.2.6 release version
  • Renamed rule worldEdit to modWorldEdit
  • Now distrubution only contains necessary classes which current activated mods require

Fixes

  • Fixed worldedit craftscripts are not working
  • Fixed block changes not being sync to client on loaded chunk edges using worldedit (hopefully fixed)

Prefix WorldEdit Spark TISCM / Lithium optimizations Use cases
Full ✔️ ✔️ ✔️ CMP
Survival ✔️ ✔️ SMP
Optimization Only ✔️ Vanilla
Vanilla Too vanilla

TISCarpet Build263

02 Aug 08:59
6fc7d2c
Compare
Choose a tag to compare

News

  • Added lithium optimization lithium shapes.optimized_matching
  • Added /refresh command and rule commandRefresh
    • use /refresh inventory to refresh your player inventory
  • Added /village command and rule commandVillage
    • a simple village debugger

Carpet TIS Addition backport

  • Updated lifetime tracker to TIS addon v1.20.0
  • Added rule chunkPacketThreshold
  • Added rule hopperNoItemCost
  • Added rule fluidDestructionDisabled
  • Added rule enchantCommandNoRestriction
  • Added rule creativeOpenContainerForcibly (renamed from creativeOpenShulkerBoxForcibly)
  • Added tick warp logger
  • Added lifetime logger

World Edit

  • Added world edit
    • Version 7.2.6-SNAPSHOT (2021/8/2)
  • Added rule worldedit as an in-game switch of worldedit's functionality

Changes

  • Rule totallyNoBlockUpdate now won't suppress client block synchronizing
  • Ported ctrlQCraftingFix update from carpetmod12 and fabric carpet for better user experience

Fixes

  • Updated some lithium things from upstream
  • Fixed carpet fake player not responding to knockback from player melee attack
  • Fixed command related rule value change might not notify player about the command tree change

Prefix Description
Full Full features
Survival World Edit is disabled
Vanilla World Edit and all hardcoded optimizations are disabled

TISCarpet Build255

11 Mar 04:03
d49c88b
Compare
Choose a tag to compare

News

  • Added rule drownedNavigatorMemoryLeakFix
  • Added rule hardcodeTNTangle
  • Added rule creativeOpenShulkerBoxForcibly
  • Added optimization TISCM cache TileEntity Serialization

Changes

  • Now op is required for illegal /player <someone> mount command
  • You cannot steal bedrock breaking stat in bedrock breakers now
  • Updated lifetime tracker to TIS addon v1.12.1
  • Implemented fabric carpet 1.4.25+ Protocol for rule structureBlockLimit
  • Make carpet profiler more precise
    • Added "Tile Tick", "Chunk Tick", "Block Events", "Player Chunk Map" phases

Fixes

  • Updated LithiumServerTickScheduler to lithium-0.6.3 to fix some potential notvanilla behavior
  • Fix block placement notvanilla in EntityPlayerActionPack, e.g. u can't easily place a bottom slab

TISCarpet Build238

21 Dec 02:26
e492c9b
Compare
Choose a tag to compare

New

  • Added rule tileTickLimit
  • Added rule chunkTickSpeed
  • Added rule repeaterHalfDelay
  • Added rule optimizedHardHitBoxEntityCollision
  • Added rule lagFreeSpawning
  • Added rule accurateBlockPlacement
  • Added rule yeetUpdateSuppressionCrash
  • Added rule optimizedFastEntityMovement
  • Added LifeTime Tracker
  • Added command block logger
  • Added lithium block.moving_block_shapes
  • Added lithium entity.data_tracker.use_arrays
  • Added lithium shapes.specialized_shapes
  • Added /profile command like fabric-carpet

Changes

  • Yeeted hashing stack.getTag() to reduce overhead in rule optimizedInventories InventoryOptimizer
  • Renamed rule explosionRandomSizeRatio to explosionRandomRatio and set its logic to be the same as fabric-carpet
  • Tweaked creativeNoClip block placement to fabric-carpet style: only ignores self entity's collision box
  • Neater and more like vanilla cacheExplosions
  • Code level configurable switches for hardcoded optimizations (from lithium or TISCM)

Fixes

  • Fixed in-proper block state placement with movableTileEntities
  • Lithium fix: use the same tiletick limit 65536 from vanilla instead of 65565 in LithiumServerTickScheduler
  • Fixed potential NPE in SuperCacheHandler for rule portalSuperCache
  • Fixed no suggestion for RuleCategory.COMMAND
  • Fixed lithium shapes.shape_merging notvanilla sometimes

TISCarpet Build198

03 Nov 14:28
3e9ceac
Compare
Choose a tag to compare

New

  • Added rule instantCommandBlock
  • fabric-carpet protocol support
  • Added rule creativeNoClip
  • Added rule smoothClientAnimations

Changes

  • Rename microTick to microTiming and upgrade it to the same as Carpet TIS Addition 1.4.0
  • Rule adjustments for fabric-carpet compatibility
    • portalCreativeDelay: change to int value
    • COMMAND category: change to string value

Fixes

  • Fixed missing 1.13.2-carpet.json in create_installer_*.sh
  • Fixed crash when generating ocean monument
  • Fixed crash when entering the world in carpet client
  • Fixed TISCM visualize projectile logger snowballs being movable

TISCarpet Build180

03 Oct 04:04
bf7ee11
Compare
Choose a tag to compare

New

  • add AutoSaveLogHelper
  • add switch for visualize projectile logger
  • add restart option for spawn tracking
  • add HUDLoggerUpdateInterval option
  • add opPlayerNoCheat & hopperCountersUnlimitedSpeed option
  • add /info world ticking_order command
  • optimize and bring back MicroTickLogger

Changes

  • bedrock stats no longer involved spectator player
  • change autosave logger into a HUD logger

Optimizations

Lithium mod porting

Based on Lithium (basically the same as 0.5.6 release) and 2no2name's BlockEntityList

  • alloc.entity_tracker
  • alloc.enum_values
  • block.piston_shapes
  • cached_hashcode
  • math.fast_util
  • shapes.precompute_shape_arrays
  • shapes.shape_merging
  • tag
  • world.block_entity_ticking
  • world.explosions
  • world.tick_scheduler

Custom Optimizations

  • Cache EnumFacing.values() like Lithium alloc.enum_values but in everywhere
  • Cache BoundingBoxList creation in TileEntityHopper and TileEntityPiston
  • Pre-allocate 256 size in hashsets/hashmaps to avoid constantly rehash when the amount of TileEntity is small
  • Permanently store item burn times in TileEntityFurnace to avoid costly map generating each time