Doukutsu Randamu
FlagTraits Namespace Reference

The list of all current used flag traits. All flag traits are defined in "flagTraits" tag. More...

Variables

constexpr const char * NANITES = "nanites"
 Gives player a nano-machine protection, that activates after getting hit.
 
constexpr const char * TIMESTOP = "timestop"
 Allows player to stop time when pressing Ability key.
 
constexpr const char * INVIDIA = "invidia"
 Transforms Spur weapon into Invidia, a chargable beam of lightning power, that destroys both blocks and enemies.
 
constexpr const char * BLADE_DASH = "blade_dash"
 Empowers dashing ability when used with Blade weapon.
 
constexpr const char * DUCKS = "ducks"
 Surrounds player with orbiting ducky stars, that shoot ducks at nearby enemies.
 
constexpr const char * HOOK_FLAIL = "hook_flail"
 Transforms Energy Flail weapon into Hook, that grapples player into walls with decent velocity with each swings.
 
constexpr const char * WITCH_FIREBALL = "witch_fireball"
 Changes Fireball weapon to have properties, typically associated with Magician's Fireball.
 
constexpr const char * PROPANE_TRAIL = "propane_trail"
 Prompts Fireball projectiles to spew smaller flames when travelling.
 
constexpr const char * BUFFED_MACHINE_GUN = "buffed_machine_gun"
 Buffs Machine Gun weapon by making it deal more damage and apply more velocity even when not at level 3.
 
constexpr const char * CONTROLLED_ROCKET = "controlled_rocket"
 Allows to "control" Rocket Launcher's missile by holding Ability key in exchange for not being invincible.
 
constexpr const char * SUPER_DASH = "super_dash"
 Empowers dashing ability with more momentum and ability to "bump" into enemies.
 
constexpr const char * SPIKE_EVADING = "spike_evading"
 Makes player invulnerable to spikes once certain velocity is reached.
 
constexpr const char * WITCH_HITBOX = "witch_hitbox"
 Makes player's hitbox significantly smaller, allowing them to dodge with more leeway.
 
constexpr const char * WATER_MOB_FRIEND = "water_mob_friend"
 Makes player invulnerable and unable to damage aquatic entities.
 
constexpr const char * PROJECTILE_REPEL = "dash_projectile_repel"
 Makes player destroy any "projectiles" they contact during the dash.
 
constexpr const char * STOMPING = "stomping"
 Allows player to hurt entities via holding Ability key and falling.
 
constexpr const char * LEVEL_4_WEAPONS = "level_4_weapons"
 Allows player to obtain level 4 on their weapons.
 
constexpr const char * IFRAMES_BOOST = "iframes_boost"
 Increases player's immunity frames.
 
constexpr const char * NO_KNOCKBACK = "no_knockback"
 Prevents knockback from taking damage.
 
constexpr const char * KO_PREVENTION = "ko_prevention"
 Saves player from one hit kills by setting their HP to 1 when taking too much damage.
 
constexpr const char * EXPLODE_ON_HIT = "explode_on_hit"
 Spawns a big explosion when player is damaged.
 
constexpr const char * LAST_STAND = "last_stand"
 Allows player to survive one fatal hit per generated stage and stay at 0 HP.
 
constexpr const char * SNAKE_EMPOWER = "buffed_snake"
 Splits Snake's bullet into two bullets, going in synchronized patterns, and makes Snake weapon autofire.
 
constexpr const char * SWORD_SHEATHING = "sword_sheathing"
 Allows player to charge up their next sword weapon swing, giving it increased damage and empowered state on successful hit.
 
constexpr const char * HUNGER_SYSTEM = "hunger_system"
 Enables hunger system, turning player's health bar into food bar.
 
constexpr const char * KNOCKBACK = "knockback"
 Makes player's bullets knock enemies in opposite directions.
 
constexpr const char * MOUSE_TELEPORT = "mouse_teleport"
 Allows player to teleport into empty spaces with mouse control.
 
constexpr const char * ICE_SKATES = "ice_skates"
 Allows player to slide on the ground without losing momentum, while holding Ability key.
 
constexpr const char * NO_SLIPPERY = "no_slippery"
 Makes player immune to ice physics on certain stages.
 
constexpr const char * EXCERPT_ALLIES = "excerpt_allies"
 Switches Curly ally's sprite sheet to more dark, sinister palette.
 
constexpr const char * LOW_HP_RESIST = "low_hp_resist"
 Makes player take less damage, when they are below certain amount of health.
 
constexpr const char * DASH_SPRINT = "dash_sprint"
 Allows player to enter special "sprinting dash" state, when holding Ability key.
 
constexpr const char * DUCK_HEALTH = "duck_health"
 Binds duck counter to player's health and truncates all health interactions to correspond to 3 ducks.
 
constexpr const char * BUFFED_DASH = "buffed_dash"
 Empowers dashing ability, allowing it to go through enemies and spikes without taking damage.
 
constexpr const char * WALL_JUMP = "wall_jump"
 Allows player to jump without ground, if they are next to the wall.
 
constexpr const char * WITCH_ASCENDING = "witch_ascending"
 Allows player to ascend infinitely by just holding Jump button.
 
constexpr const char * DASH_FLOAT = "dash_float"
 Makes dashing ability not experience any gravity, making it go in straight line no matter what.
 
constexpr const char * CAT_DASH = "cat_dash"
 Makes dashing ability go extremely fast in one direction until hitting the wall, like a fierce cat leap.
 
constexpr const char * CAT_FLOAT = "cat_float"
 Reduces player's falling terminal velocity.
 
constexpr const char * WITCH_DASH_VFX = "witch_dash_vfx"
 Makes dashing ability emit pink, self-transparent particles.
 
constexpr const char * STAR_DASH_VFX = "star_dash_vfx"
 Makes dashing ability emit large amounts of small star trailing particles.
 
constexpr const char * BETTER_DUCKS = "better_ducks"
 Binds duck counter to separate counter that empties with each hit and fully regenerates on cooldown end.
 
constexpr const char * CAN_BOOST = "can_boost"
 Allows player to boost with certain amount of base fuel.
 
constexpr const char * BOOSTER_0_8 = "booster_0_8"
 Sets boosting method to Booster 0.8 (straightforward accelerating upward force)
 
constexpr const char * BOOSTER_2_0 = "booster_2_0"
 Sets boosting method to Booster 2.0 (instant high speed in four cardinal directions)
 
constexpr const char * GRAVITY_FLIP = "gravity_flip"
 Allows player to flip their gravity with cooldown, making them fall towards ceiling instead of floor.
 
constexpr const char * EXPLODING_FIREBALL = "exploding_fireball"
 Makes Fireball bullets explode on hitting enemies.
 
constexpr const char * PRESS_DMG_REDUCE = "press_dmg_reduce"
 Reduces falling press enemy's damage.
 
constexpr const char * BULLET_LIFE_BOOST = "bullet_life_boost"
 Modifies life-span of bullets.
 
constexpr const char * DOUBLE_JUMP = "double_jump"
 Allows player to jump in air once.
 
constexpr const char * CHEST_BOOST = "chest_boost"
 Influences amount of chests on a stage.
 
constexpr const char * HIDDEN_EQUIPS = "hidden_equips"
 Defines flags for items that will have their overworld sprites hidden.
 
constexpr const char * AMPHIBIOUS = "amphibious"
 Allows player to breath underwater without depleting air.
 
constexpr const char * HIDDEN_WEAPONS = "hidden_weapons"
 Defines weapons that will have their overworld sprites hidden.
 
constexpr const char * BOOSTER_FUEL_BOOST = "booster_fuel_boost"
 Modifies amount of booster fuel.
 
constexpr const char * ACID_IMMUNITY = "acid_immunity"
 Provides immunity to harmful water in certain stages.
 
