Author Archives: admin

Cut scene animations

I found that setting a character’s position wasn’t working or was crashing the game. It only worked after I set the character’s solid_dimensions_in and collide_dimensions_in to null (empty list). Without this the game was generating an error because the character was on top of another character or object that was occupying the same place.

Cut scene references

In order to implement the opening dialog I find that I’m having to use the get_object(level, …) function a lot. I know there must be a better way to get a handle on the other objects in the current level but I can’t see how this is done. In milgrams-throne-room.cfg they use “milgram” to refer to the antagonist but I don’t see how they set this up. I tried to use the “label” property of the objects hoping that this would create a keyword that refers to the object from within the current level but this didn’t seem to work. I’ll just have to use get_object for the time being…

Prologue

I tried using a series of “title” commands along with “screen_flash” commands to show the prologue text on the screen when the game started. This isn’t really what it was designed for but it worked OK initially. Unfortunately it had some problems. Multiple lines of text got a little smushed together but more importantly the commands are given an argument to specify how long to show the text on the screen and once executed it cannot be stopped. This made skipping through it (by pressing a key) impossible. The solution was to make each page of prologue text a different background image that corresponds to its own “level” which gets cycled through when the user presses something. This had the added advantage of giving me much more flexibility to control the layout and styling of the text.

I still don’t like the resolution of the title screen. Although the actual resolution is 800×600 the practical resolution of the title screen is 400×300. The scaling that results makes the text on the screen blurry and hard to read. I’ll have to figure out what’s going on here but we’ll leave that as a future task for now.

Following the developer tutorials

There are some excellent tutorials on the Frogatto website (http://www.frogatto.com/?page_id=979). This is the first place you should go if you’re starting to develop your first game based on the Frogatto engine. But there are some issues with the tutorials as currently presented which will cause you problems if you try to follow them. The first tutorial shows the initial module.cfg file as containing the following over-simplistic text:

{
    id: "elisa"
}

In reality there are some other essential lines of code that are required or your module will not work.

{
    id: "elisa",
    dependencies: "frogatto",
    min_engine_version: 1.2,
}

The dependence on the Frogatto module will allow you to pull in the assets from the regular Frogatto game. Without listing the dependence on the Frogatto module, you won’t (as of yet) have any assets of your own to pull into the game (titlescreen, objects, playable characters, etc.) and your game will, of course, fail to load. This is not documented anywhere and I had to talk with the developers to figure out what was going wrong. I submitted a request to fix this so hopefully the tutorial will get updated.

Not everything’s in the editor

The Frogatto editor is great. There’s a lot you can do to find and place objects and tiles on the level. But there are also a lot of properties that are not available through the user interface. For these properties you have to open up a separate text editor (or the in-game text editor) and add the code manually. I like using notepad++ and vim because I’m familiar with them and they’re very powerful, but there are some advantages to using the in-game text editor. With the in-game text editor you can see your changes take effect immediately and it will show you any errors that result from the code as you type them so you can correct the errors before running into any assertions or mysterious crashes. This is particularly good when you’re dealing with animations. But for most other things I’ve needed to restart the program to re-run the code anyway and I find it easier to just use an external text editor which preserves my edit history.

Using a developer build

In order to build your own game based on the Frogatto engine you will need to get the latest version of the game from the Frogatto website. It will not work with the 1.1.1 version of the game (which is currently the default download). To get a developer build, go to: http://frogatto.com/devbuilds/

I will be using what is currently the latest version 1.3RC4. Hopefully this will get promoted to be the official release of the game soon as it adds significant improvements and features to the game itself and makes developing your own module possible.

About the Development Blog

This blog will be about my experiences developing this game (Mic n Ike) using the Frogatto engine. It will involve weekly posts where I will detail the problems that I encounter and how I overcame them in order to make progress on the game. All the information that I put here can be found in other places (in git, on the project’s wiki and asana sites) but this will serve as a weekly summary of everything in one place.

Crappy SourceForge Blog

The SourceForge blog is crap. You can’t change how it looks and it won’t allow you to change the date of a post (and I will back-post most of the time) or even change the order. So I’m moving my development blog here. It will get interspersed with the other posts but I’ll categorize them to keep them separate.

Version 0.0.1

Version 0.0.1 is available for download. It’s not meant to be a real game that you can play yet, I just uploaded it so that there was something there. You can run it, though. Follow the instructions on the  ”download” page.