惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

大猫的无限游戏
大猫的无限游戏
aimingoo的专栏
aimingoo的专栏
I
InfoQ
B
Blog RSS Feed
D
DataBreaches.Net
S
SegmentFault 最新的问题
P
Proofpoint News Feed
A
About on SuperTechFans
WordPress大学
WordPress大学
Hugging Face - Blog
Hugging Face - Blog
博客园 - 司徒正美
小众软件
小众软件
博客园 - Franky
有赞技术团队
有赞技术团队
D
Docker
T
Tailwind CSS Blog
雷峰网
雷峰网
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
Blog — PlanetScale
Blog — PlanetScale
酷 壳 – CoolShell
酷 壳 – CoolShell
B
Blog
V
Visual Studio Blog
宝玉的分享
宝玉的分享
爱范儿
爱范儿

Hacker News: Show HN

PurrrrrFocus: Pomodoro Timer App - App Store Workflow Engine — Multi-Step Orchestration for Bun RapidPhoto: Pro Photo Editor App - App Store GitHub - DheerG/swarms: Achieve extraordinary results with claude code across a variety of tasks SPICE simulation → oscilloscope → verification with Claude Code — Lucas Gerads Show HN: VCoding – A 5 MB native Windows IDE with no dynamic dependencies Show HN: LLMs don't hallucinate because they're bad at math, it's the format GitHub - Agent-FM/agentfm-core: AgentFM is a peer-to-peer network that turns everyday computers into a decentralized AI supercomputer. AgentFM lets you run massive AI workloads directly across a global mesh of idle CPUs and GPUs. Show HN: Tracking Top US Science Olympiad Alumni over Last 25 Years GitHub - Potarix/agent-hub: One place to talk to all your agents Show HN: Runtime security for AI agents(injection,tool abuse, data exfiltration) GitHub - dubeyKartikay/lazyspotify: Terminal Spotify client for macOS and Linux GitHub - the-banana-tool/king-louie: Easy to use GUI Personal AI Assistant. Win/Linux/Mac. Show HN I made my vacation rental bookable by AI agents–no Airbnb, 0% commission GitHub - basteez/jsf-autoreload: maven plugin to enable hot reload on jsf projects uvm32/hosts/host-gdbstub at main · ringtailsoftware/uvm32 GitHub - labsai/EDDI: Config-driven engine that turns JSON into production-grade AI agents. Multi-agent orchestration, 12+ LLM providers, MCP/A2A protocols, RAG, persistent memory, and enterprise compliance (EU AI Act, GDPR, HIPAA). Built on Quarkus. GitHub - glitchnsec/fortyone-oss: AI Executive Assistant Platform Quickstart | Alien GitHub - muxshed/shed: One stream in, or many. Every destination, simultaneously. No cloud middleman, no per-channel fees, no limits. GitHub - ocrbase-hq/ocrbase: 📄 PDF/IMG ->.MD/JSON Document OCR API for PaddleOCR and GLMOCR. Self-hostable. GitHub - impactjo/home-memory: MCP server that lets your AI assistant remember everything about your home. GitHub - Sets88/dbcls: DbCls is a powerful terminal database client that supports various databases GitHub - neptun2000/heor-agent-mcp GitHub - SeanFDZ/macmind: Single-layer transformer in HyperTalk for the classic Macintosh RollQuation: Math Puzzles - Apps on Google Play GitHub - dropbox/witchcraft Show HN: Agent-cache – Multi-tier LLM/tool/session caching for Valkey and Redis GitHub - opentalon/opentalon: OpenTalon is an open-source platform built from the ground up in Go as a robust alternative to OpenClaw LinkedIn™ 职位抓取工具 - Chrome 应用商店
GitHub - ArcadeMakerSources/ArcadeMaker: A 2D Game Engine...
am-gm · 2026-05-25 · via Hacker News: Show HN
rbr_ss4 rbr_ss22 rbr_ss3 rbr_ss1

Video of an example game made with the engine