constexpr const char * LIFESTEAL = "lifesteal"
 Gives player the lifesteal ability, rewarding them with hearts on dealing damage.
 
constexpr const char * LIFESTEAL_MODIFIER = "lifesteal_modifier"
 Modifies the damage needed to generate a heart from lifestealing.
 
constexpr const char * JUMP_ON_SPIKES = "jump_on_spikes"
 Allows player to jump on spikes to avoid them.
 
constexpr const char * SPIKE_DAMAGE_RESIST = "spike_damage_resist"
 Removes the mechanic with spikes scaling their damage with player's health.
 
constexpr const char * CHILL = "chill"
 Makes player's attacks chill enemies, making them move and attack slower.
 
constexpr const char * WALL_STICKY = "wall_sticky"
 Allows player to stick to a wall with holding Ability key, nullifying their momentum.
 
constexpr const char * ENERGY_PROJECTILE_ON_HIT = "energy_projectile_on_hit"
 Makes player attacks spawn additional energy projectiles.
 
constexpr const char * RANGED_BLOCK_PLACE = "ranged_block_place"
 Allows to place blocks outside of point-blank with mouse controls.
 
constexpr const char * PRECISE_PLACEMENT = "precise_placement"
 Makes Polar Star weapon account for player's momentum, making it far less likely to miss.
 
constexpr const char * MANUAL_ROCKET_STOP = "manual_rocket_stop"
 Allows to manually stop Rocket Launcher's missile with Ability key.
 
constexpr const char * TIGHTER_TURNING = "tighter_turning"
 Makes player's turn around much quicker by applying extra velocity.
 
constexpr const char * MULTI_BLOCK_BREAKING = "multi_block_breaking"
 Changes Nemesis's bullets to spend its "hitpoints" to break blocks instead of instantly disappearing.
 
constexpr const char * OFFSET_NEMESIS = "offset_nemesis"
 Moves Nemesis bullet's initial position upwards.
 
constexpr const char * BULLET_LIMIT_BOOST = "bullet_limit_boost"
 Modifies the amount of bullets certain weapons can have on a screen.
 
constexpr const char * EXTRA_BULLET_CHANCE = "extra_bullet_chance"
 Allows certain weapons to shoot an extra bullet.
 
constexpr const char * FIRERATE_BOOST = "firerate_boost"
 Modifies the firerate of certain weapons.
 
constexpr const char * INACCURATE_VELOCITY_MODIFIER = "inaccurate_velocity_modifier"
 Modifies the velocity and inaccuracy of Machine Gun and Bubbler.
 
constexpr const char * ACCELERATE_FALL = "accelerate_fall"
 Makes player instantly go to terminal falling velocity, when holding Ability key.
 
constexpr const char * SPEED_BOOTS = "speed_boots"
 Allows player to run faster than normal, including fancy particles.
 
constexpr const char * LOW_DAMAGE_NULLIFY = "low_damage_nullify"
 Nullifies damage taken by player, if it is below certain value, with a chance.
 
constexpr const char * WATER_FLOATING = "water_floating"
 Makes player rise out of water instead of sinking, when not holding the Ability key.
 
constexpr const char * MAPPING = "mapping"
 Allows to use Map System screen, when pressing Map key.
 
constexpr const char * EXP_SAVING = "exp_saving"
 Decreases the amount of experience lost on taking damage.
 
constexpr const char * MINING_CHARGE_FROM_DAMAGE = "mining_charge_from_damage"
 Recharges Polar Star and Nemesis weapons when taking damage.
 
constexpr const char * MINING_PASSIVE_CHARGE = "mining_passive_charge"
 Makes Polar Star and Nemesis slowly recharge passively.
 
constexpr const char * SPUR_CHARGE_BOOST = "spur_charge_boost"
 Modifies the rate of Spur weapon charging mechanic.
 
constexpr const char * WEAPON_RECHARGE_BOOST = "weapon_recharge_boost"
 Modifies the amount of bullets certain weapons can have on a screen.
 
constexpr const char * LAVA_PROTECTION = "lava_protection"
 Protects user from taking damage from lava liquid in certain stages for short amount of time.
 
constexpr const char * BREATH_EXTENSION = "breath_extension"
 Extends the amount of time player can breath underwater without drowning.
 
constexpr const char * UNDERWATER_BUBBLE_VFX = "underwater_bubble_vfx"
 Adds bubbler visual effect, when player is underwater.
 
constexpr const char * DROWNING_SLOWDOWN = "drowning_slowdown"
 Decreases the drowning damage rate.
 
constexpr const char * MINING_STORAGE_BOOST = "mining_storage_boost"
 Modifies the maximum amount of ammo mining weapons can have.
 
constexpr const char * JUMP_BOOST = "jump_boost"
 Modifies the jump velocity and charged jump force.
 
constexpr const char * GLIDING = "gliding"
 Allows player to glide with Ability key, making them fall significantly slower and fly faster.
 
constexpr const char * SWIM_BOOST = "swim_boost"
 Increases the swimming momentum.
 
constexpr const char * CHARGED_SWIMS = "charged_swims"
 Allows player to use charged jump mechanics when swimming.
 
constexpr const char * UNDERWATER_DASH = "underwater_dash"
 Empowers dashing ability when used underwater.
 
constexpr const char * ATTACK_DAMAGE_MODIFIER = "attack_damage_modifier"
 Modifies the damage player does with their attacks.
 
constexpr const char * UNIVERSAL_IFRAMES_MODIFIER = "universal_iframes_modifier"
 Modifies the amount of immunity frames player gets, when damaged.
 
constexpr const char * DASH_MODIFIER = "dash_modifier"
 Modifies the properties of dashing ability.
 
constexpr const char * MEDAL_SPAWN = "medal_spawn"
 Spawns specific entities (usually floating medals) at beginning of each stage.
 
constexpr const char * LITTLE_MAN_SPAWN = "little_man_spawn"
 Spawns little man ally at beginning of each stage.
 
constexpr const char * CURLY_SPAWN = "curly_spawn"
 Spawns Curly Brace ally, that sits at a back and shoots specific bullets at same time as player.
 
constexpr const char * BOOSTERAMA_SPAWN = "boosterama_spawn"
 Spawns Boosterama ally at beginning of each stage.
 
constexpr const char * WHIMSICAL_STAR = "whimsical_star"
 Spawns special star bullet, that spins around player and latches onto things, at beginning of each stage.
 
constexpr const char * UNHINDERED_DIVING = "unhindered_diving"
 Removes slowdown from being underwater.
 
constexpr const char * UNLIMITED_SWIM = "unlimited_swim"
 Allows player to swim upwards with just holding Jump underwater.
 
constexpr const char * DASH_FLAME_TRAIL = "dash_flame_trail"
 Causes player to emit flame bullets while dashing.
 
constexpr const char * CONTROLLED_LITTLE_MAN = "controlled_little_man"
 Makes little man ally try to move and jump in same direction as player.
 
constexpr const char * SHOOTING_LITTLE_MAN = "shooting_little_man"
 Makes little man ally shoot certain bullets when trying to attack.
 
constexpr const char * FLAT_DAMAGE_REDUCTION = "flat_damage_reduction"
 Reduces damage taken by player with substraction.
 
constexpr const char * BOOSTER_DAMAGE = "booster_damage"
 Makes booster's particles deal damage.
 
constexpr const char * REVIVAL_FROM_CURLY = "revival_from_curly"
 Allows player to cheat death one time.
 
constexpr const char * HEART_MAGNET = "heart_magnet"
 Makes nearby heart pickups travel towards player.
 
constexpr const char * SAVING_AMMO_CHANCE = "saving_ammo_chance"
 Adds a chance for any weapon to not consume its ammo.
 
