I'll just respond to what I've at least have limited experience with.
Where and how to discuss things ? Forum or chat ?
Chat is bad for a team. This is unfortunate as people are graviated to chat due to it's instant gratification. The problem is that discussions and decisions get lost when people leave the chat room. Yes it is possilbe to keep chat logs but they are hard to read if you didn't participate in the conversation. IMO each tem member should think about decisions and idea they come up with. Chat leands itself to short, one line, incomplete thoughts, which is bad for the project. Also, ideas get lost as the topic changes and people try to keep up with the conversation. A forum is less bad but not as good as a mailing list. Why? With a mailing list each member gets a copy of each email and has the oppurintunity to respond to each. In a forum memebers are required to take the effort to check the forums for new messages which leads to uneven particapation. It's important to include everybody because good ideas come from many places, not just the vocal few that think they have all the good ideas.
How the participants can influence team decisions ?
You discuss, then vote.
How to divide tasks between the team, should there be team chiefs or art and coding bosses?
Split the project into tasks and vote people into positions of responsibility. Each position should either have terms or some way to be impeached if they proove to be a bad canidate.
Preference for technology, engine, language?
Work this out during the planning stages.
Style of game, action, strategy, adventure, RPG?
Who ever starts the project needs some vague vision of what will be made.
Format of game, isometric, 2d top, 2d side, 3d?
Once again, part of the initial vision.
Start from where, coding or art?
Start with a developed plan and vision, commonly called a design document. Then divy up tasks and work and each team works morstly on their part.
Doing small steps, updating new code or art every week ?
Or doing big steps, come out with a full editor and then start doing scripts and art?
In a volunteer project it is probably more import to stick to small steps so you can monitor and make sure nothing spirals way out of control. Cleaning up a big mess is not fun and you don't want people to get frustrated and to leave the project. If a project needs custom tools then tool smithing is important. The question then becomes can a volunteer team take on a project so big it needs custom tools?