Angband Forums

Angband Forums (
-   Development (
-   -   OK, how do I get started? (

DavidMedley December 5, 2019 09:30

OK, how do I get started?
I looked around briefly but didn't see a guide for contributing code. Here's relevant info to my situation:
- I was a professional software developer for 17 years (Perl, Flash, and core web dev tools & languages)
- I've never contributed to open-source, only proprietary code
- I'm mainly interested in gameplay upgrades, which are often very subjective. I don't want to run an unnecessarily high risk of rejection / wasted effort, hence this post seeking advice. I'll happily throw in minor fixes and documentation, too, when I see a need.
- I am presently working an a completely original CRPG system. I might put much of my system into an open-source roguelike as an intermediate step to the full game. That's not what I'm posting about here, but that's my long-term goal.
- My short-term goals as far as code contribution are to help improve the game(s), gain a bit of recognition in the community, gain experience tinkering with game mechanics.
- I'm most familiar with Vanilla, but also quite intrigued by Sil. I've played some Frog, but that seems like too much of a morass for me to chip in. I've also played some Dungeon Crawl and ToME, but I don't foresee contributing to those. Haven't tried ADOM yet. So mainly Vanilla and Sil, I think.

Thanks in advance for the help!

DavidMedley December 5, 2019 09:35

I have posted a lot of helpful (?) suggestions in the two months since signing up. If you are curious about what kinds of improvements (??) I would try to make, you can look through my posts. That's probably where I'll start, depending on the process feedback I get here.

Pete Mack December 5, 2019 11:31

The code is on github. Nick will accept reasonable code changes posted as requests there.

Nick December 5, 2019 12:49

Briefly, what Pete said. I'm very occupied by other stuff at the moment, but will try to answer a bit more fully when I get the chance.

DavidMedley December 5, 2019 13:17


Originally Posted by Pete Mack (Post 141561)
The code is on github.

Yep, I am familiar! Maybe the best way to start is to make some non-controversial improvements.

Gwarl December 5, 2019 19:58

The best way to start is undoubtedly to make your own variant.

Given your experience with web tools, and your initiative in compiling spreadsheet info, I'd invite you to help me in creating an online wiki - something I plan to get around to starting on myself, perhaps this month but there are gains to be made in parsing datafiles to automatically populate information about various version and variants..

But given that you would like to actually work on a game, giving yourself free reign to do it in your own variant is doubtless the most expedient course. I am happy to add new variants to angband live, game development is more rewarding when you can engage with your audience.

DavidMedley December 6, 2019 09:49

I don't want to create and maintain my own variant, tho. I don't want Medband or whatever. I'd like to get some improvements into the mainstream that will hopefully live on. I could try making a variant but if most of the changes didn't get merged back in then I'd feel like it was a waste. But maybe I'm not understanding your point.

DavidMedley December 6, 2019 13:01

Possible Vanilla Projects
Here are some possible areas I'd like to work on in Vanilla. I'm posting this list to get some feedback before attempting anything. Some of these sub-items are not crucial, I'm just noting them here because I posted about them previously. These are things I believe I could realistically take on, make improvements that the majority of players would really like, and that I think I would enjoy working on.

Loot system (more about that next post)

Refining Necromancer
  • Would be so fun to be somewhat responsible for this new class!
  • Lots of improvements to the way their spells are annotated
  • A couple spells need reworking, especially the highest level ones
  • Vampire Strike on creeping adamantite coins
  • Vampire Strike "target is shielded"
  • Vampire Form Discrepancy

Few Paladin improvements
  • Make Protection from Evil usable at all levels but not OP
  • Improve messaging on Smite Evil and others

  • Get rid of 18/xxx notation
  • Contribute to documentation/wiki
  • projection.txt header documentation
  • Semi-persistent levels
  • Reorganize monster recall
  • Black Market misnomer

Gwarl December 6, 2019 13:14

I will just say that a new face turning up and making gameplay changes directly to mainline angband is unprecedented as far as I'm aware. Not to say it won't happen but these goals:


gain a bit of recognition in the community, gain experience tinkering with game mechanics.
are usually accomplished via variant-creation, and invitation to work directly on vanilla probably comes later, built on the back of that experience and recognition.

Again you're better off waiting for nick's answer, but from inside the community unwillingness to make one's own variant seems odd.

Gwarl December 6, 2019 13:19


Originally Posted by DavidMedley (Post 141590)
  • Semi-persistent levels

I could write whole essays on why non-persistence of levels makes angband what it is. It's the pivot on which the whole rhythm and style of the game and all of its many children turn.

Uncontroversial gameplay changes will be slim pickings in a game of this longevity.

All times are GMT +1. The time now is 02:47.

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2020, vBulletin Solutions Inc.