Screen size detection has issues.
CodaRyu
Recent community posts
Upgrade cost balancing is done very well so far.
UI could be improved a little, maybe add a tiny bit of screen shake for satisfying oomph, that decreases in proportion to how quickly you destroy asteroids (so it doesn't get ridiculous towards endgame, but is still satisfying when you destroy the first two asteroids in the game), etc.
A large number of interactable things when starting makes it very unfriendly for beginners from choice paralysis.
The bad UI scaling that requires a massive display while fullscreen is also awkward.
The lack of a tutorial just compounds these issues.
It could be pretty cool, if these three main things were addressed.
I really hope you add a total-level-clear score tracker or something. My total: 197
My current record is:
Tutorial Hallway: 6
Tutorial Doors and Corners: 6
Tutorial In the Shadows: 5
Tutorial Light S the Way: 6
Tutorial Light is Calm: 7
Blocked Passage: 8
Black Mold I: 13
Black Mold II: 9
Black Mold II: 18
Exorcism: 15
Candle Light I: 15
Candle Light II: 14
Two Lights: 9
Around the Corner: 11
Loopback: 13
The Corridor: 11
The Corridor II: 16
The Corridor III: 15
I wonder if you could have done something interesting with an object that is at fully bright pallete when outside lighting, and darkens under the lantern instead, to emphasize how supernatural it is.
Although, using up an extra row of palette colors just for an ending cutscene or item is probably overkill and also demanding on the constraints you had within the PICO-8.
I just want to say again this is genuinely amazing.
I do wish you put a link on this page, to your articles on Hackernoon, the lighting write-up has been a MASSIVE HELP for me figuring out lighting in a similar way. Again, what you have achieved is just genuinely INSANE.
(https://medium.com/hackernoon/pico-8-lighting-part-1-thin-dark-line-8ea15d21fed7)
I really like your approach, specifically including pixels that are only partially opaque/transparent. That usually gets added as an afterthought rather than directly in the first iteration of the lighting system, and I like that. Would you mind sharing a bit more about the coding behind it what you've done?
Unfortunately this is very demanding to run considering the whole 1000 rays per pixel strategy. You'll also notice slightly awkward corner clipping.
I highly suggest you only cast rays to vertices of walls for performance saves (https://ncase.me/sight-and-light/). (note: you will need to make custom code to identify walls/corners from the normal map. You could also brute-force it and treat every single opaque pixel as a square wall with 4 vertices, and then when initially loading the map for the first time, determine which pixels aren't consecutively connected, so you can "delete" redundant pixel corner vertices. There probably is a better solution since your map has a decent amount of surfaces that aren't simply flat rows/columns, but has curves, which won't get removed "properly", but this will still save you from casting a few ten thousand rays.)
Since you are using a pixel-art setup, I highly recommend you check out the palette shading strategies used here: (https://www.lexaloffle.com/bbs/?tid=28785) (you may also want to use the techniques in their part 3 that also makes the lighting "cooler" with flickers/dithering)


