Anything related to PR, release planning and any other non-technical idea how to move the project forward should be discussed here.
Here's a very rough draft. I'll definitely be re-drafting this, but I wanted to post what I have for feedback. I've definitely made some brash assumptions about what our development plan is, so feel free to correct/criticize as necessary:
We've reached an exciting point in OpenMW development. There are only a few remaining implementation tasks before OpenMW is feature complete. Our list of bugs is still quite long, and should grow quite a bit more before it is quelled to a reasonable level for release, but we're definitely getting there.
The project's development plan is as follows: finish implementing all remaining features, and then focus on bug fixes and optimization. Since there are a very small number of remaining unimplemented features, one good development push should get us where we need to be. Once OpenMW is feature complete, we plan to announce that we are entering a Beta phase of development. The term "beta" is used very arbitrarily in development, but for us, it will mark our last phase of development before our "1.0" release.
One big task which remains to be completed for OpenMW is optimization. Our framerate is currently not where it should be for a release. One item we are waiting on to tackle optimization is the release of Ogre 2.0. Our developer Scrawl wrote an excellent piece (http://scrawl.bplaced.net/blog/?p=34) addressing this issue. Any support that can be given to Ogre to speed their 2.0 release will greatly speed OpenMW's optimization efforts.
It's exciting to note that even now, in our pre-Beta phase, Morrowind, Tribunal, and Bloodmoon are all completable with the OpenMW engine. We hope people have been playing and enjoying Morrowind using our engine!
The remaining unimplemented features can be found here: http://bugs.openmw.org/projects/openmw/ ... &group_by=
I've summarized the list as it was at the time of this writing below, but note that issues may be added or removed from this list at any time. Also, that link doesn't account for versions added after 0.34, so check the filters if you are reading this in the future.
Handle AvoidNode - http://bugs.openmw.org/issues/1724
Some NIF meshes have an AvoideNode. We assume this is for AI, to tell them to avoid this area. The tracker issue indicates that this could possibly be turned into a btGhostObject and the AI could be notified on collision.
NPC lookAt controller - http://bugs.openmw.org/issues/1720
Behavior for NPCs to turn their head towards nearby actors.
Leveled list script functions - http://bugs.openmw.org/issues/1546
Script functions to add and remove items from leveled lists.
NPC "Face" function - http://bugs.openmw.org/issues/1424
Script function to make an NPC face a certain direction.
AI: Resurface to breathe - http://bugs.openmw.org/issues/1374
AI handling resurfacing to breath, especially while in combat. Some research is needed to determine vanilla behavior, see the issue description.
NSIS Error launching installer - http://bugs.openmw.org/issues/1344
I honestly don't understand what this is.
Drowning while knocked out - http://bugs.openmw.org/issues/1228
Need to implement NPCs drowing when they are knocked unconcious and fall with their head below water level.
Saved Game: Include scene-only data - http://bugs.openmw.org/issues/1225
Need to store data in the scene that is dropped when the cells are unloaded.
Saved Game: Handle movement of objects between cells - http://bugs.openmw.org/issues/1176
Has to do with loading/unloading mods, but I am not exactly sure what all the technical details of this issue are.
Autodetect encoding of Morrowind installation files - http://bugs.openmw.org/issues/1161
AI fast-forward - http://bugs.openmw.org/issues/1125
When time passes, for example when waiting, AI should fast-forward through its AI packages.
AI Combat: flee - http://bugs.openmw.org/issues/1118
AI should run away, based on its Flee rating and other factors.
NPC Door AI - http://bugs.openmw.org/issues/1113
Mostly implemented, but missing from some AI packages, and missing AI to move away from swinging doors.
Voiced Dialogue - http://bugs.openmw.org/issues/1082
Some NPC voice events remain to be implemented.
Handle NIF interpolation type (XYZ_ROTATION_KEY) - http://bugs.openmw.org/issues/1067
Some sort of unimplemented animation feature, I'm not sure what this is.
NiStencilProperty - http://bugs.openmw.org/issues/1057
This is a rendering feature that we need to implement that is blocked by this Ogre issue: https://ogre3d.atlassian.net/browse/OGRE-24
Addition of remaining equipping hotkeys - http://bugs.openmw.org/issues/1024
Hotkeys for equipping previous and next weapon and spells.
Fading for doors and Teleport commands - http://bugs.openmw.org/issues/824
The game should fade to black between cell changes.
Rename "profile" to "content list" - http://bugs.openmw.org/issues/810
A tweak for the launcher.
Insert records that were added with newer versions of MW - http://bugs.openmw.org/issues/741
Handling of records added by addons and/or newer versions of Morrowind.
Water effects - http://bugs.openmw.org/issues/452
Some extra graphical effects we are missing, such as splashes and raindrops.
More batching - http://bugs.openmw.org/issues/147
This is an optimization task for rendering.
Reading through that list I saw that there is no mention of the missing NiShadeProperty that is used by e.g. the Dark Brotherhood Armor. Apparently we don't have a bug report for that.
Some pirates achieved immortality by great deeds of cruelty or derring-do. Some achieved immortality by amassing great wealth. But the captain had long ago decided that he would, on the whole, prefer to achieve immortality by not dying
Any "unhandled-NI-something" messages should be reported on the tracker as a feature issue (after checking it isn't there already). The issue description should contain specifics on where this message was found (one of the base esms or the name of a mod).
Hi, sorry about rushing in with an opinion without contributing to development, but in my opinion a project of OpenMW's size will always have bugs, and pursuing a bug-free 1.0 is a recipe for staying in beta or alpha forever.
You're definitely correct. And we did discuss this, albeit a very long time ago, so it's definitely valuable to discuss this again.tormeh wrote:Hi, sorry about rushing in with an opinion without contributing to development, but in my opinion a project of OpenMW's size will always have bugs, and pursuing a bug-free 1.0 is a recipe for staying in beta or alpha forever.
I think the decision we came to a long time ago is we will certainly release with bugs, but we want to put in a period of due diligence testing for and fixing bugs before we release. In the industry, you test as hard as you can right before release, and prioritize bugs. Once you've fixed all the crashes and progress blockers, you fix all the super ugly and nasty bugs, and then fix the less important ones, and eventually when all you have left are a pile of inconsequential bugs, you call it good and release. We'll probably do something like that, but it's definitely up to the team!
If the team is having problems with motivation and reqruitment I would recommend just pushing every bug that's not a showstopper to OpenMW-Future and then rather work on the exciting stuff and get 1.0 out the door. I can see that the amount of open issues on the bug tracker is growing, and that's no fun. My guess is more people would be interested in working on OpenMW to extend it beyond vanilla than are interested in a reconstruction. That said, I have no experience about software development on a more-than-two-people scale.