6 comments

  • am-gm 2 hours ago
    Wow, my post suddenly went viral! Just opened GitHub a few minutes ago, and saw +17 stars on my project from the last few hours... Anyway, i see a lot of people asking WHY making ky own engine or language. So the main answer is: for fun. it's clearly not going to be even close to a professional engine like godot/unity/modern gamemaker, but this is mine, and the others aren't :) But i wrote more about it here: https://www.reddit.com/r/csharp/comments/1tmcg6j/my_biggest_...
    • WillAdams 10 minutes ago
      Two thoughts/questions:

      - do you feel that this could be used to make a (simple) drawing program?

      - have you considered setting up your codebase as a Literate Program?

      http://literateprogramming.com/

      Notably, that would then allow publishing the project as a PDF for didactive purposes.

    • spacechild1 1 hour ago
      Thanks for sharing! Great attitude!
  • h2aichat 5 hours ago
    This is a massive undertaking... building a whole language + IDE + engine from scratch is insane. I am curious: what made you go with a custom language instead of just embedding Lua or something? Was it a learning thing, or do you think Exp brings something Lua (or GML) doesn't?
    • am-gm 2 hours ago
      Thanks! so, at first i really used C# for scripting language, so it was like GameMaker-8 but C# instead of GML... but after almost year of development, i was bored. it wasn't exciting anymore, and when i asked myself what would make it exciting again, the answer was "my own language". i don't know why, but it's something i always wanted to build by myself. i had absolutly 0% idea on HOW, but after a break of more than a year, one day i just tried and unlike a few previous times, this time it started clicking, and this what bringed me back to the abandoned game engine
    • scrlk 2 hours ago
      Reminds me of the Tomorrow Corporation (developer of World of Goo) tech demo: https://www.youtube.com/watch?v=72y2EC5fkcE

      Their entire stack is custom (language, compiler, IDE, build system, engine). Has neat features like time-travelling debugging and instant hot-reloading for code and assets.

    • soniczentropy 3 hours ago
      As somebody else with a game engine that has its own scripting language:

      AI is incredibly good at making scripting languages with your ideal dream syntax/functionality. It's pretty fun to use it.

      (No, neither my engine nor my language is worth using and never will be)

      • am-gm 1 hour ago
        I really don't want to use AI for my project. I love writting code by myself, and except for very few specific things, I didn't use it in this project. But for the language i actually didn't use ANY external sources, including google, tutorials, books. wanted to figure it out by myself. so maybe i'm kind of weird in this stuff
  • Altern4tiveAcc 2 hours ago
    The inspiration on GameMaker is clear and very much appreciated.

    Can the IDE run on other OSes besides Windows? You seem to be using WinForms.I tried building it and running through Wine, but it didn't work.

    Congrats on the project, making an IDE is no easy task. I believe there's room for a game engine to offer what GameMaker 8.1 used to (near instant runs, extremely fast iteration time for 2D games).

    • am-gm 1 hour ago
      Thanks. As you said, the IDE is built on winforms, so it's windows only. maybe it was a mistake to not to use a cross platform framework like avalonia, but i really like the winforms designer, and winforms is the only UI framework i ever used, except for MAUI which is not a good idea to build an IDE on.
      • dadoum 52 minutes ago
        Windows.Forms is becoming less of a problem with projects like LibreWinForms [0] progressing quickly. I just tried to build your project and there are only a few classes that are not implemented when it comes to the GUI.

        [0] https://github.com/wieslawsoltes/LibreWinForms

        • am-gm 17 minutes ago
          This is really interesting. Thanks
      • whstl 40 minutes ago
        I really miss working with WinForms.

        Every other UI framework I worked before and after always left me with the impression that something was lacking, in speed of development, fast iteration, but also in the quality of the abstractions.

  • BSTRhino 2 hours ago
    I think if you're looking for other people to use your game engine, it helps to have one killer feature. I'm not clear what yours is at this point. Even if your killer feature is not something you have yet completely implemented, but it is simply a long-term goal, I think it is worth listing that front and center.
    • am-gm 2 hours ago
      If I'll have an idea for such a "killer-feature", I'll do my best to implement it... :)
  • theyliesoeasily 2 hours ago
    To any aspiring game developers out there: If you need AAA-equivalent graphics and are willing to tank the overhead, use UE5. Otherwise, homebrew everything in the language you prefer (use an LLM, make sure you understand the architecture perfectly).

    Using a half-baked semi-supported game engine which you don't understand will destroy your project sooner or later. The cognitive overhead of understanding someone else's code is far, far higher than using your own. If you can't handle any of this, get a developer on board who can - you aren't equipped for this.

    • semyonsh 2 hours ago
      As mentioned there are plenty of engines mature and worthy to develop with, like Godot.

      Advising to homebrew everything with an LLM just sounds insane to me. Cognitive overhead of what? Using well thought out and standardized libraries that have proper documentation? Creating a new engine with an LLM is only going to achieve the opposite of fully understanding your codebase.

      • spacechild1 1 hour ago
        Thank you! That's exactly what I was about to write.
    • TulliusCicero 2 hours ago
      Eh, what's wrong with using Unity or Godot or GameMaker?
  • gauntr 4 hours ago
    Apart from "I have fun working on this", which is always legit, what's the point and who's supposed to use it? What'd be the benefit using with or working on it over e.g. Godot, which is, imo, pretty much the open source way to go if you want more than an IDE and libs/code you'd use to make a game. It's also written in C# and offers GDScript as a more lightweight programming language with C# being ready to be used for when it's necessary.
    • bob1029 4 hours ago
      The benefit of engaging with a project like this is that you gain a very plausible set of excuses that can be leveraged when you find out that making the game is the actual hard part.

      Firing up godot/unity/unreal eliminates an entire universe of reasons for why you haven't shipped more content today. Tools that "just work" can feel like brutal exposure when you don't have a creative vision to follow.

      • whstl 3 hours ago
        Do you make it a habit of shitting on other people hobbies? Maybe I should try doing the same! Lets go:

        Your post assumes everyone wants to make a game in 2026, the year where a half a trillion games are launched per milisecond on Steam (numbers outdated, probably more now), and every "gamedev" community has become 50% about marketing and 50% about self-help. But that still adds up to 100% toxic and 100% being a lottery.

        Or maybe they don't want to join a large game studio and make a fraction of the money they make on their cushy web job, where they're home at 6PM. Or worse: risk joining an indie team, where there's a 99% chance people are either lying or are plain talentless.

        Seriously now: Game engines are a way to escape the hell that is making games in 2026 while still engaging with the fun parts of the hobby. Will it produce anything worthwhile? Probably not. But chances of it doing so are 100x higher than when making games.

        The toxicity of the game community of constantly shitting in something they can't do and can't understand needs to fucking stop.

        • andsoitis 3 hours ago
          > Do you make it a habit of shitting on other people hobbies? Maybe I should try doing the same! Lets go:

          > The toxicity of the game community of constantly shitting in something they can't do and can't understand needs to fucking stop.

          In your rage, I think you replied to the wrong person maybe?

          • whstl 3 hours ago
            Definitely not.

            Replying to the trope that exists in gamedev that "making the game is the only valuable thing, people who make engines are just making excuses".

            > Firing up godot/unity/unreal eliminates an entire universe of reasons for why you haven't shipped more content today

            Not everyone wants to "ship content".

            > brutal exposure when you don't have a creative vision to follow

            Also assumes everyone must have or follow a creative vision.

            EDIT: And yeah, I'm tired of people collectively shitting on other people's project in HN without even looking at it, or without considering why not having monocultures is good.

            • andsoitis 2 hours ago
              > EDIT: And yeah, I'm tired of people collectively shitting on other people's project in HN without even looking at it, or without considering why not having monocultures is good.

              The person you replied to simply wrote the following, which seems like the opposite of shitting on the project this post is about:

              "The benefit of engaging with a project like this is that you gain a very plausible set of excuses that can be leveraged when you find out that making the game is the actual hard part. Firing up godot/unity/unreal eliminates an entire universe of reasons for why you haven't shipped more content today. Tools that "just work" can feel like brutal exposure when you don't have a creative vision to follow."

              Not meaning to argue; maybe we're just getting our lines crossed.

              • Archer6621 1 hour ago
                It does not read like a compliment to me. What the person seems to be saying in a rather patronizing and opaque manner is that building a game engine gives you an excuse to avoid building a game, thus framing it as an exercise in avoiding hard work or needing to be creative.

                In reality however, many people whom I know who built a game engine did it for a plethora of different additional reasons:

                - Learning C++, OpenGL, and other tech

                - Similarly, learning a new language

                - Learning how a game engine works, by building one, and perhaps a better one afterwards, or for developing skills to work on existing engines

                - Just because it is fun and you get a high from it

                - Building an environment tailored to how they would like to build a game, e.g. because existing engines don't cut it in that regard. Basically building your own tool(s).

                - Building tools for others, so that they can build cool things, because you get satisfaction from that.

                - Building a new engine because existing large engines have gone stale for some reason (an attempt at becoming the next big engine that structurally solves the tech debt problems that the status quo ones developed over time)

                - Similarly, building an engine that has a new paradigm as first-class citizen, e.g. ECS

                - A combination of any of these.

                I had a similar mindset in the past, not understanding why anyone would like to build their own engine and not a game, because it happened very often and I was the one who liked to build games. Now I do see that there's more to it than just the product it is supposed to create. I learned that when I got into tool development, and noticing that I got a lot of satisfaction from building tools that other people can use well.

              • whstl 1 hour ago
                Reducing it to a "plausible set of excuses", among other things, is what I mean by shitting on other people's passion project. Saying that the "firing unity/unreal/godot" is what I mean by preferring monocultures.

                EDIT: Writing an engine is difficult and time consuming, but also rewarding in several ways, and requires a completely different skill set from writing a game. It's incredibly patronizing to call it "an excuse".

                This is similar to asking someone making an image editor to "just open photoshop, you're making excuses for not working on art".

      • virgildotcodes 4 hours ago
        I'm sold.
      • Razengan 3 hours ago
        > when you find out that making the game is the actual hard part.

        Guilty as charged ^-^"

        Spent over 3 years trying to make an engine built in Swift cause I loved Swift, before I had to admit that an engine without an editor is almost useless in actual game development, and even 10 years won't bring me close to the level of Godot's editor (though Miguel de Icaza the Mono/Xamarin/Gnome guy did port the Godot Editor to SwiftUI) [0]

        so I spent the next 3 years trying to make a framework for Godot :') and still no actual game.

        [0] https://blog.xogot.com/blissful-ui-development-with-swiftui-...

        • ModernMech 1 hour ago
          It's an "if you give a mouse a cookie" situation.
      • jheriko 4 hours ago
        [dead]
    • severino 4 hours ago
      > It's also written in C#

      No, Godot is written in C++. You can use C# to code games, as well as GDScript or other languages.

      • gauntr 1 hour ago
        Oh ok, my bad. Thought it was C# and therefore C# was the reason it's advertised for more complex coding in Godot. False friend I guess, should've checked, thx.
    • __m 3 hours ago
      No successcull game engine is written in c#
      • dude250711 2 hours ago
        Correct, as there is no need. Use frameworks instead: Terraria, Stardew Valley, Celeste.