Releases: gnembon/fabric-carpet
Carpet Mod 1.4.27 for Minecraft 1.16.5 and Minecraft 21w07a
What's new in carpet 1.4.27:
- supports 21w07a
- fixes with inompatibility of structure block rules with vanilla servers. This carpet may not be compatible with carpet servers 1.4.25 and 1.4.26 - in that case just update your carpet mod to the newest version and you should be gucci.
Carpet Mod 1.4.26 for Minecraft 1.16.5 and Minecraft 21w06a
What's new in carpet 1.4.26:
- supports 21w06a
scarpet changes:
- added
__on_start()
event to allow initialization in player scoped apps - loop functions on 'null's behave like looping on empty lists
- fix for operators not to use contexts that don't apply
- scarpet shapes should now render much better without shaders
- __on_close() now triggers when players are still online in SP, not after they are already gone.
Carpet Mod 1.4.25 for Minecraft 1.16.5 and Minecraft 21w05a/b
What's new in carpet 1.4.25:
- support for 21w05a/b
- added
structureBlockOutlineDistance
,structureBlockIgnored
andstructureBlockLimit
(blame @BeetMacol ) to improve functionality of structure blocks. - /log ... option is now made accessible again
scarpet changes
null
value now behaves more like a proper no value value, rather than string of'null'
in certain scenarios,null
has now zero length,-null
isnull
and cannot be sliced- better compatibility of rendered scarpet shapes with other mods that affects client rendering.
Carpet Mod 1.4.24 for Minecraft 1.16.5 and Minecraft 21w03a
What's new in Carpet 1.4.24
- support for 21w03a
Carpet Mod 1.4.23 for Minecraft 1.16.5 and Minecraft 20w51a
What's new in carpet 1.4.23:
- support for 1.16.5 (1.16.4 is still supported - its almost the same version, less 2 tiny changes) and 20w51a (1.17 snapshot)
- new
lightEngineMaxBatchSize
rule (blame @Andrews54757 ) - new github actions for publishing new releases. New carpet versions will be automatically deployed to Curseforge and built on git (blame @altrisi )
- scarpet Full.md documentation will only be updated when new release if published. Partial docs for each section will be updated on per commit basis. Full.md will always now reflect the current state of newest scarpet functions that are part of the latest release, not the current development version
scarpet changes
split
without delimiter splits stings and lists into lists of one elements / characters from the original list/string (blame @altrisi )- added
nbt_storage()
function to support tag storage that datapacks / native commands use (blame @BisUmTo ) - fixed some behaviours of
null
acting like a string of'null'
for certain operations, like~
operator orsplit
(blame @replaceitem )
Carpet Mod 1.4 for Minecraft 1.17+ / 1.16.4/5 / 1.15.2
tl;dr links:
download carpet 1.4.22 for 20w51a(1.17)
download carpet 1.4.22 for 1.16.4 and 1.16.5
Check below the changelog for other versions
What's new in carpet 1.4.22
- confirmed support for 1.16.5 (previous 1.16.4 versions should work on 1.16.5 anyways - pretty much nothing changed). Just use 1.16.4 version for 1.16.5 pre-1
- fix crashes when fiddling with villagers with
/track
overlays active (blame @magneticflux- ) - information about game freezing with
/tick freeze
is now properly disseminated to connected carpet clients on SMP servers, making their experience similar to singleplayer (blame @altrisi)
scarpet changes
- support for reading / writing json local files (blame @altrisi)
- player based events are now correctly triggered only once for targetted player, not for all online players that did not trigger that event
- fixed incorrect handling of upper bounds for
slice()
,slice()
can also accept now negative indices. - added
'game_data_version'
to system info - fixed behaviour of player entity variables when player respawns, and disappears and reappears.
player()
with no args in player apps always return the player associated with that player scope instance.- limited the ability of calling recursively of
game_tick
insidegame_tick
- callinggame_tick
from the world is a bad practice anyways, but wasn't causing issues on vanilla, however that causes crashes on lithium. callinggame_tick
from agame_tick
is a bad idea anways, but since it worked on vanilla, the bahaviour is kept with the warning on other modded setups (besides carpet). - added '__on_player_swings_hand(player, hand)` event
What's new in carpet 1.4.21
- support for 20w51a
- removed
onePlayerSleeping
in favour of new vanilla gamerule (1.17) - Flipped the default values of
scriptsAutoload
setting andstay_loaded
in app config - both are true by default. Since the addition of singleplayer app shared storage, all world scripts (located in world/scripts folder) will now load automatically like datapacks. Also all apps by default stay loaded, so adding an app is as simple as dropping them in the /scripts folder. - scarpet apps in shared singleplayer space (config/carpet/scripts) can be organized in subfolders. App names still need to be unique
- ability to change player's selected hotbar slot with
/player
command /overlay <shape> <radius> ... <selector>
can now accepts any entity selector. Shapes opacity and thiccness depends now on the number of shapes to draw per command- fixed behaviour of tnt with
optimizedTNT
to match current vanilla mechanics (blame @altrisi ) - fake players will now respond to server idling settings and will show better death messages
scarpet changes
system_info
can be used to query client brand and server version- app files in NBT format are now saved in a compressed way and
read_file
can read compressed nbt files as well (including saved structures) - added
list_files
to retrieve app file listings run()
now properly returns all command run information even if the owner of the command changes withexecute
entity_area
now accepts an entity as a starting box, defined as the bounding box of that entity- added absorbtion and XP api for player entities (blame @Ghoulboy78 )
- added
weather
API ( blame @Ghoulboy78 ) - added gamerule reader to
system_info
(blame @Ghoulboy78 ). Gamerules like carpet rules are read-only to discourage fiddling with them in scripts - added
item_list
anditem_tags
to support item tag system - entites can be selected using entity tags.
- added
server_starts
andserver_shuts_down
events - apps can define their own command permission level with
command_permission
in config - added
player_trades
to the events (blame @BisUmTo ) range
can now handle floating point chains, not just integers- formatted texts from
format()
can now be concatenated using+
operator (blame @altrisi ) - fixed
set
clearing block data in some situations.set
can now accept properties as a map. Check the docs for details
What's new in carpet 1.4.20
- support for 20w49a
- carpet extensions using their own settings managers will now be properly synced with connected carpet clients. blame @altrisi
- apps now can be loaded from one location in SP: ~/.minecraft/config/carpet/scripts, not just worlds scripts folders, blame @altrisi
- you can now use a default carpet config for your worlds in ~/.minecraft/config/carpet/default_carpet.conf , blame @altrisi
- several built-in commands now are enabled by default only for OP player, it includes spawn, tick, draw, player and track. All other commands that are only informative and should not affect the world are left enabled by default for all players
- disabled
fastRedstoneDust
in the settings, since this feature had no effect for quite some time. - fixed
/banip
failing with fake players on the server
scarpet changes
- rework on the event system. global events can now be handled by player scoped apps, and each player scoped app works independent from each other. Previously handling of the event was shared between all player instances of the same app, which is not the case anymore. Otherwise it should work as before, but please report issues with events if you find some.
- also, on the topic, added a bunch of optimizations to reduce memory and call stack profile - please report if weird sh..t is happening due to that. Should be fine...
inventory_*
functions can now access different inventories of the same entity via defining the access type. For instance players have default inventory, enderchest and equipment.- inventory API allows to access equipment inventory of all living entities
- support for more vanilla argument types for custom commands:
slot
andblockpredicate
- added
tag_matches()
to detect if one tag is contained in another tag - added support for teams via
team_list
,team_add
,team_remove
,team_leave
andteam_property
- blame @replaceitem - added
player_escapes_sleep
event, when player cancels sleep in bed using Esc key, not the cancel button. Weird, I know, but it was needed. block_state()
can now accept a block string, returning it default or defined state- fixed handling of invalid structures with invalid boxes. These only surface when using worlds modified with worldgen datapacks
plop()
with no arguments now returns full lists of possible features and structures to plop, including moded ones.- added
block_list()
andblock_tags()
to handle block tags queries biome()
with extra parameters now allow to query properties of biomes. With no parameters, returns a full list of available biomes in the world, including moded ones.- added
display_title()
to put the text right in your face. blame @altrisi - added
bossbar()
, blame @replaceitem
What's new in carpet 1.4.19
- support for 20w48a
- fixed command error when summoning invalid accounts on an online server
scarpet changes
- increase support for various other entity inventories
- added deprecation warnings when an app uses a feature that is deprecated. It should show one warning per feature per app
set
will return false properly when set_block fails- added
block_state
to replaceblock_properties
andproperty
(now deprecated)
What's new in carpet 1.4.18
- added
xpfix
for 20w46a, fixing xp orbs loosing all their value when applied to mending - MC-205918 overlay
uses now the new command system - options are now much more neatly organized- added spheres and boxes to
overlay
s. They can either be stationary or follow a player - carpet extensions can now handle client commands client side for their own command managers
- fixed fake player behaviour not to attack entities if continuous attach (block mining) is requested
scarpet changes
- support for custom app commands, as well as most vanilla command argument types. See docs for details
What's new in carpet 1.4.17
- support for 20w46a
- fixes some updates happening with fillUpdates false when removing certain blocks
- various fixes around behaviours of fake players.
scarpet changes
- fixed
plop
taking now any number of arguments, not strictly 4 - support for all vanilla argument types for custom commands WIP
- custom events and low level events API (read the docs
handle_event
,signal_event
), allowing to create own events and services type apps
What's new in carpet 1.4.16
- support for 20w45a
- Fixed fake players all sorts of portal issues (1.17+). Thanks Mojang
scarpet changes
- added
amethyst_geode
to plop (1.17). Ok, I didn't add it - it added itself. - added support for some built-in vanilla argument types in custom commands. Its experimental for now, but can be enabled by specifying
'legacy_command_type_support'
in__config()
What's new in carpet 1.4.15
- build for 1.16.4. Should work for 1.16.3 tho
- reduce profiler overhead when running
/tick entities
or/profile entities
- cactus works on all pillar blocks, including chains
- fixed interactions of fake players in client side vehicles (boats, horses) and when pushed by slime blocks
- fixed chainStone behaviour when 'stick_to_all' option is used.
scarpet changes
- scarpet apps now always load with UTF-8 encoding, so you can use UTF characters directly in the app code
- scarpet apps that use threading (tasks) will now use app specific thread po...
Carpet Mod 1.3 for Minecraft 1.16 snapshots and 1.15.2
tl;dr links:
download carpet 1.3.33 for 1.16 (1.16-rc1)
download carpet 1.3.33 for 1.15.2
To mark release of Minecraft 1.15, carpet now graduates to frozen
state - don't worry, its just a name. For older versions, scroll to the bottom of the page.
What's new in 1.3.33
(Tentative version of Carpet 1.4 for Minecraft 1.16)
- supports 1.16-rc1
- upon the unanimous agreement of all contributors, carpet has been licensed under MIT licence
- tweaks to rendering of
/overlay
app overlays - fixed crash when accessing custom 1.16 dimensions.
- temoved the assumption that there are only 3 dimensions for applicable features (1.16)
- auto-loading of apps happens now when worlds are loaded, meaning scripts can access worlds when auto-loading
- reorganized when carpet is loading - means extensions need to adjust their loading as well. Fixes compatibility with some mods doing hacky things with fabric framework (1.16)
scarpet changes
- allowed for much smaller transparencies for scarpet client-facing shapes
- allowed for
/\-+_/
characters in file names for app accessed files - improved performance in handling ops in NBT tags
- added more options to handle block properties and block data support for
set
- added
parse_nbt
andencode_nbt
as ways to convert scarpet values from and to nbt tags - added 'nbt' and 'nbt_merge' to entity
modify
API
What's new in 1.3.32
- supports 1.16-pre8 and 1.16-rc1
- fixed issues with game response and chunk loading when tick warping
scarpet changes
- added 'unix_time()
and
convert_date()` for date / time manipulations - added support for block position arguments and triples for
scan
,volume
,rect
anddiamond
What's new in 1.3.31
- supports 1.16-pre7
scarpet changes
- fix elevated permission requirements for fetching entity lists with descriptors.
What's new in 1.3.30
- supports 1.16-pre6
scarpet changes
- added hooks for
__on_player_chooses_recipe
and__on_player_switches_slot
events - added
recipe_data()
andcrafting_remaining_item()
- for convenient and easy crafting scripts - added optional player argument to
print
. when calledprint(player, msg)
it will only display this message to that player. - fixed
seed
loosing precision as long > double. Seed now returns a string.
What's new in 1.3.29
Mojang (pron. Modgang Studios
) just keeps on giving this week, right?
- supports 1.16-pre4 and 1.16-pre5
- added explosion logger - provides information about the final results of all explosions (X-green)
- fixes issues with /spawn tracking and /log|spawn mobcaps not reporting properly. (1.16)
What's new in 1.3.28 ..b
- fixed crash for servers on 1.16-pre3
What's new in 1.3.28
- supports 1.16-pre3
- fix client crash with antiCheatDisabled enabled
- added synchronisation vs. smoothness as preferences for path tracking in /camera app
- first appearance of chunk_display as a built-in app using scarpet client rendering features. WIP
- changed order of things when starting up, so extensions commands will always be loaded
- since
/reload
command now reloads commands and datapacks, it will also reload scarpet apps (1.16) - grinstones are now movable with movableBEs like in bedrock edition
scarpet changes
- added 'cylinder' shape to scarpet shapes
- ability of sending shapes via
draw_shape
in bulk to minimize network packets - duration of shapes can be set to 0 - this turns them off immediately
- added ability for shapes to snap to various combinations of coordinates, not only to all of them
- switched to 64bit FNV-1a algorithm for keying of shapes to minimize collisions
- optimized rendering of shapes that do not render all faces/lines
- shapes that 'follow' entities now move smoothly with high framerates, not just 20/s
- inventories for players can be specified as strings (player names) as well as 'enderchest_' to denote their enderchest content
- added hunger, saturation, exhaustion and add_exhaustion to (player) entity API
- added read_file, delete_file, and write_file as preferred functions to access external files. use of load_app_data and store_app_data on external files is now deprecated (still supported) and its use is limited to the system managed app tag.
- added the ability to handle textual files, apart from nbt files.
- added
mob_counts()
(1.16 +) to query mob cap information in scripts
What's new in 1.3.27
- supports 1.16-pre2
- fixed startup crash for servers from 1.16-pre1
- optimized server-client communications for custom scarpet shapes
What's new in 1.3.26
- supports 1.16-pre1
- On dedicated servers, carpet settings and server tick rate is now synchronised with clients that run carpet as well allowing for full carpet experience, like you were running a singleplayer game.
- added
zh_tw
translations and fixed bug caused in loading translations - updated built-in
overlay
app to use the new client integration improving greatly the visuals - fixed commands disappearing after /reload due to 20w22a changes
scarpet changes
- added
__on_player_connects
and__on_player_disconnects
events - added
view_distance()
as reported by the game - events now cannot be registered and handled in libraries and imports. each app has to define its callbacks directly in the app main file to handle those.
- added
draw_shape
allowing rendering of custom shapes to clients. Vanilla clients connected to carpet servers will receive replacement rendering based on dust particles. Drawn shapes can be static, or follow entities.
Example usage: render a personal sphere around villagers:
/script run
for(entity_selector('@e[type=villager]'),
draw_shape('sphere', 1000,
'center', l(0,2,0),
'radius', 3,
'follow', _,
'fill', 0x22dd2244,
'color', 0x22882244,
'width', 5
)
)
What's new in 1.3.25
for 1.16 (20w22a+) /s
and /c
commands for switching gamemodes are removed in favour of using now buit-in gamemode switcher (F3F4) and the fact that F3+N will switch you reliably from spectator to any gamemode you had before, so what \c \s
was doing.
If you were using gamemode switching as a server feature where users were not required to have OP permissions do do so. you can now use cam.sc
app available through the scarpet repo, that provides with the same as /c /s
did with the following benefits:
- you can easily change the command name by changing the app file name
- saves player's position, motion, angles, effects when switching to camera mode and restores them on landing
- saves player configs between saves, so even if server restarts you still should be transported back to where you need to be
- If player landing position is not available (not stored) places spectating players in a safe place finding a proper space to land
- adds timeout for the player so they cannot switch instantly, and this can be disabled in the app
- adds extra checks, like player not falling, not on fire, etc. which also can be disabled in the app if need be.
So for server management reasons, its a much better solution as a /c /s
toggles. For testing purposes in your testing worlds, you really should get acquainted with F3F4 and new F3N toggles
Other changes:
- supports 20w22a
- enabled translation support for extensions. Should add templates on how to do it to carpet-extra this week
- fixed timings with fake players breaking blocks in survival - should now match actual survival players
- fixed client side crash when changing client features that are not provided with proper values, like 'fals'
scarpet changes
- cleaner log when placing structures and features
What's new in 1.3.24
- supports 20w21a
- Added support for translation and added support for Chinese (thanks X-Green). If you want to add support for your language, check src/main/resources/assets/carpet/lang/en_us.json for an example on required strings to fully support your language. Translations now affect only /carpet command but more strings will be added in the future.
- added cylinders and cubes to
/draw
command (Ghoulboy78)
scarpet changes
- added
reload_chunk
to resend chunk data to the clients, and added option toset_biome
not to update chunk data with the clients - added
add_chunk_ticket
to temporarily load remote chunks. Only natural chunk tickets are supported at the moment - results of
poi
come out sorted by center distance as of now. - added
portal_cooldown
andportal_timer
to entity API query and modify - better handling of errors in docked section of threaded tasks to merge stack traces all the way to the top of the thread
- renamed 'vine' material to 'vegetation' and 'redstone_bits' to 'decoration'
What's new in 1.3.23
- supports 20w20b
- added client facing
creativeFlySpeed
andcreativeFlyDrag
. These settings are purely client side so it would work also on vanilla servers. Drag will impact the max speed, so you need to adjust your speed to match your drag settings. With drag set to 0.0, use speed of 11 to match vanilla top speed the closest. - added option
/spawn entities <category> all
to list all mobs from a specific category, even those that don't count towards the mobcap, and fixed/spawn entities
to properly identify mobcappable entities - removed workstation tracking from
/track villager iron_golem_spawning
(1.16)
scarpet changes
- arguments for
schedule
andtask
will be evaluated at the ti...
Carpet Mod 1.2 for Minecraft 1.14 and 1.15
What's new in 1.2.6
- support for 1.15
- fixed profiler counting be time inside e time, effectively counting it twice.
- fixed handling of commands settings with
locked
carpet.conf - cleaned up features that are fixed / added to 1.15:
portalCaching
,miningGhostBlocksFix
(kept long-distance mining prevention fix as part ofantiCheatDisabled
),horseWanderingFix
,leadFix
andkelpGenerationGrowthLimit
Scarpet changes in 1.2.6
- removed client call in
pos_offset
- now safe to use on servers - added
break()
andcontinue()
but removed support for exit blocks in loop functions. - restored previous trees and features generators with
plop
function
What's new in 1.2.5
- support for 1.15 pre 4 / pre 5 / pre 6
- settings for custom commands accept extended boolean values (true, false, maybe, perhaps, etc..) (for admins only)
- added
dispenser
category to better differentiate between dispenser related options - search via
list
command return in sorted order - explosions in optimized explosions now do not randomize loot locations (pre4)
Scarpet changes in 1.2.5
- lists and maps are passed by reference. Use
copy
to get a deep copy. If you need a shallow copy, write it yoself. - refactored entity events. Events from other apps should not affect each other
undef
now behaves correctly in more complex cases- added
chunk_tickets
API
What's new in 1.2.4
- support for 1.15 pre-1/2/3
- fixed some NPEs with using profiler on heavy overloaded clients
Scarpet changes in 1.2.4
- user defined functions that use
outer
functions to borrow variables from outer scope are proper closures - all functions, especially labmdas are now proper values
- events are bound not on script load, but every time an event function is defined. This means that scripts can bind to events on the fly
- started separating core scarpet engine from Minecraft altogether.
What's new in 1.2.3b
- support for 19w46b
- Mojang fixed three of their NPE, so we fixed one of ours (related to profiler and loaded clients)
What's new in 1.2.3
- support for 19w46a
- fixed compatibility issues of ctrlQCraftingFix and autoCraftingTable thanks to Xcom and Deadly.
Scarpet changes in 1.2.3 (towards v1.6)
- prevented certain high order functions from evaluating expressions in void contexts (like
for
, orscan
). They would still do that in non-void contexts. - block(foo) will resolve eagerly block value, which makes a difference in the situation where
set(x,y,z,'air'); scan(x,y,z,0,0,0, foo = _ ); set(x,y,z,'stone'); foo => 'stone'
set(x,y,z,'air'); scan(x,y,z,0,0,0, foo = block( _ ) ); set(x,y,z,'stone'); foo => 'air'
Useblock(_)
to get deterministic behaviour, and_
(lazy-resolved block) when performance is key and you know what's going on.
What's new in 1.2.2
- support for 19w45a/b
- remove
kelpGenerationGrowthLimit
for 1.15 version, as its fixed in Vanilla, yay.
Scarpet changes in 1.2.2 (towards v1.6)
- added
copy()
and changed so all parameters of functions are passed by reference. If you need by value, use copy - outer variables in function declarations are borrowed from contexts upon definition, not execution, making the use of outer variables more useful and in line in java
- fixed handling of multiple unnnecessary semicolons in the scripts
- added
loaded_status
andgeneration_status
to query chunks. Deprecatedloaded_ep
as redundant.
What's new in 1.2.1
- added new carpet logo and presence on curseforge
- added support for 19w44a
- added back
tnt
rule category along with new tnt settings:optimizedTNT
,tntRandomRange
,hardcodeTNTangle
,mergeTNT
. Both people who use these rule know what they do. (thanks Earthcomputer for porting) - fixed stackableShulkerBoxes stripping names from empty boxes.
Scarpet changes in 1.2.1
- You cannot anymore wreck your save by setting entity position to NaN
- scarpet markers are now lasting till the end of application, and are application specific. Also when loading stored chunks, if the marker is loaded from the app that is not loaded, it will be removed.
- changing player position via scarpet will not affect their velocity
- added
call
to allow to call user defined functions by name, sofoo(bar)
<=>call('foo', bar)
->
operator now returns function name, rather thanOK
string- functions defined with
_
are anonymous with parser adding a unique name for them. The three options above combined allow for the following constructs:entity_event(entity,'on_tick',_(e) -> if(e~'age'>20, modify(e,'remove')));
- parser will strip unnecessary semicolons not separating two expressions, essentially allowing to use semicolons at the end of code blocks, or complex function
arguments - added
replace(str, regex, repl)
,replace_first(str, regex, repl)
, andescape_nbt
- added new options to
modify
:ai
to disable/enable ai, andno_clip
to change no-clip for any entity - falling block entities can also handle
on_tick
What's new in 1.2
- Continued support for new 1.15 snapshots
- added honeySlime for 1.14 to mimic honey slimestone properties with orange stained glass in 1.14
- added flatWorldStructureSpawning to allow mobs to spawn in structures in flat worlds (DeadlyMC)
- plenty of bugfixes...
Scarpet changes (v1.5)
- scarpet programs/modules/packages/plugins etc. has now been consistently referred to as scarpet apps.
- added ability for apps to keep their persistent state using
load_app_data
andstore_app_data
functions - added maps via
m()
function (not explorer maps, but maps that all programmers love) - added proper nbt support via
nbt()
function - all containers (lists, maps and nbts) now have unified api via
get
,has
,put
anddelete
functions - added L-value behaviour to certain functions and operators, like
get
,has
,put
,delete
,=
,+=
- new
:
operator - highest priority - to access containers elements, alias forget
function - changed priority of
~
match operator to match:
- numbers have to start because of that with a number, so
.123
won't float anymore, use0.123
instead - added
in_dimension(dimension, expr)
to change the execution context for the subexpression, for instance to place blocks in the nether while running a script in the overworld - added carpet mod setting
/carpet scriptsAutoload
to automatically load scarpet packages from disk on server / game start which works even with/script
command fully disabled. However, scipts to stay loaded need to return proper app config by defining__config()
function. See/script load
section for details. - added
entity_event
to add functions to be called when certain events happen for an entity - added four more general use events:
player_releases_item
(bows, aborting actions, controlled client side),player_finishes_using_item
(item consumed, eating etc. server controlled),player_drops_item
for single item dropped, andplayer_drops_stack
for dropping entire stack. - block names, entity name, item names etc. that have non-vanilla prefix (so not
minecraft:
) will be returned with the modded prefix. - added
loaded_status
to return loaded status of a chunk.
Carpet Mod 1.1 for Minecraft 1.14.4 / 1.15 snapshots
1.1.3
- 19w42a
- removed honeySlime option from 1.15, but still kept it in 1.14
- lots of other (s)carpet changes, for upcoming 1.2.0
1.1.2
- supports 19w41a (honey block)
- adds honeyGlidingSlime - to prevent slime and honey sticking to each other. This feature is also retro-fitted to 1.14 using orange stained glass to keep the other properties of honey, like transparency
- fixed use of client side call from block rotator feature
scarpet changes (towards v1.5):
- added unified API for containers using
get(container, address); has(container, address); put(container, address, value, ?option); delete(container, address)
- added 2 new containers - maps (hashmaps, dicts), via
m()
and nbt tags, vianbt()
to the existing lists, vial()
- added
.
operator to simplify visually access to containers (.
is an alias forget
). - due to the above introduction of
.
operator, floats now cannot start with.1234
, you have to precede these with0
, like0.1234
- For both people that used the
plop(structure/feature)
function, it is temporarily disabled for 19w41a since Mojang rewritten feature generation meaning it will take some time to bringplop(structure/feature)
back. - [UPDATE] in version
19w41a-1.1.2+v191009_2
, theplop
function has been mostly restored. Still missing options for trees, decorations, foliage, as they changed a lot, butplop
for major structures works as before.
1.1.1
- supports 19w40a
- removes vehicle check for persistent parrots as it works like that natively
- fixed crash when using block rotator on the server
- prevented crashes when settings are incorrect in carpet.conf - it will display an error message instead
1.1.0
New features since 1.0
- added support for 1.15 snapshots
/track
command to add monitoring in certain scenarios- added
miningGhostBlocksFix
for 1.14 - husks with
husksSpawningInTemples
allows to spawn them without sky access - made double chests stick together when moved
- fixed shaky screen when
/tick freeze
- normal player movement if the game is frozen even with low tick rate and
smoothClientAnimations
enabled defaultLoggers
to configure default logging configuration for all new players- a lot of bug fixes (check detailed release notes of the previous versions, i.e. 1.0.0 -> 1.0.8)
Scarpet changes (still scarpet 1.4)
- added entity events
- added
in_dimension
to allow to change context of the code - added
autoloadScripts
to allow loading world scripts at startup, they will also load withcommandScript
disabled
Carpet Mod 1.0 for Minecraft 1.14.4 and 1.15 snapshots
Changes in 1.0.8
- supports 19w38b
- fixed wording in a few carpet feature outputs, nothing major
- custom rule values are displayed in UI
- fixed superhot
- removed shake in frozen state
- renamed
movableTileEntities
tomovableBlockEntities
(blame official Micro$oft mappings) - deferring sending of command tree
- fix lead fix
- players can use items
- fixed compatibility with Java9+
- fixed black carpet
- tick warp doesn't prevent chunk ops
Scarpet changes:
- added
in_dimension(entity/block/string, expr)
to redirect world access to targeted dimension - added
/carpet scriptsAutoload
to make scarpet scripts autoload on world start
Changes in 1.0.7
- supports 19w37a
Changes in 1.0.6-2
- support is back in 1.15 for
set_biome
which now works little differently supporting new biome format.
Changes in 1.0.6
- supports 19w36a
- removed
portalCaching
(1.15 version) as Mojang now natively supports similar solution via POIs - fixed conflicts with masa's tweakeroo client mod
Scarpet changes: set_biome
in scarpet API is currently disabled due to snapshot changes, but should be fixed in some future 1.0.6b release- querying for entity ~ 'item' will now return an item triple (name, count, nbt)
- added API support for item entity pickup delay
- added entity event handlers for
on_damage
andon_tick
Changes in 1.0.5
- updated to 19w35a
- hopper counters now use world clocks, not server clocks, so won't go haywire when
/tick freeze
- fixed
stackableShulkerBoxes
- disabling spawnchunks should work on servers
movableTileEntities
will keep chests joined when pushed
Changes in 1.0.4
- started supporting 1.15 snapshots
- fixed positioning of blocks in negative space with scarpet.
Changes in 1.0.3
- tweaks to
miningGhostBlocksFix
as well asantiCheatDisabled
. Its much easier to deploy elytra if server is lagging - fixed
sound
API call crashing servers - tweaked
/track villager breeding
Changes in 1.0.2
- fix to 1.14 ghostblocks, effective when connecting to carpet servers with
miningGhostBlockFix
as well as automatically when connecting to vanilla servers. - added breeding as villager tracking option
Changes in 1.0.1
- fixed
/log tnt
- fixed spawning issues with
lagFreeSpawning
Changes to Carpet Mod 1.0 for Minecraft 1.14.4
- Extensibility via other mods, for example see https://github.com/gnembon/fabric-carpet-extension-example-mod
- tracking of mob AI via
/track
command - full control of player actions via
/player
command - fixed
customMOTD
- flipping blocks with cactus will not cause block updates. It also works, in main and offhand.
- loading structures with structure blocks will skip updates if required.
- dispenser can now cactus-flip blocks as well.
fastRedstone
port from 1.13.2, thanks to Soykaf/log pathfinding
to visualize mobs pathfinding efforts- movableTileEntities by 2no2name
- husks now can be an exclusive spawn in Desert Temples
placementRotationFix
for fixing bugs with placement when player moves quicklyquasiConnectivity
of pistons and dispensers/droppers can be turned offportalSuffocationFix
preventing from wrong placement inside blocks after going through a portalportalCashing
to enable persistent portal connections cashing conditioned based on portal being created and brokenrenewableSponges
via summoning a lightning on a regular guardians and converting them to elder guardians.leashFix
for fixing leash connection problems with entities unloadingmissingTools
to give proper tools to blocks that needed themhorseWanderingFix
to fix both disappearing vehicles when dismounting and horses wandering into the distance.persistentParrots
to make parrots little less uselesssmoothClientAnimations
to smooth entity and TE animations when game is slowed down.desetShrubs
can form when trying to plant saplings in arid climates without water nearby- fixes to passive mob spawns counting
antiCheatDisabled
option to disable various server side movement limits towards the cheaty players.- fake players can go through portals, and keep their full skin features
unloadedEntityFix
prevents very fast moving entities from vanishing./c
,/s
commands now properly update players.- fixed crashes on startup when certain features were turned on by default.
superSecretSetting
plays now a very important role .....
Changes to Scarpet 1.4
top
to get the top block at position now requires full block coordinates, but Y value is ignored.- Inventories of blocks and entities got their API as well. Check
stack_limit
,inventory_size
,inventory_get
,inventory_set
,inventory_find
,inventory_remove
anddrop_item
functions. - scripts loaded from disk (via /script load/unload command) will operate in each player space by default, unless loaded with
shared
option. - the newline markers for 'in-commandblock' type scripts are now fully parsed, meaning you can have
$
in strings.$
markers are supported only with in-game cases. - support for comments via
//
in scripts loaded from world files. Comments are only allowed in external file scripts. - tab completion for typing programs in commands manually (in /script command)
- unloading/reloading a module removes all event callbacks from that module
return
,throw
,exit
, as well as the 'catch' expression oftry
can be omitted, assumingnull
- if with no
else
expression will 'else' tonull
element(list,index)
has been deprecated, and replaced withget(value,address)
, working on lists as well as nbt constructs- there is a new
nbt
type, that behave like string, but can be queried with get more efficiently - primitive types of nbt are now converted to primitive scarpet types when queried. This doesn't apply to compound nbts
- iterators, like
range
,rect
, can be reused and moved about in a variable. - added
type
function to recognized held variable type. str
format arguments can now be passed in a single list- block values now properly handle block entity data, meaning
set
-ting a chest from another location will retain its content. - therefore set can also accept custom BE tag?
place_item
to replicate the action of a player placing a block of itemset_biome
to sets permanently a custom biome at a position. For those missing a custom command to do that in carpet, just use/script scan 0 0 0 x1 0 z1 x2 0 z2 set_biome(_,'swamp')
for the same effectblock_properties
lists all available block properties at positionblock_data
returns nbt of a block at positionproperty
makes sure all value comes out lowercased.spawn
function to spawn entities like /summon command but retaining access to them.entity ~ 'look'
will return a look vector of an entity. No need to math yaw pitch here.entity ~ 'selected_slot'
to return current selected slot for playersentity ~ 'facing'
returns a facing order of a playerentity ~ 'trace'
ca be used to ray trace blocks, liquids and entities- entity
~
sugar can now support - fixed
modify(e,'custom_name',null)
to actually clear custom name create_marker
andremove_all_markers
for easy marking I guess- fixed 'double evaluation' caused by print function
- setting various entities motions and positions should update properly to the clients
- fixed
thoughts too dope
when trying to compare list to a number