Bay 12 Games Forum

Please login or register.

Login with username, password and session length
Advanced search  
Pages: 1 ... 7 8 [9] 10 11 ... 23

Author Topic: Note on some utilities  (Read 53756 times)

nenjin

  • Bay Watcher
  • Inscrubtable Exhortations of the Soul
    • View Profile
Re: Note on some utilities
« Reply #120 on: June 07, 2010, 04:29:37 pm »

Whew, what a train wreck.

Condolences to the Toady One. Such is the price of fame.  :-\ Way to be classy though, and admitting you may have acted hastily and in anger.

As for Impaler...I think I've seen this guy somewhere before....

Spoiler (click to show/hide)
Logged
Cautivo del Milagro seamos, Penitente.
Quote from: Viktor Frankl
When we are no longer able to change a situation, we are challenged to change ourselves.
Quote from: Sindain
Its kinda silly to complain that a friendly NPC isn't a well designed boss fight.
Quote from: Eric Blank
How will I cheese now assholes?
Quote from: MrRoboto75
Always spaghetti, never forghetti

Jackrabbit

  • Bay Watcher
    • View Profile
Re: Note on some utilities
« Reply #121 on: June 07, 2010, 04:33:23 pm »

Dun dun dun du-dun-dun-dun dun dun
Logged

basp

  • Escaped Lunatic
  • Meticulous Geek
    • View Profile
    • The Meticulous Geek
Re: Note on some utilities
« Reply #122 on: June 07, 2010, 04:42:13 pm »

Stuff like this just goes to show how deeply passionate people are for DF. If anything, we are philanthropists: increasing the well-being of humankind, as by saving the toad. The haters are few and far between, they will find the fortress eventually.
Logged
if
considered harmful

Kidiri

  • Bay Watcher
    • View Profile
Re: Note on some utilities
« Reply #123 on: June 07, 2010, 04:58:12 pm »

And when they have found the fortress, there's a nice, hot, steaming bath ready for them.
Logged
Veni, Vidi, Pompeii.
Soylent Green is kittens!
Sometimes, when my Dorfs are exceptionally stupid again, I wonder what exactly the [INTELLIGENT]-tag does.

G-Flex

  • Bay Watcher
    • View Profile
Re: Note on some utilities
« Reply #124 on: June 07, 2010, 05:20:26 pm »

I personally don't think Khazad will ever get off the ground as a DF clone. Impaler is in way over his head and doesn't seem responsible, mature, talented, or learned enough to pull it off.

However, I think the possibility of someone undercutting DF with their own implementation of a similar game (or game framework) is still there, and perhaps stronger than we think.


As at least one other person in this thread has stated, the most interesting/unique thing about DF is the design, not the implementation or programming behind it.
We have to face a couple facts here:
  • This is the first project remotely near its scope or level of sophistication that Toady has ever attempted to program or manage. A possible exception is the first Armok, but that was essentially written off as a failed attempt. It seems to me that most of his programming history lies in small projects, some using not very well-structured languages (see: BASIC) - things that don't have to scale well, don't have to be written very robustly, don't have to be extensible, etc. Dwarf Fortress, obviously, is a whole other story, and one he doesn't seem to have much experience with prior to this game.
  • I could be wrong, but the general impression I get is that Toady doesn't have the level of computer science or software engineering/management background that would be nice to have before attempting a project as ambitious as Dwarf Fortress.
  • Toady is working on this project essentially by himself (especially when it comes to project management and programming).

I might be slightly wrong about some of the above, since I don't claim to have some kind of intimate knowledge that the rest of you don't.

One conclusion to make here is that Toady is learning as he goes. There's a good chance that some of the oldest DF code is stuff that he's not particularly proud of. This isn't to insult his ability; it's actually a good thing, since that means he's improving, as is expected.

This, combined with the fact that he's doing it all himself (hell, even handling the forum is left to him and ThreeToe, and it's rather admirable they haven't gone crazy from it or ritually sacrificed anyone yet, considering how frustrating moderating any Internet community can be) means that progress is bound to be slow, and the implementation details are likely to often be suboptimal.

