Hacker Newsnew | past | comments | ask | show | jobs | submit | nffaria's commentslogin

Noita is an amazingly complex game, from the alchemy reactions, to the cryptographic secrets [1], to the wand building mechanic -- which is itself like a small programming language.

Here is someone using a (really complex) wand to beat the game in 2 seconds (some spoilers): https://youtu.be/YYTB5_zBANg?feature=shared&t=309

[1] https://noita.wiki.gg/wiki/Eye_Messages


Man, I wish I was good enough after 110 hours to experience the other half of this game's content. I'm still stuck dying in Hiisi base... Still fun tho!


Mainly to see if it was possible. I have been wondering for quite some time how far can you push SQL, given it is Turing complete.


Yeah, fair enough. It's an interesting project


While there were some workarounds needed to implement the game, such as handling input and output, the core of the game logic uses regular SQL. Even recursive CTEs are part of the SQL standard (https://en.wikipedia.org/wiki/SQL:1999#Common_table_expressi...), which makes the language Turing complete. Also, apart from the small function to print to stdout, there were no procedural languages used.


Thanks for the kind words, it was exactly like you described. Many times I thought it would not be possible after hitting some of those walls, but luckily there was always a way around them.


I once wrote a top-like tool in Oracle's sqlplus client, that is not designed for building self-refreshing terminal UI display apps. Just to see if I could do it, had to get creative too. Used pipelined PL/SQL functions with never-ending output stream and a sleep function within it and had to carefully match the sqlplus "fetch array size" with number of rows returned in a batch from the pipelined function. Called it MOATS - the Mother of All Tuning Scripts - and then someone took the idea further and built v2.0 with added colors and charts, etc:

The v2.0 UI GIF is here: https://github.com/dbsid/moats_rac


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: