Paperboy: Time to Collect by sslees

:newspaper: Newspapers are flying everywhere and it's your job to collect them! Ride your bike through scrolling neighborhoods, timing perfect swings to catch papers in your net before they pass you by. Enjoy classic Game Boy vibes in this accelerating collection challenge. How high can you score before running out of lives?
:joystick: How to Play
Use the arrow keys or W/S to move your bike rider up and down the road, then press SPACE to swing your butterfly net and catch flying newspapers before they scroll past. Each newspaper you successfully catch scores 10 points, but miss one and you lose a life. Lose all three lives and it's game over! Watch for rare newspaper bundles worth a whopping 100 points (but don't worry, these don't cost a life if you miss them). The game progressively speeds up as time goes on, testing your reflexes and timing. Position yourself strategically and time your net swings carefully!
Mobile players can use the on-screen touch controls.
:tools: How It's Made
This game was built entirely with vanilla web tech: pure JavaScript (ES6), HTML5 Canvas, and CSS3 with absolutely zero external dependencies, libraries, or image assets. Every visual element from the bike rider to the scrolling houses is drawn procedurally using Canvas paths and shapes with a classic 4-color palette. The codebase is organized into clean ES6 classes for the game loop, player mechanics, collectibles, scrolling background, and particle effects, with localStorage handling persistent high scores. The game was developed for Ludum Dare 58 using Cursor with Claude Sonnet 4.5 as an AI coding assistant.
| Link | https://github.com/sslees/ld58 |
| Link | https://sslees.github.io/ld58/ |
| Original URL | https://ldjam.com/events/ludum-dare/58/paperboy-time-to-collect |
Ratings
| Overall | 200th | 2.738⭐ | 23🧑⚖️ |
| Fun | 208th | 2.357⭐ | 23🧑⚖️ |
| Innovation | 168th | 2.81⭐ | 23🧑⚖️ |
| Theme | 151th | 3.31⭐ | 23🧑⚖️ |
| Humor | 159th | 2.15⭐ | 22🧑⚖️ |
| Mood | 180th | 2.667⭐ | 23🧑⚖️ |
| Given | 17🗳️ | 19🗨️ |
The fact you made it with just HTML/CSS/JS is super impressive.
Keep up the good work!
I directly went to Github to see the code as I made a canvas/js/html/css game as well, I have used p5.js to do all the drawing. I really dig your approach of overlaying regular HTML over the canvas to provide the UI. I continue to burden myself with drawing text in p5 for my game. Although this year I have used the overlay trick for the menu and info boxes but I haven't fully committed to this mix approach yet. But your code inspire me to do so for future events.
SPeaking of github I have started **[collecting entries](https://github.com/stars/dhmmasson/lists/ludum-dare-58)** backed up by github! I have also collected a few tricks to make the repos shinier across my Ludum dare participations
---
# Repository name and Description
You can update the repository name (I always start with ldXX, and I update it when I have found the name of my game) without breaking links (github redirects old names to new ones: https://github.com/dhmmasson/ld58 still redirect to my repository), and add a description for inclusion in the list.
# Badges
I have created badges that you can use to decorate your README:
```




```

# Topics
Consider using these **topics** on your github description to make your Ludum Dare entry more discoverable:
- `game`
- `game-development`
- `ludum-dare`
- `ludumdare`
- `ludumdare58`
- `ludum-dare-58`
- `ld58`
# Cover Art
You can also use your cover art for the ```Social preview``` image in the repository ```Settings```
# Stars
I have starred and added your repository to a list of ld58 compo: <https://github.com/stars/dhmmasson/lists/ludum-dare-58>
(Also, I am on a quest to have a repo reach 10 stars. If you play my game, consider [leaving a star on my repo](https://github.com/dhmmasson/tilesCollector) as well.)
Cool concept. For me the speed was way too fast. The cover image was really solid but I was also expecting something more artsy I guess. Nevertheless very cool entry!
Very impressive, though! Good work!
It was hard to catch the papers because I could never tell if I was or wasn't going to actually catch them. I had a similar comment for another game: Impactful visuals can make a HUGE difference. You both had the same design issue -- your weapon (net) is always present, visible, and extended, which is good for showing your range, but then when you swing with it, it really doesn't look that much different from when it's idle and it's not clear where you need to aim or how long the effect is active.
Consider this: You have a faded-out circle showing where your net will grab when you swing it, but as you're just riding around the net is held back. When you press the button to swing, it has a sharp, quick animation where it whips out and pulls back that only takes a few frames.