Tuesday, March 29, 2016

GameMaker: Collision with Background tiles

If you've ever checked out Shaun Spalding's GameMaker tutorial series, you'll see that he has a quick and easy way of resolving collision between the player and the wall objects. This is what I've been using for my current GameMaker projects, but a problem soon become apparent when I wanted to fill in the background with tiles.

The above features a room, with the player character terrain composed entirely of several objects, each one a black square of dimension 16x16(pixels).

This (the above) however, is what I want people to see in the game. This background is done up using a tilesheet with each tile of dimension 16x16(pixels).

Originally, I settled for a rather tedious method of first laying out the collision objects, after which I'll paint the tiles over them. The tedium soon got to me and I wonder if there is a way to automate part of this process.

This is what I eventually ended up with:

During creation of the room, I looped through all of the tiles in the room and created instances of the collision object in place of each tile. Note that the collision object (o_Wall) has been set to be invisible. The logic is about as simple as it gets. For a gml novice like myself, the bigger challenge is in reading through the documentation and finding out just what functionalities are provided.

In hindsight, it probably would have been a better idea to rewrite the collision to work with tiles instead. For now though, I'll stick to this method until performance becomes an issue.

Codename Ikaruman #5: New tiles!

Added new tiles! Used the background tiles feature in GameMaker. I wonder if I should invest some time implementing smart tiling.

Monday, March 21, 2016

Minor fixes to Spacejacked (v1.0.3)

Fixed Focus Laser Turret (before and after comparison)

Added Quick Start functionality

Thursday, March 17, 2016

Codename Ikaruman #2

Got variable jump height working. Should probably work on the landing animation more.

Codename: Ikaruman

Basic movement test. Gotta work in the variable jump height later.
Also, I came across a graphical bug that happened occasionally when I flip the object’s xscale to -1. Some odd texture UV issue where the entire texture is shifted one pixel to the right. I figure it was just an issue with floating point imprecision - the fact that the game is running in a small 320x180 resolution resized to 960x540 amplifies the bug.
Anyway the problem is fixed once I rounded off the x and y position of the object in the draw event before draw_self(). 

Sunday, March 13, 2016

Codename: Combat Zelda

We took a 2-week break from working on content in Spacejacked and spent some time learning GameMaker by working on a Zelda-ripoff thingy pictured above.

Tuesday, March 8, 2016

So it's been a week

It's been a week since the launch of Spacejacked on Steam. It was a rather disastrous launch =___= (by that I mean, very few people know about the game). I'll go into detail a tad later.