Cum o linie de cod TF2 a stricat această caracteristică simplă
Ai întâlnit vreodată un bug minor enervant într-un joc video? Dar ce zici de unul care datează din 2018? De obicei, nu ai nicio speranță să-l repari, dar de data aceasta este diferit. Potrivit hackaday.com, este prezentat modul de abordare a unui programator la prima experiență, care încearcă (cu mari dificultăți) să repare o minge bouncy care devine invizibilă atunci când este lovită în Team Fortress 2.
👉 Inițial, problema este ascunsă prin dezactivarea fizicii jiggle
Totul începe cu o soluție provizorie care ascunde problema: pur și simplu dezactivează fizica jiggle! Deși aceasta funcționează, afectează și multe alte modele din joc și nu abordează cauza principală. Este timpul să investigheze. Deoarece această minge este adesea neobservată, nu și-a dat seama că ar trebui să aibă fizică jiggle, eliminând-o din greșeală. Se pare că, după ce a căutat pe internet filmări vechi, se dovedește că ar trebui să se miște.
Revenind la primul pas, reiese că osul jiggle care a fost eliminat din greșeală era legat de problemă, reușind să descopere că tipul specific de os jiggle folosit (is_boing) a cauzat problema. Timpul pentru a săpa în cod. Identificarea problemei nu este o sarcină ușoară pentru cineva care nu a programat niciodată înainte, chiar și cu ajutorul LLM-urilor, dar, în cele din urmă, la ora 4 dimineața, apare o descoperire! Mingea nu mai devine invizibilă, ci păstrează mișcarea dorită.
👉 Solutia finală este găsită și explicată de comunitate pe GitHub
Ajuns la limitele cunoștințelor sale în domeniu, își publică progresul parțial pe GitHub, unde altcineva identifică problema reală și transformă această a doua soluție provizorie într-o reparație corectă. El finalizează explicând matematica a ceea ce a mers prost.