Emrlin's profile picture

Published by

published
updated

Category: Web, HTML, Tech

I want to make games the weird way, but I can't qwq

This is going to be a nerdy blog mostly for people who like making video games or just programming in general.

If you want to make a game, you have the option to use a game engine, and there are multiple that you can choose from. There are many great game engines for people to use like Godot, Unreal Engine, and even Game Maker. Unity may be coming back, but I still hate the engine for what it is. This post isn't really about game engines though. What I really wanna talk about is the OTHER option for making games.

I'm talking about no viewport editor, no specialized IDE, nothing but your general purpose IDE for programming software. I'm talking about making a game without the full-blown engine or user interface, making games programming almost everything with just text and tools you program yourself. To get to the point, I really want to make games this way. While I love Godot, it honestly sounds more fun to make games completely from scratch, relying on nothing but your independent big brain power to make every single system that you need for your game. There are multiple problems with this though, and one of my biggest problems is that it takes too much time to learn how to do so.

First, you need to pick a programming language. You can probably pick a language that you already know, but should you? Because the second thing you have to (most likely) do is pick the framework you want to use, and while there are many frameworks to choose from, there's not enough. What if there's an easier framework that you want to use that's well documented, has a bunch of tutorials to learn from, but is from a language that you don't know? You can take the time to learn it, but is it really worth it? All of this takes a lot of time, and I unfortunately don't have enough of it anymore, so for now, I guess I have to stick with a game engine, and maybe that's for the best for now.

There are many upsides with using a game engine that you can't get from a custom engine, but there's also so many great games that are made without a premade engine, and looking through those games, I really want to make my own games the way these people made these games. For example:


Minecraft (Java using LWJGL):

You know what this game is, so I'll try to be quick with this one. One thing that interests me about minecraft is that it started out as a solo project by one guy. Now it can be considered as a full-blown Triple A game owned by Microsoft. This video from OrangE is a great watch for people who want to know more about the VERY early development process of the game (and not gonna lie, Notch making false promises and false rejections is probably the funniest part about the whole development process to me.)

 Minecraft


Stardew Valley (C# with XNA and Monogame):

This is another game made by one guy, and it's fairly popular as well, being a great farming sim with loads of characters and mechanics that make the game highly unique and fun. The game started out being programmed with XNA, a framework created by Microsoft to program C# games easily. Currently, XNA is very outdated and isn't updated anymore, so the dev switched to Monogame, another framework that derived off of XNA, for future updates and console ports.

This example actually scares me the most because not only is the game programmed in C#, but the guy who made it actually graduated from college, meaning that he's smarter than me?!?!?! 🤯🤯🤯 (everyone could be smarter than me, and I could just be super dumb lmao) Overall, this game is still a very great example. For being made and programmed by just one guy who made probably everything in the game, it's really inspiring.

Stardew Valley

Terraria (C# with XNA and FNA):

Many people will say that this is just a 2D minecraft clone, being a fantasy sandbox survival game. It's not. It's so much better, having a vast amount of monsters, NPCs, and mechanics that minecraft players WISH they could have (this is just my personal opinion, and I'm very sorry to people who really love minecraft qwq).

While I really like this game for how magical it is, I'm also really interested in the development team behind this game, Re-Logic. Not only have they just made one game and continued to put out updates for the game, but they've done many great things for their game's community and the developer community. They've added official modding support for their game, sponsored game engines and frameworks like Godot and Monogame, and most recently, they've added an armor set for a make-a-wish kid. It really shows that these people really care about making a great game that's fun for everyone while also supporting other developers who want to make games.

Terraria

Animal Well (C/C++ from the REAL scratch):

Animal Well is a very interesting metroidvania puzzle platformer, being the very first game published by Bigmode. In the game, you just play as a smoll little guy that needs to find 4 flames around the Animal Well. Getting to those flames involves completing many different puzzles and unlocking different items to help you on your journey. There are also many secrets that the game hides for you to find :3

To me, this is without a doubt the most beautiful game on this list, and this is made by just one guy with his own FULLY CUSTOM ENGINE. This is very impressive. For a game that looks like just simple pixel graphics at first glance, the game actually has its own lighting engine that makes the game look more astonishingly beautiful than any other pixel art game that I've played, complete with many different environments and types of scenery all throughout the game.

Animal Well

And finally, my personal favorite example on this list...

(the) Gnorp Apologue (Rust with Tetra):

This is my favorite example on this list due to just how simple the game looks but also how fun it is. The dev even made a post about his experience making the game on Reddit. In the game, you control a bunch of little guys called gnorps. Your one and only task is to make the gnorps punch a rock. Sounds simple at first, but the game gets progressively harder the more you play, which makes you have to restart your game and all of your progress to start off better.

This game can get very chaotic, but for how it's programmed, the game runs super smooth with a lot happening on one single CPU thread (I wanna test how well it runs by running it on different devices like people would with Doom 👀). While the game is successful, it wasn't meant to be, only being made for the fun of making games, being another reason why I wanna make games this way.

(the) Gnorp Apologue

All these games are great for their own special reasons, and it's cool to know that none of them were made with a special premade engine. These games kinda make me jealous and wish that I could program games like this, but I can't. If I could though, how would I want to do it? 🤔 (this is in case anyone reading this blog can help me qwq)


Well I want to program games with a language kinda like C#. I don't wanna program with C# because I actually hate it, but I like the syntax of the language. It's more advanced and easy to use for my liking than something like python but not as hard or complicated as C++. I also want installing packages and modules to be fairly easy, being installed with just a simple command like python's pip installer and Rust's crates.

Next, I would like to use a simple framework that's easy enough to use or at least not complicated to know how it works. I've dabbled a bit with one of raylib's java bindings, and it was simple enough to draw out graphics. As of right now, however, I've forgotten how to write in java, and trying to use raylib normally with or without notepad++ has been a headache for me multiple times.

Two languages and frameworks I'm thinking of using are either Love2D with Lua or Bevy with Rust.

Reason why I may want to use Love2D with Lua is because I've heard that it's simple enough to learn. I've dabbled with simple Lua in Roblox, and I've played Balatro, which is made with Love2D and is proof that you can make a good game with it. However, Love2D only makes 2D games, and while Lua's syntax looks a little bit similar to C#, it's also a little too similar with python for me, making this too simple, and I want a living hell.

To be honest, I'm really leaning towards learning Rust with Bevy for how much I hear about both of them being good. In fact, I've stylized this blog to make it look a bit like the Bevy Engine website. I've tried learning Rust a bit, and I've heard only good things about it from the community. I wouldn't be surprised if the language had a cult, and I'd love to join it if it does 🙏 (because it has a cult for a reason). Even though I've never touched Bevy, I've seen many people on YouTube make games with it, and they all impress me for being made with just a framework. There are just two things that are stopping me from using Rust and Bevy though. One of those things is the fact that Rust is very complicated, with its syntax leaning towards looking like c++ to me, and I'm honestly too scared to actually learn it. Another reason that's stopping me is that I don't understand much about Bevy or how it works. I might know if I learned Rust, but if it turns out to be as complicated as using LWJGL, I might explode my own brain from trying to learn it.


Again, while making a game without an engine sound fun, I think it's best for me to use one. It's more efficient to make a game doing so, and it's way less complicated. Someday whenever I turn out to be a professional at programming, maybe I'll start making games exclusively without a game engine.

I seriously don't know how to end this blog, so thank you for reading. This is kinda the first blog I've ever posted on the internet, so I hope it was enjoyable :3


2 Kudos

Comments

Displaying 0 of 0 comments ( View all | Add Comment )