Author Topic: Bug Fixes vs Features - Split from - A few Wings of Dawn 2 requests  (Read 12347 times)

0 Members and 1 Guest are viewing this topic.

Offline General Battuta

  • Poe's Law In Action
  • 214
  • i wonder when my postcount will exceed my iq
Bug Fixes vs Features - Split from - A few Wings of Dawn 2 requests
It is worth noting that you don't need to waste an entire persistent variable on a 0 or 1 flag bit.  Thanks to the bitwise sexps, you can store up to 32 flags in a single variable. :)

Axem knows all about how to bitwise yo

e: Honestly, while I completely respect the triage on these feature requests, I think it's getting a bit dangerous that many of the SCP coders haven't stayed in touch with some of the more recent, more ambitious projects. Features have been implemented in the past 'just' for TBP or Diaspora or whatever, and while it's true that these projects have dedicated coders to make it work, I think it would be seductively easy to misapprehend exactly how significant of an achievement WoD represents -- and, from there, decide that 'just for WoD2' is somehow less significant.

And I know that the respect and appreciation of some of the oldest SCP architects would feel really valuable to the people who are pushing that engine.
« Last Edit: April 23, 2012, 11:38:44 pm by karajorma »

 

Offline Goober5000

  • HLP Loremaster
  • Moderator
  • 214
    • Goober5000 Productions
Re: Re: A few Wings of Dawn 2 requests
(separate post since this may warrant splitting the thread)

Honestly, while I completely respect the triage on these feature requests, I think it's getting a bit dangerous that many of the SCP coders haven't stayed in touch with some of the more recent, more ambitious projects. Features have been implemented in the past 'just' for TBP or Diaspora or whatever, and while it's true that these projects have dedicated coders to make it work, I think it would be seductively easy to misapprehend exactly how significant of an achievement WoD represents -- and, from there, decide that 'just for WoD2' is somehow less significant.

And I know that the respect and appreciation of some of the oldest SCP architects would feel really valuable to the people who are pushing that engine.

That's a great perspective, and I know (from what others say, even if I haven't played it myself) that campaigns like WoD and Diaspora are really pushing the envelope of what can be done with SCP.  And it is definitely true that both SCP and mods benefit from awesome features.  There's plenty of honor to go around, and it is mutually rewarding for both teams.

But I'm looking at this from the opposite perspective.  I'm concerned that SCP is currently in a feature bubble that is in dire need of deflation.  I remember back around the time of SCP 3.5, people were tossing features into the codebase left and right, often with the specific and admitted objective of getting the code written whether it worked 100% or not.  Eventually the codebase got so buggy and disorganized that people were trying to write features on top of other features, and changing stuff around regardless of whether it affected anything else.  The result was a buggy, bloated, unstable mess.  It took a lengthy, concerted effort by Taylor to squash all the bugs and re-engineer everything to be more stable, robust, and extensible.

Lots of natural processes go through the boom/bust cycle.  You have the economic expand and contract cycle, the predator/prey ecological cycle, the cycle of growth, overgrowth, fire, and seedlings in forests, etc.  It is useful for development to follow the same cycle: you add a bunch of cool features for a season, and then for a season you take a step back and make sure things are engineered correctly, make sure features aren't conflicting with other features, and refactor the things that it makes sense to refactor.

For quite some time now, bugfixing has gotten a lot less attention than it deserves.  Coders are usually very concerned about making sure their feature is implemented, but how often do they trawl through Mantis and look for bugs that they know how to fix, or that they might be able to fix given a little bit of programmer growth?

I want to make clear that this post isn't directed specifically at WoD, or any poster here in particular.  It's generally applicable to everybody in SCP, myself included.  Furthermore, there are two very positive developments that distinguish today's development from the development of yore.  First of all, coders frequently post "Code review" threads to get multiple sets of eyes on a given patch, with the result that the patch is better designed and better debugged than it would be with a single person working on it.  Second of all, coders tend to stick around nowadays; we don't have people dumping 80%-completed features into the code tree and then disappearing for six months, without explaining their feature or providing debugging support for it.  This happened a lot in previous years; I can think of three different coders who did this more than once.

But there are a lot of risks we're dealing with nowadays.  Larger features are more likely to contain bugs than smaller ones.  Complicated features are more likely to contain bugs than simple ones.  Special-use features are used less frequently, have fewer pairs of eyes looking at them, and are therefore less likely to have their bugs detected than frequent-use features.

