AI-generated games debug کریں
Updated 2026-09-05
پہلی failing boundary تلاش کریں، agent کو reproducible symptom دیں اور وہی player action دوبارہ test کریں۔ اسی engine اور build سے شروع کریں جسے حقیقتاً run کرتے ہیں۔
Fix مانگنے سے پہلے failure classify کریں
Earliest failing step identify کریں: project discovery، import، parsing یا compilation، scene startup، player input، gameplay state، export یا target launch۔ بعد کے symptoms پہلی failure کے consequences ہو سکتے ہیں۔ Engine version، project revision، target اور exact reproduction ایک ساتھ رکھیں۔
مثلاً scene start ہی نہ ہو تو restart button test نہیں کیا جا سکتا۔ Browser game package fetch نہ کر سکے تو controller test نہیں ہوتا۔ Code بدلنے سے پہلے error کو درست boundary تک پہنچائیں؛ اس سے original prerequisite ٹوٹی رہتے ہوئے repair loop میں unrelated patches جمع نہیں ہوں گی۔
| Symptom | پہلے inspect کریں | Retest outcome |
|---|---|---|
| Project open نہیں ہوتا | Path، version، dependencies | Expected project load ہوتا ہے |
| Blank scene | Startup errors، scene، camera، visibility | Expected content ظاہر ہوتا ہے |
| Input کا اثر نہیں | Focus، action mapping، state، handlers | Action game state بدلتا ہے |
| Export fail ہوتا ہے | Preset یا target prerequisites | Artifact بن جاتا ہے |
| Build صرف target پر fail | Packaged resources اور platform logs | Target وہی loop complete کرتا ہے |
پہلا meaningful engine error capture کریں
Godot میں debugger panel اور متعلقہ runtime output استعمال کریں۔ Unity میں compilation اور runtime errors الگ inspect کریں اور play result سمجھنے سے پہلے editor ready ہونے دیں۔ وہ stack یا location محفوظ کریں جو failing script اور اسے trigger کرنے والی operation identify کرتی ہے۔
Agent کو focused excerpt کے ساتھ relevant scene یا object context دیں۔ Giant undifferentiated log first error چھپا سکتا ہے، مگر full record local inspection کے لیے رکھیں۔ Credentials اور personal data redact کریں۔ مفید report بتاتی ہے player نے کیا کیا، کیا ہونا چاہیے تھا اور engine نے حقیقتاً کیا report کیا۔
Requirement بدلے بغیر reproduction چھوٹی کریں
Recoverable project state سے شروع کریں اور smallest scene یا action isolate کریں جو defect دکھاتی رہے۔ اصل controller، collision rule یا save boundary مسئلے میں شامل رکھیں۔ Failing system مکمل ہٹا کر clean run مل سکتی ہے مگر مطلوبہ behavior ختم ہو جائے گا۔
نیچے والا brief original diagnostic template ہے۔ اسے observed details سے fill کریں، model سے cause فرض نہ کرائیں۔ ایک proposed explanation اور narrowly scoped change مانگیں۔ Test مکمل ہونے پر full player journey میں واپس جائیں تاکہ local repair broken scene transition چھپا نہ دے۔
Project revision: <record actual revision>
Engine and target: <record actual environment>
Steps: launch -> start round -> perform the failing action
Expected state: <specific result>
Observed state: <specific result>
First engine error: <relevant error and location>
Inspect the referenced scene and script before editing.
Propose one cause, make a scoped fix, then repeat these steps.
Preserve the required behavior and report any remaining failure.Blank screen کو layers میں investigate کریں
پہلے طے کریں engine start ہوا اور intended scene load ہوئی یا نہیں۔ پھر camera selection، viewport dimensions، object visibility، positions اور scene کو cover کرنے والے overlay inspect کریں۔ Engine state اور real capture ساتھ استعمال کریں: image اکیلی یہ نہیں دکھا سکتی کہ scene paused، off-camera یا empty ہے۔
Input apply کر کے دیکھیں کہ کچھ state بدلتی ہے یا نہیں، چاہے کچھ دکھائی نہ دے۔ Position بدلے مگر image نہ بدلے تو rendering یا scene references پر focus کریں۔ دونوں نہ بدلیں تو artwork adjust کرنے سے پہلے startup اور input investigate کریں۔ ہر hypothesis کو observation سے جوڑیں تاکہ agent دونوں systems غیر ضروری طور پر rewrite نہ کرے۔
Input کو gameplay transition تک trace کریں
Action کو focus اور mapping سے handler، پھر اس state تک follow کریں جسے بدلنا ہے۔ Movement math کو blame کرنے سے پہلے pause state اور UI interception چیک کریں۔ Restart failure missing handler، stale scene reference یا reset نہ ہونے والی state ہو سکتی ہے۔
Repair کے بعد action کو ایک سے زیادہ relevant states سے test کریں: first launch، win کے بعد اور جہاں applicable ہو loss کے بعد۔ Duplicated handlers یا repeated rounds کے بعد نظر آنے والے stale objects دیکھیں۔ چھوٹی complete miniflow lifecycle defects کو isolated button test سے زیادہ مؤثر طور پر localize کر سکتی ہے۔
Browser loading کو game logic سے الگ رکھیں
Godot web export کے لیے gameplay code edit کرنے سے پہلے browser network اور console panels inspect کریں۔ Exported HTML، JavaScript، WebAssembly اور game package intended location سے load ہوتے ہیں یا نہیں confirm کریں۔ Official web export documentation اور chosen thread configuration کی requirements کے ساتھ hosting settings compare کریں۔
Exported companion filenames consistent رکھیں اور old/new files کے mixture کے بجائے artifact test کریں۔ Wrong project نظر آئے تو test browser میں service-worker caching inspect کریں۔ پھر input exercise کریں اور moving content verify کریں۔ Nonblank canvas صرف ابتدائی rendering check ہے، game loop کا proof نہیں۔
Target پر export-specific failures چیک کریں
Editor کام کرے مگر distributed build fail ہو تو startup scene selection، included resources، configuration اور target logs compare کریں۔ Exact artifact hash محفوظ رکھیں تاکہ re-export reproduction record invalidate نہ کرے۔ Existing saves یا editor caches پر بھروسا کرنے سے پہلے clean starting state میں test کریں۔
Missing packaged file کے لیے core mechanic نہ بدلیں۔ Packaging boundary fix کریں اور target build میں وہی acceptance path replay کریں۔ Desktop artifact کے لیے actual operating system، browser artifact کے لیے intended browser اور hosting setup استعمال کریں۔ صرف cross-export کرنا target behavior ثابت نہیں کرتا۔
Before-and-after result کے ساتھ repair بند کریں
Failing reproduction، scoped diff اور repeated action محفوظ کریں جو اب expected state بناتی ہے۔ Defect کی boundary پر regression check add کریں اور surrounding game loop replay کریں۔ Manual corrections اور unsuccessful repairs کی consumed requests record کریں۔
یہ examples diagnostic procedures ہیں، published failure-and-fix case نہیں۔ اپنے project سے concrete report بنائیں۔ Repeated proposals کے بعد symptom برقرار رہے تو automatic loop روکیں اور missing observation جمع کریں؛ نئی evidence کے بغیر broad rewrite نہ کریں۔
عمومی سوالات
Agent کہتی ہے game fix ہے مگر screen blank ہے، اب کیا؟
Symptom reproduce کریں اور startup errors، active scene، camera اور input response inspect کریں۔ Completion message runtime observation نہیں ہے۔
کیا پورا project regenerate کرنا چاہیے؟
پہلے earliest failing boundary isolate کریں اور working state محفوظ رکھیں۔ Focused reproduction کئی systems بدلنے والی replacement سے عموماً آسانی سے review ہوتی ہے۔
Browser پر پرانا game کیوں دکھتا ہے؟
Artifact identity، served files اور test browser میں service-worker cache چیک کریں۔ Verify کریں current export واقعی load ہو رہا ہے۔
کیا passing script checks playability ثابت کرتی ہیں؟
وہ صرف executed checks cover کرتی ہیں۔ Scene wiring، input، rendering، state transitions اور persistence کے لیے runtime evidence چاہیے۔
Useful bug report میں کیا ہو؟
Project اور engine identity، target، steps، expected اور observed states، first relevant error اور reproduce کرنے کے لیے smallest scene یا files شامل کریں۔