On this page

Playmods & effects

Builders for playmods and item effect payloads.

PlaymodBuilder

Lua
local PM = require("CrawlzUtils").PlaymodBuilder
local pm = PM.new("Speed Boost")
  :id(900001)
  :icon(112)
  :movement(250)
  :punchRange(128)
  :state({ PM.StateFlags.STATE_DOUBLE_JUMP })
  :messages("Equipped!", "Removed!")
local id, payload = pm:register()
pm:apply(pl, 300)
AreaMethods
Identity:id, :name, :icon, :skinUint, :equipInfo, :removeInfo
Visual:skin, :state, :addState
Stats:movement, :acceleration, :gravity, :punchStrength, :buildRange, :punchRange, :waterMovement, :range, :speed
Raw:field, :merge, :build
Registry:register, :apply, :remove, :has, getRegistered, find

ItemEffectBuilder

Lua
local I = require("CrawlzUtils").ItemEffectBuilder
local fx = I.new(242)
  :extraGems(5)
  :extraXP(10)
  :oneHit(true)
  :breakRange(2)
  :buildRange(1)
fx:save()
MethodRole
:replace, :keepExistingMerge policy
:build, :previewOutput table
:save, :applyPersist on item

Snake_case field aliases (extra_gems, one_hit, …) exist on the builder.