constexpr const char * DASH_REFRESHES_JUMP = "dash_refreshes_jump"
 Makes dashing move refresh double jump counter.
 
constexpr const char * GLIDING_AFTER_DASH = "gliding_after_dash"
 Causes player to enter floaty state after dashing for short period of time.
 
constexpr const char * STRAFE = "strafe"
 Allows player to "lock" their shooting direction while holding Ability key.
 
constexpr const char * SCREEN_FREEZE = "screen_freeze"
 Makes all entities on screen freeze in place when pressing Ability key.
 
constexpr const char * LITTLE_N_CURLY_TEAM_UP = "little_n_curly_team_up"
 Makes little man ally shoots specific bullets at same time as Curly ally.
 
constexpr const char * RANGED_BLOCK_BREAK = "ranged_block_break"
 Allows to break blocks outside of point-blank with mouse controls.
 
constexpr const char * MINING_FREEZE_AURA = "mining_freeze_aura"
 Creates a freezing ring around player, when they hold mining weapons.
 
constexpr const char * TELEPORT_DASH = "teleport_dash"
 Turns dashing ability into short-distance teleportation.
 
constexpr const char * VELOCITY_BASED_JUMP = "velocity_based_jump"
 Increases the jump force with player's horizontal velocity.
 
constexpr const char * STAGE_COMPLETE_AMMO_BOOST = "stage_complete_ammo_boost"
 Adds additional ammo to specific weapons at beginning of new stage.
 
constexpr const char * EXPERIENCE_BOOST = "experience_boost"
 Modifies the amount of experience player gets from pickups.
 
constexpr const char * TAKEN_DAMAGE_BOOST = "taken_damage_boost"
 Modifies the amount of damage player gets from enemy hits.
 
constexpr const char * MAX_XSPEED_LIMIT = "max_xspeed_limit"
 Modifies the max speed of the player.
 
constexpr const char * PUPPY_FRIEND = "puppy_friend"
 Makes puppy entities (ID 126) not hurt the player.
 
constexpr const char * NO_LIFE_CAPSULES = "life_capsules"
 Makes life capsules not spawn, regardless of "no life capsules" config setting.
 
constexpr const char * TOTAL_RANDOMNESS = "total_randomness"
 Randomizes a lot of gameplay aspects every frame.
 
constexpr const char * ANIMATION_STUTTERING = "animation_stuttering"
 Changes walking animation rate every frame to create stuttering effect.
 
constexpr const char * SCORE_MULTIPLIER = "score_multiplier"
 Modifies the amount of score from each run.
 
constexpr const char * WALKING_SOUND = "walking_sound"
 Configures the player's walking on ground sound.
 
constexpr const char * UNWIELDY_SPARK_FLYING = "unwieldy_spark_flying"
 Increases acceleration when flying with Robotic Equipment weapon.
 

Detailed Description

The list of all current used flag traits. All flag traits are defined in "flagTraits" tag.

Flag traits are pieces of logic that can be attached to specific flag. They have a name and optionally a list of parameters to be fetched by game's logic.

Variable Documentation

◆ ACCELERATE_FALL

const char* FlagTraits::ACCELERATE_FALL = "accelerate_fall"
inlineconstexpr

Makes player instantly go to terminal falling velocity, when holding Ability key.

Since
1.45

◆ ACID_IMMUNITY

const char* FlagTraits::ACID_IMMUNITY = "acid_immunity"
inlineconstexpr

Provides immunity to harmful water in certain stages.

Since
1.45

◆ AMPHIBIOUS

const char* FlagTraits::AMPHIBIOUS = "amphibious"
inlineconstexpr

Allows player to breath underwater without depleting air.

Note
This trait also removes water splashing.
Since
1.45

◆ ANIMATION_STUTTERING

const char* FlagTraits::ANIMATION_STUTTERING = "animation_stuttering"
inlineconstexpr

Changes walking animation rate every frame to create stuttering effect.

Since
1.45

◆ ATTACK_DAMAGE_MODIFIER

const char* FlagTraits::ATTACK_DAMAGE_MODIFIER = "attack_damage_modifier"
inlineconstexpr

Modifies the damage player does with their attacks.

Parameters
[in]modifierThe modifier for attack damage.
Since
1.45

◆ BETTER_DUCKS

const char* FlagTraits::BETTER_DUCKS = "better_ducks"
inlineconstexpr

Binds duck counter to separate counter that empties with each hit and fully regenerates on cooldown end.

Basically it acts as 3 ducks that are bound to one player hit.

Note
Ducks bound to this trait shoot 2x slower.
See also
DUCKS
Since
1.45

◆ BLADE_DASH

const char* FlagTraits::BLADE_DASH = "blade_dash"
inlineconstexpr

Empowers dashing ability when used with Blade weapon.

Resulting dash move will be much faster and slice through enemies with Blade's projectile.

Remarks
This trait's dash is empowered.
Parameters
[in]speedThe speed multiplier for Blade-empowered dash.
[in]cooldownThe cooldown multiplier for Blade-empowered dash.
Since
1.45

◆ BOOSTER_0_8

const char* FlagTraits::BOOSTER_0_8 = "booster_0_8"
inlineconstexpr

Sets boosting method to Booster 0.8 (straightforward accelerating upward force)

See also
CAN_BOOST
Since
1.45

◆ BOOSTER_2_0

const char* FlagTraits::BOOSTER_2_0 = "booster_2_0"
inlineconstexpr

Sets boosting method to Booster 2.0 (instant high speed in four cardinal directions)

Parameters
[in]no_slowdownA boolean toggle on whenever to preserve momentum on ending boosting or not.
See also
CAN_BOOST
Since
1.45

◆ BOOSTER_DAMAGE

const char* FlagTraits::BOOSTER_DAMAGE = "booster_damage"
inlineconstexpr

Makes booster's particles deal damage.

Parameters
[in]rangeThe radius of boosting particle's hitbox in pixels.
[in]damageThe amount of damage boosting particle does per frame.
Since
1.45

◆ BOOSTER_FUEL_BOOST

const char* FlagTraits::BOOSTER_FUEL_BOOST = "booster_fuel_boost"
inlineconstexpr

Modifies amount of booster fuel.

Note
This trait will not apply, if flag also has CAN_BOOST trait.
Parameters
[in]amountThe modifier for booster fuel.
Since
1.45

◆ BOOSTERAMA_SPAWN

const char* FlagTraits::BOOSTERAMA_SPAWN = "boosterama_spawn"
inlineconstexpr

Spawns Boosterama ally at beginning of each stage.

Note
The Boosteramas will be automatically spawned or despawned when flag with this trait will have its state changed.
Parameters
[in]amountThe amount of Boosteramas that will spawn.
Since
1.45

◆ BREATH_EXTENSION

const char* FlagTraits::BREATH_EXTENSION = "breath_extension"
inlineconstexpr

Extends the amount of time player can breath underwater without drowning.

Parameters
[in]modifierThe modifier for breath length.
Since
1.45

◆ BUFFED_DASH

const char* FlagTraits::BUFFED_DASH = "buffed_dash"
inlineconstexpr

Empowers dashing ability, allowing it to go through enemies and spikes without taking damage.

Note
Going through enemies deals at least 4 damage to them.
Since
1.45

◆ BUFFED_MACHINE_GUN

const char* FlagTraits::BUFFED_MACHINE_GUN = "buffed_machine_gun"
inlineconstexpr

Buffs Machine Gun weapon by making it deal more damage and apply more velocity even when not at level 3.

Todo
Add damage boost parameters.
Since
1.45

◆ BULLET_LIFE_BOOST

const char* FlagTraits::BULLET_LIFE_BOOST = "bullet_life_boost"
inlineconstexpr

