← Ish uslubim
Prototip Shaxsiy loyiha · kod ommaga ochiq · 2026

Jarohat tadqiqotlari bilan tekshirilgan tana fizikasi dvigateli

Tana zarbaga oldindan tayyorlangan animatsiyalar bilan emas, real fizika asosida javob beradigan oʻyinchoq yaratmoqchi edim. Ilgari hech qachon oʻyin yaratmagan edim, shuning uchun dvigatelni kod yozuvchi AI agentlarini boshqarib yaratdim. Teri, mushak va suyak har bir zarbaga javob beradi, buni esa har kim brauzerda sinab koʻrishi mumkin.

Mening rolim
Maqsadlarni belgiladim va natijalarni baholadim. Kodni mening qoidalarim va tekshiruvlarim asosida kod yozuvchi agentlar yozdi, 2026-yil oktyabrdan beri esa Claude Code yozadi.
Holat
Oʻynasa boʻladigan prototip. Brauzer versiyasi 2026-yil oktyabrdan beri ishlab turibdi, kod esa GitHub platformasida ochiq.
Texnologiyalar
Windows va brauzer (WebAssembly) uchun yagona kod bazasi, GitHub Pages, Claude Code
Koʻlam
Oldindan belgilangan 27 ta sinov zarbasi, har biri jarohat tadqiqotlari bilan tekshiriladi

Muammo

Oʻyinlar odatda jarohatlarni oldindan tayyorlangan animatsiyalar va ustiga chizib qoʻyilgan yaralar bilan koʻrsatadi. Men har bir koʻkarish, kesik va singan suyak zarbaning oʻz fizikasidan kelib chiqishini xohladim.

Kod yozuvchi agentlar qanchalik yaxshilanganini koʻrganimdan keyin, 2026-yil mayda ishni boshladim.

Qanday rivojlandi

2026-yil iyundagi birinchi versiyada piksel grafikada chizilgan oddiy tana bor edi. Uning terisi, mushagi va suyaklari yirtilishi va sinishi mumkin edi. Lekin qatlamlar hali bir-biri bilan yaxshi ishlamasdi, suyaklar esa oldindan belgilangan andozalar boʻyicha sinardi.

Iyun oxirida agentlar butun dvigatelni qaytadan yozdi. 2026-yil oktyabrda uning brauzer versiyasi paydo boʻldi, tana esa oddiy manekenga aylandi.

Keyin jarohatlar real hayotdagiga mos boʻlishini soʻradim. Sekin itarish faqat koʻkarish qoldirishi, kuchli zarba esa suyakni taxminan chop etilgan tadqiqotlardagidek tez-tez sindirishi kerak.

Oʻzgarish qanday tekshiriladi

  1. Nima notoʻgʻri ekanini aytaman Oʻyinni oʻynayman va muammoni oddiy soʻzlar bilan tasvirlayman, masalan: “sekin zarbalar tanani yorib yuboryapti”.
  2. Boshqalardan oʻrganish Yechim oʻylab topishdan oldin agent ochiq kodli dvigatellar va ilmiy maqolalarda bu muammo qanday hal qilinganini koʻrib chiqadi.
  3. Dvigatelni oʻzgartirish Agent bu gʻoyani dvigatelning oʻz kodida qaytadan amalga oshiradi va manbani kod izohida koʻrsatadi.
  4. Testlarni qayta oʻtkazish Har bir sinov zarbasi 45 marta bajariladi, har safar moʻljal va suyaklar mustahkamligi biroz oʻzgaradi.
  5. Tadqiqotlar bilan solishtirish Har bir jarohat taxminan keltirilgan tadqiqotda aytilganidek tez-tez yuz berishi kerak.
  6. Rasmlarni baholayman Agent menga haqiqiy ilovadan olingan skrinshotlarni koʻrsatadi. Shundan keyin oʻzgarish saytga joylanadi.
  • Brauzer va kompyuterBrauzer Windows ilovasi bilan aynan bir xil natija berishi shart
  • Haqiqiy oʻlchamlarTana — boʻyi 1,75 m boʻlgan katta yoshli odam, bolgʻa va beysbol tayogʻining ogʻirligi esa haqiqiy
  • TovushHar bir zarba va sinish tovushi fizikada nima yuz berganidan yaratiladi, yozib olingan tovushlar ishlatilmaydi
