Start here
Doodle Guys is an arena shooter with rocket and grenade launchers. Players start with 100 health, 100 armor, and both weapons with unlimited ammo.
Every server game is a tournament with four rounds. The host chooses Elimination or Scores. Practice offers the same two types against bots.
- Online play: join a public server.
- Local play: join a local server or host a room for other players.
- Practice: play the same tournament privately against bots. Choose the tournament type, starting map and pickup rules; it skips the 15-second player wait.
Your own rockets and grenades cause no health or armor damage. Their explosions still apply knockback, which enables rocket and grenade jumps.
Tournaments
Your player account
Choose Sign in on the homepage or in the app. Enter your email and the six-digit code sent to you; no password is required. The first successful sign-in creates your account, and using that email again opens the same account on another device. Codes expire after ten minutes. My account shows your signed-in email, unique player name and a Sign out button.
Try one full online tournament without an account. Press Online play, choose an arena, and join with a fixed guest name. Waiting for a game does not spend your trial. After the tournament, create an account and choose your nickname to keep playing. Your guest result can then be saved to your account for future EXP rewards. The allowance is remembered on this browser or app installation. Practice and Local play do not require an account.
Your first name is suggested automatically. Keep it, edit it, or choose Suggest another name, then press Claim player name. Suggestions are checked for availability and inappropriate language, but are only reserved when you claim them. They are never based on your email. Your saved nickname appears beside My account at the top right, next to Wiki and the theme icon.
Your name must contain 3–20 letters, numbers or underscores, starting with a letter. Names use the English alphabet (A–Z); spaces and emoji are not supported. Names are unique across Doodle Guys regardless of capitalization, so RocketFan and rocketfan cannot belong to different accounts. Inappropriate names, common disguised profanity and names that impersonate staff are rejected.
You can rename in My account once every 30 days. Previous names stay reserved to you. Changes take effect when you rejoin; your account identity stays the same. Online servers verify the name on your account, so editing browser settings or using a console command cannot impersonate someone else. Repeated name attempts are limited to 10 per account and 40 per IP address every 15 minutes.
Player accounts are the first step toward persistent EXP. Invitations and friend lists are not available yet.
Experience (EXP)
EXP rewards and levels are not available yet. Signing in creates your player account, but finishing a tournament does not currently award or save EXP. After your guest tournament, create an account, choose a nickname and select Save this game to preserve its verified result for future EXP rewards.
Only official Online play will count toward EXP. Practice, LAN and player-hosted games do not count, even when you are signed in. Online servers verify your account or one-game guest ticket before admitting you; your browser cannot declare its own EXP or turn a local result into a ranked reward.
The intended system rewards a tournament win using:
- Kills across the whole tournament.
- Damage dealt to opponents across all rounds.
- Deaths, with fewer deaths improving the reward.
- Total players who entered the tournament.
- Opponent strength, so the players you competed against affect the reward.
The engine already records tournament-wide kills, deaths, damage, the winner, and the original roster, including which fighters are humans or bots. These totals survive map and round changes. Late spectators do not increase the player count, and the results-screen splats do not change combat stats.
The EXP formula, opponent-strength weighting and level progression still need implementing. Saved rewards will also need authenticated match results tied to player accounts, with each tournament credited only once. No specific EXP amounts or multipliers have been set yet.
Choose your tournament type
| Type | Who plays the next round? | How to win | Between-round results |
|---|---|---|---|
| Elimination | Only players who qualify. Knocked-out players spectate. | Survive the cuts and win the final survival round. | Eliminated players get splatted; qualifiers advance. |
| Scores | Everyone still connected stays in for all four rounds. Bots stay too. | Have the highest combined score across all rounds. | See the cumulative standings. No killing scene between rounds. |
Choose Tournament type in Local play → Host game, in Practice, or when creating/configuring a server in server admin. Elimination is the default. Dedicated hosts can set TOURNAMENT_TYPE=elimination or TOURNAMENT_TYPE=scores. The planned CLI will offer the same choice; the CLI itself is not released yet.
Team mode is planned for both types. The current choices are solo. Future team results will keep all members of the winning team alive in the final celebration.
Joining and starting
Live servers need at least two human players to start a tournament. If you join alone, the game shows Waiting for other players. You can move and shoot while you wait. The second player starts the 15-second lobby timer; later joins do not restart it. If someone leaves and fewer than two humans remain before the first round starts, the server returns to waiting and resets the timer. Lobby scores do not carry into the tournament. Player-hosted rooms keep their existing timer, starting with the first player.
When the timer ends, bots fill the remaining places if Add bots is enabled. Servers with that setting off start with the connected players. A full human lobby starts early. Once the roster locks, everyone hears the round announcement (and the qualification callout in Elimination when available), then a 3–2–1–Go countdown. Players stay frozen during the introduction and countdown.
Practice fills with bots immediately, with no lobby wait. It still plays the round introduction and countdown before combat.
Elimination: qualify or spectate
A full 32-player Elimination tournament starts with 32 fighters and follows 32 → 16 → 8 → 4 → 1:
| Round | Rule | Fighters at the start | Places to advance or win |
|---|---|---|---|
| 1 | Free-for-all leaderboard | 32 | Top 16 advance |
| 2 | Free-for-all leaderboard | 16 | Top 8 advance |
| 3 | Don’t die | 8 | Up to 4 survivors advance |
| 4 | Don’t die | 4 | One surviving winner |
Rounds last up to 90 seconds. Smaller rooms still play four rounds: the first three advance half the entrants, rounded up, and the last awards one winning place. A round can finish early when everyone still eligible fits the cutoff.
In Elimination, health, armor, equipment and the round leaderboard reset each round. Knocked-out players spectate until the next tournament, even when the map changes. Winning a place in the next game’s lobby does not re-enter you into the current tournament.
Elimination round rules
| Round type | How to qualify | What dying means |
|---|---|---|
| Free-for-all / leaderboard | Finish in the top X on the leaderboard when the round ends. | You can respawn and keep competing during that round. |
| Don’t die / survival | Stay alive. The round ends when X or fewer remain, or the timer expires. | One life: dying eliminates you from the tournament. |
| Race | Be one of the first X to visit the course checkpoints in order and reach the finish. | Depending on the race rule, respawn where killed with progress intact, or die once and spectate. |
Elimination uses two leaderboard rounds followed by two survival rounds. When Rocket Run, Slide Sprint, Bumper Blitz or Sky Marathon is selected or drawn, that round is a race with a three-minute limit. Slide downhill, dodge sweepers and swinging bumpers, use rocket jumps for marked climbs, visit every numbered gate, and reach the goal. Choose respawns or instant elimination in game setup. Falling into the void in a respawn race returns you to your last safe position.
Watch the gate counter and next-gate hint. Every arch counts, including START: flying around or over one leaves it incomplete. A MISSED … — GO BACK message means you must return through that arch before the goal can qualify you.
If too many players are alive when a survival round times out, the leaderboard order decides which living players advance. Dead players cannot qualify. If nobody survives, there is no winner.
Scores: best total over all rounds
Everyone plays four 90-second leaderboard rounds, with respawns in every round. Dying does not knock you out of a score tournament. Your health, armor and equipment reset for the next map, but your tournament totals carry forward.
The highest total frags across all four rounds wins. Ties use fewer total deaths, then more total damage dealt, then a fixed player order. Winning the final round alone is not enough. For example, 5 + 4 + 3 + 2 = 14 frags beats 0 + 0 + 0 + 10 = 10 frags.
The live leaderboard and round results show the combined totals. Between rounds, everyone sees Round complete, the standings and the next-round countdown. There is no elimination or killing scene after rounds 1–3. After round 4, the final celebration may splat everyone except the tournament winner. All totals clear when the next tournament starts.
Roster locking still applies: someone who joins late waits for the next tournament, and a disconnected player cannot return halfway through the current one.
Leaderboard & damage
Hold Tab in the desktop browser to see the leaderboard. It ranks players in this order:
- Most frags — kills of other fighters.
- Fewest deaths when frags are tied.
- Most damage dealt when both frags and deaths are tied.
The DMG column shows current-round damage in Elimination and combined tournament damage in Scores. For example, between two players with 3 frags and 2 deaths, the player with 850 DMG ranks above the player with 600 DMG. Damage does not outweigh an extra frag or fewer deaths. Exact ties use a fixed player order to settle the last qualifying place.
Damage includes enemy health and armor actually removed by rockets and grenades, including splash. It excludes overkill, self boosts, protected players and lobby damage. A hit that removes 44 health and 66 armor counts as 110 damage. Killing an unarmored opponent with only 10 health left counts as 10, even if the weapon could deal more.
Damage survives respawns. Elimination resets its leaderboard each round; Scores carries the rounded round totals across the tournament. The scoreboard displays whole damage points, using the same totals and tie-break order as the server’s result.
Floating hit feedback
A confirmed hit shows a small, bold red number, such as −20, beside the damaged fighter. It slides slightly downward while fading in, holds briefly, then slides down and fades out, disappearing after one second. Each hit has its own lifetime.
These numbers follow player-label visibility: they fade with distance and disappear behind walls, off-screen, or when the target dies. They use the same label font family. Reduced Motion keeps the fade and removes the slide.
Reading the game screen
The top-center clock shows the round's remaining time. The same space shows Get ready before play and Your last moment during a death replay.
The top-right counter shows your Position, such as 1 / 32, with Top 16 qualify beneath it in Elimination. Scores shows Overall score and ranks your combined totals. Survival rounds show Eliminated, such as 0 / 5: the first number counts players eliminated from this round, and the second is the number needed to reach the advancing group. Previous rounds' eliminations do not carry into this counter.
Health and armor appear at the bottom left; low health turns red. These displays are drawn by the shared game engine on web and Apple clients. Hold Tab for the browser leaderboard, press T for the console, or use Esc / P for the menu. Touch clients keep their pause control near the bottom of the screen; the browser pause menu also includes Console.
Between rounds
Scores, rounds 1–3: a results screen shows cumulative standings for 15 seconds. Everyone stays in the tournament. The next map then loads, followed by its announcement and countdown. There is no killing scene.
Elimination, and the final round of Scores: the current round’s players run into two rows at a wall outside the arena. Eliminated players are shot with staggered rockets, leaving splats and flying bones. Their labels disappear as they are eliminated; survivors celebrate. Your own label is orange.
After the eliminations, the announcement matches your result:
- You qualify: you qualified for the next round.
- You are eliminated: you were knocked out in this lineup, including a final-round loss.
- You won: you won the tournament. In Scores, this is decided by your combined results across all four rounds.
- Congratulations to the winner: you are spectating someone else’s final victory.
Between Elimination rounds, the camera gives survivors time to celebrate before the map picker appears. Both tournament types draw their next map from maps that have not been played in this game. The default pool contains all six arenas. A smaller custom pool can repeat only after its maps have been used, avoiding an immediate repeat when there is another map available.
The results break lasts 15 seconds between rounds. The chosen map then loads and the next round’s announcement and countdown begin. The final round has no map picker: the camera lowers, zooms toward the champion and gently pans around them.
Starting the next game
Final results show “New game starts in X” during the 15-second celebration. Stay connected to continue automatically, or choose Leave to lobby to release your place.
At zero, the next game’s lobby opens. Live servers wait for at least two humans again. A full human roster starts early; otherwise the 15-second lobby timer allows more players to join before bots fill the gaps. Practice skips that lobby wait again. The map pool and all four rounds start fresh.
Health, armor & respawning
| Stat | You start with | Maximum |
|---|---|---|
| Health | 100 | 200 |
| Armor | 100 | 200 |
| Weapons | Rocket launcher + grenade launcher | Both always available |
| Ammo | Unlimited | Keep firing after each shot recovers |
A player dies when health reaches zero. Armor absorbs 60% of incoming damage while enough armor remains; the rest is deducted from health.
During tournament combat, your health starts recovering after five seconds without taking damage. It restores six health per second, up to 100. Pickups can take you above 100, up to the 200 cap. Armor does not regenerate.
After respawning, you have three seconds of protection, indicated by diagonal stripes on your character and weapon. You can move, but you cannot shoot or take damage during this time. The stripes disappear when protection ends. Wait until then before attempting a rocket jump.
In leaderboard rounds, use Respawn or press R after dying. There is a minimum one-second respawn delay. In survival rounds, you get one life: death means spectating until the next game. You cannot respawn after being eliminated from the tournament.
Falling off the map causes death, regardless of health and armor.
Weapons
Both launchers are available at the start of every life. Ammunition is unlimited. Weapons require a recovery period between shots and do not need manual reloading.
| Weapon | How it works | Time between shots |
|---|---|---|
| Rocket launcher | Fires a straight rocket that explodes on impact, dealing direct-hit or splash damage. Explosions can also be used for rocket jumps. | 0.65 seconds |
| Grenade launcher | Fires a grenade in an arc. It bounces off surfaces, explodes after 2.5 seconds, or detonates early on a direct hit. | 0.8 seconds |
Player rockets travel at 42.5 meters per second. Bot attack rockets travel at 35 meters per second. Grenades launch at about 21.9 meters per second before gravity and bounces change their velocity.
Rockets can hit opponents directly or deal splash damage by hitting nearby surfaces. Grenades can bounce around corners and cover doorways or landing areas.
On desktop, 1 selects the rocket launcher, 2 selects the grenade launcher, and Q switches between them. On touch devices, use the weapon-switch button. The current launcher lowers before the next one rises; let the switch finish before firing. Mouse-wheel scrolling does not change weapons.
Damage numbers
These are raw damage before armor. They apply to both leaderboard and survival rounds, including Practice.
| Weapon | Direct hit | Maximum splash | Splash radius | With Quad: direct / max splash |
|---|---|---|---|---|
| Rocket | 110 | 130 | 5.8 meters | 330 / 390 |
| Grenade | 100 | 100 | About 4.69 meters | 300 / 300 |
Splash damage falls off in a straight line from the blast center to zero at the edge of its radius. Halfway out, it deals half the maximum: 65 for a rocket or 50 for a grenade, before armor. Walls can block splash.
A direct hit uses the direct-hit value, rather than adding direct and splash damage together on that victim. Other fighters nearby can still take splash. There is no extra headshot multiplier.
Damage examples for a player starting with 100 health / 100 armor:
| Incoming hit | Armor absorbs | Health lost | You have left |
|---|---|---|---|
| Normal direct rocket: 110 damage | 66 | 44 | 56 health / 34 armor |
| Normal direct grenade: 100 damage | 60 | 40 | 60 health / 40 armor |
If you do not have enough armor to absorb its full 60% share, the rest comes off your health. With no armor, a normal direct rocket or grenade kills a player on 100 health. A Quad direct hit from either launcher kills a player on the starting 100 health / 100 armor.
Controls
Desktop browser
| Input | Action |
|---|---|
| W A S D or arrow keys | Move |
| Mouse | Aim |
| Left mouse button | Fire; hold for repeated shots |
| Right mouse button | Assisted rocket jump with the rocket launcher; drag to choose where to fire |
| Space | Jump; hold to keep jumping as you land |
| 1 / 2 / Q | Select rocket launcher / select grenades / switch weapon |
| Tab (hold) | Show the live leaderboard on the left; scroll to see more players. Release to close. The match continues. |
| Esc / P | Open the pause menu and release the mouse; the tournament keeps running |
| R | Skip a kill replay, respawn when allowed, or cycle the spectated fighter |
Click into the arena to capture the mouse. If your browser does not allow mouse capture, drag to aim instead.
iPhone & iPad app
Touch the bottom-left movement area to place a joystick under your thumb, then drag to move. Drag elsewhere on the gameplay screen to aim. A quick stationary tap in the aiming area fires once; hold Fire for repeated shots.
Tap and release Jump for a normal jump. With the rocket launcher selected, hold Jump for an assisted rocket jump, or drag from Jump to choose its direction. Use the circular arrows to switch weapons and the pause icon to open the menu.
Mobile browser
Use the left joystick to move and drag the look area to aim. The Jump, Fire, and weapon-switch buttons handle the other actions. Hold Fire for repeated shots.
The mobile browser currently uses manual rocket jumps: aim down, press Jump, then Fire as you leave the ground. The hold/drag Jump shortcut described above is available in the native iPhone/iPad app.
Rocket jumping
Rocket jumping uses explosion knockback to increase jump height or movement speed. An explosion below the player adds upward velocity; one behind the player adds forward velocity. Self-inflicted explosions do not reduce health or armor.
Desktop: the shortcut
- Select the rocket launcher with 1.
- Right-click and release without dragging to jump and fire at your feet.
- To choose a direction, hold right-click and drag, then release. A brief hold also commits the jump while the button is still down.
- The camera returns to your original aim after the shot. Each gesture fires once.
Dragging down turns the shot behind you, which can push you forward. Left and right turn the shot sideways. The drag chooses where the rocket fires; the blast pushes you away from that point.
iPhone & iPad: the shortcut
- Switch to the rocket launcher.
- Hold Jump to aim at your feet and perform a rocket jump.
- Or drag from Jump and release to choose where the rocket fires. Drag down for a shot behind you; left or right for a sideways shot.
- Keep your movement thumb on the joystick to carry momentum through the jump.
A quick tap still gives a normal jump. With the grenade launcher selected, holding or dragging Jump stays a normal jump; it does not switch weapons for you.
Manual rocket jump: any platform
- Select the rocket launcher and stand in an open area.
- Look down at the ground near your feet.
- Jump, then fire immediately as you leave the ground.
- Look back up and steer toward your landing.
On desktop, that means Space + left-click. On a mobile browser, aim with the look area, then use Jump + Fire. You can use the same manual method in the native app.
Rocket jumping requires the rocket launcher to be selected, weapon recovery to be complete, and spawn protection to have ended. The explosion must be within knockback range.
Double blast jump
Place a grenade near your takeoff point, switch to the rocket launcher, and time a rocket jump with the grenade's explosion. Receiving a boost from both weapons during the same airborne run triggers Double Blast Jump. The grenade fuse lasts 2.5 seconds.
Pickups & Quad
Pure arena is the default: both weapons, equal starting equipment, and no pickups. To add items, choose Pickups & Quad in Practice's rules or when hosting a browser room. Online rooms use the host's rules throughout the tournament.
| Pickup | What you get | Returns after collection |
|---|---|---|
| Yellow shield | +50 armor, up to 200 | 25 seconds |
| Red shield | +100 armor, up to 200 | 25 seconds |
| Health cross | +50 health, up to 200 | 35 seconds |
| Blue Quad | 3× weapon damage for 30 seconds | 2 minutes |
Items begin available and return to the same spots. Full health or armor does not consume an item you cannot use. Bots can collect pickups too.
Quad multiplies weapon damage by 3. It powers both launchers, turns their projectiles blue, and gives the carrier a blue shimmer, thicker outlines, and a positional hum.
Kill a Quad carrier and they drop only their remaining time for someone else to collect. The timer keeps counting down while the drop is on the ground. Falling into the void loses the powerup. Your own powered explosions still do no self-damage and do not give a stronger jump.
Maps
| Arena | What to expect |
|---|---|
| Doodle Pit | An open arena with platforms and stairs. |
| Dusty Doodles | A large town with buildings, tunnels, alleys, and rooftops. |
| Pool Panic | A dry pool, diving boards, raised decks, and rooftops. |
| Crate Riot | Stacked crates, crossing lanes, and an elevated catwalk. |
| Sky High | Tall towers connected by rocket-jump ledges and skybridges. |
| Facing Doodles | Two towers connected by an exposed bridge. Falling off the bridge or islands causes death. |
All six arenas are in the default tournament map pool, including Practice. Elimination uses leaderboard rounds followed by survival rounds as described above; Scores uses leaderboard rules in every round. Pickups follow the room’s rules. Maps have no bombsites or planting objectives.
Playing together
On the website, choose Online play for public servers or Local play for local servers and browser-hosted rooms. Compare ping, map, population and queue availability before joining. A lower ping means less travel time between you and the host. Browser and dedicated arenas support up to 32 fighters, including bots.
You can host a browser room for other players. Choose Elimination or Scores, then keep the hosting tab open and active. Both use the same automatic lobby timer and four-round tournament; the host does not need to press Start Match. Leaving as host closes the room and disconnects its guests.
In the native iPhone/iPad app, choose Local play. Connect to the same Wi-Fi, allow Local Network access, then host on one device and join it from nearby games on the others. Native hosts offer 4, 8 or 12 fighters, with a default of 8; bots fill unused places. Keep the host app in the foreground. Nearby native games and browser-hosted rooms use separate connections.
Joining after a game starts
Once a tournament’s roster locks, new arrivals spectate until the next game. They do not replace a bot halfway through a game or enter at the next round.
- Your place is reserved / Next game: a human place is available for you in the next game. You can spectate while waiting.
- Queue #1, #2, …: all human places are occupied. Waiting players move forward in join order as people leave.
Connected players keep their next-game places, including players already eliminated. When someone chooses Leave to lobby or disconnects, the earliest waiting player automatically reserves the free place. During a running game they continue spectating until the next game; during an unlocked lobby they can join immediately.
Bots do not block human places for the next game. For example, if 10 humans and 22 bots are playing on a 32-fighter server, a new arrival can reserve a human place for the next game. That player still watches the current game to its end.
The waiting queue can hold as many people as the room’s fighter limit: a default server allows 32 seated humans plus up to 32 queued spectators. When both are full, wait for a place to open before joining.
Leaving, rejoining and empty servers
Leaving forfeits your place. Rejoining during the same active game puts you back into the spectator/reservation/queue flow; it does not give you a new life or restart the tournament.
A dedicated server continues an already-started tournament while at least one original human participant remains connected, including eliminated players who are spectating. When the last participant leaves, that tournament ends and queued players enter a fresh lobby. The next tournament waits for at least two humans; bots never satisfy that minimum.
A player-hosted room lasts only while its host stays connected. Practice is private to you and ends when you leave it.
Tournaments keep running while you watch a replay or open the pause menu. Bot Practice follows the same running game clock, so opening its menu does not freeze the bots.
Settings
Use Dark mode in the website header or pause menu to switch the website and game together.
For all website settings, open Practice → Settings, or use Settings in the pause menu. In the native app, open Appearance, sound & graphics, or the pause menu.
- Appearance: Light, Dark, or System. Dark uses midnight paper and light ink; team and powerup colors remain recognizable.
- Aim speed / mouse sensitivity: Adjust how quickly your view turns.
- Volume: Adjust sound levels. Positional audio indicates the direction and distance of combat sounds. Quad carriers emit a hum.
- Graphics: On the web, Auto adjusts resolution to help keep play smooth; Performance favors speed and Crisp favors sharpness. The native app has a resolution slider.
Settings are saved on the device or browser where you change them.