ArcadeMaker is a simple 2D cross‑platform game engine that includes its own programming language (its prototype is called Exp) and an integrated IDE.
The engine and IDE themselves are written in C#, but the language you use inside ArcadeMaker to program your games is my custom language, not C#.

Currently, the graphics and audio backend is powered by MonoGame, which allows exporting to desktop, mobile, and consoles. I’m also planning to add a KNI-engine implementation to enable web support.

This project is not finished yet.
But since I have very little time to work on it, I decided to open‑source it in the hope that others will find it interesting and help turn it into something real.

ArcadeMaker is based on GameMaker 8, so if you’ve ever used it, you’ll find it very easy to learn.


Project Background

ArcadeMaker has been built in several stages over the span of a few years, and different parts of it were written at very different points in my programming journey.

  • The IDE was written about three years ago, when my programming skills were very different from what they are today.
  • The Exp language was created after the IDE, but still before the current core engine and before the MonoGame implementation existed.

Originally, ArcadeMaker started as a C#‑based engine where users wrote their game logic directly in C#. After leaving the project for a while, I eventually created my own programming language and decided to return to ArcadeMaker — replacing the old C# scripting layer with my language and rewriting the core engine around it.

Because of this long, staggered development history, the IDE currently includes many features that the new engine backend does not yet support. For example:

  • Parent objects — supported in the IDE, not yet implemented in the engine.
  • Dll package manager - exists in the IDE, but currently has no any effect (it had when the engine used C# for scripting).

The long‑term goal is to bring the new engine up to feature parity with the old C# version — and then expand far beyond it.


Planned Features

  • Full implementation of the missing IDE features in the engine
  • KNI-engine backend for web export
  • A more complete and stable version of the Exp language
  • Implementing all the common, daily‑use game functions such as drawRect(), deactivateInstancesInRegion(), setRoomWidth(), and many more
  • Cross‑platform templates for mobile and console builds
  • Documentation, tutorials, and example projects

Why Open Source?

I love working on ArcadeMaker, but I don’t have enough time to develop it at the pace it deserves.
By open‑sourcing it, I hope others will:

  • Experiment with the engine
  • Improve the language and tooling
  • Add missing features
  • Fix bugs
  • Help shape the future of the project

If you enjoy GameMaker‑style workflows or want to contribute to a lightweight, beginner‑friendly 2D engine, you’re more than welcome to join.


How to Build

  1. Clone the repository.
  2. Open the solution in your preferred C# IDE (Visual Studio, Rider, or VS Code).
  3. Restore NuGet packages.
  4. Build the project.
  5. Run the IDE project to start ArcadeMaker.
  6. (Optionally) - After the IDE is loaded, go to "File -> Open Project" to load an example project from "tests/Example Projects".

Contributing

Contributions of all kinds are appreciated:

  • Code improvements
  • Bug fixes
  • Documentation
  • Feature proposals
  • Engine backend implementations
  • Language design ideas

Before submitting a pull request, please open an issue to discuss your idea. Currently I'm only one dev working on this project alone in my free time, so documentation is really, really missing. I'll try do my best to improve it, but please feel free to ask any question you have about anything related to the project, I'll answer to anything!


License

This project is licensed under the MIT License.
See the LICENSE file for details.


Note About This README and AI Usage

I used GPT to help write this README file.

And since AI is mentioned, a few words about it:
This project contains almost 0% AI‑generated code or architecture. The only exception is that I used Claude to write the Separating Axis Theorem formulas for collision detection, because that math is a bit too heavy for me. Other than that, everything — the engine, the IDE, the language, the architecture — is hand‑written.

Not because there’s anything wrong with using AI as a programming tool. I know it’s a huge part of the future of software development.
It’s just that I built this project for fun and for the challenge, and personally I enjoy writing the code myself rather than having a machine do it for me.

In the era of AI and its growing power, I still believe a complete version of this project could be genuinely useful. ArcadeMaker is a beginner‑friendly engine, and people will always need to understand how code works, even if they eventually stop writing every line by hand. The only real way to learn that is by actually writing code.
And beyond learning, this engine can also be a great tool for anyone who simply wants to make games for fun, by themselves, without relying on AI to do all the work.