This means that it's not exactly infeasible for a team of experienced and talented software people - the type used to, say, maintaining and organizing very large projects, in terms of personnel as well as programming and design goals - to "catch up" to Toady's work, creating a product that has similar goals to DF but that is perhaps written more robustly or in a more easily extensible fashion. For instance, I know one person who is working with others to create a library for roguelike programming that accomplishes many of the goals that DF does in terms of world generation/simulation, and they seem to know what they're doing (I doubt they're trying to specifically create a "DF clone", but at least part of the goal is for the library to do some things that DF does, or that they feel it should do better).


So, yeah, what Toady does is great, and we all respect him for it (myself included), but we can't ignore potential issues like this. I'm not saying it would be at all feasible for Toady to completely eliminate the threat of someone making another game (or library, or what have you) that accomplishes the same goals as him, but there are definitely some drawbacks to the development methodology being used. Some of these might be necessary, and some might not be. Let's go through them again.

  • Working with others: Toady doesn't like working with other people terribly much. This seems like a shame sometimes, since there are definitely people willing to help him out with, say, programming, even free of charge. He could maintain oversight of the project creatively, draft up non-disclosure agreements, and so forth, so the problem is mostly just that he wouldn't enjoy it, as far as I can tell. This is legitimate, since it's a long-term enough project that him going about it in a way he doesn't enjoy is out of the question. On the plus side, I see a positive trend in that Toady did open up a bit of the code (graphics/input) and accepted contributions from at least one person regarding it, and that seems to have been quite beneficial. I don't think opening up the source for DF as a whole is a viable solution or a good idea at all, but Toady seem to be willing to work with people more than we would have expected a few years ago, so that's nice, even if having a true "project team" remains out of the question.
  • Toady, if he's smart (and at this point he'd better be smart about this, and certainly seems to be) will continue to learn programming skills, read books, expand his knowledge and practices, and potentially accept advice from people concerning the construction and maintenance of such a huge project. I definitely think he has the ability (having a PhD in Mathematics certainly doesn't harm my impression here) to learn how to program and maintain a project of this nature in a very professional manner, and considering the amount of foresight he's put into design goals and things of that nature, I doubt he's just flying by the seat of his pants and making it up as he goes along, so I'm confident that he can continue to learn as he goes. The fact that DF (as it stands) probably is built upon a rather shaky foundation, considering its age and Toady's lack of prior experience on a project like this, probably contributes to slow and uneven development, but the upside to that is that if Toady reworks things as he goes into a more robust framework, things should be able to go much smoother over time.


A lot of this is just partially-educated conjecture, so I hope I haven't insulted anyone if I've said anything that isn't true. One point we definitely have to agree on here is that we can neither disregard the amount of work Toady puts into the project, or his vision or dedication, or the fact that he's managed to get this off the ground so far at this point, nor the fact that he's not a programming genius dropped from the Heavens, and in fact has the majority of experience in projects that simply were not complex, large, or sophisticated enough to teach him all the skills necessary to maintain one like DF.

In closing, I think Toady is dedicated, intelligent, and level-headed enough to know what he needs to do and do it, and that it's rather important that no matter what he does, he needs to not do things that would be contrary enough to his methods in the short-term that he'd lose interest or gumption to work.
Logged
There are 2 types of people in the world: Those who understand hexadecimal, and those who don't.
Visit the #Bay12Games IRC channel on NewNet
== Human Renovation: My Deus Ex mod/fan patch (v1.30, updated 5/31/2012) ==

lodester

  • Bay Watcher
    • View Profile
Re: Note on some utilities
« Reply #125 on: June 07, 2010, 06:01:30 pm »

You're significantly lowering the level of discourse in this thread.  Keep it classy, please.

oh sorry  ...right, everyone get back to curing cancer! Yittahhh! /crack whip

Everyone just need to lighten up and take this for what it's worth - which frankly isn't very much unless you login is ToadyOne. What he does or doesn't do about this is, really, all that matters. Without a license and a successful title with a loyal fan base, do we really need some kind of discourse? This is stuff everyone should have learned in preschool.
Don't steal, play nice. But I suppose it's more fun to waddle around in circles debating the relative merits of X and Who and the needless drama. Everyone please put forward your reasonably articulated feelings on this matter.

I think he should steal!
No, no, stealing is bad!
But he's like Robbin Hood, right? You know....give the poor people a GUI, stolen from the....uh...evil king of awesome gameplay mechanics! Yarr! I be to huntn' frozen fish sticks in your forest....what?
Logged

Footkerchief

  • Bay Watcher
  • The Juffo-Wup is strong in this place.
    • View Profile
Re: Note on some utilities
« Reply #126 on: June 07, 2010, 06:12:52 pm »

On the plus side, I see a positive trend in that Toady did open up a bit of the code (graphics/input) and accepted contributions from at least one person regarding it, and that seems to have been quite beneficial. I don't think opening up the source for DF as a whole is a viable solution or a good idea at all, but Toady seem to be willing to work with people more than we would have expected a few years ago, so that's nice, even if having a true "project team" remains out of the question.

I agree that it's a positive trend, although (as you probably know) it's not likely to extend to other parts of the game, e.g. UI.

Quote from: Toady
I've had help with some of the technical programming, since it would be difficult to set aside time to learn that stuff myself at this point. But the overall experience clarified to me that the game probably wouldn't survive having its core elements opened up to more programmers, at least with me at the helm.

It seems to me that most of his programming history lies in small projects, some using not very well-structured languages (see: BASIC) - things that don't have to scale well, don't have to be written very robustly, don't have to be extensible, etc. Dwarf Fortress, obviously, is a whole other story, and one he doesn't seem to have much experience with prior to this game.

[...]

The fact that DF (as it stands) probably is built upon a rather shaky foundation, considering its age and Toady's lack of prior experience on a project like this, probably contributes to slow and uneven development, but the upside to that is that if Toady reworks things as he goes into a more robust framework, things should be able to go much smoother over time.

Yeah, I find the size of the project worrying -- it long ago passed the point where it could all fit in one person's head, and I'm not sure that the code documentation has kept up.  I suspect shorter dev cycles will help with that, though.

Another alarming factor is the continuing shift toward simulation-oriented features: heavy procedural generation, complex formulas (especially in combat calculations), and small invisible mechanics (e.g. personality effects on abstract conversations).  All of these are difficult to directly observe, and it's hard to define correct output for them.  Essentially, they make it hard to identify bugs (not just for players!), and they represent lost opportunities to engage the player in game mechanics.  These features need UI.  Postponing that kind of UI for a massive v1 crunch is wishful thinking -- it raises the difficulty and drudgery of implementing UI by orders of magnitude, and meanwhile the game will become increasingly inscrutable and riddled with invisible bugs.

Anyway, Impaler's clone holds no interest for me.  Fortress Mode ain't all that.
« Last Edit: June 07, 2010, 06:19:51 pm by Footkerchief »
Logged

G-Flex

  • Bay Watcher
    • View Profile
Re: Note on some utilities
« Reply #127 on: June 07, 2010, 06:35:25 pm »

On the plus side, I see a positive trend in that Toady did open up a bit of the code (graphics/input) and accepted contributions from at least one person regarding it, and that seems to have been quite beneficial. I don't think opening up the source for DF as a whole is a viable solution or a good idea at all, but Toady seem to be willing to work with people more than we would have expected a few years ago, so that's nice, even if having a true "project team" remains out of the question.

I agree that it's a positive trend, although (as you probably know) it's not likely to extend to other parts of the game, e.g. UI.

How likely that is depends on Toady's sensibilities and concerns at the time, and those aren't necessarily constant. I find it likely that, had he been interviewed towards the beginning of the project, he wouldn't have foreseen him releasing any code at all for the project. This is still conjectural, and I'm not saying that we can expect him to do any more of this than he has (especially for touchier things, like the UI, or more interesting parts of the simulation), just that the trend is in that direction. If it's likely to happen at all, then in my opinion it's most likely to involve something very technical and not much related to the game's more interesting design elements, yet that is still very consequential: Say, pathfinding. I also don't necessarily think this is totally necessary to happen, I'm just identifying trends and issues here.

Of course, it also sounds like he wasn't 100% satisfied with the results of opening up the graphics code, but again, it's the first time he's done anything like that. I guess that's a good thing to keep in mind, though.

Quote
Yeah, I find the size of the project worrying -- it long ago passed the point where it could all fit in one person's head, and I'm not sure that the code documentation has kept up.  I suspect shorter dev cycles will help with that, though.

Documentation and project organization are two examples of something that I feel Toady probably hasn't had to muck around with much in the past, and therefore is something he might have to work on improving, but it's not like we're too aware of what's going on at his end.

On the other hand, while I'm identifying trends: The last release cycle saw a sort of beta-test (I use this term lightly, so no semantic arguments please) unlike what's been done before, and at least there's a proper bug-tracker now (although it's likely to be switched over for a better one).

