The open source repository for the action RPG game in development by Sig Productions titled 'Adventures in Lestoria'! https://forums.lestoria.net
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 
AdventuresInLestoria/Adventures in Lestoria/assets/config/MonsterStrategies.txt

437 lines
11 KiB

# Monster Strategies have optional parameters that you can adjust to
# tweak the AI behaviors. Each strategy is displayed followed by {}.
# Inside the {} is a list of the properties and what their default values
# are.
#
# If you add the optional parameters inside a Monster, they will be adopted
# for that specific AI pattern.
#
# For example, if you wanted to add a longer wait time to a mob's RUN_TOWARDS
# strategy, you would write this:
#
# ==========================================
# ==========================================
#
# 0
# {
# Name = Green Slime
# Health = 10
# Attack = 5
#
# CollisionDmg = 5
#
# MoveSpd = 110
# Size = 80
#
# Strategy = Run Towards
# WaitTime = 5
#
# [....Cut for length purposes]
#
# ==========================================
# ==========================================
# ==========================================
#
# The document below shows that WaitTime is 2 by default, but this will make the
# mob adopt a 5 second wait time.
MonsterStrategy
{
Run Towards
{
# How long to wait before attempting to path again.
WaitTime = 3
# How far the monster will travel before reassessing for a new path.
MaxDistance = 999999
# 1 of X chance to stop after bumping into something.
BumpStopChance = 5
}
Shoot Afar
{
# How far away the monster attempts to distance itself from the player
Range = 700
# If the player is farther than this distance, close in on them.
CloseInRange = 850
# How often the enemy shoots.
ShootingSpeed = 1
BulletSpeed = 300
BulletSize = 20
BulletColor = 37, 131, 112, 255
}
Turret
{
# How far away the monster starts shooting from
Range = 800
# How often the enemy shoots.
ShootingSpeed = 2
BulletSpeed = 450
BulletSize = 30
BulletColor = 0, 255, 0, 255
}
# The Slime King Boss script.
Slime King
{
# Which phase to start on. Should be 1 most of the time.
StartPhase = 1
# How much time a jump will be pre-telegraphed.
JumpWarningIndicatorTime = 1.0
# Distance to jump up into the sky. A higher value causes it to launch up and down seemingly faster.
JumpHeight = 900
ProjectileDamage = 10
JumpAttackDamage = 20
JumpMoveSpd = 75
# How far the player gets knocked back if hit.
JumpKnockbackFactor = 250
BulletSpd = 350
Phase1
{
Size = 800
ShootRepeatTime = 4.0
ShootRingCount = 3
# Amount of time between each set of rings.
ShootRingDelay = 0.2
RingBulletCount = 16
# In degrees.
RingOffset = 10.0
JumpAfter = 4 shots
AirborneTime = 3.0
LandingRecoveryTime = 2.0
}
Phase2
{
Size = 600
# Percentage of health to transition to Phase 2
Change = 75%
MonsterSpawnOnChange = Red Slime, 2
ShootRate = 1.0
ShootProjectileCount = 3
ShootCount = 5
ShootAngleSpread = 45
JumpChargeTime = 5.0
JumpAfter = 5 shots
JumpCount = 3
# Argument 0 is jump time.
# Argument 1 is move speed.
Jump[1] = 2.0, 75
Jump[2] = 0.3, 850
Jump[3] = 1.2, 70
}
Phase3
{
Size = 400
# Percentage of health to transition to Phase 3
Change = 50%
MonsterSpawnOnChange = Red Slime, 2
PhaseRecoveryTime = 2.0
ShootRate = 0.5
ShootProjectileCount = 3
ShootAngleSpread = 45
JumpMoveSpd = 140
JumpDelayTime = 0.5
JumpRecoveryTime = 2.0
}
Phase4
{
Size = 200
# Percentage of health to transition to Phase 4
Change = 25%
MonsterSpawnOnChange = Blue Slime, 2
# Percentage of normal move spd the Slime King will move.
MoveSpdModifier = 50%
ShootRate = 0.1
RandomOffsetAngle = 35
RunAwayTime = 2.5
WaitTime = 1.0
JumpDuration = 3.0
JumpDistance = 1000
}
Phase5
{
SizeLossPerHit=50%
IframeTimePerHit = 1.0
MoveSpdModified = 50%
# Percentage of health to transition to Phase 5
Change = 0%
}
}
Run Away
{
# How far away the monster attempts to distance itself from the player
Range = 700
# If the player is farther than this distance, close in on them.
CloseInRange = 850
}
Frog
{
# How close the frog has to get to the player before beginning its attack.
Range = 350
# How long to wait after getting in range and locking on to the player, before firing tongue.
Lockon Wait Time = 1.5s
# How long the tongue attack lasts for.
Attack Duration = 1.0s
# Max range of the tongue attack.
Tongue Max Range = 450
# How long to wait before starting its seeking phase over again.
Attack Recovery Time = 0.5s
# The color of the tongue RGBA
Tongue Color = 95,23,31,255
# A multiplier for the knockback strength of the tongue. (1 is quite small)
Tongue Knockback Strength = 2
}
Wolf
{
# How close the wolf has to be to lock on and charge the player.
Lockon Range = 400
# The speed boost percentage to increase by during the charge.
Lockon Speed Boost = 15%
# Time waiting after charging.
Charge Recovery Time = 1.0s
# The speed boost percentage to increase by and the duration while disengaging.
Disengage Speed Boost = 30%, 3s
# The distance to disengage the player.
Disengage Range = 800
# The amount of time to spend disengaged.
Disengage Duration = 3.0s
}
Bear
{
# How close the bear has to get to begin its attack.
Attack Range = 120
# How long the bear charges up its attack.
Chargeup Time = 1.3s
# How large the range of the attack is.
Smash Attack Diameter = 160
# How long to wait in animation time before the attack hits.
Attack Animation Wait Time = 0.6s
# How long the duration of the knockup is.
Attack Knockup Duration = 0.7s
}
# The Ursule, Mother of Bears Boss script
Ursule
{
# Which phase to start on. Should be 1 most of the time.
StartPhase = 1
# The maximum amount of time to spend trying to run to the center of the map.
Run To Center Max Time = 10.0s
# The overlay sprite to use for transitioning to later phases.
Overlay Sprite = monsters/Ursule Mother of Bears2.png
# Number of wisp patterns that exist.
Wisp Pattern Count = 9
Wisp Pattern 0
{
Row[0] = .O...O..
Row[1] = O...O...
Row[2] = ...O...O
Row[3] = ..O...O.
Row[4] = .O...O..
Row[5] = O...O...
}
Wisp Pattern 1
{
Row[0] = ........
Row[1] = O.O.O.O.
Row[2] = ........
Row[3] = .O.O.O.O
Row[4] = ........
Row[5] = O.O.O.O.
}
Wisp Pattern 2
{
Row[0] = O......O
Row[1] = ........
Row[2] = ........
Row[3] = ...OO...
Row[4] = ..O..O..
Row[5] = .O....O.
}
Wisp Pattern 3
{
Row[0] = .O....O.
Row[1] = O......O
Row[2] = ........
Row[3] = ..O..O..
Row[4] = ..O..O..
Row[5] = ...OO...
}
Wisp Pattern 4
{
Row[0] = ........
Row[1] = ......O.
Row[2] = ..O.....
Row[3] = .....O..
Row[4] = .O......
Row[5] = ........
}
Wisp Pattern 5
{
Row[0] = O.O.O.O.
Row[1] = O.O.O.O.
Row[2] = ........
Row[3] = ........
Row[4] = .O.O.O.O
Row[5] = .O.O.O.O
}
Wisp Pattern 6
{
Row[0] = ........
Row[1] = ........
Row[2] = ........
Row[3] = OOO..OOO
Row[4] = ........
Row[5] = ........
}
Wisp Pattern 7
{
Row[0] = .OO..OO.
Row[1] = O......O
Row[2] = ...O....
Row[3] = ..O.....
Row[4] = .O......
Row[5] = O...OOOO
}
Wisp Pattern 8
{
Row[0] = ........
Row[1] = ...OO...
Row[2] = ..OOOO..
Row[3] = ..OOOO..
Row[4] = ...OO...
Row[5] = ........
}
Phase 1
{
# The amount of time it takes for the fur transformation to take place.
Fur Change Color Time = 2.0s
# Maximum amount of time the boss takes to run towards the center before giving up and continuing through Phase 2.
Run to Center Time = 10.0s
}
Phase 2
{
# Percentage of health to transition to Phase 2
Change = 80%
# Percentage of damage reduced on the bear while the barrier is active.
Barrier Damage Reduction = 100%
# Amount of time the environment fades out to pitch black.
Environment Fade-out Time = 0.4s
# Amount of time for the environment to fade in with the new color.
Environment Fade-in Time = 2.0s
# New fade-in environment color.
Environment Fade-In Color = 87, 82, 255, 255
# The amount of range sight the player has with the new environment.
Environment Fade-In Range = 400
# Wisp size in pixels.
Wisp Size = 24,24
# Speed at which the wisp moves downwards.
Wisp Speed = 90
# RGBA value of the wisp.
Wisp Color = 247, 157, 0, 255
# There are 6 rows of wisps and we want them to spawn outside the arena
Wisp Pattern Spawn Y = -144
# Amount of time the wisp fades out after hitting the player.
Wisp Fadeout Time = 0.3s
# How much time (in seconds) to wait between each pattern spawn.
# 100% speed means it takes 6 seconds for all the wisps to move entirely down.
Wisp Pattern Spawn Wait Time = 1.6s
# This value is either Bag or Random. Bag means every pattern gets selected once before re-cycling. Random is truly random with potential repeats.
Wisp Pattern Random Selection = Bag
# How many patterns to spawn before continuing to Phase 3.
Wisp Pattern Spawn Count = 9
# Wait for the wisp count to be at or below this value before proceeding to Phase 3.
Wisp Count Phase Change Wait = 8.0s
}
Phase 3
{
# Amount of time the environment fades out to pitch black.
Environment Fade-out Time = 0.4s
# Amount of time for the environment to fade in with the new color.
Environment Fade-in Time = 2.0s
# New fade-in environment color.
Environment Fade-In Color = 255, 255, 255, 255
# Minimum range the bear will decide to charge the player.
Charge Range = 450
# Amount of time the bear spends preparing to charge.
Charge Cast Time = 0.1s
# Amount of speed to gain during the charge attack.
Charge Speed Boost = 200%
# Cooldown time of the charge attack.
Charge Attack Cooldown = 15.0s
# Amount of damage to deal on impact during a charge attack.
Charge Attack Damage = 30
# Amount of knockback to cause to the player when hit by the charging attack.
Charge Attack Knockback Strength = 3.5
}
Phase 4
{
# Percentage of health to transition to Phase 4
Change = 50%
# Percentage of damage reduced on the bear while the barrier is active.
Barrier Damage Reduction = 100%
# Speed at which the wisp moves downwards.
Wisp Speed = 130%
# RGBA value of the wisp.
Wisp Color = 247, 95, 0, 255
# There are 6 rows of wisps and we want them to spawn outside the arena
Wisp Pattern Spawn Y = -144
# How much time (in seconds) to wait between each pattern spawn.
# 130% speed means it takes 4.61 seconds for all the wisps to move entirely down.
Wisp Pattern Spawn Wait Time = 4.61s
# This value is either Bag or Random. Bag means every pattern gets selected once before re-cycling. Random is truly random with potential repeats.
Wisp Pattern Random Selection = Random
}
}
}