A cart can be saved and distributes as a PNG image, use save game.png command.
TIC-80 can work like a compiler without UI with --cli command line parameter, for example here we load game.tic cart from current dir (use --fs .) and export it as game.exe executable for Windows:
$ ./tic80 --cli --fs . --cmd "load game.tic & export win game.exe & exit"
cart game.tic loaded!
use RUN command to run it
GET /export/0.90/win [100%]
game.exe exported :)
Also, games can be exported without access to the editors with alone=1 flag (PRO feature)
export linux game.exe alone=1
The help command was redesigned and you can get info about spec/ram/api/command/...
>help
usage: help [<text>|version|welcome|
spec|ram|vram|commands|api|startup|
terms|license]
>help api
API functions:
OVR SCN TIC btn btnp circ circb clip
cls elli ellib exit fget font fset key
keyp line map memcpy memset mget mouse
mset music peek peek4 pix pmem poke
poke4 print rect rectb reset sfx spr
sync textri time trace tri trib tstamp
>help sync
---=== API ===---
sync(mask=0 bank=0 tocart=false)
The pro version of TIC-80 contains 8
memory banks.
To switch between these banks, sync can
be used to either load contents from a
memory bank to runtime, or save
contents from the active runtime to a
bank.
The function can only be called once
per frame.If you have manipulated the
runtime memory (e.g. by using mset),
you can reset the active state by
calling sync(0,0,false).
This resets the whole runtime memory to
the contents of bank 0.Note that sync
is not used to load code from banks;
this is done automatically.
Another useful thing you can export whole help info in Markdown format, use command export help cheatsheet.md
Added mouse capture functionality to receive relative values instead of the current cursor position (useful in first-person 3D games), the cursor is hidden and this mode. To enable this mode pls use poke(0x7FC3F,1,1) command.
Small example with enabling the relative mode:
function flip(val)return val>0 and 0 or 1 end
function TIC()
if btnp(4)then
poke(0x7FC3F,flip(peek(0x7FC3F,1)),1)
end
cls()
local x,y=mouse()
print(x..":"..y)
end
Added baremetal/rpi/3ds builds to Github Actions and all the Nightly Builds can be downloaded here https://nightly.link/nesbox/TIC-80/workflows/build/master
Now you can change bit mode in the map editor
On Android, you can switch between the system keyboard and TIC-80 internal keyboard
Hardware keyboard now detects automatically.
CLOSED ISSUES
#1486 - Problems with Jxx and row parameter of the music () function again present. Old lines are being used in src/core/sound.c
#1482 - Website: Can’t upload Fennel cartridges
#1480 - Website: Page titles
#1477 - saveid not working when exporting with alone=1
#1475 - Add an additional parameter to peek/poke functions for diferent bit resolutions
#1469 - TIC-80 crash on Windows XP
#1455 - Move all the icons to the config.lua
#1454 - TIC throws OOMs when trying to run this cart in browser
#1447 - Cursor shows over bookmarks tab
#1446 - M command retriggers note
#1434 - map editor select appears over show tiles
#1430 - Horizontal scrolling while shift is held
#1421 - Navigate palette with [ and ] keys
#1414 - Please add Git SHA to the build number version in console
#1405 - Code outline items corruption
#1398 - TIC-80 Crashes when I stream it in a Discord voice channel.
#1396 - Buffer Overflow Vulnerability in src/studio/fs.c
#1395 - Distribute Linux version as zip on itch.io for better itch.io app integration
#1394 - Incorrect OVR palette
#1388 - RESUME command doesn't restore screen bug
#1380 - Update wiki: CHUNK_SCREEN, tic_screen, sync, etc.
#1372 - Path does not update on console correctly bug
#1370 - Editor does not update when pressing enter bug
#1360 - music function crashes in javascript bug
#1356 - Saving cartridge crashes the dev (Pro) build bug
#1345 - Crash in editor with 1BPP mode bug
#1343 - (end) add "Debug" to TIC_VERSION_LABEL for debug builds
#1338 - TIC80 Freezes When Trying To Run Game After Saving As Lua bug
#1332 - alt-tab inserts a space in the code editor bug
#1331 - Little pause at the beginning of the music
#1326 - current build crashes on 3ds
#1323 - duktape submodule fetches all duktape versions ever released
#1319 - Add new & popular filter to the website
#1315 - Add pagination to the website website
#1312 - [Request] Please add THEME.CODE.FG to alter foreground text in code editor
#1308 - Add a chunk to load default palette/waveforms
#1306 - Game exits to the console if you press ESC twice
#1290 - Live reload not working bug
#1282 - Dividing by Zero in line function causes Tic-80 to crash. bug
#1275 - Please add back ability to name gifs
#1273 - Distorted sound with 0.80.1345 Pro on Linux
#1271 - new fennel creates the cart with the old palette
#1269 - tic80 -h command outputs to nowhere unless redirected
#1268 - Zlib compression does not seem to work in 0.80+ versions of TIC-80
#1267 - Command line arguments do not work anymore in the latest commit
#1264 - Make all the network requests async
#1255 - CRT effect in mac
#1254 - better clipboard support
#1247 - Make TIC work more like a compiler. console
#1246 - Add benchmark demos for every supported script.
#1240 - When compiling TIC-80 with GCC Mingw-w64 it (mingw64) adds additional DLL dependencies
#1239 - Gif export does not automatically add .gif extension
#1227 - Feature: Add colors to text with control characters (like Commodore 64)