Quote
Another alarming factor is the continuing shift toward simulation-oriented features: heavy procedural generation, complex formulas (especially in combat calculations), and small invisible mechanics (e.g. personality effects on abstract conversations).  All of these are difficult to directly observe, and it's hard to define correct output for them.

To be fair, these features were always necessary, and simply put off due to complexity. Considering the depth and scope required of the project, as well as Toady's style, highly-simulationist approaches to things are a foregone conclusion. Really, I'd say it's less about observing those things directly, and more about providing a framework for more complex things you can observe. Keep in mind that we're barely even starting to see the fruits of some of the more newly-implemented systems.

Quote
Essentially, they make it hard to identify bugs (not just for players!), and they represent lost opportunities to engage the player in game mechanics.  These features need UI.  Postponing that kind of UI for a massive v1 crunch is wishful thinking -- it raises the difficulty and drudgery of implementing UI by orders of magnitude, and meanwhile the game will become increasingly inscrutable and riddled with invisible bugs.

This is, to some degree, true. However, not all of these things should necessarily be displayed to the player. Of course this creates a situation where the player can't always figure out what's going wrong when something is going wrong, but the player should not be expected to be able to debug everything on his own; his purpose is more to find out when something isn't providing the results it should. Guessing about the reasons is fine, too, but in the end it's natural for that to be the job of the developer and anyone else who's allowed to do debugging work, not people just playing the game.
Logged
There are 2 types of people in the world: Those who understand hexadecimal, and those who don't.
Visit the #Bay12Games IRC channel on NewNet
== Human Renovation: My Deus Ex mod/fan patch (v1.30, updated 5/31/2012) ==

