Sunday, April 13, 2014

Wandering in the Wilds

I know your asking...Why I haven't updated my blog in a week? As I mentioned before I had about a month to work on the engine before I started back in heavily working on my freelance work (spriting) and it will eat up most of my time when I have the time.

This doesn't mean I have not worked on the engine or will not continue to work on it. It is something I very much think about the project regularly and keep notes on features and improvements, but actual time to work on it is currently sparse to be honest.

The work I do get to is mostly again, like the last post I made, all about working on the editor's UI and getting that ironed out. The core of the engine is there but it lacks the interface features to use them properly. Not to mention the plans I have for shadows and more interesting water I would like to get started on but I need the engine to be consistent and work correctly for anyone using it and that's why I need to get the editor and it's UI going so those features are usable.

Right now I am all over the place though, with the Isometric engine, my freelance work, and my day job getting very busy it is getting hectic for me but I continue to work on the engine just at a slower pace ;)

Thanks for reading my Blog! I will continue to update regarding the project and will move to at least a once a month post and more if I can and will keep you updated on any new screens or features I have for the engine. Again thanks for reading and don't forget to follow/comment below any questions you may have!

Monday, March 24, 2014


Hello Everyone :)

This post is more an update to the previous blog post regarding the very early alpha i had tested. Some had some extreme issues getting it to work while others it worked like I thought it would.

Starting off, to use the engine beyond just the push and load I had it setup to do, required a lot of editing and this was getting in the way of half my initial testers. I have a map editor in the works for this very problem as I knew it would be one and the early test just confirms it. I found several errors and bad error handling with this test and I'm still waiting on some feedback regarding some of the engines coding.

The general consensus I have concluded is that I may have released a to early of a version and to to many inexperienced testers. Which is a shame because a few was put off by it from a very early version. :(

Friday, March 14, 2014

First test version of engine passed out,

Yes the engine has started closed testing. Though it is extremely limited at this moment because the map editor isn't finished, I have been able to push out a test version to get a feel for how it will work for others both performance wise and ease of use.

There are a few hiccups though, the entire engine is being made inside GameMaker: Studio, which means previous versions of GM may have a few issues. I have ported the current test version into GameMaker 8.1, making all the necessary changes for that software. Regardless I get some weird errors (stream read error?), understand I have not used GM 8.1 in a little while so I haven't had the time to look over the entire engine for the problem but I am working on it.

I know guys, many of you still like GM8.1 and nothing wrong with that xD I will try and work out any issues and hopefully everything will work out good for it in that version of GameMaker. No link either ;) as I said this is an early test version when I do give a link I want it to have a map editor as that is an important part for keeping the engine simple to use.

Thanks for reading and sticking with me, I know all i have done for about a month is talk about it with nothing to download or show but it's coming!

Tuesday, March 11, 2014

Current Development of the Engine.

A day late on the blog post, but I thought now would be a good time to update on the actual engine itself. Currently the engine is being optimized and ported to a fresh project file since the current one everything sits in, is a cluttered mess for testing all the functions and idea's I have had for the engine over the past month. It really is a disaster for those who do not know there way around the project file.

Monday, March 3, 2014

The depth of the issue

Probably one of, if not the most tricky issues with isometric is ordering tiles and objects with depth so they appear correctly. Higher terrain or things like tree's and buildings should appear "over" anything behind it yet be behind anything in front of it otherwise you will start to get clipping of images, where some parts are behind or over images they shouldn't be.

I know, it seems complicated and with certain situations it can be, but in this blog post I will describe how I handle depth in the Isometric Engine. As I have described before the engine works from a top down perspective and merely draws stuff into an isometric view. This works in my favor in many ways but does have a draw back or two x).

Monday, February 24, 2014

Putting the world into Perspective

One of the first things I did before even typing a single bit of code for the engine was to do some research on isometric engines created before and how they went about it. This wasn't limited to just the GameMaker software either, I looked through many different sources from programming it all in C++ to Unity. It's always good to absorb as much info as possible, just because it might not be the software or language you are using, doesn't mean there might not be a hidden tidbit you can use ;). After going over some of the most common methods I knew I really wanted a simple way to do it, not just for myself but for anyone else wanting to use the engine and you can't really get much simpler then the premise of the game being a top down map that is drawn in an isometric perspective. Here I'll explain how, in a tutorial style I handle the actual isometric coordinates in the engine.

Monday, February 17, 2014

Layering the World.

