--- a/net/minecraft/server/EntityChicken.java
+++ b/net/minecraft/server/EntityChicken.java
@@ -40,6 +40,11 @@
 
     @Override
     public void movementTick() {
+        // CraftBukkit start
+        if (this.isChickenJockey()) {
+            this.persistent = !this.isTypeNotPersistent(0);
+        }
+        // CraftBukkit end
         super.movementTick();
         this.br = this.bo;
         this.bq = this.bp;
@@ -59,7 +64,9 @@
         this.bo += this.bs * 2.0F;
         if (!this.world.isClientSide && this.isAlive() && !this.isBaby() && !this.isChickenJockey() && --this.eggLayTime <= 0) {
             this.playSound(SoundEffects.ENTITY_CHICKEN_EGG, 1.0F, (this.random.nextFloat() - this.random.nextFloat()) * 0.2F + 1.0F);
+            this.forceDrops = true; // CraftBukkit
             this.a((IMaterial) Items.EGG);
+            this.forceDrops = false; // CraftBukkit
             this.eggLayTime = this.random.nextInt(6000) + 6000;
         }