{
  "format_version": "1.10.0",
  "particle_effect": {
    "description": {
      "identifier": "minecraft:lava_particle",
      "basic_render_parameters": {
        "material": "particles_alpha",
        "texture": "textures/particle/particles"
      }
    },
    "events": {
      "smoke": {
        "particle_effect": {
          "effect": "minecraft:basic_smoke_particle",
          "type": "particle_with_velocity"
        }
      }
    },
    "components": {
      "minecraft:emitter_rate_instant": {
        "num_particles": 0
      },
      "minecraft:emitter_lifetime_once": {},
      "minecraft:emitter_shape_point": {
        "direction": [ "Math.random(-0.1, 0.1)", "Math.random(0.1, 1.0)", "Math.random(-0.1, 0.1)" ]
      },
      "minecraft:particle_initial_speed": "Math.random(5.0, 10.0)",
      "minecraft:particle_lifetime_expression": {
        "max_lifetime": "Math.random(0.5, 2.0)"
      },
      "minecraft:particle_motion_dynamic": {
        "linear_acceleration": [ "(variable.particle_random_1 * 5.0 - 2.5)", -15.0, "(variable.particle_random_2 * 5.0 - 2.5)" ]
      },
      "minecraft:particle_motion_collision": {
        "collision_drag": 50.0,
        "coefficient_of_restitution": 0.1,
        "collision_radius": 0.1
      },
      "minecraft:particle_lifetime_events": {
        "timeline": {
          "0.0": "smoke",
          "0.025": "smoke",
          "0.05": "smoke",
          "0.075": "smoke",
          "0.1": "smoke",
          "0.15": "smoke",
          "0.2": "smoke",
          "0.25": "smoke",
          "0.3": "smoke",
          "0.35": "smoke",
          "0.4": "smoke",
          "0.5": "smoke",
          "0.6": "smoke",
          "0.7": "smoke",
          "0.8": "smoke",
          "0.9": "smoke",
          "1.0": "smoke",
          "1.2": "smoke",
          "1.4": "smoke",
          "1.6": "smoke",
          "1.8": "smoke",
          "2.0": "smoke"
        }
      },
      "minecraft:particle_appearance_billboard": {
        "size": [
          "(variable.particle_random_3 * 0.15 + 0.025) * (1 - Math.pow((variable.particle_age + query.frame_alpha) / variable.particle_lifetime, 2))",
          "(variable.particle_random_3 * 0.15 + 0.025) * (1 - Math.pow((variable.particle_age + query.frame_alpha) / variable.particle_lifetime, 2))"

        ],
        "facing_camera_mode": "lookat_xyz",
        "uv": {
          "texture_width": 128,
          "texture_height": 128,
          "uv": [ 10, 26 ],
          "uv_size": [ 4, 4 ]
        }
      },
      "minecraft:particle_appearance_lighting": {}
    }
  }
}
