Jon Bilgewater the Pirate King 50% done behavior with working bird shield
Hi my names Doctorcheerio and I got bored one day and made this hope you enjoy it , sorry its not very organized.
. Also this is my first ever non comment post so Idk how to do anything fancy ._. so i'm just gonna put what you need below:
for addition:
You may will need to add the sprites to the client and all that stuff. The projectiles for the birds are different to so change them if you want.
Behavior (for birds , boss, bird cage,):
Wish I was better at making posts but yeah... sorry. Anyways enjoy the codes
. Also this is my first ever non comment post so Idk how to do anything fancy ._. so i'm just gonna put what you need below:for addition:
Code:
<Object type="0xf85" id="Jon Bilgewater the Pirate King">
<Group>ep1</Group>
<Enemy/>
<Class>Character</Class>
<AnimatedTexture>
<File>chars16x16dMountains2</File>
<Index>5</Index>
</AnimatedTexture>
<HitSound>monster/ghost_god_hit</HitSound>
<DeathSound>monster/ghost_god_death</DeathSound>
<Size>200</Size>
<MaxHitPoints>90000</MaxHitPoints>
<Defense>30</Defense>
<Projectile id="0">
<ObjectId>Gold Bullet</ObjectId>
<Damage>150</Damage>
<Speed>50</Speed>
<LifetimeMS>1500</LifetimeMS>
<Size>110</Size>
</Projectile>
<Projectile id="1">
<ObjectId>Black Ball</ObjectId>
<Damage>250</Damage>
<Speed>130</Speed>
<LifetimeMS>2700</LifetimeMS>
</Projectile>
<Projectile id="1">
<ObjectId>Black Ball</ObjectId>
<Damage>250</Damage>
<Speed>50</Speed>
<LifetimeMS>2700</LifetimeMS>
</Projectile>
</Object>
<Object type="0xf84" id="Parrot Cage">
<Class>Character</Class>
<Enemy/>
<Texture>
<File>lofiObjBig</File>
<Index>0x58</Index>
</Texture>
<Static/>
<HitSound>monster/cubes_hit</HitSound>
<DeathSound>monster/cubes_death</DeathSound>
<MaxHitPoints>99999</MaxHitPoints>
<Defense>900</Defense>
<Cube/>
<Projectile id="0">
<ObjectId>Red Fire</ObjectId>
<Speed>100</Speed>
<Damage>100</Damage>
<LifetimeMS>5000</LifetimeMS>
</Projectile>
<Projectile id="1">
<ObjectId>Fire Bolt</ObjectId>
<Speed>80</Speed>
<Damage>30</Damage>
<LifetimeMS>5000</LifetimeMS>
</Projectile>
<Size>100</Size>
<XpMult>0.1</XpMult>
</Object>
<Object type="0xf83" id="Healing Bird">
<Group>ep</Group>
<Enemy/>
<Class>Character</Class>
<Texture>
<File>lofiObj6</File>
<Index>0x7d</Index>
</Texture>
<HitSound>monster/scorpions_hit</HitSound>
<DeathSound>monster/scorpions_death</DeathSound>
<Projectile id="0">
<ObjectId>hawk shot</ObjectId>
<Speed>100</Speed>
<Damage>40</Damage>
<LifetimeMS>300</LifetimeMS>
<ConditionEffect duration="1">Slowed</ConditionEffect>
</Projectile>
<Size>100</Size>
<MaxHitPoints>1500</MaxHitPoints>
<Defense>20</Defense>
<Terrain>ShoreSand</Terrain>
<Quest/>
<Level>1</Level>
<XpMult>2</XpMult>
<SpawnProb>0.75</SpawnProb>
</Object>
<Object type="0xf80" id="Attack Bird">
<Group>ep</Group>
<Enemy/>
<Class>Character</Class>
<Texture>
<File>lofiObj6</File>
<Index>0x7e</Index>
</Texture>
<HitSound>monster/scorpions_hit</HitSound>
<DeathSound>monster/scorpions_death</DeathSound>
<Projectile id="0">
<ObjectId>hawk shot</ObjectId>
<Speed>100</Speed>
<Damage>40</Damage>
<LifetimeMS>300</LifetimeMS>
<ConditionEffect duration="1">Slowed</ConditionEffect>
</Projectile>
<Size>100</Size>
<MaxHitPoints>1500</MaxHitPoints>
<Defense>20</Defense>
<Terrain>ShoreSand</Terrain>
<Quest/>
<Level>1</Level>
<XpMult>2</XpMult>
<SpawnProb>0.75</SpawnProb>
</Object>
<Object type="0xf81" id="Healing Bird 2">
<Group>ep2</Group>
<Enemy/>
<Class>Character</Class>
<Texture>
<File>lofiObj6</File>
<Index>0x7d</Index>
</Texture>
<HitSound>monster/scorpions_hit</HitSound>
<DeathSound>monster/scorpions_death</DeathSound>
<Projectile id="0">
<ObjectId>hawk shot</ObjectId>
<Speed>100</Speed>
<Damage>40</Damage>
<LifetimeMS>300</LifetimeMS>
</Projectile>
<Size>120</Size>
<MaxHitPoints>1500</MaxHitPoints>
<Defense>20</Defense>
<Terrain>ShoreSand</Terrain>
<Quest/>
<Level>1</Level>
<XpMult>2</XpMult>
<SpawnProb>0.75</SpawnProb>
</Object>
<Object type="0xf82" id="Attack Bird 2">
<Group>ep2</Group>
<Enemy/>
<Class>Character</Class>
<Texture>
<File>lofiObj6</File>
<Index>0x7e</Index>
</Texture>
<HitSound>monster/scorpions_hit</HitSound>
<DeathSound>monster/scorpions_death</DeathSound>
<Projectile id="0">
<ObjectId>hawk shot</ObjectId>
<Speed>100</Speed>
<Damage>40</Damage>
<LifetimeMS>300</LifetimeMS>
<ConditionEffect duration="1">Slowed</ConditionEffect>
</Projectile>
<Size>120</Size>
<MaxHitPoints>1500</MaxHitPoints>
<Defense>20</Defense>
<Terrain>ShoreSand</Terrain>
<Quest/>
<Level>1</Level>
<XpMult>2</XpMult>
<SpawnProb>0.75</SpawnProb>
</Object>
You may will need to add the sprites to the client and all that stuff. The projectiles for the birds are different to so change them if you want.
Behavior (for birds , boss, bird cage,):
Code:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using wServer.realm;
using wServer.logic.attack;
using wServer.logic.movement;
using wServer.logic.loot;
using wServer.logic.taunt;
using wServer.logic.cond;
namespace wServer.logic
{
partial class BehaviorDb
{
static _ JonBilgewaterthePirateKing = Behav()
.Init(0xf85, Behaves("Jon Bilgewater the Pirate King",
new RunBehaviors(
Cooldown.Instance(15000, new SimpleTaunt("Check out AWESOME CANNON CLUSTER!"))
),
new RunBehaviors(
HpGreaterEqual.Instance(15000,
new RunBehaviors(
Cooldown.Instance(3000, PredictiveMultiAttack.Instance(25, 10 * (float)Math.PI / 180, 9, 1, projectileIndex: 0)),
Cooldown.Instance(1500, RingAttack.Instance(10, 7, 0, projectileIndex: 1))
)
),
HpLesserPercent.Instance(0.5f,
new RunBehaviors(
Cooldown.Instance(1500, RingAttack.Instance(10, 7, 0, projectileIndex: 2)),
Cooldown.Instance(1500, RingAttack.Instance(10, 7, 0, projectileIndex: 1))
)
)
),
loot: new LootBehavior(LootDef.Empty,
Tuple.Create(100, new LootDef(0, 3, 0, 8,
Tuple.Create(1.00, (ILoot)new ItemLoot("Ancient Stone Sword"))
)))));
static _ ParrotCage = Behav()
.Init(0xf84, Behaves("Parrot Cage",
new RunBehaviors(
Once.Instance(new SetKey(-1, 1))
),
#region cage circle
IfEqual.Instance(-1, 1,
new RunBehaviors(
Reproduce.Instance(0xf83, 5, 500, 5),
Reproduce.Instance(0xf80, 5, 500, 5),
OrderGroup.Instance(30, "ep2", Despawn.Instance),
new QueuedBehavior(
CooldownExact.Instance(10000),
new SetKey(-1, 2)
))),
#endregion
#region boss circle
IfEqual.Instance(-1, 2,
new RunBehaviors(
Reproduce.Instance(0xf81, 1, 100, 7),
Reproduce.Instance(0xf82, 1, 100, 7),
OrderGroup.Instance(30, "ep", Despawn.Instance),
new QueuedBehavior(
CooldownExact.Instance(10000),
new SetKey(-1, 1)
)))
#endregion
));
static _ HealingParrot = Behav()
.Init(0xf83, Behaves("Healing Parrot",
new RunBehaviors(
Cooldown.Instance(1000, SimpleAttack.Instance(10, projectileIndex: 0)),
//Cooldown.Instance(5000, HealGroup.Instance(7, 500, "ep1")),
Circling.Instance(2.5f, 25, 7, 0xf84)
),
IfNot.Instance(
Chasing.Instance(2, 10, 5, 0x0941),
Circling.Instance(7.5f, 25, 7, 0xd38)
)
));
static _ AttackParrot = Behav()
.Init(0xf80, Behaves("Attack Parrot",
new RunBehaviors(
Cooldown.Instance(1000, SimpleAttack.Instance(10, projectileIndex: 0)),
Circling.Instance(2.5f, 25, 7, 0xf84)
),
IfNot.Instance(
Chasing.Instance(2, 10, 5, 0x0941),
Circling.Instance(7.5f, 25, 7, 0xd38)
)
));
static _ HealingParrot2 = Behav()
.Init(0xf81, Behaves("Healing Parrot 2",
new RunBehaviors(
Cooldown.Instance(1000, SimpleAttack.Instance(10, projectileIndex: 0)),
//Cooldown.Instance(5000, HealGroup.Instance(7, 500, "ep1")),
Circling.Instance(2.5f, 25, 7, 0xf85)
),
IfNot.Instance(
Chasing.Instance(2, 10, 5, 0x0941),
Circling.Instance(7.5f, 25, 7, 0xd38)
)
));
static _ AttackParrot2 = Behav()
.Init(0xf82, Behaves("Attack Parrot 2",
new RunBehaviors(
Cooldown.Instance(1000, SimpleAttack.Instance(10, projectileIndex: 0)),
Circling.Instance(2.5f, 25, 7, 0xf85)
),
IfNot.Instance(
Chasing.Instance(2, 10, 5, 0x0941),
Circling.Instance(7.5f, 25, 7, 0xd38)
)
));
}
}
Wish I was better at making posts but yeah... sorry. Anyways enjoy the codes


