2fejoa: as bones basically just level saves, they should benefit too. tbh, i mostly thought about bones when i started working on this: it is too painful to loose 'em all each time i bumping version number (and it happens quite often in k8ivan). and yes, i can get rid of level ids encoded in bone file name too: it's not hard to scan bone headers and extract all the info game need.
2capristo: ah, it is already possible to cheat with programs like CheatEngine, and even easier: by just changing values in script/ (see ut script in k8ivan: it spawns alot of impossible shit near the entrance if player name is '_k8_'). security by obscurity never really worked. and, tbh, i see no reason to stop cheaters: if people want to ruin their pleasure, why should we stop 'em? it is their decision, after all.
on the other side, textual saves will allow not only cheating, but human inspecting of a save in the case of some problems. analyzing save files is almost impossible now (due to how saves are implemented). as a developer, i must confess that i never even thought about writing "save file analysis tool" due to it's complexity. textual saves rox for devs.
and, btw, we can just encrypt saves with some simple algo, so lazy people won't just edit 'em with their text editor. or write something like a checksum (as for highscores), so modified saves will be rejected.
anyway, text saves won't come in a day or two (even my developement speed is not that high %-). first i have to add names for all saved values, and sections for objects. which require wrapping all binary i/o in ugly macros (sigh) and lambdas.
as for now, i catched one bug with wrong type i/o, harmless for x86, but disasterous (i think) for x86_64. not that k8ivan works for x86_64 at all, tho: i don't have x86_64 system to test it on, so i simply disabled 64-bit builds with `static_assert()`. %-)