Indivisible on NES
Moderator: Moderators
Re: Indivisible on NES
Qualifier: unavoidable with my impaired reflexes. Obviously everyone else has no problem with it.
Re: Indivisible on NES
Nah, Rahsennor, you're definitely not alone. You'll probably find yourself in good company. The boss is one of those things for a long devlog post.
Re: Indivisible on NES
I was totally astonished. Magnificent mastery of physics.
Re: Indivisible on NES
Sprite animations looks great! Gameplay is amazing.
Re: Indivisible on NES
Didn't have time to play it properly yet, but congratulations on the great looking game! I particularly like the complex fading animations! Few NES games bothered changing the hue to add more steps to fading sequences.
Re: Indivisible on NES
Thanks for more kind words!
Tokumaru: I figured you'd notice the fades! It's one of many things this game steals from my secret advanced slope game. It's a really simple algorithm that's something like <= $X7 move toward $X1, >= $X8 move toward $XC. Once at $X1 or $XC, subtract $10 and make black on carry clear.
But as simple as the algorithm is, the code for it is HUGE and a mess, I'd like to simplify it sometime.
The thing I didn't steal was my other game's level format, this game is basically uncompressed. I wanted to be lazy with RAM, the good format uses a whole page for it.
Maybe in a couple of weeks I'll upload a video of a runthrough that shows lots of stuff off. (As well as getting a fast, fast time.) I've got a good recording already, but it has two mistakes that keep it from a time milestone (Sub X:00.00) in my favorite category. I want to knock the two seconds off. You'll have to wait to see what X is.
But of course... the game can be beaten even faster than that in other categories.
Tokumaru: I figured you'd notice the fades! It's one of many things this game steals from my secret advanced slope game. It's a really simple algorithm that's something like <= $X7 move toward $X1, >= $X8 move toward $XC. Once at $X1 or $XC, subtract $10 and make black on carry clear.
But as simple as the algorithm is, the code for it is HUGE and a mess, I'd like to simplify it sometime.
The thing I didn't steal was my other game's level format, this game is basically uncompressed. I wanted to be lazy with RAM, the good format uses a whole page for it.
Maybe in a couple of weeks I'll upload a video of a runthrough that shows lots of stuff off. (As well as getting a fast, fast time.) I've got a good recording already, but it has two mistakes that keep it from a time milestone (Sub X:00.00) in my favorite category. I want to knock the two seconds off. You'll have to wait to see what X is.
But of course... the game can be beaten even faster than that in other categories.
Re: Indivisible on NES
edit: see note below
Larger than 64 bytes? Sounds like a job for a lookup table.
01 0F 01 02 03 04 05 06 09 0a 0b 0c 0F 0c 0f 0f
11 01 11 12 13 14 15 16 19 1a 1b 1c 0c 1c 0f 0f
21 11 21 22 23 24 25 26 29 2a 2b 2c 1c 2c 0f 0f
31 21 31 32 33 34 35 36 39 3a 3b 3c 2c 3c 0f 0f
Larger than 64 bytes? Sounds like a job for a lookup table.
01 0F 01 02 03 04 05 06 09 0a 0b 0c 0F 0c 0f 0f
11 01 11 12 13 14 15 16 19 1a 1b 1c 0c 1c 0f 0f
21 11 21 22 23 24 25 26 29 2a 2b 2c 1c 2c 0f 0f
31 21 31 32 33 34 35 36 39 3a 3b 3c 2c 3c 0f 0f
Which isn't the same thing as is being done, so…oh well. Maybe I can use it later.My table is for hue-then-value (though all in the same process).
Last edited by Myask on Wed Sep 06, 2017 3:41 am, edited 1 time in total.
Re: Indivisible on NES
The code I could avoid by using a lookup table for fade to black seems to win over a 64 byte lookup table. It's also not quite as simple as beating 64, because apparently the hue shift and value shift are separate steps. I was wrong, value is first, any color that reaches $0X doesn't become black until the hue shift step. You can see this with $0C on the title screen. (It stays $0C until everything else is $0X.)
So you'd need two tables for a purely table based approach, but one could be 16 bytes since after value the high nibble is guaranteed zero.
Hybrid's probably best, the subtract $10 and do a thing on carry is easy, and then you only need the 16 byte table. Looks like it'd beat what I have by about 8 bytes.
Fade in is a tougher call, since the destination color is not always the same it's trickier to find the code I could certainly avoid using lookup tables. I'll say had I used tables the fade in would probably look better because I'd have iterated more. I'll probably play with the algorithm for fade in for future games.
So you'd need two tables for a purely table based approach, but one could be 16 bytes since after value the high nibble is guaranteed zero.
Hybrid's probably best, the subtract $10 and do a thing on carry is easy, and then you only need the 16 byte table. Looks like it'd beat what I have by about 8 bytes.
Fade in is a tougher call, since the destination color is not always the same it's trickier to find the code I could certainly avoid using lookup tables. I'll say had I used tables the fade in would probably look better because I'd have iterated more. I'll probably play with the algorithm for fade in for future games.
Last edited by Kasumi on Wed Sep 06, 2017 3:30 am, edited 1 time in total.
Re: Indivisible on NES
Well, speed isn't super-important, you're not updating much else, so yeah, hybrid with 16-byte table and ANDing off the value nyb.
(…thought you said it hue-shifted, going to hue 1/C, *then* value-shifted to 0 and then black?)
(…thought you said it hue-shifted, going to hue 1/C, *then* value-shifted to 0 and then black?)
Re: Indivisible on NES
I said it was something like that, yes, hence the "I was wrong".
Re: Indivisible on NES
No worries! My table is for hue-then-value (though all in the same process).
Re: Indivisible on NES
Spoilers: This video reveals one new thing, but not everything: https://www.youtube.com/watch?v=p86jeacic9Y
- rainwarrior
- Posts: 8731
- Joined: Sun Jan 22, 2012 12:03 pm
- Location: Canada
- Contact:
Re: Indivisible on NES
You can whack the floor attack back at the boss??
Re: Indivisible on NES
Finally got a chance to play this. Wow, well done. I'm impressed.
My games: http://www.bitethechili.com
Re: Indivisible on NES
rainwarrior: I expected more wouldn't find it than would, but it was a fun idea I had and it was easy to do. It definitely makes the fight faster, whether it makes it easier is up for debate.
Thanks, gauauu!
Thanks, gauauu!