NetHack
PostgreSQL
NetHack | PostgreSQL | |
---|---|---|
63 | 510 | |
3,260 | 18,031 | |
2.4% | 2.2% | |
9.8 | 10.0 | |
2 days ago | 5 days ago | |
C | C | |
- | GNU General Public License v3.0 or later |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
NetHack
-
The Story of Rogue
Yes and still under active development [1]! We also just finished the 2024 November NetHack Tournament (TNNT) [2]! I played in the tournament for the first time this year. I had one near-win with a very challenging Monk (I was doing a bunch of conducts [3]) who unfortunately died to the infamous Wizard of Yendor (Rodney as we call him). I also had a winning run with a Wizard which unfortunately finished a few hours after the deadline at the end of the tournament, so sadly that one didn't count!
Next year I hope to have a bit more time to play so that I can record a win in regulation time!
[1] https://github.com/nethack/nethack
[2] https://tnnt.org
[3] https://nethackwiki.com/wiki/Conduct
-
Installing NH 3.7 on Win11 without using Linux?
download NetHack sources (https://github.com/NetHack/NetHack -> Code -> Download ZIP, unpack them on your computer)
-
Eglot + clangd not working for NetHack code base
My configuration of Eglot is simple: (use-package eglot :hook (c-mode . eglot-ensure)). And it works for a single c file. But when I use this setup to read the code of NetHack, it doesn't work for linting and definition finding (M-.), even though eglot connection has no problem. I observed the same problems when reading the code of SQLite. Some specific problems I observed:
-
First version of nethack with a bestiary?
Since nethack 3.1.0, the source for nethack's "bestiary" has been dat/data.base, in plain text, processed into a file named "data" when building the program. The unprocessed file intended for the nethack's next version can be seen at https://github.com/NetHack/NetHack/blob/NetHack-3.7/dat/data.base (it's quite long).
-
NetHack splash screen source? (question in comments)
I am not really 100% sure what you are looking for. Are you looking for the actual picture? It is built during compilation from this uuencoded file https://github.com/NetHack/NetHack/blob/NetHack-3.7/win/win32/splash.uu
- (...) instead of one single extremely large structure named 'g' to house all of the relocated global variables, they are distributed into several ga through gz. (...) To make things easy for the developer, each variable is placed into the struct corresponding to the starting letter of the variable.
-
Cant go down staircase?
xNetHack is based on NetHack 3.7.0, and there was a bug (now fixed) in NetHack 3.7.0 that caused stair destinations to be messed up after a game is recovered. I wonder that has happened here: perhaps you are playing a version of xNetHack that inherited the bug from NetHack 3.7.0, this is a recovered game.
-
toot toot
They won't be afraid of music in 3.7.
-
Minetown Shop with a closet, uses other than YASD for shoplifting?
This is a bug that was fixed in the upcoming 3.7, in this commit. Basically, if the random filler created a space that was made inaccessible by the fixed level design getting overlaid on top of the random filler, a door could be created to make that space accessible.
-
YAAP: Elvish Atheist Wizard
There is not a comprehensive list of changes in existence. This one comes close but doesn't contain everything https://github.com/NetHack/NetHack/blob/NetHack-3.7/doc/fixes3-7-0.txt
PostgreSQL
-
NestJS Multi-tenancy API Key Authorization
PostgreSQL as database
-
Strategies for Fast Lexers
> As introduced in the previous chapters, all identifers are hashed, thus we can also hash the known keywords at startup and make comparing them very fast.
One trick that postgres uses [1][2] is perfect hashing [3]. Since you know in advance what your keywords are, you can design such hashing functions that for each w(i) in list of i keywords W, h(w(i)) = i. It essentially means no collisions and it's O(i) for the memory requirement.
[1] https://github.com/postgres/postgres/blob/master/src/tools/P...
[2] https://github.com/postgres/postgres/blob/master/src/tools/g...
[3] https://en.wikipedia.org/wiki/Perfect_hash_function
-
Create ER Diagrams for PostgreSQL with a Free Design Tool
Understanding a database starts with understanding its structure. For PostgreSQL users, one of the most effective ways to visualize and manage your schema is by using an Entity-Relationship Diagram (ERD). Either if you're working with a large legacy database or starting something new, an ER diagram shows how your tables are connected and how your data is organized.
-
How to Use JSONB in PostgreSQL
PostgreSQL supports two ways to store structured data in a column: JSON and JSONB.
-
How to build a reliable web application with Elm, GraphQL, PostGraphile and PostgreSQL
On PostgreSQL create a database. In this tutorial, we will name it imageboard.
- Save time with sumsummary.com!
-
Database Sharding vs Partitioning: What’s the Difference?
PostgreSQL and Partitioning PostgreSQL versions 10 and after have advanced native partitioning, making it ideal for time-series data, logs, and historical datasets. For example, a fintech app partitioning by month to improve query speeds.
-
SCRAM Authentication in PostgreSQL and SCRAM Pass-Through Authentication
The following commit was added to the PostgreSQL master branch (REL_18_BETA1):
-
OMOP Odyssey - InterSystems OMOP, The Cloud Service (Troy)
We got a database for free when we provisioned last time, but if we want to target another database, we can surely do that as the service at this time of writing supports transforming to flavors of Postgres as well. For this we will outline how to wrangle an external database, via Amazon RDS, and connect it to the service.
-
Create a simple REST application using Quarkus
This quick start guide gets you up and running with Quarkus on macOS, including necessary tools. You will build a basic database application using Quarkus, Java 17, PostgreSQL, and Hibernate ORM Panache. While Hibernate ORM is the standard, powerful Jakarta Persistence implementation capable of complex mappings, it doesn't always make the most common tasks trivial. Hibernate ORM with Panache is Quarkus's solution to this, focusing specifically on making your data entities and repositories simple, straightforward, and fun to write by reducing boilerplate code for common persistence operations.
What are some alternatives?
angband - A free, single-player roguelike dungeon exploration game
ClickHouse - ClickHouse® is a real-time analytics database management system
crawl - Dungeon Crawl: Stone Soup official repository
MySQL - MySQL Server, the world's most popular open source database, and MySQL Cluster, a real-time, open source transactional database.
sil-q
MariaDB - MariaDB server is a community developed fork of MySQL server. Started by core members of the original MySQL team, MariaDB actively works with outside developers to deliver the most featureful, stable, and sanely licensed open SQL server in the industry.