In 2020 kwam een ​​Bulgaarse ontwikkelaar plotseling op het idee om Red Alert 2 op internet te repliceren? Daarom gebruikte hij vijf jaar lang de meest extreme menselijke reverse engineering, handgeschreven code regel voor regel, om elke bedieningslogica te simuleren en te herstellen volgens "Red Alert 2". Ten slotte heb ik een rode waarschuwing voor de webpagina geschreven, zodat iedereen die in de jaren 80 en 90 is geboren en nostalgisch wil zijn, terug kan gaan naar zijn kindertijd door simpelweg de browser te openen, zonder zich zorgen te hoeven maken over het configureren van de omgeving. Maar een maand geleden deed iemand om ons heen iets soortgelijks.

Hij heeft drie van Xishanju's vroege werken, "New Swordsman Love", "Legend of Moon Shadow" en "Swordsman Love 2", gereproduceerd in de webversie en aangepast aan de mobiele versie, zodat je erop kunt klikken om te spelen.

Zonder ook maar één regel code te schrijven, reproduceerde hij je favoriete

Iedereen kent deze spellen.

De slechte recensent herinnert zich nog dat hij de computer aanzette nadat hij thuiskwam van de basisschool, het Dugu-zwaard bestuurde en door Lin'an City dwaalde, en chatten met een dronkaard in een restaurant daadwerkelijk verborgen vechtsporten kan activeren. Vervolgens controleerde hij Yang Yingfeng in "Legend of Moon Shadow" om kruiden op te rapen en een man in het zwart naar de Batcave te achtervolgen. Als gevolg hiervan kwam hij een groep bandieten tegen en werd omsingeld en geslagen, maar hij kon ze niet verslaan.

Bij het openen van deze geremasterde versie na meer dan 20 jaar ontdekte de negatieve recensent dat de smaak erg puur is: de NPC-dialoog is nog steeds zo langdradig, het indrukken van V om te mediteren om de vitaliteit te herstellen is er nog steeds, en er zijn ook veel schatkisten verborgen achter stenen in de hoeken van de kaart.

Maar wat schokkend is, is:

De auteurs die deze drie spellen hebben gereproduceerd, hebben geen enkele regel code met de hand geschreven.

Hij vertrouwde volledig op AI, en in minder dan een maand reproduceerde hij niet alleen drie complete vechtsport-RPG's, maar bouwde hij zelfs een universele game-engine, compleet met debugger en editor, zodat anderen naar andere games konden verwijzen en deze konden reproduceren.

Hoe wordt dit gedaan? De slechte recensent vond de auteur van dit project, leraar Chen.

Meneer Chen leert zichzelf programmeren sinds hij in de derde of vierde klas van de basisschool zat. Hij heeft bijna 20 jaar codeerervaring en heeft al vroeg veel projecten op GitHub open source gemaakt.

Het spreekt voor zich dat zo’n senior nerd een diep geloof moet hebben in handgeschreven code.

Maar leraar Chen vertelde me dat hij nu niet eens een gelijkteken wil typen.

Omdat hij een vast proces heeft geprobeerd: laat het huidige krachtigste model eerst een gedetailleerd ontwerpdocument schrijven en voer het vervolgens in modules uit, strikt volgens het document. Elke module wordt onafhankelijk geverifieerd en na afloop samengesteld. De kwaliteit van de technische architectuur en code die op deze manier worden geproduceerd, is in de meeste gevallen inderdaad hoger dan handschrift vanaf het begin.

In feite had de heer Chen al in 2020 het idee om deze meesterwerken uit zijn kindertijd te herdrukken, maar hij gaf het op nadat hij de technische werklast had berekend van het handmatig reverse-engineeren van binaire bestanden en het herschrijven van het hele spelsysteem.

Tot voor kort geloofde hij dat de mogelijkheden van AI eindelijk dat omslagpunt hadden overschreden.

Daarom is deze heropvoering niet alleen een nostalgie uit de kindertijd, maar ook een extreme test van AI-programmering.

Het eerste dat meneer Chen deed, was de originele bronbestanden van de gameclient rechtstreeks naar AI sturen en deze door AI laten analyseren.

Deze spelbestanden zijn binair en alle informatie is verpakt en gecomprimeerd in een voor mensen leesbaar formaat voor distributie en installatie. Nadat de AI het bestand had gekregen, begon hij verwoed verschillende weergavetools aan te roepen, de bestandsstructuur op te sommen, hexadecimaal te lezen en Python-code te schrijven om te proberen het te parseren. Als een pad niet werkt, probeer het dan onmiddellijk opnieuw met een andere logica.

In het verleden moesten programmeurs een hex-editor gebruiken, beetje bij beetje analyseren op basis van ervaring en intuïtie, en vervolgens scripts schrijven en het steeds opnieuw proberen.

Leraar Chen schat dat de efficiëntie van AI op dit gebied 10 tot 100 keer zo groot is als die van mensen.

Het is logisch voor mij. AI is goed in gewelddadige uitputting. Het hoeft niet te slapen, het zal niet geagiteerd zijn en het zal TikTok niet in het derde uur openen om slechte recensies te krijgen.

Dit is nog maar het begin, de echte test is hoe je het hele spelsysteem opnieuw kunt opbouwen.

Bij het reproduceren met VScode Copilot gebruikt de heer Chen voornamelijk twee modellen: Claude Opus is verantwoordelijk voor het diepgaande denken en treedt op als architect, waarbij hij het spel in modules opsplitst en technische documenten schrijft; Claude Sonnet is snel en treedt op als uitvoerder en schrijft de code volgens de documenten.

Wat de hoofdhuid van mensen gevoelloos maakt, is dat AI niet langer alleen maar ondergedompeld is in de uitvoering, maar ook het vermogen heeft om autonoom fouten te corrigeren.

Toen ik een keer aan een padzoeksysteem werkte, vond leraar Chen dat deze module te prestatie-intensief was en dat TypeScript er misschien niet mee overweg kon, dus vroeg hij Sonnet om te proberen hem in Rust te herschrijven. Nadat Sonnet was geschreven, heb ik een ronde prestatievergelijkingen uitgevoerd en ontdekt dat de overhead van het vertalen en overbrengen van gegevens heen en weer tussen Rust en TypeScript te hoog was, en dat de algehele berekening zelfs nog langzamer was.

Daarom nam zij het initiatief om deze testconclusie aan leraar Chen door te geven en stelde voor om terug te vallen op de TypeScript-oplossing.

Zonder ook maar één regel code te schrijven, reproduceerde hij je favoriete

Met zo'n verantwoordelijk denken en verantwoordelijk handelen vorderde het project sneller dan de heer Chen zelf had verwacht.

Vanaf de start van de werkzaamheden op 25 januari tot eind februari, met uitzondering van de pauze van het Lentefestival, duurde het slechts ongeveer 20 dagen om de volledige planning te maken. Gedurende deze periode voerde leraar Chen vier- tot vijfduizend gesprekken met AI.

Hij opent meestal 5 tot 6 AI-dialoogvensters tegelijkertijd en verwerkt verschillende modules parallel. Als ik overdag in het bedrijf werk, gebruik ik de remote desktop ook om de AI thuis op de achtergrond als een gek te laten werken, en kan ik de resultaten direct checken als ik 's avonds naar huis ga.

Iemand moet dit in twijfel trekken nadat hij dit heeft gezien: 200.000 regels code worden allemaal automatisch gegenereerd door AI. Is het niet echt een berg strontcode?

De slechte recensent gebruikte inderdaad ook AI om een ​​app te schrijven. Als gevolg hiervan zou er elke keer dat een functie werd toegevoegd, er nog een bug zijn. Zelfs als één bug werd opgelost, zouden er twee nieuwe opduiken.

