Add notes for dev boss AI
This commit is contained in:
@@ -35,8 +35,32 @@ namespace ForgottenWawiTech.Content.NPCs.OriginalNeptune
|
||||
|
||||
public override void AI()
|
||||
{
|
||||
// Phased boss AI: at 50% HP spawn Raccoon. Neptune becomes invulnerable and does not attack
|
||||
// until Raccoon is defeated, then move to Phase 2.
|
||||
/*
|
||||
IDEA:
|
||||
Neptune will mostly hover and fly around at high speeds on a ship similiar to the Respawn Ship from SOT.
|
||||
He will fire projectiles at high speeds which cause high AOE damage and inflict strong crushing debuffs.
|
||||
All players will receive a debuff that nearly nullifies wing time while fighting him.
|
||||
At 50% health, he will "throw" Mr Raccoon off the ship to fight on the ground with the player. His AI will be listed in his file.
|
||||
During this time, Neptune will become mildly less aggressive, however still dangerous and on the offensive.
|
||||
At 25% health, he will double his attack speed and movement speed, becoming a frantic danger to players.
|
||||
100 - 50% HP will be Phase 1
|
||||
50% - 25% HP will be Phase 2 (Raccoon fight)
|
||||
25% - 0% HP will be Phase 3
|
||||
|
||||
If Neptune is hit with 2/3/4 (Normal/Expert/Master) cannon balls while above 95% HP, he will throw Raccoon overboard and swap AI (only if this happens in Phase 1):
|
||||
- Neptune will become enraged, tripling attack speed, movement speed, damage, projectile speed, attack range, and reducing all cooldowns by 75%.
|
||||
- He will also become invulnerable, only taking damage over time until being defeated after ~10 minutes.
|
||||
- In the last 30 seconds of this state, he will enter a "final stand" mode where he salutes and fires a massive barrage of projectiles rapidly, before ramming
|
||||
the ship into the floor, causing a humongous explosion (no tile damage) that will insta kill players in range (~70 tiles).
|
||||
- After being defeated in this state, he will drop an item that functions as infinite wood biome-respected alongside a developer vanity set.
|
||||
*/
|
||||
/*
|
||||
IDEA: Attack ideas from Neptune
|
||||
- Neptune will occasionally will try and snipe the player(s) with a high damage, high speed trident using predictive aiming. Damage will be 100 - 150 with full armor penetration (ignores defense).
|
||||
- If the player gets in front of the ship, the ship throws fire at the player, dealing 300 damage and inflicting On Fire! or Brimstone Flames for 10 seconds.
|
||||
- The ship will drop explosive barrels that act like mines - when the player gets close they explode for high damage.
|
||||
- During Phase 2, Neptune will throw 6-8 hunting spears overboard straight down, each equally distant from each other, and if the player is hit, it deals 300 damage (full armor pen) and inflicts a custom debuff "Pierced" that reduces healing received by 50% for 10 seconds. Will move slowly.
|
||||
*/
|
||||
|
||||
NPC.TargetClosest(false);
|
||||
Player target = Main.player[NPC.target];
|
||||
|
||||
@@ -31,7 +31,17 @@ namespace ForgottenWawiTech.Content.NPCs.OriginalNeptune
|
||||
|
||||
public override void AI()
|
||||
{
|
||||
// Placeholder AI: dash toward player occasionally
|
||||
/*
|
||||
IDEA:
|
||||
Mr Raccoon will fight on the ground, throwing himself and projectiles at the player.
|
||||
He will have a dash attack where he quickly rushes the player, dealing high damage on contact.
|
||||
He will also have a projectile attack where he throws pieces of trash at the player from a distance.
|
||||
He is meant to serve as a distraction and secondary threat while Neptune fights from above - meaning to overwhelm the player with multiple threats.
|
||||
0 - 50% HP: Normal behavior (Phase 1)
|
||||
50% - 25% HP: Increases dash attack speed and frequency (Phase 2)
|
||||
25% - 0% HP: Increases all attack speeds and movement speeds (Phase 3)
|
||||
If Neptune is defeated while Mr Raccoon is still alive, Mr Raccoon will flee the battle (run towards the ocean) - if he is defeated during this state, he will drop a vanity developer set.
|
||||
*/
|
||||
Player target = Main.player[NPC.target];
|
||||
if (!target.active || target.dead)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user