Modifies life-span of bullets.

Note
This trait doesn't affect Floodtide or Hellsweep weapons.
Parameters
[in]boostThe modifier to bullet lifespan.
Since
1.45

◆ BULLET_LIMIT_BOOST

const char* FlagTraits::BULLET_LIMIT_BOOST = "bullet_limit_boost"
inlineconstexpr

Modifies the amount of bullets certain weapons can have on a screen.

Note
The currently supported weapons are machine_gun, fireball and bubbler.
Template Parameters
gun_nameThe modifier of bullet limit for specified weapon. Defaults to 1.0.
Since
1.45

◆ CAN_BOOST

const char* FlagTraits::CAN_BOOST = "can_boost"
inlineconstexpr

Allows player to boost with certain amount of base fuel.

Warning
This trait does nothing if it is not supplement by one of ways to boost: BOOSTER_0_8 or BOOSTER_2_0
See also
BOOSTER_FUEL_BOOST
Parameters
[in]amountThe base amount of fuel this trait will provide to booster.
Since
1.45

◆ CAT_DASH

const char* FlagTraits::CAT_DASH = "cat_dash"
inlineconstexpr

Makes dashing ability go extremely fast in one direction until hitting the wall, like a fierce cat leap.

Remarks
This trait's dash is empowered (but does 3 more damage).
Parameters
[in]speedThe speed multiplier for cat leaping dash.
[in]cooldownThe cooldown multiplier for cat leaping dash.
Since
1.45

◆ CAT_FLOAT

const char* FlagTraits::CAT_FLOAT = "cat_float"
inlineconstexpr

Reduces player's falling terminal velocity.

Todo
Add parameter for velocity multiplier.
Since
1.45

◆ CHARGED_SWIMS

const char* FlagTraits::CHARGED_SWIMS = "charged_swims"
inlineconstexpr

Allows player to use charged jump mechanics when swimming.

Since
1.45

◆ CHEST_BOOST

const char* FlagTraits::CHEST_BOOST = "chest_boost"
inlineconstexpr

Influences amount of chests on a stage.

Parameters
[in]baseThe modifier to base amount of chests. Defaults to 1.0.
[in]amountThe static number added to amount of chests after other worldgen modifiers.
Since
1.45

◆ CHILL

const char* FlagTraits::CHILL = "chill"
inlineconstexpr

Makes player's attacks chill enemies, making them move and attack slower.

Parameters
[in]chanceThe chance for enemy to be chilled on attack. Used as 1/X.
[in]rateThe amount of freeze frames each successful chill gives.
[in]capThe maximum amount of freeze amounts one enemy can have.
[in]resist_npcsThe entity IDs that will have reduced amount of chilling applied.
[in]resist_rateThe modifier to rate when chill is applied to resistant entities.
Since
1.45

◆ CONTROLLED_LITTLE_MAN

const char* FlagTraits::CONTROLLED_LITTLE_MAN = "controlled_little_man"
inlineconstexpr

Makes little man ally try to move and jump in same direction as player.

Since
1.45

◆ CONTROLLED_ROCKET

const char* FlagTraits::CONTROLLED_ROCKET = "controlled_rocket"
inlineconstexpr

Allows to "control" Rocket Launcher's missile by holding Ability key in exchange for not being invincible.

Since
1.45

◆ CURLY_SPAWN

const char* FlagTraits::CURLY_SPAWN = "curly_spawn"
inlineconstexpr

Spawns Curly Brace ally, that sits at a back and shoots specific bullets at same time as player.

Note
The Curly ally and her gun will be automatically spawned or despawned when flag with this trait will have its state changed.
Parameters
[in]bulletThe ID of bullet for Curly ally to shoot.
[in]bullet_limitThe maximum amount of Curly ally's bullets on screen.
Since
1.45

◆ DASH_FLAME_TRAIL

const char* FlagTraits::DASH_FLAME_TRAIL = "dash_flame_trail"
inlineconstexpr

Causes player to emit flame bullets while dashing.

Parameters
[in]rateThe duration in frames between each flame. Defaults to 3.
Since
1.45

◆ DASH_FLOAT

const char* FlagTraits::DASH_FLOAT = "dash_float"
inlineconstexpr

Makes dashing ability not experience any gravity, making it go in straight line no matter what.

Since
1.45

◆ DASH_MODIFIER

const char* FlagTraits::DASH_MODIFIER = "dash_modifier"
inlineconstexpr

Modifies the properties of dashing ability.

Parameters
[in]durationThe duration multiplier for underwater dash.
[in]speedThe speed multiplier for underwater dash.
[in]cooldownThe cooldown multiplier for underwater dash.
Since
1.45

◆ DASH_REFRESHES_JUMP

const char* FlagTraits::DASH_REFRESHES_JUMP = "dash_refreshes_jump"
inlineconstexpr

Makes dashing move refresh double jump counter.

Since
1.45

◆ DASH_SPRINT

const char* FlagTraits::DASH_SPRINT = "dash_sprint"
inlineconstexpr

Allows player to enter special "sprinting dash" state, when holding Ability key.

When "sprinting dash" is active, the player moves and turns much quicker, becomes much floatier and can double jump.

It also allows to dodge one direct hit with a cooldown.

Todo
Add parameters for hit cooldown and velocity.
Since
1.45

◆ DOUBLE_JUMP

const char* FlagTraits::DOUBLE_JUMP = "double_jump"
inlineconstexpr

Allows player to jump in air once.

Since
1.45

◆ DROWNING_SLOWDOWN

const char* FlagTraits::DROWNING_SLOWDOWN = "drowning_slowdown"
inlineconstexpr

Decreases the drowning damage rate.

Parameters
[in]modifierThe modifier for drowning rate.
Since
1.45

◆ DUCK_HEALTH

const char* FlagTraits::DUCK_HEALTH = "duck_health"
inlineconstexpr

Binds duck counter to player's health and truncates all health interactions to correspond to 3 ducks.

Note
Those interactions include healing, taking damage or getting life upgrades.
See also
DUCKS
Since
1.45

◆ DUCKS

const char* FlagTraits::DUCKS = "ducks"
inlineconstexpr

Surrounds player with orbiting ducky stars, that shoot ducks at nearby enemies.

The movement pattern of ducky stars is the same as with vanilla's whimsical stars.

