This is a Zelda-style RPG game. Hotkeys: WASD or arrows – move player 0 – toggle editor Editor hotkeys: WASD or arrows + hover mouse over palette – scroll through tiles 123 – change layer P – toggle palette meta editor (while open, 1 to select and x to deselect solidity point) E – select tile over cursor [space] – draw advanced shapes HOW DOES IT WORK? The tiles are stamped using the pen extension. That way the clone limit of 300 is bypassed and the engine runs very fast. When the editor is opened, the screen is divided into two parts, with the editor assets on the right in the form of a palette from which a tile can be chosen by clicking on it. As there are too many tiles to show on screen at once (about 500), I decided to implement a scrolling mechanism. The idea is very simple: when the cursor is over the editor part, the movement keys affect the palette. The level consists of three layers. The first two go behind the player, while the last one is stamped in front. To change the layer which is being edited, press the number keys 1 2 and 3. Some shapes consist of a few tiles, for example houses. I didn't want to have to manually select every tile, so I implemented a system such that the movement of the mouse on the level corresponds to the movement of the editor selection (press space to use). At last, I wanted some tiles to be solid. The problem is, some tiles should be solid in a few places only. I came up with an idea to have 9 collision point on each tile. Another issue which surfaced while I was coding that was that all of the values would have to be manually added to a list. I didn't want to do that for all 500 tiles, so I came up with an automation process. After pressing p in the editor, 9 dots are drawn over each tile. These correspond to the solidity points. A red dot means solid, while a white one – immaterial. To change the solidity pattern of a tile, hover the cursor over a point and press 1 or x.
Huge thanks to the following people: Vyrell for the player sprite O_LOBSTER for the tileset