
Flick is a point-n-click engine.
Flick is an implementation of Increpare's Flickgame designed to work on Varvara. The entire idea relies on navigating slides based on what color is clicked on to create minimal point-n-click adventures that can easily be shared.
Manual
Flick has 4 tools, a pointer that can be used to test the game, a brush that paints pixels of the selected color, a link brush which only paints pixels of the link color without touching the base colors, and a wipe tool which removes the picked color from the scene. Below the scene previews under the canvas, is the links and locks timelines.
Scenes can be copied with ctrl+c and pasted with ctrl+v. A 1-bit image with the size 28x19 created with Noodle can be pasted ctrl+shift+v.
Links
Links enable colors to be used for moving between scenes, a link color must be selected for new links to be created. Clicking on the eye icon toggles between pausing upon entering the scene, and automatically changing to the next scene after a delay of 8 ticks at 60fps.
Locks
Locks can disable a link until a scene has been visited. It's useful for locking events behind certain actions, for example, waiting for a key to be collected before a door can open.
The viewer application updates a value that is holding the visited scenes, and each link color holds the required scenes that need to be visited in order for that link color to be enabled.
Build
Your flick project is saved as a file named project.flick
, which
contains the slides in the flick format. You can use this
tool to convert a project file into a playable
rom that will run on Uxn.
uxnemu flick.rom # Draw something, to create project.flick uxncli flickbuild.rom # Run converter, to create project.rom
After running the converter, you should see a project.rom
file, next to your project.flick
file. To get a web playable link,
open the rom file in uxn5, and click Share.
Format
The project file is a series of 16 scenes of 16384 bytes each. Each scene is made of 2-bit canvas data stored as CHR tiles, followed by 2 bytes holding the scene number for each link color, and 3 bytes for the RGB values of the scene's links colors.
Scene[0x4000] Canvas[0x3e80, 0x28 * 0x19 * 0x10] ( 1000 chr tiles, 16 bytes each ) Metadata[0x0180] link1: 1 byte[0x00-0x0f] link2: 1 byte[0x00-0x0f] R: 1 byte, hb color2r[0x0-0xf], lb color3r[0x0-0xf] G: 1 byte, hb color2g[0x0-0xf], lb color3g[0x0-0xf] B: 1 byte, hb color2b[0x0-0xf], lb color3b[0x0-0xf] lock1: 2 bytes[0x0000-0xffff] lock2: 2 bytes[0x0000-0xffff] time: 1 byte[0xff] ... unused metadata
- Source, Uxntal
- Source(converter), Uxntal
- Repository