Saturday, October 8, 2016

Soko Banish 1.3 - Custom Tiles!

Here's some actual work done on the new version of the game rather than just the editor! Though the editor is involved as well. Mostly the editor.

As the title already spoiled, the game now supports custom tiles. Yaaaay! So how do they work?
The Level Creator now includes 64 additional elements that can be placed on the toolbar or transformed. They're grouped into their own sections in the tile picker popup - clicking the flower with the C brings you to the custom decorations, while the wall stands for custom walls (how unexpected!).

By default, however, those are simply slime puddles and basic walls with numbers on them. So how do we turn them into something more suitable for Ardos Balmung's incredible stone-pushing adventures? Simple - the editor and game will look for PNG files with certain file names inside the level pack folder and replace the custom tile graphics with those. For instance, a file named "cwall07.png" would replace the custom wall that usually has the big honking "07" on it and could perhaps look like the ice blocks I scribbled for testing the feature.
In conclusion, you can now give your levels their own look, different from anything that comes with the game! Unless you want to replace the standard objects and floor tiles, of course, but that may be coming up in a future version. Right now, with this implemented and the new Level Creator mostly functional, I'd like to focus on the new level selection menu and adding various fancy stuff to make the game more user-friendly. Stay tuned!

Monday, September 19, 2016

Creating the Level Creator - The Sharpest Tools in the Shed

As the newest version of the Soko Banish Level Creator continues to evolve, I continue having more stuff to show and talk about. A lot is new and different even since the last post I made, as you can see the in the first good look at the work-in-progress Level Creator below.

Level Creator 1.2 in action!

Although the most visible features are the graphical changes, toolbar extension (two more objects! Just enough for all the wall styles currently in the game) and the optional grid (the rulers slide back when the cursor is near them!), the most notable one I'd like to talk about are the tools. You can see them in the bottom-left - the four little grey buttons taking up conveniently little space to the left of the game elements instead of needing a separate bar. So what's hiding behind these little icons?

The first, as you have have guessed already, is the draw function - it's the standard mode for object placement that the editor has always had. The icon is a little paintbrush painting a line, in case it's hard to make out. And speaking of little paintbrushes, the cursor also becomes one now while the tool is selected! The moving square on the grid remains, but the shape of the mouse cursor changes for each tool to make it easier to know which one is selected.

And speaking of selecting, that's the little cursor icon to the right of the brush. I'm fairly excited about this one and may expand its abilities some more in a future version, but right now it can do three things, each of which first required drawing a selection rectangle on the grid:
  1. Delete the contents of the rectangle, making for a quick way to erase a chunk from the level,
  2. Drag & drop the section somewhere else, overwriting anything it's plopped on top of (empty fields are part of the rectangle), and
  3. Transform all objects of a certain type within the selection into another object.
The last one was actually the reason for implementing the tool - I needed a more practical way for the user to quickly change walls and decorations to their alternative appearances, replacing the cycling-by-clicking method (I talked about this in my previous blog post). The way it works is simple: You select an area, double-click on an object within the area and get a pop-up identical to the one used for replacing objects on the toolbar (which looks much nicer by now). Pick anything and you're all set! Since it's not limited to alternative appearances, you can change any object into anything else - if you need to replace a bunch of wooden gates with golden ones or somesuch, you can also do that now!

But that's not all that can be done with rectangles in the updated Level Creator - a rectangle draw tool (which doubles as a line tool for horizontal and vertical lines) was long overdue and is now in as well, functioning in pretty much the same manner as drawing the selection rectangle except that it's filled with the object you have selected. Large areas can now be filled with a single mouse click, which certainly beats the click-fest that was version 1.0 and also freehand drawing.

And in case there's more filling to be done, the last new addition is the fill bucket tool, which can work in two ways: if you click on an already placed object that's on a different layer than the one you're filling the level with, that layer is ignored (e.g. soulstones will be filled on top of rune circles if you start the filling action on a rune circle). If you start filling on an empty field, only empty fields will be filled. The first option was going to be the only one until I realised that it would cause void tiles to slip under the boundary walls, which made the fill tool nearly useless as filling in the outer boundaries with void is probably the single most useful thing it can do. Instead of working around by implementing special behaviours for certain objects only, I instead did it like this. I'm not sure if it's self-evident enough, but it certainly beats having inconsistencies in handling the objects.

There's more, but I'm saving that for another time. Stay tuned for more news and surprises! We may even begin to advance into the actual game - after all, Soko Banish 1.3 is to be the main attraction.

Friday, August 26, 2016

Creating the Level Creator - Toolbar News

For the next Soko Banish release (1.3), I'll be updating its Level Creator to version 1.2 as well - a much needed update and one of my top priorities right now, as it barely received any changes outside of restoring the old functionality with a faster engine in its 1.1 (with game version 1.2) release. While one of the biggest changes is overhauling the level format (more on that in a later post), the coolest change I can talk about right now is what's been happening with the toolbar.

The 1.0 Level Creator toolbar is incredibly simple - not surprisingly so when you consider that the project was one of the first editors I ever created. It started as a simple toolbar for an unfinished Bomberman clone I was working on at the time, and when I repurposed the code for a Soko Banish editor, it retained that simple, static form, with some statues to make it reflect the in-game GUI. Unfortunately, that greatly limits it in what it can do, and it also makes it hard to add more objects or alternative looks for them. Previously, I've been solving this problem with a method very much inspired by Epsitec's Speedy Blupi editor - placing down an object and clicking on it multiple times with the same tool cycles through its looks. This is, unfortunately, a rather clunky way to do it. So how will the new toolbar figure into solving it?

What I've added to the toolbar is the simple but (in my eyes) disproportionately cool feature to replace individual items on it. Right now, this is done by double-clicking them, which opens a small pop-up with icons of all the choices available. Select one from there, and voila - the item on the toolbar has been replaced! This is possible thanks to a complete overhaul of the hardcoded toolbar (part of an effort to hardcode as little as possible in the new version) to instead generate itself dynamically, and the Level Creator will save your own personal setup for the next startup as well. Since the choices for what to put on the toolbar include variations, that makes for an easy way to plop down a lot of bones and kettles without feeling like you're playing a clicker game, though the old method will remain in the editor as an optional choice for those who are more used to it (developers, take note! Improving != removing). Since you need to replace items on the toolbar for it, it will naturally be widened as well to include more of those; maybe at the expense of the silly statues.

Of course, this likely won't be the only change to the interface. I'm toying with the thought of adding something like a select tool, which would let you move things that you already placed and also change the appearance of blocks and decorations (i.e. what the old method of placing those allowed you to do but the putting-them-on-the-toolbar approach would not). Nothing is coded yet, but this editor could definitely benefit from some user-friendly tools. There's also an exciting idea for the walls and decorations in my head that goes beyond a simple interface change which would have never worked properly without the dynamic toolbar, but I'm keeping that a secret for now. Stay tuned for more updates here and on Lanschilandia Games!

Thursday, August 18, 2016

Hello World!

Well, here it is now: the blog of Grifkuba Gaming Services. Founded c. 2011 as a hosting provider and network for game enthusiasts and other creative individuals, we're now giving our members an opportunity to speak, and if you like playing or making games, you may wish to stay a while and listen. Check out the About Grifkuba page for more about us!

Be on the lookout for news from the Grifkuba network and our projects here, as well as general game and game design talk from our contributors. We don't have a schedule for updating yet, but may settle into something like that later as the blog builds up some steam.

Thanks for stopping by!
- The Grifkuba team