DGoldDragon28 / Unangband

A roguelike originally created (and developed until version 0.6.4c) by Andrew Doull.
https://dgolddragon28.github.io/Unangband/
GNU General Public License v2.0
59 stars 6 forks source link

I'm going to stop opening issues for now #32

Closed aeoo closed 7 years ago

aeoo commented 7 years ago

OK, I've been playing many different characters in many different styles for quite a few days in a row now.

Here's my statement so far: the game has so many obvious bugs, that it's not worth my time to sit here documenting them all as a player. This alpha quality game should be fixed up by the devs. The game really should get into the beta quality shape before it's presented to the players for further testing. It's really dumb when I find bugs that are so plainly obvious that even playing that background just once would have uncovered the bug. Right? Whoever added all these features and then didn't play through those same features even just once? What kind of developer is that? I don't care what kind of game designing genius you are (I don't mean you personally @DGoldDragon28, I mean in general), but as a developer that just throws feature after feature into the game with zero developer testing, it sucks and it's insulting to the players.

I love many design decisions in this game. This game has tremendous potential. But it's not ready for players to be testing it. Let the devs sit down with this alpha build and test it in private (or at least let the people know this game is an incredibly raw alpha). Come back and make an announcement one more time when you actually have a BETA quality build instead of this alpha quality stuff.

DGoldDragon28 commented 7 years ago

Let the devs sit down with this alpha build and test it in private

You do realize that I am the only dev currently, right, and that I make no money off this: I do it only because I want the game to continue to improve. Both Andrew Doull and I have marked this game as version 0.x.x, indicating that this game is not currently stable. If you don't want to play it, fine, but don't berate me for not testing every single possible course of action in the game. I tested changes that I made, and waited for bug reports to direct me towards errors already in the code. Next time you decide to play a game, please check the version number and make sure it's at least 1.0.0 so that you don't have to deal with bugs (and even then, there will be bugs).

jakofranko commented 7 years ago

As an avid roguelike player and one who follows many, many roguelike developers including Andrew Doull, and as a fan of the genre and a roguelike dev myself I just wanted to jump in and back up @DGoldDragon28 here.

@aeoo your work documenting the bugs you find is very helpful. The beauty of many roguelikes (including this one) is that they are passion projects by developers (often a single developer) that love the genre, and love the predecessor game.

Unangband is a fork of Angband, which is a fork of the game UMoria, which is a fork of Moria, which is mirrored after the game Rogue (where the genre gets its name). Each iteration of this game was taken up by usually one but sometimes a few developer that wanted to hack away at game they love, in an effort to add in things that they love. This is not a commercial effort, it is an open source game built in the developer's spare time and is currently in active development as made explicit by its 0.X.X version!

The developers (@DGoldDragon28 and Andrew Doull) who have worked and continue to work on this in their spare time do not owe anybody anything and do this as more or less a personal project (that they do want other people to play, obviously).

Please be conscious of this. Your language above is harsh.

The best way that you can help this game be the best it can be is to submit bugs you find, and you might consider fixing some of the bugs yourself and submitting a PR to @DGoldDragon28 with your own bug fixes.

Thanks for all you do @DGoldDragon28, I'm really excited that you've taken over this code repo and can't wait to see what you do with it!

DGoldDragon28 commented 7 years ago

Thank you for the vote of confidence, Jake

aeoo commented 7 years ago

I love all this talk about how nobody owes anyone anything. You guys do realize that this also applies to me as well, right? I don't owe you or anyone else anything either. You do realize I opened and documented all this stuff in the best and most professional way possible? People get paid for this and I did it for free.

I started opening up some bugs hoping to help clean up the game. I was under the impression that the game is mostly OK, a beta quality game that has a few really bad bugs and a dozen or two minor ones.

What I didn't realize is that the game isn't even dev-tested. As someone who used to do development myself (not on games), I know how the devs should operate. It doesn't matter if you get paid or not, the process is the same: you make a change, you immediately fire up a build and playtest that same change right then and there.

It's patently obvious to me that the original devs of Unangband didn't bother, or maybe at first they did, but later gave up caring. It's obvious they were throwing a change after a change into the game without even a single playthrough of the same change. That is not how good developers work, paid or not paid. Money isn't the issue. If anyone takes pride in their craft and does it for love, of course they'll dev-test every change so that at least the very obvious bugs do not make it to the players.

Let me be frank. The feeling I got, not at first but eventually after a few days, is that while the design ideas are very interesting, the developer(s) didn't give a shit about actually developing anything properly. And then I felt, if they don't give a shit, why should I? I also don't give a shit. That's how I started to feel. The "not give a shit" feeling of a dev quickly throwing in one change after another rubbed off on me.

Plus, I know full well that @DGoldDragon28 just took over, so of course I wasn't "berating" him. Plus I also know that many people besides Andrew Doull worked on this fork (I saw the credits somewhere once, can't remember where), so I don't feel certain it's Andew's fault either. That's why I didn't name anyone.

I don't hate Unangband or anyone here, or frankly, even whoever did that lousy development. What I feel is tired and indifferent. I feel like all my work was a waste of time. It's easier to just sit behind a build and playtest than me playtesting, then @DGoldDragon28 also playtesting to confirm my report, and then eventually I suppose he might get around to fixing it. Maybe. Two people don't need to exercise the same code path for bugs this trivial.

It's going to make sense for me to help when the bugs are no longer trivial. If a dev can just start a game, roll a char, gain 50 levels using debug, drop all the books from a school, cast them and realize all the blatantly obvious bugs, what am I contributing? Nothing. The dev has to verify every bug I submit anyway! Let's cut out the middle man, which is me, at least for a while.

All this rigmarole of opening well-documented bugs is pointless when it's trivial to just find 20 bugs in one hour of playtesting. The bugs are so plentiful it's not even worth opening an issue for them: just fire up the IDE or vim or emacs and fix the code without going through the motions of opening issues on github. You as a dev could fix 100's of easy and trivial bugs without opening them on github. When the bugs are that easy and plentiful to find, it makes no sense to hunt them and document them by a non-developer. When the code is alpha it's up to the dev to get rid of all the obvious stuff and then let the beta testers find the less obvious.

I mean think about the spells that are not even castable. It's a joke right? How does that even happen? You add some code and .... that's it? You don't even compile and run it to see if you can cast the spell you just added? When I find this kind of stuff I feel a very strong feeling of apathy from whoever was developing in that manner. Then I start to feel like, wait, why do I care again? I don't.

@DGoldDragon28, I know you just took over, so obviously I'm not blaming you. But I do think it needs to be said that it isn't asking too much of a dev, paid or not paid, to run the thing just once after putting new code in, or do some very barebones playtesting at least once a week or so. It isn't a lot to ask.

I feel like I don't want to open bugs anymore because I found so many that I realized if I open them all I won't be done for days, maybe weeks, and what really got my goat is how plainly obvious and trivial many of these bugs are.

If you guys gave me more moral support and said something like, "You're right, that kind of development isn't very good, and we appreciate all the bugs you've opened so far, even though you feel like you're wasting your time, we don't think you're wasting your time because 1, 2, 3. (and try to convince me that I am doing something better or more efficient here than a dev can do without my help at this level of development)" Then I'd probably not open any new bugs for a month anyway, but at least I'd think about it and I'd feel better about the whole thing. But with this "we don't make money, how dare anyone criticize us no matter what we do, since it's free we can do anything" I feel less inclined to help.

The argument for beta testing is this: when the trivial bugs are gone, to find the less trivial ones we need many eyes and many hands to spin the code in ways the dev hadn't thought of. That argument only applies post-alpha guys. During the alpha stage it's actually very wasteful to let the users test anything. The only exception is if the users are begging for a taste of the alpha code or something, but I'm not here begging.

I want to wait for one or maybe two releases to go by first and then see what happens.

DGoldDragon28 commented 7 years ago

As I said before, I do not have time to test all the old features. It is actually much easier to verify a bug than to find it in the first place. I will work on any bug reports opened here, and will test every feature that I add. Such is my decision to make. No one is forced to play this game, and since it's free, you can't complain about not getting your money's worth. Bug reports are helpful and encouraged; denouncing my work or that of my predecessors is not. I will say again: if you cannot be respectful, be gone.

aeoo commented 7 years ago

It is actually much easier to verify a bug than to find it in the first place.

That's only true when the code isn't alpha, right? When you're dealing with non-dev-tested raw alpha code, you don't need to look for bugs. They will jump at you immediately when you try to do very simple basic things, like cast a spell to the west and notice woa, it goes east, or notice it doesn't even cast at all.

Once all the obvious bugs are out, then I agree, it's hard for the dev to spot everything. Of course then everyone needs to chip in with testing. I want to help too, and I still firmly believe the ideas in Unangband are very interesting and absolutely deserve (in some ideal sense) to be seen and enjoyed by many players. But I'm getting overwhelming waves of apathy here when I test things that I know the dev didn't try even once post-edit. I started with so much enthusiasm, but after a few days of finding absolutely trivial bugs I am so deflated and dejected. No matter, I can put my apathy aside if we can agree that this variant deserves to see the light of day in a fixed and functioning form.

I mean, how do you feel about this variant @DGoldDragon28 ? Do you have serious plans for it? Do you have passion and love for it in terms of ideas or implementation? What do you hope will happen with you at the helm as the core dev? I think I could use a pep talk. I mean, does anyone beside me actually care? Am I the only one who thinks this variant has so much potential in terms of its ideas?

All things "speak." How the devs do development "speaks" to me as a player.

I will work on any bug reports opened here, and will test every feature that I add. Such is my decision to make.

Of course. Have I ever indicated anything to the contrary? I've given you personally nothing but respect. But I feel like whoever adds features without even once running the code to see if they'll even execute, is not respecting me as a player. Do you agree? I'm not talking about you. I'm saying, in general.

