Wave

Category - Game Development

Generation 3 of Pokémon is held together by duct tape and I can prove it

Forbidden Tempura 4/16/2024

The problem space Pokémon is a franchise that needs no introduction. Millions upon millions of people have had some exposure thereto. I would like to focus on one tiny implementation detail of the games that formed the third generation of Pokémon: Ruby, Sapphire, FireRed, LeafGreen, and Emerald. In this generation of the games, the developers of the series first started trying to discourage cheating. To understand what they did, I first need to introduce a few concepts. A Pokémon is an individual member of a Pokémon species. Think of it like a specific individual, just like how there is a sheep that you encounter and there is the species of sheep, of which the aforementioned individual of a member. Every Pokémon has a 32-bit personality value (also commonly called personality ID or PID for short). A (Pokémon) trainer is a concept in the games: Trainers go around and make their Pokémon fight against other Pokémon. They hold contests to find out who is the strongest trainer. Supposedly

Game DevelopmentGamesInfodump

My First Game In Godot

Mia Rose Winter 3/7/2024

Last Sunday I decided to finally take a shot at using Godot. I only looked a bit at the getting started section of the documentation but haven't looked at anything past that or even tried using it past myself, past downloading it. As I used many engines before, and tried to make my own, a lot of it was very familiar, but many things were also easier to do than in other engines I know. As I do, I noted in a group chat that I still don't know how to make the 404 page of Wave more interesting, when Nyx suggested “dino minigame but with shork”. As I was a bit kaputt that morning I thought “yea let's go” and opened up Godot. Well, first I needed my main character, so I crudely copied a blahaj design from a sticker Rain gave me a while ago. With that set, I opened up the editor and looked around YouTube and the Godot documentation for all the little pieces of Information I needed. This “Godot 4 Crash Course for Beginners” gave me a good start. In it the c

Game DevelopmentShowcase

Depth Ordering in GameMaker 2

Mia Rose Winter 2/29/2024

At some point during your usage of GameMaker 2 you will very likely encounter a very classical issue in game development, how do I ensure my sprites are drawn in the right order? Anything 2D with movement will still have a sense of hierarchy, some things are in front of others, but how do you do that with GameMaker? When you will look into your trusty search engine, you will most likely find either this blog about using a technique called z-tilting, and if the following doesn't satisfy you, definitely check it out, or you may find the YouTube channel FriendlyCosmonaut with this tutorial video, which is a bit older but still teaches some valid techniques. As someone with more background in different engines and other areas of software techniques, I want to elaborate on some of my strategies to solve this issue, including the one I used in my student project game fairy-strategy, a turn based 2D strategy game. The classic depth = -y The oldest and easiest way to get this working. Things l

Game DevelopmentTutorial

Typeclasses in C

Sara Gerretsen 2/22/2024

(This is a modified version of the pattern shown in this article by Phantz but botched modified into working for my own usecase which I thought I'd document for both others and myself) Motivation I really like making games in C. I'm not sure why, the language just meshes with my brain in a way that I can't get rid of. Using C as a language for games is nice, it basically forces simple, straight to the point solutions. None of the endless abstractions and hierarchies that I've caught myself writing in Rust, C# or C++ (this may or may not be a me problem). General purpose game engines are another problem though. You can make a game with reusable parts, but that's generally not what I'd call a “game engine”. The definition of engine I quite like is that for a framework to be a Game Engine it needs to handle at the very least: Asset Management, Actor/Entity/GameObject lifecycles, Input polling/passing Media (audio, rendering, etc.), And the application loop. While not prescri

Game Development

My Time with GameMaker 2

Mia Rose Winter 2/5/2024

Now, since I worked with GameMaker 2 on a proper project, for four months, I want to put down some of my thoughts about it. I have dabbled with it in the past a bit but nothing major, so going into it with two other people and the target of developing a game in a semester at uni was quite the jump, but that's kinda how I roll best. The Project I worked on For our Project we wanted to make a small, turn-based strategy game. We already had the game concept worked out, so it really was mostly about game design and implementation, which made a lot of it easier. In the beginning I worked out the MVP with the others, laid out a project timeline, assigned task, and from there on managed it when I didn't code myself. Getting into it was a bit of a hassle in the beginning, Game Maker Language really was not intuitive to me, the way it kinda does a bit of jsdoc, and the difference between functions and methods was really confusing, and left quite some code smell. After some task were done and so

Game DevelopmentOpinion
Powered by Wave