# Help and Questions

**URL:** <https://forum.makecode.com/t/help-and-questions/1335>\
**Category:** Help\
**Created:** [March 5, 2020, 10:48pm UTC](https://forum.makecode.com/t/help-and-questions/1335 "2020-03-05T22:48:55Z")\
**Posts on this page:** 1\
**Showing post:** 194

<div class="post-metadata">

**Author:** ![a012](https://sea2.discourse-cdn.com/flex020/user_avatar/forum.makecode.com/a012/32/24099_2.png) [@a012](https://forum.makecode.com/u/a012)\
**Post date:** [August 8, 2025, 8:34pm UTC](https://forum.makecode.com/t/help-and-questions/1335/194 "2025-08-08T20:34:40Z")

</div>

Hi everyone — I’ve been diving deep into MakeCode Arcade’s source because I want to **learn how to build real engine systems** (not just make games). I’m trying to understand how the team organized large files (200–500+ lines) like `sprite.ts`, `controller.ts`, and `camera.ts` and how the pieces connect inside the frame loop.

I’m not asking for shortcuts. I’ve already read the source files and tried re-implementing pieces myself (example below). I’m posting here in the Help section because I’d really appreciate pointers from anyone experienced with the engine — especially Richard, Joey, or other core contributors — on design patterns, structure, and practical tips for building maintainable engine code. See the rest of this explain in [Trying to Learn How Richard Builds Engine-Level Code like controller.ts - Arcade / Help - Microsoft MakeCode](https://forum.makecode.com/t/trying-to-learn-how-richard-builds-engine-level-code-like-controller-ts/38548)

---

_[View the full topic](https://forum.makecode.com/t/help-and-questions/1335)._