And many parts of the code need to be refactored -- from relatively simple cases like the asteroid code, to relatively complicated cases like subsystem rotation.  And considering that refactoring is usually a long, difficult, and thankless job, it's not surprising that coders don't want to do it, or that coders don't do it very often.  Not to pick on Valathil, but look at the reception he gets whenever he posts a crazy graphical test build in the public forum -- even a build based on code that isn't even in trunk.  Compare that with the reception karajorma got for his brilliant re-engineering of the multiplayer sexp system.  Few coders know about it; fewer still use it.  And yet it's been instrumental in bringing order to the chaos that is multiplayer gameplay support.

We need to foster a culture that makes the code better, not just fuller-featured.  Better includes fewer bugs, increased stability, better error messages, better documentation, and more elegant design.  We need to have a system that satisfies the following three goals:

1) People who are less inclined to fix bugs should be more inclined to fix them
2) People who lack the knowledge or experience to fix bugs should be able to gain it
3) People who have historically been inclined to fix bugs AND have the appropriate knowledge to do so, should not be relied on to the point of getting burned out or having no time to work on stuff that they like

And I'm not sure how best to do that on a project like SCP, where people aren't getting paid to do the work and which tends to shun explicit organization in favor of self-motivation.


TLDR version: fix bugs, y'all.

 

Offline General Battuta

  • Poe's Law In Action
  • 214
  • i wonder when my postcount will exceed my iq
Re: Re: A few Wings of Dawn 2 requests
I think that's a really good post, Goob, and I very much agree with the need for bugfixing and stability - BP has been hit hard by the 3.6.14 RC candidates and nobody on the team has put in the time to track down the exact problem.

At the same time, I just want to highlight two practical points:

1) The vast majority of the community's exciting, sexy, user-enticing new content generation is done by a small handful of people, all of whom generally need to make at least a couple feature requests in order to keep their projects ticking along.

2) A lot of these people wish that older members would play their campaigns, because the approval and respect of those older members is valuable to them. This isn't always practical (I've hardly played a new campaign since I got involved in development), but there have been a few cases where coders didn't understand why new features were valuable because they didn't have context to place them in.

 

Offline karajorma

  • King Louie - Jungle VIP
  • Administrator
  • 214
    • Karajorma's Freespace FAQ
Re: Bug Fixes vs Features - Split from - A few Wings of Dawn 2 requests
And many parts of the code need to be refactored -- from relatively simple cases like the asteroid code, to relatively complicated cases like subsystem rotation.  And considering that refactoring is usually a long, difficult, and thankless job, it's not surprising that coders don't want to do it, or that coders don't do it very often.  Not to pick on Valathil, but look at the reception he gets whenever he posts a crazy graphical test build in the public forum -- even a build based on code that isn't even in trunk.  Compare that with the reception karajorma got for his brilliant re-engineering of the multiplayer sexp system.  Few coders know about it; fewer still use it.  And yet it's been instrumental in bringing order to the chaos that is multiplayer gameplay support.

Indeed, that annoys me greatly since I went to the trouble of making the system easy enough that any coder should be able to use it and then went to the further trouble of posting an explanation on how to use it. But with the exception of CommanderDJ I don't think anyone else ever has and it usually ends up being me who has to fix broken SEXPs.

Fortunately, I'm not the sort of person to give up doing stuff like that just cause I'm not getting a ticker tape parade for doing it. :)

But yeah, I agree with the main sentiment that we need more people fixing bugs.
Karajorma's Freespace FAQ. It's almost like asking me yourself.

[ Diaspora ] - [ Seeds Of Rebellion ] - [ Mind Games ]

 

Offline Swifty

  • 210
  • I reject your fantasy & substitute my own
Re: Bug Fixes vs Features - Split from - A few Wings of Dawn 2 requests
Quote
We need to foster a culture that makes the code better, not just fuller-featured.  Better includes fewer bugs, increased stability, better error messages, better documentation, and more elegant design.  We need to have a system that satisfies the following three goals:

Do performance optimizations count? I've been mostly focusing on those instead of features because I'd rather not have the engine running like ass if I implemented a pet feature in the game.

 

Offline headdie

  • i don't use punctuation lol
  • 212
  • Lawful Neutral with a Chaotic outook
    • Skype
    • Twitter
    • Headdie on Deviant Art
