Camera - EverestAPI/Resources GitHub Wiki
Table of contents
Intro
A common "rule" is that the camera should usually allow the player to see 2 thirds of the screen in the direction they're travelling in any direction. You can set an offset for each room, but there are also useful camera triggers. The offset equivalence is 6 tiles per X offset and 4 tiles per Y offset.
These settings will move the camera 6 tiles right (so the player will be more near the left) and 4 tiles up.
Common camera triggers
Camera Offset Triggers
It pans the camera vertically and horizontally. It will override both values. If you only want to override one of the values, you can use instead a Smooth Camera Offset Trigger with the Position Mode set as NoEffect
.
Smooth Camera Offset Triggers
Progressively pans the camera in a direction (from old to new offset) so it doesn't have a cut when you enter the trigger.
Camera Catchup Speed Triggers
It is useful for areas with a lot of speed (like double block boosts or chained ultras). It is in Maddie's Helping Hand.
Camera Offset Border Triggers
Prevents a certain area to be seen (from a certain direction(s)). Make sure that they're not in a transition. They also have the option to not have an effect while the player is inside.
Camera (Advanced) Target Triggers
It locks the camera in a node with more or less intensity (with a value of 1 it will be static, with <1 it will follow the player, with >1 it will quickly become static), useful for (semi)enclosed spaces where you're always inside the trigger.
Flag Camera Triggers
Flag versions of most triggers also exist in Maddie's Helping Hand, useful for backtrack or complex/non-linear routings. There is also a Multiflag camera target trigger in Viv Helper for even more complex things.
Zoom
You can also zoom in the camera easily with Extended Variants, Frost Helper (Eased Camera Zoom Trigger) or Extended Camera Dynamics. You can zoom out with Extended Camera Dynamics (the helper has a guide :link: that explains the recommended resolutions and how to make zoom out work).
Other triggers
Change/Fade Camera Angle Trigger
Allows to change the angle of the camera. It is recommended to use only low values, since high values can cause a black space around the screen and tilesets to not render properly, because it rotates around the top left corner instead of the center of the screen. Found in AvBday Helper.
Momentum Camera Offset Trigger
TODO - Found in Furry Helper.
Camera Target Corner Trigger
It's a normal camera target trigger, except for the fact that it has corner position modes! This lets you fade out from a camera target trigger in multiple directions, by using this to cover the corner between, for example, LeftToRight and BottomToTop target triggers. This would require a BottomLeft corner target trigger. Found in Honly Helper.
Camera Target Crossfade Trigger
A camera target trigger that can be used to crossfade between 2 targets. Useful for going from one target trigger to the next, or creating special cinematic shots by chaining multiple together. Found in Honly Helper.
Camera Correction Controller
This controller can "fix" cameras making them to always round to the same number, in the rare situations where e.g. a Camera Target can point towards a certain pixel, or one pixel on the left/right depending on how the trigger was entered. Found in Adam's Add-ons.
World Camera
A virtual camera that renders the noded area in the bounds of this entity. Looping stylegrounds will be seamlessly fit. Can be flag toggled. There are several rendering bugs with some entities (spinners, seeker barriers, water, lightning), and some styleground effects. Found in bits & bolts.
Speed Adaptive Camera
TODO - Found in Chronia Helper.
Camera Constraint Trigger
Sets a strict boundary on how far the camera can move ahead of or behind the player. Useful in high speed situations where the player may otherwise end up offscreen. Found in Prog Helper.
Camera Hard Border
Similar to MaddieHelpingHand's Camera Offset Border, but constrains the position of the camera itself, instead of the camera target. Useful in high speed situations where a normal Camera Offset Border may cause the camera to move too slowly as it approaches its target. Found in Prog Helper.
One Way Camera Trigger
These triggers have several options. They can optionally prevent the player from going off-camera (with invisible barriers and killboxes), and can block the camera from going in certain direction(s) while you are inside. It also accepts flags to start having effect. Found in Maddie's Helping Hand.
Reel Camera
This entity can have any number of nodes. It will move the camera in the specified order of nodes, with a specified delay for each time it moves. It has an option to wait before moving, and another option to set x and y offsets when all movements are finished. Found in Saladim Helper.
Smoothie Camera Target Trigger
Target Trigger but 2-dimensional. Malfunctions on spawn or after room transition. Found in Sardine7.
Camera Entity Target Controller
This camera will follow any entities instead of Madeline. For example, in the image below it will track TheoCrystal after the flag theoFlag is activated, so it will look like you're playing as him. The Lerp just determines the strength. Found in Game Helper.
Camera Interactions
The presence of some entities can lock the camera under certain conditions, so if you're having issues check if you placed any of those.
- Badeline Bosses lock the camera horizontally, and don't allow you to see to the right of them. So if you enter a room with a Badeline Boss from the right, the camera will be locked to the left. There is a specific Badeline Boss version in DJ Map Helper that doesn't lock the camera. They also lock the camera vertically, but this is customizable in vanilla.
- Badeline Boosts have a Camera Lock option that makes the camera unable to pan away from the entity.
- Dream Boosters with path from Communal Helper also lock the camera in the entity.
- Killboxes lock the camera vertically, so they look like the bottom of the screen. If you have a spawn point near a killbox, you should adjust the Y offset of the starting camera, otherwise the killbox won't take effect until the camera "fits" above it (e.g. until you jump).
There's a few rare cases where the camera can make certain specific mechanics to behave differently, or entities to not render until they are considered "inside". For example, the hitbox of the spinners unload when they are not visible. A popular example is the final room of Ultra Difficult (from Spring Collab):
Madeline just clipped through these spinners harmlessly because they were not inside the camera on the previous frame.