Footkerchief

  • Bay Watcher
  • The Juffo-Wup is strong in this place.
    • View Profile
Re: Note on some utilities
« Reply #128 on: June 07, 2010, 07:01:56 pm »

On the other hand, while I'm identifying trends: The last release cycle saw a sort of beta-test (I use this term lightly, so no semantic arguments please) unlike what's been done before, and at least there's a proper bug-tracker now (although it's likely to be switched over for a better one).

Haha, if we only get "beta tests" when the release is looking especially dire, I'd just as soon see that trend die.  But yeah, the bug tracker has (IMO) been massively helpful in making sense of the extant problems.

To be fair, these features were always necessary, and simply put off due to complexity. Considering the depth and scope required of the project, as well as Toady's style, highly-simulationist approaches to things are a foregone conclusion. Really, I'd say it's less about observing those things directly, and more about providing a framework for more complex things you can observe. Keep in mind that we're barely even starting to see the fruits of some of the more newly-implemented systems.

[...]

This is, to some degree, true. However, not all of these things should necessarily be displayed to the player.

Yeah, I like simulationism, and I agree that not every detail has to be presented directly.  I'm mostly concerned about the extreme cases where giving the player any information was clearly an afterthought. 

Of course this creates a situation where the player can't always figure out what's going wrong when something is going wrong, but the player should not be expected to be able to debug everything on his own; his purpose is more to find out when something isn't providing the results it should. Guessing about the reasons is fine, too, but in the end it's natural for that to be the job of the developer and anyone else who's allowed to do debugging work, not people just playing the game.

I agree that the player shouldn't be expected to debug things, but giving them the ability is important.  Unfortunately, bug-spotting is something that most players have to do sooner or later.  And some players enjoy peeking in on that stuff -- the people writing community stories love to include any subtle interactions they can find (e.g. grudges).
Logged

