Mazified is a multiplayer-only game where you fight with the opponent over the ball to score in their goal.
When players hit the ball, they apply a small impulse greater than the player speed, which is set by the level settings.
Player 1 scores into player 2's goal, and vice versa.
The physics engine runs at 60 frames per second, so when time is referred to in "frames" keep this in mind. This is not affected by your set framerate in game settings, that is only for rendering.
Settings can be accessed by clicking the global settings button in the main menu and has 3 categories:
Game
Has 3 global overrides, for disabling guns, turrets, and bosses. This can be enabled and disabled at any point (except when in a match/lobby). Use these toggles to play how you want at the moment.
User
Background color has 3 modes, being dark_gray, black, and pain. Sets the back color of the game.
FPS changes your rendering framerate, recommended to set to your monitor framerate or 1000 if you have a good computer. Decrease framerate if you encounter performance issues on lower end devices. You must reboot (top left of main menu) or restart the game for this to take effect.
Colorblind mode adds numbers or text to various things in game / level editor that are only distinguishable with color usually, mainly the goals, and spawning blocks.
Resizeable window sets whether the game is locked to the native resolution of 960x720. On by default, this lets you fullscreen or resize the window to any size you want. Disabling will lock the window to the native resolution.
Undo levels sets the number of undo steps to save in the level editor. Larger values mean you can undo more mistakes, but will use more ram.
Display level preview sets whether to show a small image of your currently selected level on the bottom left of the main menu.
Audio
SFX volume sets the volume of menu clicks and game events. Decrease to 0 to disable.
Music volume sets the volume of the music. Decrease to 0 to disable.
Player with unloaded gun
Player with loaded gun
There are 2 players, which pvp against each other.
In online mode, you always see yourself as player 1, regardless of who the host is. This makes it easier to know who you are playing since the game pov is static. In early development, this wasn't the case and it was easy to get confused for a second or two who you were playing.
Players are not affected by slow tiles, speed tiles, or push tiles. Players can pass through everything except walls and super reflectors.
Players have no momentum, and instantly start moving at the level's set player speed regardless of direction or direction changes.
Your crosshair only displays in online mode, when the setting "Mouse points gun" is enabled (on by default).
Players have 90 frames of invincibility after spawning, respawning, or a goal is scored.
Both players have a gun, which can be pointed either with your chosen keys in offline mode, or with the mouse in online mode. In offline mode you can't point the gun with the mouse because a computer can only have one mouse, so this doesn't work for 2 players.
Getting hit by a bullet deals 1 damage.
When your health reaches 0, you die and enter the respawning phase until the respawn timer runs out, at which point you regenerate all health and return to spawn.
While respawning, a flashing animation plays at your spawn point.
Turrets fire one bullet every turret interval.
Getting hit by a turret bullet deals one damage, just like player bullets.
Your own bullets show up as yellow and hollow, while enemy bullets of any kind show up as filled red squares. You cannot damage yourself with your own bullets.
Turrets always shoot along an axis (4 cardinal directions). If you want variation to turret bullet angles, I recommend placing a push tile (or multiple) perpendicular to the turret, which will push the bullets slightly immediately after exiting the turret.
Turrets do not have collision hitboxes with anything, and cannot be killed.
The ball is what you push into the goals to score. Why is it a square?
The ball is affected by slow, speed, push, and super reflector tiles.
Bounces off of walls with less speed in normal and antigravity modes, and the same speed in zero g mode.
The ball slows down over empty space in normal gravity, doesn't slow or speed up at all in zero g mode, and speeds up in antigravity mode.
When hitting the ball, a small impulse is applied faster than the level's set player speed.
Hitting the ball into the goals scores a point.
The ball teleports back to the ball spawn after 900 frames (15s) of neither player touching it. This is to prevent softlocking and as a soft-reset. It will warn of this reset about to happen by starting to flash at the spawn point at 720 frames (12s).
Friendly bullets
Enemy bullets
Bullets are the main weapons in the game, used by everything from players, to turrets, to bosses (not all bosses use bullets).
Getting hit by a bullet deals 1 damage to whatever it hits, and destroys the bullet.
Bullets are destroyed by walls/bullet blockers, reflected by super reflectors, and influenced by slow, speed, and push tiles.
Bullets do not have a max lifespan, they can persist indefinitely.
Bullets from players and turrets are affected by teleporters, while boss bullets are not (to prevent desync).
Bullets are only synced at creation, they spawn with an exact position, direction, and velocity, which is then sent to the other player. Bullet positions are not synced in real time as this would cause heavy network congestion.
In online mode, friendly bullets (that you fired yourself) are drawn as yellow outline squares (you cannot be damaged by these bullets), and enemy bullets (other player, turrets, bosses) are all drawn as filled red squares.
Normal
The standard way the game is played. You score by hitting the ball into the opponent's goal.
StickyTouch
The ball sticks to your player, and you carry it as long as you are holding it. Touching the other player or the ball while they are carrying it instantly kills them, regardless of how much health they have. You can then steal the ball carry it yourself. Score into the opponent's goal.
TruePVP
There is no ball, score by killing the enemy player.
There are 4 types of impulse tiles in the game. They only affect the ball and bullets.
Slow Tiles
Slow tiles slow down bullets and the ball for every frame they are touching the tile.
Speed Tiles
Speed tiles speed up bullets and the ball for every frame they are touching the tile
Push Tiles
Push tiles apply an impulse on the ball and bullets every frame they are touching the tile. They apply the impulse in the direction they are facing (up/down/left/right).
Super Reflectors
The ball bounces off of super reflectors just like it does off of walls, but at a higher speed than it came in at.
Bullets bounce off of super reflectors at the same speed they came in at (walls absorb bullets).
Super reflectors act as walls in the sense that nothing can pass through them (players included).
Along with impulse tiles, there are also other special tiles in the game.
Bullet Blockers
Destroys bullets, does not effect anything else.
Teleporter Tiles
Teleports players, the ball, and bullets to another random teleporter tile.
You need to place at least 2 for these to do anything.
Players can teleport every 60 frames (once a second).
The ball can teleport every 120 frames (every 2 seconds).
Bullets can teleport every 20 frames (every 1/3 second).