De Half-Life-bug die door Windows 2000 werd geïntroduceerd, is eindelijk opgelost

De Half-Life-bug die door Windows 2000 werd geïntroduceerd, is eindelijk opgelost

Half-Life ontving onlangs een grote update om zijn 25e verjaardag te vieren, maar er bleef een grote bug bestaan. In een beroemde scriptreeks, waarin een lange groene tentakel door een raam dringt en een wereld wegtrekt, zullen de wereld en de tentakels in de verkeerde uitlijning staan, waardoor het lijkt alsof de wereld uit eigen beweging uit het raam zweeft.

Niet meer. Ruim twintig jaar later heeft Valve-programmeur Ben Burbank de bug opgelost – en uitgelegd hoe hij dat deed.

Ten eerste: toen ik Half-Life voor het eerst speelde in 1998 en 1999, bestond deze bug niet. De leidende theorie is dat het werd geïntroduceerd door de Win32 API met Windows 2000. Burbank legt uit Op Mastodonop ‘Computers met minimaal Windows 2000 of hoger’, ziet u de verkeerde uitlijning.

“We wilden dit probleem oplossen voor de 25th Anniversary Update, maar andere zaken hadden prioriteit vóór verzending”, schreef Burbank.

Toen we achteraf met een oplossing voor het probleem kwamen, leken er drie opties te zijn om dit te doen. Doe dit door de code te repareren, die volgens Burbank “redelijk zal zijn, maar vrijwel zeker zal vereisen dat elke andere geschreven reeks grondig opnieuw wordt getest, en misschien zelfs niet eens wordt gerepareerd”; “Verander de animatie die wordt afgespeeld (mogelijk)”; Of ‘Verander de kaart zodat de timing werkt.’

“We hebben er om een ​​paar redenen voor gekozen om de kaart te veranderen. Als we de reeks zo zouden instellen dat de wereldtijd zou werken, zou de speler nog steeds in een deuropening kunnen staan ​​en op de wereld kunnen schieten, de reeks kunnen onderbreken, en dan zou hij spelen brengen hun animatie op een ‘gekke’ manier uit. We wilden dus de manier veranderen waarop de reeks werd afgespeeld, zodat deze ononderbroken zou zijn”, schrijft Burbank.

READ  Poll: Box Art Brawl: Duel #96 - Kirby 64: The Crystal Shards

“Het opnieuw compileren van de kaart zorgde echter voor een aantal veranderingen in de resulterende BSP (onthoud dat deze kaarten voor het laatst zijn gecompileerd op een Windows 95/98-pc!).

“Elke variatie in .bsp zou kleine maar vervelende padfouten en botsingen veroorzaken. Dat wilde ik niet.

“Daarom heb ik zojuist de kaart bewerkt. Het afspelen van de animatie wanneer de deur opengaat (sommige community-mods deden dit met gedecompileerde/opnieuw gecompileerde versies van de kaart) in plaats van dat de speler door de deur gaat, zorgt ervoor dat de speler niet kan schieten. wereld voordat de dingen beginnen te ‘synchroniseren’.” De reeks is een beetje anders, maar sluit nauwer aan bij wat er op de alfakaarten werd gespeeld toen dit werd geschreven.

Hex-bewerking is een manier om de onderliggende binaire gegevens van een computerbestand te wijzigen en ziet eruit als de reeks letters en cijfers die wordt weergegeven in de afbeelding bovenaan het Mastodon-thema van Burbank. Zoals hij in zijn reactie uitlegt: “Gelukkig de onderdelen [he] Aan de rechterkant was gewone tekst nodig.”

Ik hou ervan als game-ontwikkelaars kunnen uitleggen hoe ze iets hebben gedaan bij het maken of repareren van een game – vooral omdat het meestal veel moeilijker is om te doen dan iemand zich zou kunnen voorstellen, en dat is een nuttig perspectief voor de ontwikkeling in het algemeen. Heck, over het leven in het algemeen. Als elke studio zijn ontwikkelaars maar eens echt zou laten praten.

Een reactie achterlaten

Je e-mailadres zal niet getoond worden. Vereiste velden zijn gemarkeerd met *