Note
The duck counter can correspond to one of two things, depending on trait: health (DUCK_HEALTH) or its own counter (#BUFFED_DUCKS).
Since
1.45

◆ ENERGY_PROJECTILE_ON_HIT

const char* FlagTraits::ENERGY_PROJECTILE_ON_HIT = "energy_projectile_on_hit"
inlineconstexpr

Makes player attacks spawn additional energy projectiles.

Parameters
[in]chanceThe chance for energy projectile to spawn. Used as 1/X.
Todo
Add parameters for range and projectile.
Since
1.45

◆ EXCERPT_ALLIES

const char* FlagTraits::EXCERPT_ALLIES = "excerpt_allies"
inlineconstexpr

Switches Curly ally's sprite sheet to more dark, sinister palette.

Since
1.45

◆ EXP_SAVING

const char* FlagTraits::EXP_SAVING = "exp_saving"
inlineconstexpr

Decreases the amount of experience lost on taking damage.

Parameters
[in]modifierThe modifier for experience loss reduction.
Since
1.45

◆ EXPERIENCE_BOOST

const char* FlagTraits::EXPERIENCE_BOOST = "experience_boost"
inlineconstexpr

Modifies the amount of experience player gets from pickups.

Parameters
[in]modifierThe modifier for the experience amount.
Since
1.45

◆ EXPLODE_ON_HIT

const char* FlagTraits::EXPLODE_ON_HIT = "explode_on_hit"
inlineconstexpr

Spawns a big explosion when player is damaged.

Since
1.45

◆ EXPLODING_FIREBALL

const char* FlagTraits::EXPLODING_FIREBALL = "exploding_fireball"
inlineconstexpr

Makes Fireball bullets explode on hitting enemies.

Invariant
The explosions will never overlap, allowing fireballs to go through more entities.
Since
1.45

◆ EXTRA_BULLET_CHANCE

const char* FlagTraits::EXTRA_BULLET_CHANCE = "extra_bullet_chance"
inlineconstexpr

Allows certain weapons to shoot an extra bullet.

Note
The currently supported weapons are machine_gun, gatling_gun and bubbler.
Gatling Gun will have its bullets increased by 1.5x on successful proc.
Template Parameters
gun_nameThe chance for extra bullet to be shot. Used as 1/X.
Since
1.45

◆ FIRERATE_BOOST

const char* FlagTraits::FIRERATE_BOOST = "firerate_boost"
inlineconstexpr

Modifies the firerate of certain weapons.

Note
The currently supported weapons are machine_gun, gatling_gun and bubbler.
Template Parameters
gun_nameThe modifier of firerate for specified weapon. Positive modifier means faster firerate, negative modifier means slower firerate. Defaults to 0.0.
Warning
The modifier for any given weapon cannot be more than 1.0.
Since
1.45

◆ FLAT_DAMAGE_REDUCTION

const char* FlagTraits::FLAT_DAMAGE_REDUCTION = "flat_damage_reduction"
inlineconstexpr

Reduces damage taken by player with substraction.

Note
This trait cannot reduce the damage beyond 1.
Parameters
[in]amountThe amount of damage substracted from taken damage.
Since
1.45

◆ GLIDING

const char* FlagTraits::GLIDING = "gliding"
inlineconstexpr

Allows player to glide with Ability key, making them fall significantly slower and fly faster.

Parameters
[in]max_speedThe modifier for max speed during gliding.
[in]accelerationThe modifier for acceleration rate during gliding.
[in]fall_slowdownThe modifier for falling speed reduction.
Since
1.45

◆ GLIDING_AFTER_DASH

const char* FlagTraits::GLIDING_AFTER_DASH = "gliding_after_dash"
inlineconstexpr

Causes player to enter floaty state after dashing for short period of time.

Parameters
[in]speed_multiplierThe modifier for maximum falling velocity during dash glide state.
[in]durationThe duration of this mechanic in frames.
Since
1.45

◆ GRAVITY_FLIP

const char* FlagTraits::GRAVITY_FLIP = "gravity_flip"
inlineconstexpr

Allows player to flip their gravity with cooldown, making them fall towards ceiling instead of floor.

Note
The weapon shoot directions will also be reversed.
Todo
Add parameter for cooldown.
Since
1.45

◆ HEART_MAGNET

const char* FlagTraits::HEART_MAGNET = "heart_magnet"
inlineconstexpr

Makes nearby heart pickups travel towards player.

Parameters
[in]distanceThe distance in pixels for hearts to start gravitating towards the player.
[in]speedThe modifier for speed, at which hearts move.
Since
1.45

◆ HIDDEN_EQUIPS

const char* FlagTraits::HIDDEN_EQUIPS = "hidden_equips"
inlineconstexpr

Defines flags for items that will have their overworld sprites hidden.

Parameters
[in]flagsThe array of flags to hide. The flag must correspond to visual equip.
Since
1.45

◆ HIDDEN_WEAPONS

const char* FlagTraits::HIDDEN_WEAPONS = "hidden_weapons"
inlineconstexpr

Defines weapons that will have their overworld sprites hidden.

Parameters
[in]idsThe array of weapon IDs to hide.
Since
1.45

◆ HOOK_FLAIL

const char* FlagTraits::HOOK_FLAIL = "hook_flail"
inlineconstexpr

Transforms Energy Flail weapon into Hook, that grapples player into walls with decent velocity with each swings.

Todo
Add parameters for weapon's icon and weapon's description.
Since
1.45

◆ HUNGER_SYSTEM

const char* FlagTraits::HUNGER_SYSTEM = "hunger_system"
inlineconstexpr

Enables hunger system, turning player's health bar into food bar.

When active, the health bar will get unique, yellow-ish color and will slowly tick down. The special food pickups will be generated sometimes, when killing enemies.

Todo
Add parameters for hunger tick rate and food drop chance.

◆ ICE_SKATES

const char* FlagTraits::ICE_SKATES = "ice_skates"
inlineconstexpr

Allows player to slide on the ground without losing momentum, while holding Ability key.

Note
When at max velocity, the jump height will be significantly increased.
Todo
Add parameters for jump height modifier and max speed.
Since
1.45

◆ IFRAMES_BOOST

const char* FlagTraits::IFRAMES_BOOST = "iframes_boost"
inlineconstexpr

Increases player's immunity frames.

Note
When taking 1 damage, the immunity frames will be actually decreased.
Parameters
[in]modifierThe modifier for immunity frames.
[in]modifier_lightThe modifier for immunity frames received for taking 1 damage.
Since
1.45

◆ INACCURATE_VELOCITY_MODIFIER

const char* FlagTraits::INACCURATE_VELOCITY_MODIFIER = "inaccurate_velocity_modifier"
inlineconstexpr

Modifies the velocity and inaccuracy of Machine Gun and Bubbler.

Note
All parameters default to 1.0.
Parameters
[in]machine_gun_velocityThe modifier for base speed of Machine Gun's bullet.
[in]machine_gun_inaccuracyThe modifier for inaccuracy of Machine Gun's bullet.
[in]bubbler_velocityThe modifier for base speed of Bubbler's bullet.
[in]bubbler_inaccuracyThe modifier for inaccuracy of Bubbler's bullet.
Since
1.45

◆ INVIDIA

const char* FlagTraits::INVIDIA = "invidia"
inlineconstexpr

Transforms Spur weapon into Invidia, a chargable beam of lightning power, that destroys both blocks and enemies.

Todo
Add parameters for weapon's icon and weapon's description.
Since
1.45

◆ JUMP_BOOST

const char* FlagTraits::JUMP_BOOST = "jump_boost"
inlineconstexpr

Modifies the jump velocity and charged jump force.

Parameters
[in]modifierThe modifier for base jump velocity.
[in]charge_modifierThe modifier for charged jump force amount.
Since
1.45

◆ JUMP_ON_SPIKES

const char* FlagTraits::JUMP_ON_SPIKES = "jump_on_spikes"
inlineconstexpr

Allows player to jump on spikes to avoid them.

Remarks
This trait's jump will count as usage of double jump.
Note
The jump velocity will be lower, when activating this trait.
Todo
Add parameter for jump velocity modifier.
Since
1.45

◆ KNOCKBACK

const char* FlagTraits::KNOCKBACK = "knockback"
inlineconstexpr

Makes player's bullets knock enemies in opposite directions.

Note
Each bullet has their own knockback "force" and each entity has set knockback resistance.
Entities with IMMUNE_TO_KNOCKBACK NPC tag will not be affected.
Since
1.45

◆ KO_PREVENTION

const char* FlagTraits::KO_PREVENTION = "ko_prevention"
inlineconstexpr

Saves player from one hit kills by setting their HP to 1 when taking too much damage.

Note
This will not save the player, if they are already at 1 HP.
Since
1.45

◆ LAST_STAND

const char* FlagTraits::LAST_STAND = "last_stand"
inlineconstexpr

Allows player to survive one fatal hit per generated stage and stay at 0 HP.

Note
While at 0 HP, the player's momentum is increased.
Parameters
[in]speed_boostThe modifier applied to player's speed, when they are at 0 HP.
[in]flag_markThe flag used to mark the usage of this trait. Defaults to 4301.
Since
1.45

◆ LAVA_PROTECTION

const char* FlagTraits::LAVA_PROTECTION = "lava_protection"
inlineconstexpr

Protects user from taking damage from lava liquid in certain stages for short amount of time.

Parameters
[in]amountThe amount of lava protection time in frames.
Since
1.45

◆ LEVEL_4_WEAPONS

const char* FlagTraits::LEVEL_4_WEAPONS = "level_4_weapons"
inlineconstexpr

Allows player to obtain level 4 on their weapons.

Since
1.45

◆ LIFESTEAL

const char* FlagTraits::LIFESTEAL = "lifesteal"
inlineconstexpr

Gives player the lifesteal ability, rewarding them with hearts on dealing damage.

Note
Only entities with LIVING NPC trait can give hearts.
See also
LIFESTEAL_MODIFIER
Parameters
[in]amount_per_heartThe amount of damage needed to generate one heart pickup.
Since
1.45

◆ LIFESTEAL_MODIFIER

const char* FlagTraits::LIFESTEAL_MODIFIER = "lifesteal_modifier"
inlineconstexpr

Modifies the damage needed to generate a heart from lifestealing.

Parameters
[in]amountThe modifier for damage per one heart, the lower number will make it require more damage.
Since
1.45

◆ LITTLE_MAN_SPAWN

const char* FlagTraits::LITTLE_MAN_SPAWN = "little_man_spawn"
inlineconstexpr

Spawns little man ally at beginning of each stage.

Note
The little mans will be automatically spawned or despawned when flag with this trait will have its state changed.
Parameters
[in]amountThe amount of little mans that will spawn.
Since
1.45

◆ LITTLE_N_CURLY_TEAM_UP

const char* FlagTraits::LITTLE_N_CURLY_TEAM_UP = "little_n_curly_team_up"
inlineconstexpr

Makes little man ally shoots specific bullets at same time as Curly ally.

Parameters
[in]bulletThe ID of bullet for little man ally to shoot.
[in]bullet_limitThe maximum amount of little man ally's bullets on screen.
Since
1.45

◆ LOW_DAMAGE_NULLIFY

const char* FlagTraits::LOW_DAMAGE_NULLIFY = "low_damage_nullify"
inlineconstexpr

Nullifies damage taken by player, if it is below certain value, with a chance.

Parameters
[in]thresholdThe value, below which the damage can be nullified. Inclusive.
[in]chanceThe chance for damage to be nullified. Used as 1/X.
Since
1.45

◆ LOW_HP_RESIST

const char* FlagTraits::LOW_HP_RESIST = "low_hp_resist"
inlineconstexpr

Makes player take less damage, when they are below certain amount of health.

Todo
Add parameters for threshold and damage reduction.
Since
1.45

◆ MANUAL_ROCKET_STOP

const char* FlagTraits::MANUAL_ROCKET_STOP = "manual_rocket_stop"
inlineconstexpr

Allows to manually stop Rocket Launcher's missile with Ability key.

Since
1.45

◆ MAPPING

const char* FlagTraits::MAPPING = "mapping"
inlineconstexpr

Allows to use Map System screen, when pressing Map key.

Since
1.45

◆ MAX_XSPEED_LIMIT

const char* FlagTraits::MAX_XSPEED_LIMIT = "max_xspeed_limit"
inlineconstexpr

Modifies the max speed of the player.

Parameters
[in]modifierThe modifier for player's max speed.
Since
1.45

◆ MEDAL_SPAWN

const char* FlagTraits::MEDAL_SPAWN = "medal_spawn"
inlineconstexpr

Spawns specific entities (usually floating medals) at beginning of each stage.

Note
The set NPCs will be automatically spawned or despawned when flag with this trait will have its state changed.
Parameters
[in]idsThe array of NPC IDs that will spawn.
Since
1.45

◆ MINING_CHARGE_FROM_DAMAGE

const char* FlagTraits::MINING_CHARGE_FROM_DAMAGE = "mining_charge_from_damage"
inlineconstexpr

Recharges Polar Star and Nemesis weapons when taking damage.

Parameters
[in]amountThe base modifier for resulting weapon charge.
Since
1.45

◆ MINING_FREEZE_AURA

const char* FlagTraits::MINING_FREEZE_AURA = "mining_freeze_aura"
inlineconstexpr

Creates a freezing ring around player, when they hold mining weapons.

Parameters
[in]distanceThe range of freeze ring in pixels.
[in]rateThe amount of freeze frames applied inside the ring.
Since
1.45

◆ MINING_PASSIVE_CHARGE

const char* FlagTraits::MINING_PASSIVE_CHARGE = "mining_passive_charge"
inlineconstexpr

Makes Polar Star and Nemesis slowly recharge passively.

Parameters
[in]polar_starThe amount of frames needed for a single charge to be restored for Polar Star.
[in]nemesisThe amount of frames needed for a single charge to be restored for Nemesis.
Since
1.45

◆ MINING_STORAGE_BOOST

const char* FlagTraits::MINING_STORAGE_BOOST = "mining_storage_boost"
inlineconstexpr

Modifies the maximum amount of ammo mining weapons can have.

Parameters
[in]modifierThe modifier for maximum amount of ammo. If set to 0, the ammo will be infinite.
Since
1.45

◆ MOUSE_TELEPORT

const char* FlagTraits::MOUSE_TELEPORT = "mouse_teleport"
inlineconstexpr

Allows player to teleport into empty spaces with mouse control.

Note
The player will be stunned during teleportation process.
Todo
Add parameters for stun time and cooldown.
Since
1.45

◆ MULTI_BLOCK_BREAKING

const char* FlagTraits::MULTI_BLOCK_BREAKING = "multi_block_breaking"
inlineconstexpr

Changes Nemesis's bullets to spend its "hitpoints" to break blocks instead of instantly disappearing.

Since
1.45

◆ NANITES

const char* FlagTraits::NANITES = "nanites"
inlineconstexpr

Gives player a nano-machine protection, that activates after getting hit.

This shield makes player invulnerable and increases their attack damage.

Parameters
[in]projectilesThe boolean toggle specifying if nano-protection should shoot projectiles. Defaults to false.
[in]active_projectile_rateThe amount of frames between each projectile when shield is activated.
[in]passive_projectile_rateThe amount of frames between each projectile when shield is not active.
Since
1.45

◆ NO_KNOCKBACK

const char* FlagTraits::NO_KNOCKBACK = "no_knockback"
inlineconstexpr

Prevents knockback from taking damage.

Since
1.45

◆ NO_LIFE_CAPSULES

const char* FlagTraits::NO_LIFE_CAPSULES = "life_capsules"
inlineconstexpr

Makes life capsules not spawn, regardless of "no life capsules" config setting.

Since
1.45

◆ NO_SLIPPERY

const char* FlagTraits::NO_SLIPPERY = "no_slippery"
inlineconstexpr

Makes player immune to ice physics on certain stages.

Since
1.45

◆ OFFSET_NEMESIS

const char* FlagTraits::OFFSET_NEMESIS = "offset_nemesis"
inlineconstexpr

Moves Nemesis bullet's initial position upwards.

Remarks
Synergizes with MULTI_BLOCK_BREAKING to allow breaking 2-block-wide corridors.
Todo
Add parameters for exact value.
Since
1.45

◆ PRECISE_PLACEMENT

const char* FlagTraits::PRECISE_PLACEMENT = "precise_placement"
inlineconstexpr

Makes Polar Star weapon account for player's momentum, making it far less likely to miss.

Since
1.45

◆ PRESS_DMG_REDUCE

const char* FlagTraits::PRESS_DMG_REDUCE = "press_dmg_reduce"
inlineconstexpr

Reduces falling press enemy's damage.

Parameters
[in]amountThe resulting damage of press (the initial damage is 13).
Since
1.45

◆ PROJECTILE_REPEL

const char* FlagTraits::PROJECTILE_REPEL = "dash_projectile_repel"
inlineconstexpr

Makes player destroy any "projectiles" they contact during the dash.

Note
Projectiles are entities that have 1 HP when trait is applied.
Todo
Probably should make a NPC trait for projectiles...
Since
1.45

◆ PROPANE_TRAIL

const char* FlagTraits::PROPANE_TRAIL = "propane_trail"
inlineconstexpr

Prompts Fireball projectiles to spew smaller flames when travelling.

Parameters
[in]rateThe delay between each flame in frames.
Since
1.45

◆ PUPPY_FRIEND

const char* FlagTraits::PUPPY_FRIEND = "puppy_friend"
inlineconstexpr

Makes puppy entities (ID 126) not hurt the player.

Since
1.45

◆ RANGED_BLOCK_BREAK

const char* FlagTraits::RANGED_BLOCK_BREAK = "ranged_block_break"
inlineconstexpr

Allows to break blocks outside of point-blank with mouse controls.

Note
The visual representation of available range will be visible when holding Nemesis weapon.
Parameters
[in]distanceThe max distance for breaking blocks in blocks.
Since
1.45

◆ RANGED_BLOCK_PLACE

const char* FlagTraits::RANGED_BLOCK_PLACE = "ranged_block_place"
inlineconstexpr

Allows to place blocks outside of point-blank with mouse controls.

Note
The visual representation of available range will be visible when holding Polar Star weapon.
Parameters
[in]distanceThe max distance for placing blocks in blocks.
Since
1.45

◆ REVIVAL_FROM_CURLY

const char* FlagTraits::REVIVAL_FROM_CURLY = "revival_from_curly"
inlineconstexpr

Allows player to cheat death one time.

When the trait triggers, the Curly ally will be removed, the special flag will be set and the item, corresponding to flag with this trait, will be removed from inventory.

Note
Curly ally from CURLY_SPAWN is not necessary for this trait to activate.
Parameters
[in]mark_flagThe flag used to track this trait's activation. Defaults to 1070.
Since
1.45

◆ SAVING_AMMO_CHANCE

const char* FlagTraits::SAVING_AMMO_CHANCE = "saving_ammo_chance"
inlineconstexpr

Adds a chance for any weapon to not consume its ammo.

Parameters
[in]chanceThe chance for saving ammo. Used as 1/X.
Since
1.45

◆ SCORE_MULTIPLIER

const char* FlagTraits::SCORE_MULTIPLIER = "score_multiplier"
inlineconstexpr

Modifies the amount of score from each run.

Parameters
[in]amountThe modifier for the score.
Since
1.45

◆ SCREEN_FREEZE

const char* FlagTraits::SCREEN_FREEZE = "screen_freeze"
inlineconstexpr

Makes all entities on screen freeze in place when pressing Ability key.

Parameters
[in]amountThe amount of freeze frames each character recieves.
Since
1.45

◆ SHOOTING_LITTLE_MAN

const char* FlagTraits::SHOOTING_LITTLE_MAN = "shooting_little_man"
inlineconstexpr

Makes little man ally shoot certain bullets when trying to attack.

Parameters
[in]bulletThe ID of bullet for little man ally to shoot.
[in]rateThe time between each bullet little man ally shoots in frames. Defaults to 9.
Since
1.45

◆ SNAKE_EMPOWER

const char* FlagTraits::SNAKE_EMPOWER = "buffed_snake"
inlineconstexpr

Splits Snake's bullet into two bullets, going in synchronized patterns, and makes Snake weapon autofire.

Note
Split Snake bullets have halfed damage.
Todo
Split into SNAKE_EMPOWER and SNAKE_AUTOFIRE.
Since
1.45

◆ SPEED_BOOTS

const char* FlagTraits::SPEED_BOOTS = "speed_boots"
inlineconstexpr

Allows player to run faster than normal, including fancy particles.

Parameters
[in]speed_multiplierThe modifier for max running speed.
[in]accelerationThe modifier for acceleration rate.
[in]particle_thresholdThe fraction of running speed at which running particles should appear.
[in]air_speed_multiplierThe modifier for max running speed in the air. Defaults to 1.0.
[in]air_accelerationThe modifier for acceleration rate in the air. Defaults to 1.0.
Since
1.45

◆ SPIKE_DAMAGE_RESIST

const char* FlagTraits::SPIKE_DAMAGE_RESIST = "spike_damage_resist"
inlineconstexpr

Removes the mechanic with spikes scaling their damage with player's health.

Invariant
Therefore, the spike's base damage will be always 5.
Since
1.45

◆ SPIKE_EVADING

const char* FlagTraits::SPIKE_EVADING = "spike_evading"
inlineconstexpr

Makes player invulnerable to spikes once certain velocity is reached.

Parameters
[in]thresholdThe horizontal threshold for spike evading in subpixels.
Since
1.45

◆ SPUR_CHARGE_BOOST

const char* FlagTraits::SPUR_CHARGE_BOOST = "spur_charge_boost"
inlineconstexpr

Modifies the rate of Spur weapon charging mechanic.

Parameters
[in]modifierThe modifier for Spur charge rate. Defaults to 1.0.
Since
1.45

◆ STAGE_COMPLETE_AMMO_BOOST

const char* FlagTraits::STAGE_COMPLETE_AMMO_BOOST = "stage_complete_ammo_boost"
inlineconstexpr

Adds additional ammo to specific weapons at beginning of new stage.

Warning
The parameters have to have same length for this trait to work.
Parameters
[in]weaponsThe IDs for weapons for their max ammunition to be increased.
[in]ammoThe amount of max ammo each weapon ID would get.
Since
1.45

◆ STAR_DASH_VFX

const char* FlagTraits::STAR_DASH_VFX = "star_dash_vfx"
inlineconstexpr

Makes dashing ability emit large amounts of small star trailing particles.

Since
1.45

◆ STOMPING

const char* FlagTraits::STOMPING = "stomping"
inlineconstexpr

Allows player to hurt entities via holding Ability key and falling.

Note
The player will not take damage from enemies while stomping.
Parameters
[in]explosiveThe boolean toggle for whenever the damage method will be explosive or via special bullet.
Since
1.45

◆ STRAFE

const char* FlagTraits::STRAFE = "strafe"
inlineconstexpr

Allows player to "lock" their shooting direction while holding Ability key.

Since
1.45

◆ SUPER_DASH

const char* FlagTraits::SUPER_DASH = "super_dash"
inlineconstexpr

Empowers dashing ability with more momentum and ability to "bump" into enemies.

Super dashe has larger hitbox when touching enemies, allowing easier connect for hits. On successful bonk, it gives 60 immunity frames and bounces player backwards.

Note
An enemy must have BONKABLE NPC trait, otherwise the super dash works as normal empowered dash.
Parameters
[in]explodeThe boolean toggle for whenever player should "bonk" from enemy or "ram" through with spawning explosions. Defaults to false.
[in]damageThe amount of damage done to enemy on successful bonk.
[in]freezeThe boolean toggle for whenever successful bonk should freeze the enemy. Defaults to false.
[in]freeze_timeThe amount of chilling frames given to enemy on successful freezing bonk.
Since
1.45

◆ SWIM_BOOST

const char* FlagTraits::SWIM_BOOST = "swim_boost"
inlineconstexpr

Increases the swimming momentum.

Parameters
[in]modifierThe modifier for swimming momentum.
Since
1.45

◆ SWORD_SHEATHING

const char* FlagTraits::SWORD_SHEATHING = "sword_sheathing"
inlineconstexpr

Allows player to charge up their next sword weapon swing, giving it increased damage and empowered state on successful hit.

When empowered, swords will swing significantly faster and fire additional projectiles.

Todo
Probably needs a lot more parameters, like charge duration, projectile type and damage multiplier.
Since
1.45

◆ TAKEN_DAMAGE_BOOST

const char* FlagTraits::TAKEN_DAMAGE_BOOST = "taken_damage_boost"
inlineconstexpr

Modifies the amount of damage player gets from enemy hits.

Parameters
[in]modifierThe modifier for the amount of taken damage.
Since
1.45

◆ TELEPORT_DASH

const char* FlagTraits::TELEPORT_DASH = "teleport_dash"
inlineconstexpr

Turns dashing ability into short-distance teleportation.

Resulting dash move can go through walls and any danger.

Parameters
[in]distanceThe length of teleportation dash in blocks.
[in]damageThe amount of damage entities in dash's trajectory take.
Since
1.45

◆ TIGHTER_TURNING

const char* FlagTraits::TIGHTER_TURNING = "tighter_turning"
inlineconstexpr

Makes player's turn around much quicker by applying extra velocity.

Parameters
[in]effectThe multiplier to player's velocity when turning around. Defaults to 1.
Since
1.45

◆ TIMESTOP

const char* FlagTraits::TIMESTOP = "timestop"
inlineconstexpr

Allows player to stop time when pressing Ability key.

Note
TIME_STOP_COEFFICIENTS NPC tag can be used to configure how much slowdown the entity will recieve during time stop effect.
Since
1.45

◆ TOTAL_RANDOMNESS

const char* FlagTraits::TOTAL_RANDOMNESS = "total_randomness"
inlineconstexpr

Randomizes a lot of gameplay aspects every frame.

Remarks
Every parameter used by this trait is a range: it has two variants: min and max, both defined as percentages. So, to describe acceleration trait parameter, for example, you need to define both min_acceleration and max_acceleration.
Parameters
[in]dealt_damageThe range for player's attack damage.
[in]damageThe range for player's taken damage.
[in]shockThe range for player's immunity frames.
[in]expThe range for amount of experience player gets from pickups.
[in]start_lifeThe range for player's starting life.
[in]limitThe range for player's max movement speed.
[in]runningThe range for player's max running speed.
[in]jumpThe range for player's jumping velocity.
[in]gravityThe range for player's falling velocity.
[in]frictionThe range for player's ground friction.
[in]accelerationThe range for player's acceleration.
Since
1.45

◆ UNDERWATER_BUBBLE_VFX

const char* FlagTraits::UNDERWATER_BUBBLE_VFX = "underwater_bubble_vfx"
inlineconstexpr

Adds bubbler visual effect, when player is underwater.

Since
1.45

◆ UNDERWATER_DASH

const char* FlagTraits::UNDERWATER_DASH = "underwater_dash"
inlineconstexpr

Empowers dashing ability when used underwater.

Resulting dash move has short cooldown by default and moves through water with ease.

Remarks
This trait's dash is empowered.
Parameters
[in]speedThe speed multiplier for underwater dash.
[in]cooldownThe cooldown multiplier for underwater dash.
Since
1.45

◆ UNHINDERED_DIVING

const char* FlagTraits::UNHINDERED_DIVING = "unhindered_diving"
inlineconstexpr

Removes slowdown from being underwater.

Since
1.45

◆ UNIVERSAL_IFRAMES_MODIFIER

const char* FlagTraits::UNIVERSAL_IFRAMES_MODIFIER = "universal_iframes_modifier"
inlineconstexpr

Modifies the amount of immunity frames player gets, when damaged.

Parameters
[in]modifierThe modifier for amount of immunity frames.
Since
1.45

◆ UNLIMITED_SWIM

const char* FlagTraits::UNLIMITED_SWIM = "unlimited_swim"
inlineconstexpr

Allows player to swim upwards with just holding Jump underwater.

Since
1.45

◆ UNWIELDY_SPARK_FLYING

const char* FlagTraits::UNWIELDY_SPARK_FLYING = "unwieldy_spark_flying"
inlineconstexpr

Increases acceleration when flying with Robotic Equipment weapon.

Parameters
[in]speed_boostThe modifier for acceleration during Robotic Equipment flights.
Since
1.45

◆ VELOCITY_BASED_JUMP

const char* FlagTraits::VELOCITY_BASED_JUMP = "velocity_based_jump"
inlineconstexpr

Increases the jump force with player's horizontal velocity.

Note
The modifier is multiplied with horizontal velocity, measured in 1/512s of a pixel.
Parameters
[in]modifierThe base modifier for velocity increase.
Since
1.45

◆ WALKING_SOUND

const char* FlagTraits::WALKING_SOUND = "walking_sound"
inlineconstexpr

Configures the player's walking on ground sound.

Parameters
[in]idThe sound ID for walking. Defaults to ID 24.
Since
1.45

◆ WALL_JUMP

const char* FlagTraits::WALL_JUMP = "wall_jump"
inlineconstexpr

Allows player to jump without ground, if they are next to the wall.

Note
Wall jump's initial momentum will always go away from wall.
Since
1.45

◆ WALL_STICKY

const char* FlagTraits::WALL_STICKY = "wall_sticky"
inlineconstexpr

Allows player to stick to a wall with holding Ability key, nullifying their momentum.

Since
1.45

◆ WATER_FLOATING

const char* FlagTraits::WATER_FLOATING = "water_floating"
inlineconstexpr

Makes player rise out of water instead of sinking, when not holding the Ability key.

Todo
Add parameter for rising speed modifier.
Since
1.45

◆ WATER_MOB_FRIEND

const char* FlagTraits::WATER_MOB_FRIEND = "water_mob_friend"
inlineconstexpr

Makes player invulnerable and unable to damage aquatic entities.

Note
Everything that has AQUATIC NPC trait counts for this trait.
Since
1.45

◆ WEAPON_RECHARGE_BOOST

const char* FlagTraits::WEAPON_RECHARGE_BOOST = "weapon_recharge_boost"
inlineconstexpr

Modifies the amount of bullets certain weapons can have on a screen.

Note
The currently supported weapons are machine_gun, gatling_gun and bubbler.
Template Parameters
gun_nameThe modifier of firerate of specific weapon.
Since
1.45

◆ WHIMSICAL_STAR

const char* FlagTraits::WHIMSICAL_STAR = "whimsical_star"
inlineconstexpr

Spawns special star bullet, that spins around player and latches onto things, at beginning of each stage.

Note
The star bullet will be automatically spawned or despawned when flag with this trait will have its state changed.
Since
1.45

◆ WITCH_ASCENDING

const char* FlagTraits::WITCH_ASCENDING = "witch_ascending"
inlineconstexpr

Allows player to ascend infinitely by just holding Jump button.

Note
With precise Jump holding, it is possible to float in place.
Since
1.45

◆ WITCH_DASH_VFX

const char* FlagTraits::WITCH_DASH_VFX = "witch_dash_vfx"
inlineconstexpr

Makes dashing ability emit pink, self-transparent particles.

Since
1.45

◆ WITCH_FIREBALL

const char* FlagTraits::WITCH_FIREBALL = "witch_fireball"
inlineconstexpr

Changes Fireball weapon to have properties, typically associated with Magician's Fireball.

Witch fireball has higher velocity, lifetime and explodes into pieces, when despawned.

Todo
Add parameters for velocity, bullets and lifetime.
Since
1.45

◆ WITCH_HITBOX

const char* FlagTraits::WITCH_HITBOX = "witch_hitbox"
inlineconstexpr

Makes player's hitbox significantly smaller, allowing them to dodge with more leeway.

Todo
Add parameters for hitbox proportions.
Since
1.45