Leraar Chen zei dat het grootste misverstand wanneer mensen zonder programmeerervaring AI gebruiken om code te schrijven, is dat AI in één keer een complete APP kan schrijven en geen architectonisch ontwerp heeft. In het begin was het oké, maar hoe meer functies er later werden toegevoegd, hoe verwarrender het werd, omdat AI het beste eerdere schrijfmethoden kan imiteren. Als de logica in het beginstadium verwarrend is, zal ze in het latere stadium steeds chaotischer worden.

Daarom is de aanpak van dhr. Chen om in modules te ontwikkelen, waarbij elke module afzonderlijk wordt ontworpen en getest, en vervolgens opnieuw te proberen nadat deze is behaald. Wanneer er een bug wordt aangetroffen, wordt het lopende logboek naar AI gestuurd en wordt de specifieke module gelokaliseerd voor reparatie. Nadat elke grote wijziging is voltooid, opent hij een nieuw venster en laat een andere AI de nieuw gewijzigde code helemaal opnieuw scannen.

Kortom, na maar liefst 10 rondes van optimalisatie en refactoring werden uiteindelijk bijna 200.000 regels code met succes geïmplementeerd.

Wat doen deze 200.000 regels code precies?

Je weet het wanneer je het spel opent: wanneer het personage over de kaart loopt, kan hij de kortste route rond obstakels vinden. Het weer zal plotseling veranderen van zonnig naar regenachtig, en regendruppels zullen op het scherm blijven hangen en langzaam vallen. Dit effect is niet beschikbaar in de originele versie, maar is nieuw toegevoegd in de geremasterde versie. Het vechtsportsysteem heeft ook 22 vluchttrajecten en 10 statuseffecten, waaronder spiraal-, tracking- en waaiervormige diffusie, die honderden spreuken kunnen combineren.

Omdat het originele spel door Xishanju was geschreven met behulp van zijn eigen scriptsyntaxis om het hele script aan elkaar te rijgen, herschreef de heer Chen, om het spel in de browser te laten draaien, ook honderden plotinstructies en voegde hij ondersteuning toe voor de Lua-taal die veel wordt gebruikt in de moderne game-industrie. Als hij in de toekomst nieuwe plots wil toevoegen en dialoogtakken aan het spel wil veranderen, hoeft hij niet na te denken over de originele syntaxis van Xishanju, omdat hij Lua-scripts kan gebruiken.

Niet alleen dat, hij maakte ook een game-editor.

Vechtsporten, NPC's, kaarten, items, dialoogbomen, alle 13 modules kunnen rechtstreeks op de webpagina worden bewerkt en de effecten zijn na het vernieuwen in het spel te zien. In de toekomst kunnen gebruikers, zolang de engine is verbonden met AI, in één zin gameplots en MODs genereren.

Deze drie games hebben al een groep MOD-makers op Bilibili. Vroeger werden ze allemaal met de hand gemaakt, wat tijdrovend en arbeidsintensief was. Als deze functie is geïmplementeerd, kan iedereen zijn eigen zwaardvechterromantiek creëren.

Terwijl ik dit schrijf, komt de oude vraag weer naar boven: gaan programmeurs echt vervangen worden?

Het antwoord van leraar Chen is momenteel nee, maar de definitie van het beroep van programmeur wordt al herschreven.

In het verleden moest je, om zelfstandig games te ontwikkelen, 70% van je energie besteden aan coderen, modelleren, bugs oplossen en de prestaties optimaliseren, waarbij je 30% overbleef voor gameplay.

Maar nu kan AI deze codeertaken overnemen. Je moet 30% van je energie gebruiken om architecturale beslissingen te nemen, en de resterende 70% wordt besteed aan gameplay-ontwerp.

Hoe bepaal je bijvoorbeeld de iteminteractielogica? Hoe teken je een numerieke groeicurve? Hoe de NPC-gedragsboom inrichten? Dit zijn beslissingen op product- en ontwerpniveau en er zijn geen standaardantwoorden.

