I would assume so. I think it's unlikely that zep would basically double the CPU speed of PICO-8 overnight. But I don't think anyone actually knows for sure yet.
60fps seems to work nicely with v0.1.8!
But my game is running double speed because it is also updated twice as often :D
I think we now need to figure out the best way to update our games or make a game that can run at the same speed across 30 and 60.
If we still had time() that would be simpler i guess.
My game and probably most games would just need to have the tick counts cut to half.
time(), which was already kinda borked, is now running twice as fast...
Hah, in the v0.1.1 changelog it says "Changed: Removed time()".
Its gotta be pretty broken if its also running twice as fast since it was supposed to return the amount of seconds since boot.
time is just (number of frames/30)
given the whole 16.16 stuff, number of frames ends up with 16bit resolution.
time()'s resolution only goes up to 1092 seconds before dropping negative.
I still strongly believe that you can put 1093 in a 16 bit signed integer.
of course you can, but not if your 1093 is from 32790/30, because 32790 does not fit in a 16 bit signed integer, and that was the part that I said was 16bits, not the overall result.
ok, got it now. well, time() is (was?) a built-in function, maybe it should not be 'just' (number of frames/30)?
anyway it's deprecated and a non-blocking issue as there are other options, so let's forget about it.
on topic it seems that simply designing the game at 60fps is ok in most cases since _update60 would be called twice on 30fps hardware (so you'd just lose a draw frame).
From the manual:
If _update60() is defined instead of _update(), PICO-8 will run in 60fps mode:
- both _update60() and _draw() are called at 60fps
- half the PICO-8 CPU is available per frame before dropping down to 30fps
** please note that not all PICO-8s support 60fps. On machines that do not support it,
_update60() will instead be called twice per frame and _draw() at 30fps. You can check
the behaviour of your program running at 30fps by adding the following snippet to the
bottom of your code:
u60=_update60 _update60=nil function _update() u60() u60() end
[Please log in to post a comment]