Sir Finkus

  • Bay Watcher
    • View Profile
Re: Note on some utilities
« Reply #129 on: June 07, 2010, 07:02:48 pm »

Some people are so ungrateful  ::)

It'll probably fade in to obscurity soon enough.

Diablous

  • Bay Watcher
  • [PREFSTRING:avatar's cuteness]
    • View Profile
Re: Note on some utilities
« Reply #130 on: June 07, 2010, 07:03:28 pm »

Some people are so ungrateful  ::)

It'll probably fade in to obscurity soon enough.

I've already forgotten about it. What are we talking about again?
Logged
Quote from: Solifuge
A catgirl, whom oft it would please
To dine on a pizza, with cheese,
Thought it was quite fine
To be partly feline,
Excepting the hairballs and fleas.

Sir Finkus

  • Bay Watcher
    • View Profile
Re: Note on some utilities
« Reply #131 on: June 07, 2010, 07:05:34 pm »

Some people are so ungrateful  ::)

It'll probably fade in to obscurity soon enough.

I've already forgotten about it. What are we talking about again?
Wait, were we talking about something?

Diablous

  • Bay Watcher
  • [PREFSTRING:avatar's cuteness]
    • View Profile
Re: Note on some utilities
« Reply #132 on: June 07, 2010, 07:06:37 pm »

Some people are so ungrateful  ::)

It'll probably fade in to obscurity soon enough.

I've already forgotten about it. What are we talking about again?
Wait, were we talking about something?

I don't remember. Oh well, back to chopping up elves.
Logged
Quote from: Solifuge
A catgirl, whom oft it would please
To dine on a pizza, with cheese,
Thought it was quite fine
To be partly feline,
Excepting the hairballs and fleas.

G-Flex

  • Bay Watcher
    • View Profile
Re: Note on some utilities
« Reply #133 on: June 07, 2010, 07:09:50 pm »

Haha, if we only get "beta tests" when the release is looking especially dire, I'd just as soon see that trend die.  But yeah, the bug tracker has (IMO) been massively helpful in making sense of the extant problems.

Right, I'm just saying that Toady opening up an in-progress release to anyway was probably pushing past his comfort levels, and it didn't blow up in his face totally, so that's nice.

I agree that the player shouldn't be expected to debug things, but giving them the ability is important.  Unfortunately, bug-spotting is something that most players have to do sooner or later.  And some players enjoy peeking in on that stuff -- the people writing community stories love to include any subtle interactions they can find (e.g. grudges).

Giving them the ability is nice when it's reasonable. Optional features for that (init settings, or what-have-you) to enable some sort of "debug mode" wouldn't necessarily be a bad idea, since we're all effectively testers anyway. Whether or not that would be worth it, I don't know. However, we do have arena mode and detailed combat reports now, which are extremely useful (hopefully at least some of the ridiculous testing I did will get read/considered at all) and a step in the right direction by a very nice amount. Combat reports are a good example of a noncontroversial way to help testing, since it's stuff the player rightly ought to know anyhow.
Logged
There are 2 types of people in the world: Those who understand hexadecimal, and those who don't.
Visit the #Bay12Games IRC channel on NewNet
== Human Renovation: My Deus Ex mod/fan patch (v1.30, updated 5/31/2012) ==

orbcontrolled

  • Bay Watcher
    • View Profile
Re: Note on some utilities
« Reply #134 on: June 07, 2010, 07:24:00 pm »

There is something that will give other projects a massive advantage over DF: They don't have to worry much about the underlying simulation. Material characteristics and interactions, realistic body structures, and practically everything that Toady spent the last year doing is not presented to the player in any significant way, and therefore might as well not exist.
Imagine how much of combat they could replace with a hidden HP meter, and a wounds screen that has a certain chance of removing a limb on a critical hit. Most people wouldn't notice the difference.

Not to mention they could hard-code all the improvements that Toady is trying to lovingly coax out of the simulation. Heck, hard-coding animal-husbandry alone would give them an excellent selling point. After all, you can't even milk cows in DF amirite?
Logged
Pages: 1 ... 7 8 [9] 10 11 ... 23