
TILE STUDIO
by Mike Wiering, Wiering Software
Introduction
Tile Studio is a complete development utility for graphics of tile-based games.
The application contains a bitmap editor for creating tiles and sprites and
a map editor for designing level maps.
Tile Studio was originally designed to be used with the
Game Library for the
language Clean (a functional
language, developped by the University of Nijmegen).
But Tile Studio can be used together with ANY programming language, since
the output is completely programmable!
You can program Tile Studio to output your maps, animation sequences,
bitmaps, palettes, etc. in any format and include the output directly
into your source code!
Tile Studio - tile editor (left) and map editor (right).
Click to enlarge images.
Drawing Tutorials - NEW!
An easy way to get familiar with the Tile Studio's sprite editor is to follow these small tutorials to create
some simple images.
News
July 21, 2008 - Quick update
This is a very early alpha version of 3.0, and it doesn't have many of the features that I planned
for 3.0, but you still might find it useful.
You can now type lists of anything you like (Ctrl+F10),
which you can then export using #list ... #end list. For example, you could make a list of
sounds for your game: [Sounds], JUMP, COIN, FINISH (each on a separate line). Then you could
export #list "Sounds" "\n" ",\n" "" and inside that you can use <Item> and <Index>,
for example: const SND_<Item> = "<Item>.WAV";. If you have multiple lists,
you can also add the name of the list as a prefix, for example <SoundsItem>. You can even
use the same list recursively, then add a number (0, 1, ...) at the end: <SoundsItem0>.
You can also use lists (with 0 or 1 item) for conditional compilation or as global constants.
In edit mode, the coordinates of shapes you draw are now logged (at the bottom right). This is meant for
drawing animations, where you want to make slight changes per frame. On a new frame, you can press SHOW to
see where you drew each shape before.
Other changes include (limited) .PCX support, replace current tile sequence in map mode (Ctrl+Shift+F7),
new #sequenceframe ... #end sequenceframe (same as #sequencedata, but goes through each frame duration+1 times).
Download ts.exe, enjoy!
December 1, 2006 - New BlitzMax example
I just made a complete new example of scrolling layers in BlitzMax, which is
far easier than the previous examples. It includes a new definition file BMXPNG.tsd:
tilemap.zip.
November 16, 2006 - Version 2.55
This is another update with some fixed bugs and changes. Download the newest version from
SourceForge
or simply replace your ts.exe with the new version.
- Fixed: Replace Colors (Edit menu), Replace All didn't work properly.
- Added: Quick keys "0" - "9" for toolbox functions (pencil, paintbrush, ..., selection).
- Fixed problem introduced in 2.53: conflict between bounds and sequences (certain
bounds would change into sequence code 00).
- Fixed: starting a new selection in the map doesn't change the bounds anymore.
- Added: Sequences can now have bounds. When exporting data,
#sequencedata .. #end sequencedata can now contains variable
<Bounds> (the bounds of the tiles used to make the sequence).
- Fixed: <MapCount> was still not working correctly.
- Fixed: config file not loaded when starting from other directory.
- Added: transparent color can be changed by editing the config file TS.TSC.
- Added: Paste half size image (Edit | Scaled Paste), perhaps more to come.
- Fixed bug introduced in 2.54: #bitmapfile used current directory
instead of target directory.
July 23, 2006 - Version 2.54
This is an update with some fixed bugs and changes. Simply replace your ts.exe with this
new version.
- New: You can now export tiles as separate image files (use #tilebitmap .. #end tilebitmap
within #tile .. #end tile).
- #file now creates the target directory if it doesn't exist.
- New: Replace colors works differently now: first you need a color pattern containing
the colors you want to replace (or make one with Ctrl + Right mouse button), press
Shift + Tab (split color pattern), make a new color pattern with colors you want to
use and then press the Replace Colors button at the top.
- Fixed: placing a mirrored tile in the map sometimes gave a range check error.
- You can turn the back / mid / front layer off in the map editor (View | Show
Map Layer...), this is reset automatically when you switch back to tile mode.
- In the map editor, you can copy the current tile combination to the clipboard
(and paste it as a new tile in the tile editor).
- Fixed: <TilesetBitmapWidth> and <TilesetBitmapHeight>
are updated directly when you use #tilebitmap.
- New: You can set guidelines in the map grid (Map | Set Grid Guidelines...).
July 22, 2006 - DoJa demo
July 16, 2006 - BooGame demos
Rob Loach made examples for using Tile Studio with BooGame, a 2D game engine framework for .NET, written in C#.
July 7, 2006 - D demo
July 5, 2006 - Flash example
I've been experimenting with
haXe and I wrote a little
demo
that shows scrolling layers. I haven't worked with Flahs/ActionScript before,
so it can probably be improved a lot (please let me know if you find ways to make
it run faster!). It requires this updated TS.exe, which
allows exporting tiles as separate .PNG files.
May 7, 2006 - Version 2.53
This is an update with some fixed bugs and changes. Download the newest version from
SourceForge.
- Fixed: move tile left / right sometimes gave a range check error.
- You can now choose a scale down factor 1/2/4/8 for exporting a map as an image.
- Smart pick up pattern: while using color patterns, you can now pick up a color using [Alt + Right Mouse Button].
If the color is one from a color pattern you've been using, that pattern will be selected.
- Fixed: deleting a tile messed up the bounds of the other tiles.
- Fixed: <MapCount> included maps that weren't exported, making it kind of useless.
- Added <TSBackTile1>, <TSMidTile1> and <TSFrontTile1> which use 1 as the first tile, 0 for no tile and -1 and below
for sequences (unlike <TSBackTile>, <TSMidTile> and <TSFrontTile>, which use 0 for the first tile and -1 for empty,
which conflicts with the first tile sequence).
- Fixed: the 4th parameter of #tiledata (y-separator) was being ignored. If you were using this parameter in your
.tsd files, you might get different results now.
- Fixed: progressbar works a little better now while generating code.
August 21, 2005 - BlitzMax example updated
I just updated the BlitzMax scroll demo to demonstrate the use of bounds. Now there
are some objects that move around and bounce against the edges.
Download it here: tsbm2.zip.
June 8, 2005 - Another BlitzMax .tsd file
Jeremy Alessi also posted a .tsd file for
BlitzMax and a version the scroll example. This one is a direct conversion of the
original BlitzBasic version. Download it here: tsbm.zip.
June 6, 2005 - BlitzMax .tsd file and scroll demo
May 6, 2005 - Version 2.52
Another small update, download it here.
- Now you can easily replace one color with another while editing a tile. Just use the
Fill tool and hold [Ctrl] down while you fill an area. All pixels with exactly the
same color in the tile will be replaced as well.
- You can also replace one tile (combination) with another in the map editor.
Use the selection tool and select the tile you want to replace and press
[Ctrl + X] (Cut) or [Ctrl + C] (Copy), so the old tile appears in the clip area
at the right. Now change the tile into something new and select it again.
Finally press [Ctrl + Shift + R] (Map, Replace Clipped by Selected) to replace
the old tile with the selected one everywhere in your map.
May 5, 2005 - Another Java demo
Some time ago, Steffen Kluge sent me a demo he made in Java using the Java Wireless Toolkit 2.0 and
Borland JBuilder 9 Mobile Edition. Unfortunately, I wasn't able to get it to work myself, but maybe it
will be useful for anyone who is working on a similar project. Download it here:
tornado.zip (206 Kb).
February 21, 2005 - Java scroll demo
Paul René Jørgensen posted a Java version of the scroll demo, including an XML.tsd export file. Download it
here: tsjava.zip (324 Kb). See the included file install.txt for instructions
and contact info.
January 8, 2005 - Tell about your projects!
I'ld like to compile a list of games that were created using Tile Studio to be included on this site.
If you've created a game with Tile Studio, please submit information about it
here!
Old news...
Tutorial
Here is a quick tutorial to help you learn to work with Tile Studio.
Most of it should be easy to understand for anybody. However, the part
about writing your own Tile Studio Definition files is meant for
people who have some programming experience.
This tutorial is also included in the .ZIP file, so you can read
it off-line.
Download
To run Tile Studio, you will need a PC with Windows (any version)
with HiColor or TrueColor display (Tile Studio cannot be used with 256-color
display). Tile Studio works best on a desktop of at least 1024x768. If you
have only 800x600 (or less), be sure to maximize the window when you start
(so you also see the Tile Set panel and the status line).
You can download the program and source code from the following page:
Usually, you can find the most recent version of Tile Studio
here (without source) and the newest executable here.
And here are some examples of .tsp project files:
examples.zip (includes Worms.tsp, Charlie.tsp and Sint.tsp).
You can find the actual games (written in Clean) at the
Clean Game Library site (Games section).
Examples
Here are some examples of how to use Tile Studio with different programming languages.
The demo is very simple, it shows two layers scrolling at different speeds.
There is one animated tile sequence (used for the water).
Scroll demo for several programming langauges
These examples contain a .TSP file (with the graphics and maps), a .TSD file (which
specifies the output format for that particular programming language) and the source
code for the project. Most examples also include a working executable.
Note that the .TSD files here are only examples. Normally, you would write
a separate .TSD file for each project. But you could start with one of these.
If you have written a .TSD file for a specific language or library, which you'ld like
to add to this list, please send it together with a working demo (source + executable).
* The Turbo Pascal example is different from the others, it demonstrates overlapping tiles and
the use of palettes.
Forum
If you want to discuss anything that has to do with Tile Studio with other users, post a message here:
If you have bug reports or feature requests, you can post them
at the SourceForge page.
Links
Return to Wiering Software
|
|