When I had first started working on the isometric engine, it was to honestly get it done and move on to the rest of the game. I did a few days of researching information and trying out a few things, I knew how I was going to do it, but I wanted to see other approaches and how easily I could get those to work. In the end it took me barely an hour to get the basics programmed in and going after 3 days of research.

At first the engine wasn't going to involve stacking tiles and instead you adjusted each tile's height and it got higher, dirt or whatever the block was made of would fill in as the tile was raised. This was working perfectly for my project I had very few hiccups with it and everything was going smoothly. I started to add in noise functions to generate terrain and that was working out so well to that I was surprised at my own progress when I thought for sure this was gonna take the longest out of making the game.

Given the actual coding and how simply it really was I decided then that it would be something cool to share with the GMC. Isometric games you really don't see often and if it helped get a few more in the WiP section that was fine by me . Thus the blog was started, a discussion topic on isometric engines  GMC Topic was created and it went very complex real quick xD.

Friday, February 14, 2014

Making the world go round.

The most important thing right now on developing the Isometric engine is getting all the kinks I can out of how tiles are handled, saved, read, and optimizing that code. The basics of tile data needs to be solid before I can really move on to other features as to not have as many unexpected issues later on. One of the features suggested to me was map rotation, it's very rarely do isometric games actually let you rotate the map to get a better angle / view at the current scene. For good reason to, it's not easy moving everything around and expecting it to not have any glitches or shortcomings.

After re-coding back in tile layers and getting most of the hiccups out of it I thought I would test the tile reading / saving of information by implementing map rotation. First I had to write a script that would cycle through the information and then rotate all of it either clock-wise or counter-clockwise when it was executed. The first few attempts saw a few of those unexpected glitches for how I had been using the data structure so I had to spend some time re configuring how tile data was saved. Once that was completed I ran the script a few more times and worked! Tiles rotated correctly, stayed in orientation and updated there isometric depth perfectly. SO scratch that off the to-do list :D

Monday, February 10, 2014

What's a map without it's editor?

The most important thing for this project will be a map editor, I can code all I want for nice effects and test it out on some random terrain but most of the time the terrain will want to be designed instead of just randomly generated. There are many great articles and tutorials for doing Isometric and how to set it all up but it crashes when it comes to making the maps. They give you the understanding of setting it all up and leave the rest to you, of course the thought is you can design your own which is very true in itself. You will learn much more doing this sort of thing yourself and I already have learned a lot. Considering that I myself will want a map editor for the project I plan to use this with it, only makes sense it should come with that editor as well. I feel it will greatly add to it and make it much more approachable for anyone. The shear volume of scripts often just really pushes aspiring devs away from a lot of resources and trying to create a map editor for an isometric system made by someone else is just begging for a headache.


Sunday, February 9, 2014

Current Project: Coin Purse Isometric Engine

The current project I am focusing most of my time on, is an Isometric engine for a game idea in development we called "Project Coin Purse". The engine is geared towards a RPG tactics style play with smaller battle maps as the focus instead of larger world maps, though the engine can support some really impressive map sizes. The engine is programmed within the Game Maker: Studio software and is being designed to be user friendly as not only will we use this engine in our own games, but plan on releasing it as well to the Game Maker Community for there projects and hopefully see more isometric games out of it.

The current plan is not to charge for the resource but provide it for free. Though we have plans for a donation option that will come with exclusive tilesets for those who donate to the project to use on their own games or projects as well as direct support and help for the implementation and use of the engine in their games. None of this is in anyway final but a "planned" aspect.

Now on to what the Engine will feature!

To Blog or not to Blog?

I have tossed the idea around for awhile of starting my own blog and over what. I am an avid hobbyist game developer and work on many various projects, some of which never get to see the light of day. I also do a lot of pixel art for not only my games, but for other developer's games as well, both free and paid work. I really didn't have much initial motivation with those projects as they were often very short and didn't warrant much outside of a forum post.

The Why:

I began working on an Isometric engine for a project in the works that we hope to develop and in so starting our own Indie game company. I don't have details on that just yet, but when it's setup I will post website and company blogs as they become available.

While all of this is in the works I decided this would be a good time to start blogging and blog my progress on the engine, post screenshots or videos and answer any questions that come my way. Each blog post will either be an update on the engine or me discussing some idea's and techniques I am currently working with .

As you can tell, I am still currently setting up the Blog and filling in the missing pieces so please bear with me on this I hope to have it finished and setup by the end of this week (Feb. 15). I will update with a Blog post on what exactly the Coin Purse Isometric Engine is and what it hopes to accomplish within a few days.

Thanks for reading my first blog post! If this sounds like something you'd like to read be sure to follow me and share with your friends.