Skip to content

Latest commit

 

History

History
69 lines (54 loc) · 3.14 KB

File metadata and controls

69 lines (54 loc) · 3.14 KB

Contributing to xNetHack

Thank you for taking time to improve xNetHack! Some of its best features have come from interested people like you.

Quick list of important resources:

How to get in touch

As it's a small project, xNetHack game design happens mostly in conversations on IRC. The best way to find people to talk xNetHack with is to go to channels #hardfought or #xnethack on irc.libera.chat. (#hardfought is more general but has livelier discussion.) If you prefer Discord, you can also access the #hardfought channel by visiting the Reddit /r/roguelikes Discord server and entering channel #nethack-hardfought. It's always better to talk through an idea before starting to implement it, so don't hesitate to say hello!

How not to get in touch

These are hit-or-miss methods at best. You may not get a useful response with them.

  • Emailing aosdict@gmail.com (despite it being the in-game contact information); it's not checked frequently.
  • Leaving messages on NetHackWiki talk pages for xNetHack or the user pages of its contributors.
  • Contacting the NetHack DevTeam.
  • Contacting the owners of a server hosting xNetHack (except for a crash or a bug).
  • Posting in rec.games.roguelike.nethack or Reddit.

How to report a bug

The preferred method of bug reporting is to open an issue on GitHub, because those are more persistent than chat and are visible to anyone viewing the repository. Note that a bug present in xNetHack may also be present in vanilla NetHack, and in that case it will be referred to the DevTeam for them to fix unless it's really severe.

How to make a suggestion

Making a GitHub issue is the best way to suggest something as well. This ensures it won't get lost in chatter, and issues tend to get earlier attention and priority over items that come out of discussion in other forums.

How to contribute code

The best way to do this is to open a pull request on GitHub, or if that's too much of a hassle and the code change isn't extensive, a patch file might be accepted.

Commit messages should be very descriptive, explaining in particular why the change is being made; xNetHack has a longstanding tradition of this.

Make sure your change is aligned with the xNetHack design goals. Implementing an idea from the list of future plans linked above is a good way to do this. Random requests that don't follow this guideline, like adding a bunch of monsters from SLASH'EM, will probably be rejected. If you're not sure whether a change you want to do would be accepted, consulting with xNetHack contributors is recommended.

Regarding LLM-generated contributions: while these will not necessarily be rejected out of hand just for being LLM-generated, they will be if they do not demonstrate that a human contributor has thoroughly reviewed and tested the change, with evidence of that testing provided. Special care should be taken to ensure the change is as small as it can be.