TamaCrafti_Data_v2.4.10.zip
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
argumentssupport 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_BlockSettingsconstruction 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.randomfield. - 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:
argumentsdai_statedai_keybindsdai_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