I'm also saying when we do something for love, we do it well.

It's when we do things for money, that there is a whip-cracking exploitative and abusive boss that says "hurry up we have a deadline" and then you have to skimp on testing and skimp on polish. It's when we do things precisely for money that testing falls by the wayside. When we do things out of love, it should be the exact opposite: we then have plenty of time we can take to test and polish everything, without hurry, and make sure it actually works in its basic form before we push it out to the players. I'm speaking to you here @jakofranko.

aeoo commented 7 years ago

Actually, reading between the lines, when I hear something like "I'll only fix reported bugs and my own additions" the meaning of that is certainly not encouraging. It makes me think I'm probably, not certain, but probably, wasting my time on a project that the core dev doesn't really feel passionate about on the whole.

Is that your right? Are you kidding me? Of course it is. Can I demand that you become passionate about something? Of course not, and don't even joke like that. But do you think you'll draw a crowd with that attitude? I can be wrong, but my opinion, no, you won't.

DGoldDragon28 commented 7 years ago

When we do things out of love, it should be the exact opposite: we then have plenty of time we can take to test and polish everything, without hurry, and make sure it actually works in its basic form before we push it out to the players.

The question is not one of caring, but one of time. I have a life outside of this. If I were to test the entire game thoroughly before releasing it, you would not see the release for several years. I agree with you the variant has tons of potential but is not yet stable. However, releasing a version now was my way of saying "we are back in business" and furthermore, soliciting suggestions and reports (and maybe even contributors) to make my life easier. Again if you do not want to play an unstable release, don't. But there are others who may. You and I clearly have different philosophies on when to release code, and I am fine with that. But to harass me for having a different philosophy is unacceptable.

Can I demand that you become passionate about something? Of course not, and don't even joke like that. But do you think you'll draw a crowd with that attitude?

Define a 'crowd'. I honestly didn't expect to get as many views as I did. And If I weren't passionate about this, I wouldn't have picked up the code in the first place.

You don't have to thank me for releasing 0.6.5, but what harm is it doing you that you have to attack my integrity or passion over it?

jakofranko commented 7 years ago

Sorry to butt in again (I really don't do this very much!), but I think @DGoldDragon28 hit the nail on the head about you ( @aeoo ) and he having different views on when to release code.

But I'm getting overwhelming waves of apathy here when I test things that I know the dev didn't try even once post-edit. I started with so much enthusiasm, but after a few days of finding absolutely trivial bugs I am so deflated and dejected.

@aeoo I get the impression that you think that Unangband was developed by a team of developers, and that because there is a playable version available to you that it has been 'released' in some kind of official capacity, as in, it is 'finished'. If that were the case I could understand why you've taken these bugs so personally.

But this is not the case; Unangband is an unfinished painting, still in the studio. The studio has glass walls, allowing people to view and interact with it, but the painter is not done with it. There is also only one painter right now: @DGoldDragon28. Moreover, @aeoo please don't take these bugs personally. There is no apathy here!! Quite the opposite as @DGoldDragon28 has made very clear.

The presence of bugs is not a personal attack on you @aeoo. It's actually just the effect of not having had many players over the years, and certainly none as passionate and detail-minded as you are. You contributions are extremely helpful! They'll help this game be the best it can be.

The last thing I'll say is that I'm just afraid that you two have missed each other. Clearly, you both love rogulikes and love Unangband and both want this game to succeed. Let's just stop there :) I think there's been some confusion and misunderstanding, and I'd hate for any more hurtful words to be said, especially when I think you both are saying different things for the same reason: you both love Unangband.

aeoo commented 7 years ago

If I were to test the entire game thoroughly before releasing it, you would not see the release for several years.

You can compile a build and release it every 10, or every 20 bugs you fix. There is such a thing as a "bug fix release" right?

Of course because the prior devs didn't do even minimal dev testing, now that you've inherited the project it falls to you. You inherit the good along with the bad. That's how inheritance always works.

But to harass me for having a different philosophy is unacceptable.

I haven't harassed you at all and that's never been my intent. Please do not make such accusations. It's unseemly to interpret me voicing my own surprise and disappointment along with some reasonable criticism as harassment.

@aeoo please don't take these bugs personally.

But I do and will take some types of bugs, not all bugs, but some specific kinds of them, personally. I take it personally when someone edits a .c file and then doesn't bother to compile, run it, and exercise the changed code even once.

DGoldDragon28 commented 7 years ago

Ludicrous. You are allowed to take bugs in a game that you have minimal affiliation with personally, but god forbid anyone accuse you of harassing the devs. Your language throughout this has been harsh and indignant. At this point, I am done with trying to make you understand. I am not responding to anything more that you write, unless it is either a pull request or an issue dealing with a specific bug.

Also do you even read my blog? I am planning on doing a bugfix release, as I said in this post https://dgolddragon28.github.io/Unangband/2017/02/06/Regarding-Planned-Releases.html