尚未偵測到更新。GitHub 發布版本後會顯示在這裡。
個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
在專案資料夾中執行 /nomorevibe verify,即可驗證所有權並自行管理介紹。
一分鐘完成驗證sequel to metroll and petroll
翻譯準備中
取自儲存庫 README
正在載入完整 README。
檢視完整 README ↗A spiked steel ball, the head of a morning star with no morning star attached, is loose in an open city of takes. There are no tracks and no levels: Metrlol is one map, all of it there from the start, and the ball can roll anywhere it can get to. In the way is the discourse: the Pause crowd and the doomers, the effective altruists and the rationalists, the commune and the theorists, the Eurocrats on strike, the accelerationists on a podcast, and the reply guys, who are everywhere. Roll into them fast enough and they are smashed; too slowly and they bounce off, and it costs you spikes. Each time, the ball says something unkind about it.
Somewhere in all of it are 42 golden GPUs. Every side of the argument wants them. The ball is keeping them.
The sequel to Metroll, and made of the games before it:
smash.js); the sculpted people (src/cast/, mostly in new clothes, plus a Pause protester and a Eurocrat); the sarcasm; and the music, played live in Web Audio;It is satire of ideas, not of anyone in particular, and it is an equal-opportunity ball: the doomers get it, and so do the accelerationists, the commune, the Eurocrats, and you.
git clone https://github.com/h1ddenpr0cess20/metrlol
cd metrlol
npm install
npm run dev # → http://localhost:5173
A static page: no server, no keys. npm run build puts it in dist/, which
runs from any folder. WebGPU where the browser has it, WebGL 2 where it
doesn't (?renderer=webgl pins it). Node 22.12 or later.
| ←↑↓→ or WASD | Roll. Up always rolls up the screen, however the view is turned. |
| Hold the mouse or a finger | Roll toward the pointer. The further it is from the ball, the harder the push. |
| Space or Shift | Accelerate: hold for a harder push and a higher top speed, until the meter runs dry (it refills when you let go). The ACCELERATE button on a touch screen. |
| Q E, or drag with the right mouse button | Turn the view. Dragging up and down tilts it. |
| Mouse wheel, or + − | Zoom. |
| Two fingers | Pinch to zoom, twist to turn, drag up or down to tilt. |
| C | Put the view back. |
| Gamepad | Left stick or d-pad rolls; right stick turns and tilts; shoulder buttons zoom; A, X or the right trigger accelerates; Start pauses. |
| P / Esc | An intermission (pause). |
| M | Sound on or off. |
How hard the ball hits someone is how fast the two were coming together, in tiles a second, their walking included. Everybody has a toughness, the speed it takes to smash them in one go, and a power, how much it hurts to bounce off them.
| Speed | What happens | |
|---|---|---|
| 1.7 times what it takes (13 at the least) | OBLITERATED! | Gone, with double the cred. |
| At least their toughness | SMASHED! | Gone, thrown clear, and it costs the ball nothing. |
| Over half their toughness | BONK | You both bounce, and it costs some spikes, less the closer you were to a smash. |
| Under that | WEAK | It hurts, all of their power, and they don't move. |
Someone who isn't smashed is still worn down, so a doorman you can't hit hard enough can be hit twice. The Prophet of Doom takes a good deal more.
The ball starts with 100 spikes, and you can watch them snap off. It is a lump of forged steel and takes a beating: every knock costs half what it would. Hard landings, cars, cable reels rolling after it, the hot takes coming up out of the floor and the people it fails to smash take them away. At nothing the ball is blunted, and it is back at the last whetstone it rolled over, sharpened. A rubber stamp coming down on it blunts it outright. The data lake and the sea swallow it, and it's put back on the last firm ground.
What you've found, the last whetstone and the time so far are kept in the
browser (metrlol.v1), and the game plays the same with storage blocked.
Nine parts of town, three across and three down, the superhighway down the east side, and the far side of it.
| Portland Heights, north-west: the suburbs, and home. Co-op houses, a drained pool that is now the community garden, a tiny house village, the consensus maze (still voting on the exit), the food co-op with a loading ramp up to its roof and the commune's long house behind it. The commune, the anarchists, the theorists, the doomscrollers, the dropout founders. | |
| The skate park, in Portland Heights: four blocks of it, the streets between them closed. A pool-tile bowl (deep at one end, shallow enough at the other to roll out of), a wooden half pipe with a deck at each end, a plaza with a stair set, two handrails and a bank down off it, a pyramid, ledges, manual pads, kickers and a flat rail, a pump track round a lawn with its corners banked, the quarter pipe with the murals on it (and a golden GPU near the top, for a run-up), and the skate shop (no AI). | |
| The Alignment District, north: the Longterm Institute and the alley behind it, a group house with a car park up to the roof, the slippery slope (oil all the way up: take a run at it), the doom clock and the prediction market round it, the plaza where the Pause protest has been for a year (a bronze paperclip on a plinth in the middle of it), the SHUT IT DOWN rally stage, the Effective Altruism Center, a building site whose crane has been paused since March. Doomers, effective altruists, rationalists, forecasters, safety researchers. | |
| The Ivory Tower, north-east: the campus. The library (closed for training), the lecture hall sunk in the quad, the trolley problem, going round and round, and the tower itself: a ramp three times round it to the top, where you are above it all. Rationalists, researchers, theorists, purists, longtermists. | |
| The Pause Compound, west: behind a fence, the tank of doom with a lift up its side, a ramp and a catwalk, the barracks, the bunker sunk in the yard, and hot takes alley, where they come up out of the floor in a wave you have to ride the gap behind. And the Prophet of Doom, who has predicted the end of the world every year since 2003 and has been, technically, early. | |
| The Timeline, the middle: downtown. Towers with screens on them (TRENDING: YOU), Ratio Square, the echo chamber (a round room in a round room), the discourse pit, the infinite scroll (a walkway in the air, over the street, to the end of it, with a troll under it), and the engagement farm, where the likes are grown in rows. Reply guys, engagement farmers, Substack writers, thought leaders, gatekeepers. |
The music is Metroll's hardcore track (New York, 1989: a d-beat, no encores), start to finish.
Seventy-three kinds of people, about 440 of them, sculpted in code
(src/cast/) and baked in background workers while the page loads. Who they
are, and what they shout, is in src/foes.js. They come from the games before
it, in new names:
| madness-engine | The engine the game runs on: Alan's renderer, the physics, input, the town view, the sculpting kit, and the library's people, streets, vehicles, surfaces, sky, ball and band. |
src/cast/ | Who is in town (the library's people), their library and bake worker. |
src/foes.js, src/crowd.js, src/smash.js | Who is in the way, how they walk and come at the ball, and what a meeting costs. |
src/quips.js | What the ball says, and the time horizon. |
src/map.js, src/town.js | The map: a grid of tiles, with road paint, props, solids, traffic, hazards, pickups, signs and the crowd on top of them; and Metrlol, part of town by part of town. |
src/structures.js, src/models/ | What stands on the map: signs, screens and billboards with words on them, tanks, the mast, the crane, parasols; sculpted street furniture, vehicles, charging posts, rubber stamps, cable reels, whetstones, likes and GPUs. |
src/run.js | The world as it runs, with nothing drawn: the rules for spikes, smashes, combos, pickups. The game draws it; the tests drive it. |
src/audio.js | The band (the library's), and every sound effect, synthesised. |
| Script | |
|---|---|
npm run dev | Vite dev server (and /preview.html: ?foes=pauser,eurocrat, ?foes=all, ?hurt=0.5) |
npm run build | Bundles to dist/ |
npm test | node:test: physics, the map builder, the city, the traffic, the hazards, the crowd and the smash rules, and an autopilot that has to find all 42 golden GPUs in one go without being blunted |
npm run lint | ESLint |
In the browser console, metrlol.debug.teleport(x, z) puts the ball anywhere
on the map.
| Hype Valley, east: the hype cycle, in hills, lit all along: up the peak of inflated expectations, down into the trough of disillusionment, up the slope of enlightenment to the plateau of productivity, and off the plateau a footbridge over the superhighway to the far side. The garage where it all started, the podcast studio (hour 3), VC row, and the infinity pool on top of Sand Hill. Accelerationists, VCs, podcasters. |
| Brussels-sur-Mer, south-west: the Commission, the stamping hall (rubber stamps coming down on the lane: in to the end and back out), a charging station (+21% VAT), the Euro shop (closed, lunch) with a ramp to its roof, a regulatory sandbox with actual sand in it, the strike picket, a club with a queue that has been there since Thursday, the Grand-Place, and the seafront: the beach, the pier, and the sea, which you sink in. Eurocrats, strikers, scooter commuters, ravers, the doorman (the policy is no). |
| The Compute Farm, south-east: the server halls and the hot aisle between them, the cooling towers (a lift up the far one), the chilled water main to roll along the top of, the hockey stick (flat for a long way, then LINE GO UP), the data lake with an island in it, the cable yard where the reels come after you, the substation. Accelerationists, VCs, podcasters. |
| The Information Superhighway: four lanes of trucks and cars in both directions, through tunnels at each end. Nobody brakes. Nobody reads. On the far side, the cookie banner on its hill. |