Multiplayer Platformer Log #4 – Testing Environment

Motivation I am developing this game on Windows 10, but eventually the game server will be running on Linux (for obvious reasons). Testing builds and functionality locally is good enough, but testing things like client-side prediction, we won’t be able to properly check the behavior without some simulated latency and packet drops. We could probably use something like clumsy on Windows for that, but personally I would still like to test on the target OS.

Multiplayer Platformer Log #3 – Authoritative Server

In the first developer log we talked about cheating and how the best way to prevent it, is making the server authoritative about the state of everything. That is what this log is about. Taking the custom simple physics engine we talked about in the second log, we are ready to start. Server Loop So how do we go about moving everything to server? Client has basic game loop where it moves character around based on input.

Multiplayer Platformer Log #2 – Physics

This second log was supposed to be about making the server authoritative so we would prevent cheating. Authoritative server has to simulate physics while client does client-side prediction. The first step took a bit longer than expected and deserves its own log. The previous naive implementation of our multiplayer platformer used Phaser’s Arcade Physics. Given new requirements, which will be further explained in the next log, we can’t use Arcade Physics and need to create our custom solution.

Haxe Externs For Phaser

When I started preparations for my online multiplayer game attempt, I realized I will need to create Phaser externs for Haxe. Haxe externs are a way for Haxe to know about types of methods and properties of external objects like Phaser. Surprisingly generating them took me a week and not the expected hour or two. And they still aren’t perfect (and probably never will be). Turns out that taking Phaser’s source and parsing the JSDoc using tools like js2hx isn’t good enough.

Multiplayer Platformer Log #1 – Naive Implementation

Motivation After finishing the project for my parents I was talking about last time, I finally had some time to get back to game development. After spending something over a month playing with unity engine, I decided to switch my focus back to something that got me to programming in the first place. Multiplayer online games. Back in high school, I implemented very naive multiplayer bomberman game as my school-leaving project.

I Am Still Alive

Not many things happened in the last couple months, but that’s about to change. I’m raising from the dead – not in the literal sense, and I’m finally doing what I should have been years ago.

Game Quality, Does It Matter?

I made a game for Flash/Air/HTML5, which I planed to get sponsored. It has been a very long time since I made a game for sponsorship. I did it in an effort to get some money to live and eventually make my RPG. It was supposed to be one week game. It took almost a month.

Minimal RPG Progress Report #2

Another report was a long time overdue. Lot of things happened in the last month. The Editor Starting with the editor I mentioned last time, I might have went a bit overboard. But honestly there doesn’t seem to be any other way when one wants to make a custom one. At this moment the editor still isn’t done, but it’s getting very close. Not much, but I'm happy. Dawn of my #RPG editor.

Minimal RPG Progress Report #1

So what’s been going on? Holidays. Holidays has been going on. Time to get back to reality though. I decided to focus on making a minimal RPG – smallest in size that I can imagine to work and be an actual game. Plan is to make it fast, get enough money out of it to continue surviving. Then move from there. Holidays put a big hole in the plans, as expected.