Re: Bug Fixes vs Features - Split from - A few Wings of Dawn 2 requests
Quote
We need to foster a culture that makes the code better, not just fuller-featured.  Better includes fewer bugs, increased stability, better error messages, better documentation, and more elegant design.  We need to have a system that satisfies the following three goals:

Do performance optimizations count? I've been mostly focusing on those instead of features because I'd rather not have the engine running like ass if I implemented a pet feature in the game.

as a non coder :yes:
Minister of Interstellar Affairs Sol Union - Retired
quote General Battuta - "FRED is canon!"
Contact me at [email protected]
My Release Thread, Old Release Thread, Celestial Objects Thread, My rubbish attempts at art

 

Offline karajorma

  • King Louie - Jungle VIP
  • Administrator
  • 214
    • Karajorma's Freespace FAQ
Re: Bug Fixes vs Features - Split from - A few Wings of Dawn 2 requests
Do performance optimizations count? I've been mostly focusing on those instead of features because I'd rather not have the engine running like ass if I implemented a pet feature in the game.

Absolutely. In fact I'd say we've had an even harder time getting people to make performance optimizations than we have had trying to get them to fix bugs. As far as I remember, you're the only person other than Taylor and myself to have run profiling builds and committed fixes based on that data. And I never did it in a systematic way. I just grabbed a couple of low hanging fruit type bugs.
Karajorma's Freespace FAQ. It's almost like asking me yourself.

[ Diaspora ] - [ Seeds Of Rebellion ] - [ Mind Games ]

 

Offline Nuke

  • Ka-Boom!
  • 212
  • Mutants Worship Me
Re: Bug Fixes vs Features - Split from - A few Wings of Dawn 2 requests
i kinda get the feeling that there is so much feature creep in the engine right now. i remember when you couldnt get a feature implemented if the entire community was screaming for it and several mod projects demanding it. nowadays it seems all you got to do is post a thread about an idea you had, and provided the idea was good enough, had enough people that wanted it, and the coders thought it was a good idea, you get a build a week later. thats kinda why i hopped on to the scripting system early on because i realized it would have the potential to implement some of the features the coders didnt really have the time for. even after we had scripting i noticed a lot of stuff that you can do with scripting was being implemented engine level. it was a major frustration for me, after spending time working with and even improving scripting by adding features to the system. seems like only now its starting to really pick up.

i kinda think features need to be as broad and far reaching as possible to get the most out of them. im not a big fan of the mod (or sf universe) specific feature, that can only be used in very specific cases. but i eventually got to a point where as a modder i couldn't keep up with new features fast enough. so yea im really thinking that the way we code features really needs to change. freespace by its nature is very easy to mod. and as a result it has brought in a lot of modders that have less diverse skill sets, as compared to other games that require some degree of code-fu to get anything done. this explains the slow uptake of scripting by the community, and i think this is another thing that needs to change. modders need to get their hands dirty and try out new skills, like lua or advanced sexps, or even c/++ for work in the engine.
I can no longer sit back and allow communist infiltration, communist indoctrination, communist subversion, and the international communist conspiracy to sap and impurify all of our precious bodily fluids.

Nuke's Scripting SVN

 

Offline Echelon9

  • 210
Re: Re: A few Wings of Dawn 2 requests
I think that's a really good post, Goob, and I very much agree with the need for bugfixing and stability - BP has been hit hard by the 3.6.14 RC candidates and nobody on the team has put in the time to track down the exact problem.

Battuta, would you PM me on those issues?

 

Offline General Battuta

  • Poe's Law In Action
  • 214
  • i wonder when my postcount will exceed my iq
Re: Bug Fixes vs Features - Split from - A few Wings of Dawn 2 requests
Nuke, the new AI developed for Diaspora and BP has applications in every mod. Features like tactical jumps and SSMs are broadly applicable. Capship countermeasures are useful wherever there's a capship.

I think you should play some recently released content before you speak to decisions that could handicap mods in production.

 

Offline karajorma

  • King Louie - Jungle VIP
  • Administrator
  • 214
    • Karajorma's Freespace FAQ
Re: Bug Fixes vs Features - Split from - A few Wings of Dawn 2 requests
Exactly. Although I'd like to see more usage of the Hosted Collaboration forum when dealing with features that mods want so that we can make sure features are useful to a broader range of mods rather than adding a feature Diaspora wants and then having to have BP change it to add the stuff they want from it, etc.

And I'm not saying this from the point of view of someone who has always done it. Given that we have nearly half the SCP on the Diaspora team we're more guilty than anyone of not doing this.
Karajorma's Freespace FAQ. It's almost like asking me yourself.

[ Diaspora ] - [ Seeds Of Rebellion ] - [ Mind Games ]

 

Offline Nuke

  • Ka-Boom!
  • 212
  • Mutants Worship Me
Re: Bug Fixes vs Features - Split from - A few Wings of Dawn 2 requests
Nuke, the new AI developed for Diaspora and BP has applications in every mod. Features like tactical jumps and SSMs are broadly applicable. Capship countermeasures are useful wherever there's a capship.

I think you should play some recently released content before you speak to decisions that could handicap mods in production.

yea but those ARE examples of broad features. i was actually thinking of older features which have specific launcher flags :D

i am far passed my modding prime. im not really up to snuff on the latest and greatest offerings from current top tier mods. really those opinions were formed years ago, not by anything current.
« Last Edit: April 24, 2012, 08:59:46 pm by Nuke »
I can no longer sit back and allow communist infiltration, communist indoctrination, communist subversion, and the international communist conspiracy to sap and impurify all of our precious bodily fluids.

Nuke's Scripting SVN

 

Offline General Battuta

  • Poe's Law In Action
  • 214
  • i wonder when my postcount will exceed my iq
Re: Bug Fixes vs Features - Split from - A few Wings of Dawn 2 requests
Aren't most of those gone from the engine? Stuff like -tbp for instance?

 

Offline Nuke

  • Ka-Boom!
  • 212
  • Mutants Worship Me
Re: Bug Fixes vs Features - Split from - A few Wings of Dawn 2 requests
like i said im not really up to snuff with the state of things. im not really an active modder either. electronics projects have taken over my spare time (though i have done some freespace <-> arduino interfacing demonstrations if anyone is interested in building a simulator). i never functioned well in a mod team, and the workload is much bigger than it used to be. so the days of the one man mod are pretty much over.
I can no longer sit back and allow communist infiltration, communist indoctrination, communist subversion, and the international communist conspiracy to sap and impurify all of our precious bodily fluids.

Nuke's Scripting SVN

 

Offline General Battuta

  • Poe's Law In Action
  • 214
  • i wonder when my postcount will exceed my iq
Re: Bug Fixes vs Features - Split from - A few Wings of Dawn 2 requests
like i said im not really up to snuff with the state of things. im not really an active modder either. i never functioned well in a mod team, and the workload is much bigger than it used to be. so the days of the one man mod are pretty much over.

No, they aren't. The single biggest, most ambitious total conversion completed to date (Wings of Dawn) is a very recent release and done entirely by one man.

e: Vassago's Dirge and JAD 2.22, both incredibly technically ambitious, were done by one man. Blue Planet the first was done by one man

Nearly everything of significance outside Diaspora and WiH has been done by one man

 

Offline Swifty

  • 210
  • I reject your fantasy & substitute my own
Re: Bug Fixes vs Features - Split from - A few Wings of Dawn 2 requests
i kinda get the feeling that there is so much feature creep in the engine right now. i remember when you couldnt get a feature implemented if the entire community was screaming for it and several mod projects demanding it. nowadays it seems all you got to do is post a thread about an idea you had, and provided the idea was good enough, had enough people that wanted it, and the coders thought it was a good idea, you get a build a week later. thats kinda why i hopped on to the scripting system early on because i realized it would have the potential to implement some of the features the coders didnt really have the time for. even after we had scripting i noticed a lot of stuff that you can do with scripting was being implemented engine level. it was a major frustration for me, after spending time working with and even improving scripting by adding features to the system. seems like only now its starting to really pick up.

i kinda think features need to be as broad and far reaching as possible to get the most out of them. im not a big fan of the mod (or sf universe) specific feature, that can only be used in very specific cases. but i eventually got to a point where as a modder i couldn't keep up with new features fast enough. so yea im really thinking that the way we code features really needs to change. freespace by its nature is very easy to mod. and as a result it has brought in a lot of modders that have less diverse skill sets, as compared to other games that require some degree of code-fu to get anything done. this explains the slow uptake of scripting by the community, and i think this is another thing that needs to change. modders need to get their hands dirty and try out new skills, like lua or advanced sexps, or even c/++ for work in the engine.

I agree with this sentiment but I feel as though the mod/universe specific feature problem hasn't been really been a huge issue as of late. I suspect the only thing the Diaspora team has been guilty of is the inclusion of DRADIS mode radar but that so far has been treated like any other HUD gauge since I finished the HUD rewrite. Thing is that Freespace has been hardcoded from the outset and most features requests has been asking for simply more control over these features. A lot of features have been written with a data driven philosophy in mind with plenty of broad applicability even if the requester has a specific application in mind.

And yes, launcher flags should go to hell. Features should be granularly controlled and flexible. A fail example of this is the JAVELIN weapon flag. Why not have coded it to be something like "Subsystem Exclude List" or "Subsystem Include List" while having an option for whether it can lock while being occluded or not? It's really that simple to break it down.

 

Offline Spoon

  • 212
  • ヾ(´︶`♡)ノ
Re: Bug Fixes vs Features - Split from - A few Wings of Dawn 2 requests
Quote from: nuke
i kinda think features need to be as broad and far reaching as possible to get the most out of them. im not a big fan of the mod (or sf universe) specific feature
I kinda think you need to stop talking. I'd hate for actual coders to be even remotely influenced by this train of thought.
This is what you sound like to me "I don't actually play or mod anything, but I think it's better for all those mods that are in production and reliant on the implentation of certain features to be completely stalled because I have the vague impression that the code is being 'inflated' by all these new things."
If you are not actually going to participate in a meaningful way in the mod scene, don't go and try to backseat code or backseat moderate on what you think the SCP should be doing,
kthx
Urutorahappī!!

[02:42] <@Axem> spoon somethings wrong
[02:42] <@Axem> critically wrong
[02:42] <@Axem> im happy with these missions now
[02:44] <@Axem> well
[02:44] <@Axem> with 2 of them

 

Offline General Battuta

  • Poe's Law In Action
  • 214
  • i wonder when my postcount will exceed my iq
Re: Bug Fixes vs Features - Split from - A few Wings of Dawn 2 requests
It's like Nuke exists in a tangent universe where BWO and Inferno and Scroll actually came out, and the mod scene wasn't instead completely dominated by one-man projects (and Diaspora, and TBP I guess) while most of the team-based mods rotted away.

 

Offline Nuke

  • Ka-Boom!
  • 212
  • Mutants Worship Me
Re: Bug Fixes vs Features - Split from - A few Wings of Dawn 2 requests
like i said im not really up to snuff with the state of things. im not really an active modder either. i never functioned well in a mod team, and the workload is much bigger than it used to be. so the days of the one man mod are pretty much over.

No, they aren't. The single biggest, most ambitious total conversion completed to date (Wings of Dawn) is a very recent release and done entirely by one man.

e: Vassago's Dirge and JAD 2.22, both incredibly technically ambitious, were done by one man. Blue Planet the first was done by one man

Nearly everything of significance outside Diaspora and WiH has been done by one man

well for me they are. i created so much material early on before scp and htl came into play. bringing that into the current era has sapped most of my enthusiasm for modding.
I can no longer sit back and allow communist infiltration, communist indoctrination, communist subversion, and the international communist conspiracy to sap and impurify all of our precious bodily fluids.

Nuke's Scripting SVN

 

Offline Iss Mneur

  • 210
  • TODO:
Re: Bug Fixes vs Features - Split from - A few Wings of Dawn 2 requests
Aren't most of those gone from the engine? Stuff like -tbp for instance?
Indeed they are.  Nuke is stuck about 2 years ago it seems.

The culture of the SCP team has changed (for the better I think) to one that is much less mod specific focused, which was what actually sparked this split from its original thread in HPC.

If you are not actually going to participate in a meaningful way in the mod scene, don't go and try to backseat code or backseat moderate on what you think the SCP should be doing,
kthx
Careful Spoon.  This is a public forum and Nuke is entitled to his opinion.  He is also not a member of HPC so he doesn't know that this split was actually a result of a mod maker objecting to his exact position by a SCP member.
"I love deadlines. I like the whooshing sound they make as they fly by." -Douglas Adams
wxLauncher 0.9.4 public beta (now with no config file editing for FRED) | wxLauncher 2.0 Request for Comments