Quick Project Tools:Primary Language: Lua (Will use an SVN)
Primary Client Engine: Love?
Hosting: Personal Webserver (10Mbit Up on a quadcore. Can probably host everything and a master serverlist)
Map format: XML
Team Discussion: Ventrilo, Forums, Google Docs
Bugtracking: Mantis
I typically work with lua due to my impatience with compilers, but also because of how many more people it lets help out. I love how easily moddable it is, which is how I got introduced to it. An extra bonus is that if real programmers actually want to use C they can just make a library and we can link to it. Any code that is already isolated can be easily made into compiled code.
Lua itself is pretty slow, but for a turn based game it won't actually matter. I'll probably be using the Love engine to save some time as they bundle together all the standard API's anyways. Design docs, progress, ideas, will either end up on google docs or message boards, with the rapidly changing internal documents more likely being on google docs.
Here's how multiplayer works:1. A player hosts a server, chooses a map, settings, etc.
2. Every player, including the host, joins this server.
3. A player picks a slot and chooses their faction,password, settings, etc. Any player can play any number of factions if the host allows it.
4. Players play their turn at their leisure and when they are finished ordering their units they submit their turn from the server. Players can disconnect and reconnect without problems.
5.When a specified time is up or all players have completed their turns, the server calculates the next turn and sends out information specialized for each player so there's no unpacking or hacking the data to see stuff you shouldn't.
So this system has a lot of benefits:+Theoretically limitless amount of players on a server without taking forever.
+Players can play multiple sides and fill in for dropped players.
+Dropped players can be safely ignored.
+Players don't need to be present for 15 hours straight to play a strategy game.
+Can't hack client data to divine things you shouldn't.
+Very low resource usage and effort needed to host.
Main downside is that splitting up the data for each player is a bitch to me, but oh well. I especially like how a player who only has fifteen minutes a day can play while power gamers can as well by playing on a low time limit server, playing multiple factions, or multiple games.
How the I usually run dev teams:
I've been doing this for about ten years with teams under six people. Typically, standards for entrance are pretty low and I can almost always find something for someone to do. My main concern is that members are not ten years old. Being on Bay12 already does a good job of filtering out the type of people that I wouldn't want anyways. I realize that most people are here to have fun and maybe gain some experience and so I'm happy to teach and learn wherever I can. I enjoy discussion and debate and actually have a hard time getting feedback most of the time.
As this is a free project, I do not have formal deadlines and contributors are given a fairly large amount of freedom in what they want to work on. Especially at this stage in the project, it would be pretty hard for me not to find use for a random art asset or UI element that someone creates.
I tend to be a renaissance man able to help out in just about everything with the exception of creation of art assets, though I usually focus on coding/scripting as that's usually the rarest skill set.
How maps are made:I've already got the frameworks for maps down. Maps will be saved in a zip containing their graphic files and an XML file. The XML file itself is just for human readability and I personally just make the map data in notepad and then run it through a table converter. Though the ability to add units, buildings and other special features aren't in yet, that's only because they don't exist. Those will simply be handled with another field in the region file. It should be extremely easy for someone with absolutely no knowledge of scripting to create maps. This is important, because they do take a couple hours to make and it should save the core of the team from having to divert too much of their time to it.
World1['Name'] = "Holy Terra"
World1['Image'] = "gfx/maps/earth.jpg"
World1['Regions'] = {}
World1['Regions']['SAM'] = {}
World1['Regions']['SAM']['Name'] = "South America"
World1['Regions']['SAM']['Type'] = "Jungle"
World1['Regions']['SAM']['Coord'] = {727,565}
World1['Regions']['SAM']['Connections'] = { 'SEP', 'CAM', 'SAO', 'MAO'}
Haven't really thought of a good name for this yet.