It's awesome. Also if you are gonna remake the whole game you could share the game by turning every file U use for it into a .TXT and just past it all in a forum or something. So that someone could just copy the text into a .txt and then rename the .txt to whatever file type it needs to be (I don't know if it would work I just got this random idea ones)
I thought button input could be rendered at arbitrary times? At least 60 fps. Just uh count the milliseconds, and only selectively render inputs at 30 fps margins.
Replying to:S_DE_SolutionsThe Result looks fine.
Hint for your Problems:
You could use background images for the intro instead of sprites (to save sprites).
I think 60fps would be possible. But the source code should have to be structured (differently).
This would also be useful, so that the button inputs always work in real time.
(Each line of code needs a certain time to execute. It's not much, but the more computations and jumps the main loop has, it get more visible. By the way: have a look to
https://smilebasicsource.com/page?pid=1316 for information how vsync works in Main-Loop.
He wants the game to run at 30fps, so it'll be a perfect recreation of Undertale.
Replying to:S_DE_SolutionsThe Result looks fine.
Hint for your Problems:
You could use background images for the intro instead of sprites (to save sprites).
I think 60fps would be possible. But the source code should have to be structured (differently).
This would also be useful, so that the button inputs always work in real time.
(Each line of code needs a certain time to execute. It's not much, but the more computations and jumps the main loop has, it get more visible. By the way: have a look to
https://smilebasicsource.com/page?pid=1316 for information how vsync works in Main-Loop.
The slides actually aren't sprites, they're being copied off of another graphic layer. The issue with them isn't anything with sprites though, its just how huge the slides are. If you peek into the GRP file for the slides you can even see that I actually had to wrap them around the screen instead of placing them in full, so some slides need two GCOPY commands.
And i've also seen the gsync and wait battle royale. It's not exactly what i'm looking for, but it's a good way to understand what the difference is between the two commands. I'm thinking i might need another program slot dedicated to constantly polling input, but that's an absolute mystery to me as to how that would work.
Replying to:hakkeYou could do this:
WHILE #YES
BTN=BUTTON(1)
INC TIMER
IF TIMER MOD 2 THEN
'DO YOUR 30FPS STUFF HERE
ENDIF
WEND
IIRC, the inside of the IF block will run at 30fps, and the rest at 60.
That's viable, in fact i've already used that for the text function, but imagine doing that in every part of the program. There still needs to be a way of determining which input to use out of both "frames."
Replying to:hakkeYou could do this:
WHILE #YES
BTN=BUTTON(1)
INC TIMER
IF TIMER MOD 2 THEN
'DO YOUR 30FPS STUFF HERE
ENDIF
WEND
IIRC, the inside of the IF block will run at 30fps, and the rest at 60.
You know what, i'll try that. I think i'm stuck on importance of button states too much.
You could get 60FPS input and store to a buffer array/vars of 2 inputs, that way you can read both inputs in one frame or select one to use.
Please, please don't make the game 30FPS if you're going to try to make the entire game. I get that it's accurate to the original, but 60FPS would be SO much better and smoother. It would be a really nice improvement over the original.
Also, quick note that the game probably would have been 60FPS if it weren't for GameMaker's limitations.
Replying to:TarudahatIt's awesome. Also if you are gonna remake the whole game you could share the game by turning every file U use for it into a .TXT and just past it all in a forum or something. So that someone could just copy the text into a .txt and then rename the .txt to whatever file type it needs to be (I don't know if it would work I just got this random idea ones)
Note that you can upload it to SmileBoom's servers temporarily and save it to your computer via SBAPI, then remove it from their servers and upload it somewhere else.
Replying to:12Me21It's fine to just check BUTTON on every other frame. It's
nearly impossible to press a button for just a single frame, so you'll never miss any presses.
(I tried for a few minutes and was never able to do it. I think they might just be ignored by button debouncing. Either they ignore button presses less than 2 frames, or don't allow a button to change state on 2 frames in a row.)
WHILE 1
VSYNC
OOB=OB
OB=B
B=BUTTON()
IF !B && OB && !OOB THEN ?"1 Frame button press!"
WEND
The problem with checking every other frame is when you're using IF BUTTON(2), but you don't have to use that.
Maybe we could ask Toby Fox if he is fine with us cloneing Undertale. Then we could clone it, if we had the skills.
Replying to:randoMaybe we could ask Toby Fox if he is fine with us cloneing Undertale. Then we could clone it, if we had the skills.
I'm pretty sure he's fine with fangames.
And... uh... the fandom.