Underground 2 Revived
Play Need for Speed: Underground 2 (2004) in Chrome and Firefox with WebGPU graphics, Web Audio, up to 120 fps widescreen, controller support, free roam and Online races with friends. Fan project, not
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기Texas Hold'em toernooipoker in de browser — 5 bots met Monte-Carlo equity, pure CSS-graphics, WebAudio
저장소 README에서 가져옴
README 전체를 불러오는 중입니다. 아래는 저장된 발췌입니다.
Texas Hold'em toernooipoker in de browser. Jij tegen vijf bots met elk hun eigen karakter, stijgende blinds en winner-takes-all. Geen backend, geen accounts, geen afbeeldingen — alles wordt in de browser getekend en berekend.README 전문 보기 ↗
Texas Hold'em toernooipoker in de browser. Jij tegen vijf bots met elk hun eigen karakter, stijgende blinds en winner-takes-all. Geen backend, geen accounts, geen afbeeldingen — alles wordt in de browser getekend en berekend.
Volledige Hold'em-regels
Handevaluator Beste 5 uit 7 kaarten via alle 21 combinaties, met een enkele vergelijkbare score per hand. Straat met aas-laag (A-2-3-4-5) inbegrepen. Gecontroleerd op alle negen categorieën plus de onderlinge ordening.
Bots die echt rekenen — en die jou lezen Elke bot schat zijn winkans met een Monte-Carlo simulatie tegen het werkelijke aantal tegenstanders, en zet die af tegen de pot odds. Daarbovenop een karakter — agressie, blufneiging en tightness:
| Bot | Stijl |
|---|---|
| 🦊 Vera | strak, straft hard af |
| 🐗 Mad Mo | elke pot is van hem |
| 🦅 Rook | leest je als een boek |
| 🐢 Nonna | wacht op de nuts |
| 🎲 Dice | gokt op gevoel |
Ze houden bij hoe jij speelt — hoe vaak je vrijwillig meedoet, hoe vaak je verhoogt, en vooral hoe vaak je weglegt tegen een raise — en verschuiven hun bluf- en callgrenzen daarop. Gemeten in simulatie: tegen een tegenstander die bijna altijd foldt vallen ze in 65% van de gevallen aan; tegen een station dat nooit weglegt nog maar 16%.
Daarnaast onthouden ze frustratie: wie net een dure pot verloor speelt een paar handen agressiever. Korte stacks schakelen over op push-or-fold, en op hogere toernooiniveaus rekenen de bots met meer simulaties en minder veiligheidsmarge.
Ze praten ook. Elke bot heeft een eigen stem, en wat ze zeggen hangt af van wat ze werkelijk deden — een bluf-raise klinkt anders dan een waarderaise.
Coach Na elke hand één zin over je leerzaamste beslissing, met de winkans en de pot odds die je op dat moment écht had: "Je foldde op de turn met 62% winkans, terwijl 31% al genoeg was om te callen." Optioneel een live winkansmeter tijdens je beurt.
Carrière en dagchallenge Een ladder van vier toernooien — Café-avond, Pokerclub, Casino, High Roller — met eigen inleg, stack, prijzengeld en steeds scherpere bots. Je bankroll, gewonnen niveaus en 15 prestaties staan in localStorage. De dagchallenge leidt de shuffle af van de datum, dus iedereen speelt vandaag dezelfde kaarten; het resultaat is met één klik te kopiëren.
All-in showdown Zodra er niets meer te beslissen valt draaien alle kaarten open, komt er een ALL-IN banner met hoeveel kaarten er nog moeten en krijgt elke speler een winkansbalk in zijn naambalk. Het board rolt trager uit zodat je de balk ziet verspringen; wie voorstaat kleurt goud.
runoutEquities() telt exact uit zodra alle handen bekend zijn: met één kaart
te gaan alle 44 mogelijkheden, met twee alle 990. Alleen bij een preflop all-in
(vijf kaarten) wordt er geschat met 2.000 trekkingen. Gecontroleerd tegen
bekende waarden: AhQd tegen Kd5c op 2h 7d Kc Js geeft exact 7/44 = 15,91%,
een board dat voor beiden speelt exact 50/50, en AA tegen KK 81,7% tegen de
boekwaarde van 81,9%.
Presentatie
Bediening en comfort
| Toets | Actie |
|---|---|
F | fold |
C | check / call |
R | raise naar het ingestelde bedrag |
A | all-in |
spatie | pauze — zet de hele tafel stil |
Of gewoon klikken. De schuifbalk en de knoppen ½ pot / ¾ pot / pot / all-in zetten je inzet.
Next.js 15 (App Router) · React 19 · TypeScript · handgeschreven CSS. Geen runtime-dependencies buiten React, geen externe assets, volledig statisch.
npm install
npm run dev
Typecheck: npm run typecheck. Build: npm run build.
lib/cards.ts kaarten, deck, schudden (met injecteerbare RNG)
lib/rng.ts deterministische generator + zaadje van de dag
lib/evaluator.ts beste 5 uit 7, vergelijkbare score
lib/equity.ts Monte-Carlo winkans
lib/engine.ts volledige spelstatus + regels + side pots + spelersreads
lib/ai.ts botbeslissingen, aangepast aan de tegenstander
lib/chatter.ts tafelpraat per bot
lib/coach.ts beoordeling van je beslissingen
lib/tiers.ts toernooiladder en prijzengeld
lib/achievements.ts prestaties
lib/stats.ts localStorage: statistieken, voortgang, instellingen
lib/sound.ts WebAudio-synth
components/ tafel, stoelen, kaarten, chips, knoppen, lobby
De engine is puur: elke functie neemt een GameState en geeft een nieuwe terug.
Daardoor is hij los van React te simuleren — wat ook gebeurd is. De laatste
controle: 48 volledige toernooien over alle vier de niveaus, 752 handen, zonder
chip-lekken, zonder vastlopers, met consistente spelersreads en correcte side
pots. Het zaadje van de dag gaf in Node dezelfde eerste hand als in de browser.