AI kan je honderd plannen aanreiken, maar uiteindelijk heb je nog steeds mensen nodig die de uiteindelijke beslissing nemen over wat voor soort game je wilt maken.

Met andere woorden: de twintig jaar programmeerervaring van de heer Chen is niet ontkracht, maar is omgezet in architecturale beslissingen tijdens het reproduceren van het spel.

Mensen zoals jij, die geen programmeerervaring hebben, weten niet hoe ze bugs moeten lokaliseren als ze die tegenkomen. Ze hebben geen idee hoe ze het spelsysteem moeten ontmantelen, en zelfs als er AI is, staren ze er nog steeds naar.

Zonder ook maar één regel code te schrijven, reproduceerde hij je favoriete

Maar. . .

Dit gesprek leidde ook tot een diepere gevolgtrekking:

De verdeling van de werkfocus van programmeurs is veranderd van "7 naar 3" naar het huidige "3 naar 7". Zal deze verhouding, met de snelle iteratie van AI-modellen, binnenkort “1 op 9” of zelfs “0 op 10” worden?

Hoe lang zal deze fase waarin ervaren mensen de code moeten leiden, duren?

Zal AI zelfs na morgen sneller en bedachtzamer kunnen denken dan de meeste mensen in creatief werk, zoals 'hoe ontwerp je een game?'

Zonder ook maar één regel code te schrijven, reproduceerde hij je favoriete

Op dit gebied, waar de tijdschaal extreem gecomprimeerd is, durft niemand een definitieve conclusie te trekken.

DeepSeek is tenslotte pas ruim een ​​jaar geleden uitgebracht en AI helpt je slechts een paar regels code in te vullen en de eenvoudigste programma's te schrijven. Zelfs als we een jaar verder gaan, heeft iedereen het nog steeds over AI-klantenservice.

Tegenwoordig zijn twintig dagen, 200.000 regels code en drie games het resultaat van de samenwerking tussen een oude programmeur en AI.

Niemand had gedacht dat programmeurs op een dag niet langer code met hun handen zouden typen. Er werd in de branche ook belachelijk gemaakt dat "Handgeschreven code met vindingrijkheid een immaterieel cultureel erfgoed is, een eeuwenoude programmeermethode", waarin duidelijk werd gesteld dat handgeschreven code een eeuwenoude methode is.

Dit zijn de twee kanten van de AI-munt.

Aan de ene kant worden de vaardigheden waarin u het meest bedreven bent de standaardfunctie van AI.

AI is geëvolueerd van het stellen en beantwoorden van vragen in een chatbox naar een tool die documenten kan lezen, context kan onthouden, tools kan oproepen, actief kan werken en kan controleren op fouten.

Deze verandering verspreidt zich vanuit het programmeerveld naar al het mentale werk. Het ontwerp is veranderd van handgemaakte materialen naar het genereren en aanpassen van door AI gegenereerde oplossingen. Video's zijn veranderd van handmatig bewerken naar creatieve planning + AI-uitvoering.

De focus van het werk in alle lagen van de bevolking wordt maandelijks opnieuw gedefinieerd, en de houdbaarheid van menselijke ervaring en vaardigheden volgt ook het versienummer van het topmodel.

Zonder ook maar één regel code te schrijven, reproduceerde hij je favoriete

Aan de andere kant is er een deur die je nog nooit hebt geopend.

De afstand tussen idee en eindproduct wordt extreem snel verkort.

Iemand die nooit heeft leren monteren, kan het beeld in zijn hoofd direct omzetten in een korte film. Een groots idee in je hoofd hoeft niet langer te wachten op de implementatie van honderdduizenden fondsen en een compleet team.

Het uitvoeringsvermogen neemt af, maar mensen die weten ‘wat ze moeten doen’ zullen onvervangbaarder zijn dan voorheen.

Niemand weet aan welke kant de medaille terecht zal komen. Maar nu geeft het iedereen tenminste de kans om opnieuw hun kaarten te krijgen.