Adding Projectiles
Basics
Section titled “Basics”Projectiles are entities launched by interactions. They travel through the world and trigger effects on impact.
Pack location: Server/Projectiles/
Base game reference: Assets.zip/Server/Projectiles/
Minimal Projectile
Section titled “Minimal Projectile”Create Server/Projectiles/My_Bullet.json in your pack:
{ "Appearance": "Bullet_Blunderbuss", "MuzzleVelocity": 100, "Gravity": 10, "Damage": 20, "TimeToLive": 30}Properties
Section titled “Properties”Physics
Section titled “Physics”{ "MuzzleVelocity": 100, // initial speed (units/sec) "TerminalVelocity": 100, // max speed "Gravity": 10, // downward acceleration (0 = straight line) "Bounciness": 0, // 0-1, ricochet factor "ImpactSlowdown": 0 // speed reduction on bounce}Hitbox
Section titled “Hitbox”{ "Radius": 0.2, // collision radius "Height": 0 // cylinder height (0 = sphere)}Lifetime
Section titled “Lifetime”{ "TimeToLive": 30, // max seconds before despawn "DeadTime": 0.5, // linger time after hit (for effects) "DeadTimeMiss": 0 // linger time on miss}Damage
Section titled “Damage”{ "Damage": 50, // hit damage "DeathEffectsOnHit": true // play death effects on hit}Visuals
Section titled “Visuals”{ "Appearance": "Arrow_Basic", // model ID "SticksVertically": true, // stick into surfaces "PitchAdjustShot": true, // rotate to match trajectory "DepthShot": 0.5, // penetration depth visual "DeathParticles": { "SystemId": "Impact_Arrow" }, "DeathSoundEventId": "SFX_Arrow_Hit"}Spawn Offset
Section titled “Spawn Offset”{ "VerticalCenterShot": 0, // Y offset at spawn "HorizontalCenterShot": 0 // X offset at spawn}Launching Projectiles
Section titled “Launching Projectiles”Use LaunchProjectile interaction:
{ "Type": "LaunchProjectile", "ProjectileId": "My_Bullet", "RunTime": 0.1, "SpawnOffset": { "X": 0, "Y": 1.5, "Z": 0.5 }, "Effects": { "ItemAnimationId": "Shoot", "WorldSoundEventId": "SFX_Fire" }}Projectile Examples
Section titled “Projectile Examples”Arrow (arcing)
Section titled “Arrow (arcing)”Server/Projectiles/My_Arrow.json:
{ "Appearance": "Arrow_Basic", "Radius": 0.1, "MuzzleVelocity": 60, "TerminalVelocity": 80, "Gravity": 15, "Bounciness": 0, "TimeToLive": 30, "Damage": 25, "SticksVertically": true, "PitchAdjustShot": true, "DepthShot": 0.3, "DeathEffectsOnHit": true, "DeathParticles": { "SystemId": "Impact_Arrow" }, "DeathSoundEventId": "SFX_Arrow_Impact"}Bullet (fast, straight)
Section titled “Bullet (fast, straight)”Server/Projectiles/My_Bullet.json:
{ "Appearance": "Bullet_Blunderbuss", "Radius": 0.1, "MuzzleVelocity": 300, "TerminalVelocity": 300, "Gravity": 5, "TimeToLive": 60, "Damage": 50, "DeadTime": 0.1, "DeathEffectsOnHit": true, "DeathParticles": { "SystemId": "Gun_Impact" }, "DeathSoundEventId": "SFX_Bullet_Impact"}Fireball (slow, explosive)
Section titled “Fireball (slow, explosive)”Server/Projectiles/My_Fireball.json:
{ "Appearance": "Fireball", "Radius": 0.3, "MuzzleVelocity": 30, "TerminalVelocity": 30, "Gravity": 2, "TimeToLive": 20, "Damage": 40, "DeadTime": 0.5, "DeathEffectsOnHit": true, "DeathParticles": { "SystemId": "Explosion_Fire" }, "DeathSoundEventId": "SFX_Explosion"}Bouncing Ball
Section titled “Bouncing Ball”Server/Projectiles/My_Bouncer.json:
{ "Appearance": "Orb_Magic", "Radius": 0.2, "MuzzleVelocity": 40, "Gravity": 20, "Bounciness": 0.8, "ImpactSlowdown": 0.1, "TimeToLive": 15, "Damage": 15, "DeathParticles": { "SystemId": "Magic_Pop" }}Grenade (arcing, delayed explosion)
Section titled “Grenade (arcing, delayed explosion)”Server/Projectiles/My_Grenade.json:
{ "Appearance": "Grenade_Frag", "Radius": 0.15, "MuzzleVelocity": 25, "Gravity": 25, "Bounciness": 0.3, "ImpactSlowdown": 0.5, "TimeToLive": 3, "Damage": 0, "DeadTime": 0.1, "DeathEffectsOnHit": false, "DeathParticles": { "SystemId": "Explosion_Frag" }, "DeathSoundEventId": "SFX_Grenade_Explode"}Note: Grenade damage would be handled by area effect on death, not direct hit.
Weapon Integration
Section titled “Weapon Integration”Simple Gun
Section titled “Simple Gun”{ "Interactions": { "Primary": { "Cooldown": { "Cooldown": 0.2 }, "Interactions": [{ "Type": "LaunchProjectile", "ProjectileId": "My_Bullet", "Effects": { "ItemAnimationId": "Shoot", "WorldSoundEventId": "SFX_Gunshot", "CameraEffect": "Gun_Recoil" } }] } }}Bow (charged)
Section titled “Bow (charged)”{ "Interactions": { "Primary": { "Type": "Charging", "Next": { "0.3": { "Type": "LaunchProjectile", "ProjectileId": "Arrow_Weak", "Effects": { "ItemAnimationId": "Release" } }, "1.0": { "Type": "LaunchProjectile", "ProjectileId": "Arrow_Full", "Effects": { "ItemAnimationId": "Release" } } } } }}Shotgun (multiple projectiles)
Section titled “Shotgun (multiple projectiles)”{ "Type": "Serial", "Interactions": [ { "Type": "LaunchProjectile", "ProjectileId": "Pellet" }, { "Type": "LaunchProjectile", "ProjectileId": "Pellet" }, { "Type": "LaunchProjectile", "ProjectileId": "Pellet" }, { "Type": "LaunchProjectile", "ProjectileId": "Pellet" }, { "Type": "LaunchProjectile", "ProjectileId": "Pellet" } ], "Effects": { "WorldSoundEventId": "SFX_Shotgun_Blast" }}Burst Fire
Section titled “Burst Fire”{ "Type": "Serial", "Interactions": [ { "Type": "LaunchProjectile", "ProjectileId": "Bullet", "RunTime": 0.05 }, { "Type": "LaunchProjectile", "ProjectileId": "Bullet", "RunTime": 0.05 }, { "Type": "LaunchProjectile", "ProjectileId": "Bullet", "RunTime": 0.05 } ]}With Ammo Consumption
Section titled “With Ammo Consumption”{ "Type": "ModifyInventory", "ItemToRemove": { "Id": "Ammo_Bullet", "Quantity": 1 }, "Next": { "Type": "LaunchProjectile", "ProjectileId": "My_Bullet" }, "Failed": { "Type": "Simple", "Effects": { "WorldSoundEventId": "SFX_Click_Empty" } }}Existing Projectile Appearances
Section titled “Existing Projectile Appearances”From base game Assets.zip/Common/Items/Projectiles/:
Arrow_Basic,Arrow_Fire,Arrow_IceBullet_BlunderbussSpear_ThrownOrb_Magic
From Hypixel minigames:
Bullet(GunPvP)Grenade_Frag
File Locations
Section titled “File Locations”| What | Your Pack | Base Game Reference |
|---|---|---|
| Projectile configs | Server/Projectiles/ | Assets.zip/Server/Projectiles/ |
| Projectile models | Common/Items/Projectiles/ | Assets.zip/Common/Items/Projectiles/ |
| Impact particles | Server/Particles/ | Assets.zip/Server/Particles/ |
| Impact sounds | Common/Sounds/ | Assets.zip/Common/Sounds/Projectiles/ |