Just my 2 cents about important functionalities:
- of course the priority would be to have the core functions (collisions, joints, etc) working in every (most?) situations. Yeah, now it's alpha and introducing new features break things here and there but every n versions there should be a revision with those base things ok (maybe tested by us to confirm everything?)
- personally i'd like to see some streaming functionalities (if not present, i'm not really that deep in using the engine). In large scenes i'd like to split the enviroment in smaller sections and load them when the player visit them (like in an open world game). This could be useful so that the developer can cull out part of the scene at the begin without having lots of things in the physics engine and having the culling done entirely inside of this last one. Also, because i've potentially quite a large scene i divided the world in small sections in my game. Every section (like an octree cube) has an offset value from the origin and of course limited set of float numbers in it (ex. i've sectors large 1000 in each side, inside that objects x, y, z coordinates of the positions are between 0 1000 or -500 500, the sector at the origin has offset 0,0,0 the next one you add the side length, etc). This way my render engine doesn't have to manage problems with high floating point values. Don't know if there are the same problems with the physics engine. I read this in a feature proposal for Ogre3D and decided to use the idea in my software. If you want a large set of collision data you can download some here
http://kayin.pyoko.org/?p=2218 (there's a link at the end of the article) It's the collision data from a game called Dark Souls, a third person RPG with a large world all connected together. The files are in OBJ format so it should be easy to convert it. The data is the collision one so it should already prepared in a good way (no poly soup of bad vertices). In a world large like that i think they stream the collision data somehow, isn't it? Each file is a level of the game but ingame they are joined together when you go around. Take it more like a stress test data

In game they walk around, have ragdolls, smash things with pieces going around, round balls rolling on ramps and throw things like arrows around so it's not only the walkable are
- about cloth i think it's not important to have very detailed surfaces (that probably need some GPU simulation, maybe an idea of a future OpenCL implementation) but "normal" features for games. A patch (maybe not necessarily a rectangle) with some anchor points, stiffness, wind simulation, collision and possibly (but not so important) breaking limits. Typical examples: flags (realtime and also, if possible, just simulating it offline for some second and record the frames of the simulation. Like simulating a flag with some wind and then just render the flag with the recorded data overtime without having newton simulating it during the game. Could be useful for lower end machines), patches anchored to a animated character (scarf, short cloak, long beards, stripes that simulate fur that move with some stifness on an animal monster when moves) or rigid body (a wood cart with a cloth covering it, a rectangle set of nodes inside the cloth is anchored to the borders of the cart so when you move the cart the cloth dropping down just wobble a little) or static enviroment (spider webs that when the character touches them in a cave they stretch than break. don't know if grass can be simulated with cloth simulations). Another cool thing could be burning simulation: you decide when a fire starts in the grid of the cloth and the fire spreads through the nodes and break them after a certain time. The render is notified when a node starts burn and when break so that it will render the fire correctly

Probably it can be done by the game developer but could be funny to have it somewhere in the future in the physics engine

- about softbodies i think that it's not something used much in games other than maybe physics puzzle ones. when i see some soft thing probably it's an effect of ragdoll (in Demon's Souls you have slugs and another serpent like creature that when die the corpse wobble around like if it was soft) or something preanimated (like a piece of a enemy that moves like it is soft but with not interaction with the physics). Maybe if you have antennaes in a character and you want that they wobble when it turns around you need soft body simulations isn't it?
- fluid simulation: i agree that complex simulations are not feasible with complex enviroments like the ones seen in most games. Maybe they will do something in confined places for puzzle games but fully fluid simulation i think is both not simple nor useful, just cool to see. Maybe a simulation like in Portal 2 where you just show some water shot from here to there with collision is enough for some gameplay or special effect (fountain, waterfall?). Are they using metaballs in Portal 2?
- particle simulation: i'd like some more of this. Yeah, it's not so difficult to do a particle simulation in game (well maybe optimizing it a little more) but having it interact with the enviroment is another thing

i mean, simulating for example some sparks bouncing around or some dust that whirls or moves around from a wind force and touches things in the meanwhile. i think a simulation of < 500 particles is more than enough for most of the situations, would it be possible without the GPU? Just having every particle systen colliding with static and dynamic objects but not between different particle systems.
- wind simulation: the points explained before but implemented in a general way so that potentially i can set a tornado force in this place in the level then if i have a box that is placed there it whirls, or a particle system (smoke) or a flag. Of course with possible filtering (saying "not apply wind of this object but for this yes). Having a simulation of various types of wind, from directional to circular (and others if there is literature).
- fracture simulation: it's cool but somehow one can now do in other ways (by breaking joints in complex objects, by replacing an object with small pieces when smashed). But if working i'd implement something like that

Just some ideas for the future. Of course the first one and maybe second can be important, everything else it's pushing the level for cool things to show in game
