a new gamejam game!!


WNTRMT source code: https://github.com/guilhermepo2/gbgj-2

gueepo2D: https://github.com/guilhermepo2/gueepo2D

WOW! After making a thing called "escape from ganymede" in October, 2022 I finally decided to try and make *another* thing using gueepo2D, my own game library (or is it a game engine?) - It didn't go so well.

Since ganymede I managed to make it so I don't need to ship the finished product with shaders on text files, they are right into the code! And I also got rid of the annoying log window on Windows version, which is a win for me. 

The major changes on the engine (library?) since October 2022 are mostly reorganization stuff, there aren't any new big features or functionality, it's pretty much the same engine as it was 4 months ago. That's not necessarily a bad thing, there are still a lot of features missing here but it means that this "engine" is giving its first baby steps into being something stable.

One thing that this "game" made me add into the game engine was the possibility of parsing through arrays in json files, this is an important step towards being more capable of doing data-oriented stuff.

all the good array stuff added into gueepo::json

But damn making a game jam game on it is a nightmare!!

But there's a need to reason as to *why* it is so hard to make a game jam game on my own tech, I'm supposed to know all of it, so it's supposed to be easy, right? Well, I know *almost* all of it, and no, it doesn't really make it easy. Why?

Well, the first difficult and annoying thing is human error. I can't hold myself back, when I first started brainstorming I had this idea of a game in my head. I imagined the title screen, and a cutscene before the gameplay started, in this cutscene, a girl would be putting a VR headset on a dude, and then you would have the option to "flip" (obvious Neuromancer reference) and then you would get into gameplay, which would be (and is?) a basic turn-based strategy game where you have to retrieve certain objects from the level, the catch is that enemies would only react to you after you get the thing, giving it an element of strategy and puzzle. What you can download and play now is what would be the first level of this whole experience.

But that's not all, I intended to have dialogues between the dude and the girl through the levels, which would serve as both storytelling and tutorial, but somewhere around level 5 or 6 someone would get into the frequency and start talking to both of you (that's the dude at the background of the thumbnail for the game, you can barely see it!) and that would add an element of mystery to the game. And I wanted to be doing the pixel art and music for this game as well.

You might say that *I* was the biggest obstacle to this *thing* being a reasonable videogame. And you would be right. But, oh well.

Now, my engine is not totally innocent here either! 

And I have to ask myself *why* if I ever want to improve the experience on using it.

A thing that makes it difficult to work with is the philosophy of the game library itself. 

You can make games with it, sure, but I'm designing it to be very minimal and the tech you make game engines with. My whole idea is that I want to make tactics games, so I want to make an engine that is really good and dedicated to creating tactics games, and that engine would be built on top of gueepo2D. 

So gueepo2D is just the layer that does what every game needs, gueepo2D is just the common functionality of *any* game. That is rendering, handling input, and being an application loop. There are some data structures, and a lot of utilities too, but that's on the second plan.

Here are some annoyances.

  1. The lack of a "Game World" is very annoying, for every little thing I want to have in the game I have to create variables for their texture, and position, initialize it all, update if needed, and then draw it. And that was all by design. You see, I don't really believe in a general-purpose ECS system. I mean, I believe in it, but if I know exactly what type of games I want to make (tactics games) I'm pretty confident that I can come up with something more specific and better than a general-purpose ECS. The more you know about what you are going to be doing, the more assumptions you can make, better are the systems and solutions you can design.
  2. The lack of a "User Interface" system is also really annoying! But fret not, this is something that I do plan on adding to the game engine, not being able to align the text I wanted to print on the screen was very annoying and made a 5 second thing take, like, 10 minutes.
  3. The lack of resource management is also annoying. It's annoying to have to keep track of all textures, fonts, entities, etc...

Basically what I'm saying here is that this is a game library where you have to do a lot of groundwork to actually make a game. And that's pretty much by design. I want to make engines specific to the types of games I want to make yadda-yadda. But on a game jam where you have 48 hours to do something, that's not really good, so what's the alternative? What's really the solution?

Is the solution building a general-purpose game engine on top of gueepo2D that I can use on game jams? That would have a general-purpose ECS thing for sure, and I would probably integrate LUA on that as well, I would be basically recreating PICO-8. So why I don't just use PICO-8? :thinking_face:

Is the solution just not using my own game library on game jams? I could use PICO-8 - But where's the *fun* in that? How else would I have headaches with graphics programming?

One takeaway here is that I should really try out PICO-8, and Godot, Godot is good.

Is the solution creating "add-ons" to the engine? That doesn't sound like a bad idea.

  1. An ECS+LUA addon.
  2. A Resource Management addon, bonus points if the resources can be loaded from a JSON file. Bonus points if there's some sort of external tool capable of creating and editing those files.

Is the solution creating The Gueepo2D GameJam Game Engine?

Is the solution not to use my engine on game jams?

Is the solution just getting good at having game ideas that are simple and fun? That's probably the answer here.

Welp, anyway, this is just a long rant!

Files

gbgj2.zip 1.4 MB
Feb 27, 2023

Get wntrmt

Leave a comment

Log in with itch.io to leave a comment.