promotional bannermobile promotional banner

[DAI] Tamacrafti (Data)

TamaCrafti turns Minecraft into a cozy virtual-pet experience powered by DAI, with care systems, farming progression, custom UI, home building, pet interaction, and persistent progression.
Back to Files

TamaCrafti_Data_v2.4.10.zip

File nameTamaCrafti_Data_v2.4.10.zip
Uploader
J12H36HJ12H36H
Uploaded
Aug 25, 2026
Downloads
7
Size
94.6 KB
File ID
8735057
Type
R
Release
Supported game versions
  • 26.2

What's new

DAI 3.1

DAI 3.1 is a major datapack-customization and runtime expansion focused on exposing more of the engine directly to JSON.

JSON Action Expansion

  • Added open-ended arguments support to DAI actions.
  • Existing action fields and older datapacks remain compatible.
  • Extended action arguments are preserved across client → server networking.
  • Future action systems can now add structured options without expanding the base action record every time.

Declarative State System

Added dai_state definitions for custom datapack variables.

Supported value types:

  • Boolean
  • Number
  • String

Supported scopes:

  • Client session
  • Player
  • Entity
  • Dimension
  • World
  • Server

State definitions can additionally control:

  • Default values
  • Persistence
  • Client/server synchronization
  • Client write permissions

Undeclared state continues to behave like the previous session-local state system.

Datapack Keybinds

Added dai_keybinds.

Datapacks can now define named controls with:

  • Display names
  • Categories
  • Default keys
  • Standard Minecraft Controls-menu registration
  • Raw-key fallback for dynamically loaded definitions

This allows packs to reference named actions instead of relying entirely on hard-coded physical keys.

Data-Driven Screens

Added dai_screens, allowing datapacks to create richer interactive interfaces.

Supported controls include:

  • Buttons
  • Labels
  • Text inputs
  • Number inputs
  • Toggles / checkboxes
  • Selectors
  • Dropdown-style controls
  • Tabs
  • Sliders
  • Progress displays
  • Panels / containers
  • Item displays

Screen controls can bind directly to DAI state and actions.

Animation Runtime Expansion

DAI animation tracks can now directly affect native DAI mesh rendering.

Added runtime support for:

  • Position / translation
  • Pitch
  • Yaw
  • Roll
  • Scale
  • Root/full-body/entity tracks
  • Linear interpolation
  • Step interpolation
  • Smooth/cubic interpolation
  • Easing

Animation JSON now drives actual rendered transforms instead of functioning only as timeline/marker data.

Runtime Item Components

Added generic runtime access to Minecraft's registered item-component system.

New capabilities include:

  • Check whether a component exists
  • Compare component data
  • Set components
  • Remove components
  • Copy components between stacks

Component values use their registered Mojang codecs, allowing the system to work with supported vanilla and mod-added components.

Projectile Improvements

Expanded projectile spawning options through action arguments.

Datapacks can now control:

  • Spawn origin
  • Position offsets
  • Explicit direction
  • Target entities
  • Target positions
  • Projectile count
  • Spread
  • Shooter velocity inheritance
  • Additional launch behavior

This allows considerably more advanced weapon and ability patterns without command workarounds.

Particle Improvements

Expanded particle-emitter arguments with greater control over:

  • Origin
  • Offsets
  • Direction
  • Targeting
  • Shape
  • Count
  • Audience / visibility behavior

Entity Behavior Expansion

Custom DAI entities now have significantly greater access to server-side DAI actions.

Entity behavior sequences can directly use:

  • DAI projectiles
  • Particle emitters
  • Effects
  • Potions
  • Content events
  • Functions
  • Commands
  • State operations

Entity behavior validation has also been updated to match the actions actually supported by the runtime.

JSON Block Entities

Added generic DAI block-entity support for JSON-defined blocks.

Custom blocks can now opt into:

  • Persistent per-block state
  • Arbitrary stored values
  • 0–54 inventory slots
  • Client synchronization
  • Periodic block-entity ticks
  • Block-entity event actions
  • State actions and conditions
  • Inventory-slot actions and conditions

This allows datapack-defined blocks to behave much more like native modded machines, containers, and interactive objects.

Animated Title-Screen Decorations

dai_title_screens now supports animated decorative elements.

New decorations entries support:

  • Static textures
  • Sprite sheets
  • Anchoring
  • Position and size
  • Frame dimensions
  • Frame count
  • Column count
  • Frame timing
  • Looping
  • Tinting
  • Idle bobbing
  • Save-browser-aware visibility

Existing title-screen definitions without decorations remain compatible.

Responsive Title Screens

Improved title-screen behavior across:

  • Fullscreen
  • Bordered window mode
  • Smaller resolutions
  • Different GUI scales

Animated decorations now:

  • Stay inside visible screen bounds
  • Detect the actual button-stack area
  • Scale down when space becomes limited
  • Hide when insufficient space remains
  • Avoid overlapping menu controls

Validation Improvements

  • Added validation coverage for the new action and condition families.
  • Entity behavior validation now more closely matches runtime capabilities.
  • Improved compatibility checking for expanded JSON definitions.

Networking & Runtime Fixes

  • Added transport for expanded action arguments.
  • Added scoped-state synchronization metadata.
  • Fixed state-sync packet field collision with CustomPacketPayload.type().
  • Improved server-authoritative handling of networked state.
  • Fixed persistent state cleanup behavior in integrated-server sessions.

Block Runtime Fixes

  • Updated all DAI_BlockSettings construction paths for the expanded block-entity settings.
  • Added block-entity registry/runtime integration.
  • Fixed inventory/state persistence handling.

Projectile Runtime Fixes

  • Fixed projectile spread using the protected Level.random field.
  • Projectile randomness now uses the public level.getRandom() API.

Compatibility

DAI 3.1 is designed as an additive expansion over 3.0.

Existing datapacks that do not use the new:

  • arguments
  • dai_state
  • dai_keybinds
  • dai_screens
  • block-entity settings
  • title-screen decorations

should continue using their previous behavior without requiring conversion.


DAI 3.1 significantly closes the gap between what the engine can do internally and what datapack creators can directly author through JSON.

This mod has no additional files