Bitta oʻzgarishning yoʻli: shikoyatimdan to saytga joylanguncha. Agentlar uchun yozilgan qoidalar har bir tekshiruvdan oʻtishni talab qiladi.

Sinab koʻring

Oʻyin brauzerda, jumladan telefonda ham ishlaydi, hech narsa oʻrnatish kerak emas. Unda simulyatsiya qilingan jarohatlar va qon ham koʻrsatiladi.

YouTube platformasida yangilanish haqidagi 4 daqiqalik videoni tomosha qiling 2026-yil oktyabrdagi versiya: katta bolgʻa avval qoʻlni koʻkartiradi, keyin uni sindiradi.

Loyihalash qarorlari

  • Testlar real natijalarni aytadi. Men shifokor ham, fizik ham emasman, shuning uchun raqamning oʻzi menga kam narsa aytadi. Har bir test haqiqiy odam bilan nima sodir boʻlishini va bu qaysi tadqiqotdan olinganini koʻrsatadi. Masalan, sekin itarish hech qachon suyakni sindirmaydi, pichoq esa hech qachon qoʻl yoki oyoq suyagini sindirmaydi.
  • Haqiqiy zarbalar har xil boʻladi. Har bir sinov zarbasi 45 marta bajariladi: moʻljal biroz suriladi, suyaklar esa zaifroq yoki mustahkamroq qilinadi. Hayotda “baʼzan” uchraydigan jarohat hamma urinishlarda emas, faqat ayrimlarida yuz berishi kerak.
  • Raqamlar emas, rasmlar. Ilova skrinshotlar va kadrlar ketma-ketligini oʻzi saqlay oladi. Koʻrinishdagi har bir oʻzgarishni shular orqali baholayman, testlar sezmagan muammo esa yangi testga aylanadi.
  • Brauzer kompyuterdagi ilova bilan bir xil ishlashi shart. Skript har bir testni Windows ilovasida va brauzerda bajaradi hamda natijalarni solishtiradi. Bir safar natijalar bor-yoʻgʻi bitta koʻkarish bilan farq qildi. Agentlar sababni topdi: bu har bir platformada boshqacha yaxlitlaydigan matematik funksiya edi. Ular uni almashtirdi.
  • Avval boshqalardan oʻrganish, keyin oʻlchash. Pichoq kesiklarining ochilish usuli ochiq kodli Rapier fizika dvigatelidan olingan. Qonning teri boʻylab oqib tushish usuli esa Overgrowth oʻyinidan olingan. Butun simulyatsiyani Rapier dvigateliga oʻtkazib koʻrdim: u tezroq ishladi, lekin kamroq testdan oʻtdi. Shuning uchun oʻz dvigatelimni saqlab qoldim.

Holat

  • 27sinov zarbasi, har bir oʻzgarishdan keyin qayta bajariladi
  • 45urinish har bir zarba uchun, moʻljal va suyaklar har safar boshqacha
  • 60fizika qadami soniyasiga, sayt mehmonining oʻz qurilmasida

2026-yil oktyabr holatiga koʻra, deyarli har bir jarohat taxminan tadqiqotlarda aytilganidek tez-tez yuz beradi. Test hisobotida dvigatel hali oʻta olmaydigan tekshiruvlar sanab oʻtilgan. Masalan, yelkaga yuqoridan tushirilgan beysbol tayogʻi hech qachon oʻmrov suyagini sindirmaydi, holbuki real hayotda oʻmrov suyagi odatda sinadi.

Kod, testlar va ular asoslangan tadqiqotlar GitHub platformasida ochiq.

Bitta koʻkarishdan tashqari, bu sahifadagi rasmlar tanani hech qanday zarbadan oldingi holatda koʻrsatadi. Oʻyinning oʻzida esa simulyatsiya qilingan jarohatlar va qon ham koʻrsatiladi.