2.2.2 Updates and fixes
-
[Fabric] Add compatibility with TACZ Fabric 1.20.1
-
Fix the animation twitching problem when TACZ fires
-
Complete compatibility with TACZ bayonet animation
-
Fix the player rotation problem in the model switching interface (especially when the player opens the model switching interface while riding a horse)
-
Fix the problem that the free field of the independent manifest file is not processed
-
Add
ysm.bone_pivot_abs
to get the coordinates of the specified bone pivot point in the model space in the previous frame.Note that if the parent bone is hidden or scaled by 0, the value will not be updated. Example:
ysm.bone_pivot_abs('LeftHand').x
; -
Add ysm.bone_[rot/scale/pos] to get the bone parameters of the previous frame.
Example:
ysm.bone_rot("LeftLeg').x
; -
Fixed the inaccurate values of
q.eye_target_[x/y]rotation
andq.body_[x/y]_rotation
; -
Fixed the abnormal rendering of paper dolls when using molang hidden groups when the first-person module is effective;
-
Improved the rendering of semi-transparent models;
-
Added
properties.render_layers_first
field (default false) to the manifest file to specify whether the vanilla model layer is rendered before the ysm model. The specific details will be introduced in the document later; -
Greatly improved the performance of multiplayer games, especially when light and shadow + entity shadow are turned on;
-
Adapted the SWEM mod (+11 animations, refer to the
swem.animation.json
of the default model); -
Adapted the Parcool mod (+35 animations, refer to the
parcool.animation.json
of the default model); -
Added
hover
,hover_fadeout
, andfocus
animations, which are played when the mouse hovers over, moves out of, or selects a model button in the model interface; -
Compatible with Carpet and Curtain mod dummies, and in theory, with dummies that work in a similar way;
-
Supports copying or opening the author's contact information on the model details page;
-
Supports attaching additional information when exporting encrypted models;
-
Adapted to Sodium 0.6 and Iris 1.8;
-
Limits the animation update frequency to 60 fps;
-
Fixed the problem that iris shadow rendering has no head when the first-person mod is in effect;
-
Fixed compatibility with fashion armor mods;
-
Fixed the problem that the old version of the model texture file is not sorted correctly;
-
Fixed the problem that the renderer crashed in rare cases (access violation);
-
Fixed the problem that the process could not be terminated due to abnormal exit;
-
Improved the reliability of handshake and synchronization in an online environment;
-
Added the command
/ysm ping
, solve the problem that the client does not recognize the server due to packet loss; -
Improve the automatic completion of some command parameters;
-
The top-level model directory is not recognized as a model.
-
Fix the problem of some groups being misplaced under the Carry On holding posture
-
Add a new wine fox model, and attach GUI suspension and selection animations
Known issues:
-
The semi-transparent part of the model may block other entities, which can be solved by installing the oculus/iris module;
-
The semi-transparent part of the model in the inventory will block buttons added by other modules.
-
The animation will only play once when TACZ fires continuously
2.2.2 Updates and fixes
-
[Fabric] Add compatibility with TACZ Fabric 1.20.1
-
Fix the animation twitching problem when TACZ fires
-
Complete compatibility with TACZ bayonet animation
-
Fix the player rotation problem in the model switching interface (especially when the player opens the model switching interface while riding a horse)
-
Fix the problem that the free field of the independent manifest file is not processed
-
Add
ysm.bone_pivot_abs
to get the coordinates of the specified bone pivot point in the model space in the previous frame.Note that if the parent bone is hidden or scaled by 0, the value will not be updated. Example:
ysm.bone_pivot_abs('LeftHand').x
; -
Add ysm.bone_[rot/scale/pos] to get the bone parameters of the previous frame.
Example:
ysm.bone_rot("LeftLeg').x
; -
Fixed the inaccurate values of
q.eye_target_[x/y]rotation
andq.body_[x/y]_rotation
; -
Fixed the abnormal rendering of paper dolls when using molang hidden groups when the first-person module is effective;
-
Improved the rendering of semi-transparent models;
-
Added
properties.render_layers_first
field (default false) to the manifest file to specify whether the vanilla model layer is rendered before the ysm model. The specific details will be introduced in the document later; -
Greatly improved the performance of multiplayer games, especially when light and shadow + entity shadow are turned on;
-
Adapted the SWEM mod (+11 animations, refer to the
swem.animation.json
of the default model); -
Adapted the Parcool mod (+35 animations, refer to the
parcool.animation.json
of the default model); -
Added
hover
,hover_fadeout
, andfocus
animations, which are played when the mouse hovers over, moves out of, or selects a model button in the model interface; -
Compatible with Carpet and Curtain mod dummies, and in theory, with dummies that work in a similar way;
-
Supports copying or opening the author's contact information on the model details page;
-
Supports attaching additional information when exporting encrypted models;
-
Adapted to Sodium 0.6 and Iris 1.8;
-
Limits the animation update frequency to 60 fps;
-
Fixed the problem that iris shadow rendering has no head when the first-person mod is in effect;
-
Fixed compatibility with fashion armor mods;
-
Fixed the problem that the old version of the model texture file is not sorted correctly;
-
Fixed the problem that the renderer crashed in rare cases (access violation);
-
Fixed the problem that the process could not be terminated due to abnormal exit;
-
Improved the reliability of handshake and synchronization in an online environment;
-
Added the command
/ysm ping
, solve the problem that the client does not recognize the server due to packet loss; -
Improve the automatic completion of some command parameters;
-
The top-level model directory is not recognized as a model.
-
Fix the problem of some groups being misplaced under the Carry On holding posture
-
Add a new wine fox model, and attach GUI suspension and selection animations
Known issues:
-
The semi-transparent part of the model may block other entities, which can be solved by installing the oculus/iris module;
-
The semi-transparent part of the model in the inventory will block buttons added by other modules.
-
The animation will only play once when TACZ fires continuously
2.2.1 Version Update Log
According to convention, this version should be called 1.2.1, but it will cause great confusion, so the version number is directly set to 2.2.1
Functional updates and fixes
-
Fully switch to a new model file structure, add a model list file
ysm.json
for unified management: -
Support setting the display order of default texture and texture files;
-
Support setting preview animations and playing them in the model selection screen (the old version is unified as idle);
-
Support customizing the number, order, and name of Extra animations (no longer limited to extra+number);
-
Support reading sub-directory files in the model directory.
-
Support inserting author information, and assigning avatar, role, introduction, contact information
-
Support inserting homepage and donation page information
-
Support PBR material specification
For details, please see the
ysm.json
description file -
Remove the file name restrictions for models and textures, and now support any characters (including Chinese/Japanese);
-
All default model formats are changed to the new version type
-
Now multiple layers of subfolders (up to 16 layers) can also intelligently read all the models under them, whether in folder format, ysm format or zip format.
-
Support reading Bedrock Edition models higher than 1.12.0;
-
Slightly improve the performance of reading models;
-
Support reading more forms of keyframes, and fix the problem of some old models failing to read;
-
Fix the evaluation exception of molang scope delimited expressions
-
Fix the problem of accidentally playing Extra animations in some cases;
-
Add model statistics;
-
The model switching interface can keep the page number record (no need to turn the page every time);
-
Add a model details interface to display the author list, donation and homepage URL jump buttons;
-
Fix the abnormal rotation of the head during animation preview;
-
Annotation animations with names starting with
——
are not displayed; -
The text of animation buttons without language files directly displays the animation name instead of the language file key
-
[Forge] Fixed the problem that Extra animations cannot be aborted in client-only mode;
-
[Forge] Fixed the problem of null pointer error when entering the game in some cases;
-
[Fabric] Reconstruct the network system and unify it with the Forge end (now the two ends can communicate with each other);
Mod compatibility
-
[Forge] Add compatibility for the
SlashBlade: Resharped
mod -
[Forge] Add compatibility for TACZ, which is almost the same as the old version for TAC, and also supports animations in the form of gun IDs
-
[Forge] Adapt to oculus 1.7.0; and add support for Oculus PBR.
Animation and molang
-
Corrected the wine fox model and added animation support for the 1.21 heavy hammer
-
Updated the default model;
-
[Forge 1.20] Fixed the problem that the result of
ysm.relative_block_name
was incorrect; -
Roulette animation now supports any number of additional animations, using the scroll wheel to turn pages. Pressing the Z key can also close the screen
-
Fix the incorrect
q.body_y_rotation
problem -
Add default supported ladder animations, divided into three:
ladder_up
,ladder_stillness
,ladder_down
- Add ladder-related molang variables:
-
ysm.on_ladder
, Boolean value, used to determine whether the entity is on the ladder -
ysm.ladder_facing
ladder direction, output numbers 0-3, corresponding to: south-west-north-east
-
- Add ladder-related molang variables:
-
Add rendering support for the original parrot (through the positioning group
LeftShoulderLocator
,RightShoulderLocator
) -
Added original parrot-related molang variables:
has_left_shoulder_parrot
,has_right_shoulder_parrot
left_shoulder_parrot_variant
,right_shoulder_parrot_variant
: parrot color variants
-
Add riding and being ridden animation design, which can be placed in any animation file
-
Vehicle represents the vehicle, followed by the entity ID. For example, if the player rides on a slime, the animation name is
vehicle$minecraft:slime
-
Passenger represents the passenger, that is, the entity riding on the player's head, followed by the entity ID. For example, if a fox rides on the player's head, the animation name is
passenger$minecraft:fox
-
q.max_durability
andq.remaining_durability
, you need to enter a slot string parameter- Example:
q.max_durability('mainhand')
: Returns the maximum durability of the item held in the main hand - Parameters are
Mainhand
Offhand
Feet
Legs
Chest
Head
- Example:
-
ysm.rendering_in_inventory
: Determines whether it is rendering in the inventory; -
ysm.eye_in_water
: Whether the eye is underwater, used to determine whether the player is completely immersed in water -
ysm.frozen_ticks
: Increase this value to 140 in frozen snow -
ysm.air_supply
: Air value, maximum 300 -
ysm.arrow_count
: The number of arrows inserted into the player's body -
ysm.stinger_count
: The number of stingers of bees stinger on the player -
The following are all entity-related Attributes:
ysm.attack_damage
ysm.attack_speed
ysm.attack_knockback
ysm.movement_speed
ysm.knockback_resistance
ysm.luck
ysm.block_reach
ysm.entity_reach
ysm.swim_speed
ysm.entity_gravity
ysm.step_height_addition
ysm.nametag_distance
-
Fixed the issue where the
yaw_speed
parameter in the debugging screen displays incorrect values -
Improved method of detecting oculus shadow rendering context
-
Fixed the issue where the model does not update the head rotation when the player moves the mouse in the GUI
-
Fixed the problem of crossbow arrow animation not being recognized
-
Improved client-server identification mechanism
-
Added a mask model for the wine fox, which is displayed when the player wears a helmet
-
Fixed the concurrency problem in model reading, now multiple models with the same name can also be read
-
Fixed the problem that the game could not start properly due to JVM path errors for some players
m