Community Project Mark 562

Ok, I can’t see this working if we aim at making it accessible to every level of ability from the outset. So:

  1. We need to agree that we’re not aiming to educate the total new Java programmers.
  2. The project needs to be big enough to support a bunch of reasonably competent developers
  3. Most of the ideas are falling in the 2D camp, probably for good reason that it sounds easier. Let’s go with traditional model/view split so we can change it later on. I’m a little worried something 2D isn’t going to excite the world unless the pixel art is top notch.
  4. Multiplayer/Network/Interweb integration of some sort seems to be a must to make it interesting to the current world.
  5. There have been lots of ideas for games though there do seem to be some general categories - Space Trading, RPG (be it Zelda, modular, etc), CloneAClassic.

I’ll open votes on these points on Monday (and anything else anyone comes up with over the weekend). After we have some direction we can start fleshing out the game and go from there (including getting people signed up to be involved where and when they can).

Finally, if anyone else wants to push this along that fine too. However, I’m happy to keep on trying to organize the effort.

Kev

Hi

I’d be interested too. Should be good to see how it works out. We need to consider collaborative tools like wiki, bugzilla, source control etc too. We may not need many, but it needs considering at some point, preferably early on, I know what a pain it can be to change mid project.
I guess those are problems for the project manager Kev to sort out :wink:

Endolf

A game does not have to be either 2D or 3D, it can have alot of both. Going back to the example of a space turn based strateg game ala Master of Orion. The basic planet building interfaces and diplomatic interfaces could be 2D. Ship models, ship building and combat could be state of the art 3D (or should be, rather). So, programmers of varying skillsets could be very useful.

Still, a visually stunning game makes a stunning first impression, but an extraordinary immersive games makes a lasting expression. And good programmers aren’t necessarily going to achieve that. You need someone with a different skillset and mindset. so “newbie java programmers” aren’t necessarily bad “game designers”.

–Just trying to avoid us seeing only black and/or white.

Some of the biggest things that kill a community project are lack of direction(ie specification), lack of leadership and lack of deadlines.

So while this is a community project and everyone can have their say I think that there should be a deadline set for each decision and there should be a lead who publicises the final decisions. Also if there is a standoff on something then the lead has the power to make the decision. The community also has to accept these decisions without bailing because their idea was not picked. I think the choice for the lead is obvious: Kevglass. If he is willing to take the mantle.

As for specs, nothing large is needed. Just take a page out of the scrum book and create a backlog of items that need work. Each item has a brief 1 or 2 sentence description and a priority. The lead can list the most important items that need doing and people can pick their items.

As for deadlines, you don’t need to set a deadline for each person, but they will set their own by saying “I can have that ready in 2 weeks” or whatever and stick to the schedule.

Good luck.

Unfortunately anything that’s 2D doesn’t excite people but Braid made it, when we vote we should first vote for the genre like puzzle, platform, rpg, etc…

I think for a reaonable project to succeed, there are more project roles than just developers and artists. Let’s say, we need

  • project managers
  • story director
  • story writers
  • art director
  • graphic artists
  • sound engineers
  • musicians
  • game programmers
  • tool programmers
  • bugfix hackers
  • QA managers
  • QA testers
  • Collaboration admins

I don’t say this to discourage anyone, but to show, that there are plenty of opportunities for anyone of any experience. For example anyone could be a story writer by writing down ideas and hand them over to a dedicated story director. Same with art. The dedicated directors should be skilled enough to revise the supplied content to match a common style, theme or quality requirements.

The project managers would have to collect ideas and desired features and create tasks and specification texts for them that can be published in a task managing tool (Trac comes to mind). From this, task can be picked up by the programmers (based on there preferences and experience), finished tasks should be reviewed by the project managers as well.

QA is equally important. Bugs should be tracked by QA testers (read anyone of this community ;)) and reviewed by the QA manager. Verified and well described bugs can then be made available to be fixed. Here even unexperienced programmers might find their opportunity.

And last but not least I’d like to emphasis on the need of a collaboration/development admin, that manages the necessary tools like bug tracking, source control, continuous build, webpages/blog etc. to keep things up and the collaboration unobstructed. Btw. I have continuous build in this list, because when working with multiple people at a project, nothing is more frustrating than having unbuildable sources in version control… at work we use team city, but cruise control should do as well.

This may sound too much like commercial production philosophies, but I strongly believe, that only strong leadership can result in anything being done! Even more with distributed development and virtualized collaboration. The most important part IMO is the dedication of the various manager/director roles to keep things going. The developers/artists/testers/etc. roles might possibly (re)filled by volunteers of this community easily as long as the project is pushed “from above” by creating and revising tasks to always have clear reponsibilities and a comprehensible roadmap with achievable goals.

Btw. I would volunteer for an QA manager or (assistant) project manager role :slight_smile:

My opinion, for what it’s worth, is that you’re over-cooking things a bit at this stage. I’m very much a believer in starting somewhere small and adding as you need, not defining everything up front and getting bogged down in administration. We need initially:

a) An agreed game concept that lets us get moving. This is primarily a developer oriented community, to keep momentum we need to a few coding - and soon. The sooner there’s something visible to talk around the sooner we can start working out where we’re actually headed:

b) Communication - either through forums, mailing lists or good old phone calls to keep people aware of whats going on, what they should be doing and by when, whats next and what might be needed soon.

c) Tracking - a way to keep all the good ideas (that are already flowing btw) safe and ready to use. Be this Trac/JIRA/

d) Common Space - a way to share our various contributions with each other.

e) Agreement to accept decisions once they’ve been made through discussion. Decide, move on.

The real danger is of not creating anything apart from a bad smell, rather than creating something that isn’t up to the reasonable project quota. Average games can grow and be polished, empty space doesn’t tend to evolve.

Kev

granted.

It’s just that I feel a need to have straightforward work packages to pick for anyone who want’s to get involved without being a generalist. So I think there needs to be a much stronger administration in a community project than in an one-man-show. Also spreading the roles a bit allows for more people to participate. A QA manager for example can get away with a couple of hours per week. By having a strong management you would clear responsibilities and chances are IMO smaller that the project just fades away.

Having said that, your list is sensible. An important implication lies in e) - responsibility. If someone commits him/herself to something in this project, he/she has to feel responsible for getting it done or for providing a fallback solution…

i agree with the communication, i was just setting up a news server that would be perfect for this kind of stuff. but my vps has only so much ram :S so i cant run it with mysql running. we could do scheduled IRC chats to help organize and like meet once a month or less if we have to talk about stuff sorta like a meeting, and then add a board on here.

before posting the game concepts, for voting, it would be nice to list the pros and cons of each. would be unfortunate to vote on something that was pitched well but not that rewarding to make.

RPG
Pros

  • Very easy to add multi-developer modularity.
  • Very simple to program (no complicated algorithms).
  • Has room for many different skill disciplines and levels.
  • Big enough that it will easily be enough work for everyone to do.
    Cons
  • Requires a massive amount of resources: art, music, story, etc.
  • Balance is the most important part of an RPG; with many different people making many different levels can be problematic.
  • So big that it will take a very long time.
  • Overdone genre, unimpressive unless done extremely well.

Platformer
Pros

  • Fairly simple to program (only collision/physics are even remotely complicated).
  • Has room for adding a lot of unique functionality (like Braid or Little Big Planet).
  • Has a decent amount of room for modularity with multiple developers, like different weapons, upgrades, level types, boss/enemy AI/patterns, etc.
  • Can be big enough to accommodate many developers.
    Cons
  • Might be difficult to coordinate multiple developers in, because there will be overlap in development.
  • Fairly overdone genre; without a unique twist the game will not stick out.
  • Potentially too simple to be very interesting.
  • Not a lot of room for different disciplines and skill levels.

(To add to this, maybe quote my original message and then insert stuff. It will be better to have everything together in one list than to have it scattered across the topic.)

Try a board game.

Cas :slight_smile:

Something along the lines of Mario Party could certainly work. People could spend time developing mini games.

Hmmm… Too many cooks? Solution: More kitchens!

The concept- Someone sensible builds a basic 3D Elite-type space framework, nothing special, location [x,y,z] direction [x,y,z], collision detection, some agreed renderer (JOGL, LWJGL? software?) but put it in a browser to wow the masses.
Someone else sensible builds a simple trade framework - sell X, buy X: any destroyed ship drops its cargo which can be picked up. There is an agreed range of tradeable/upgradeable weapons from popgun to BFG.

Each bona fide coder participant gets some planets which they can;
Texture how they like.
Populate how they like with AI ships - aggressive/defensive/neutral/trader/pirate/idiot - whatever!

A casual passer-by comes to the site (software renderer good for this) and gets a basic ship. They can explore the universe based on their greed or asthetics (‘Ooo! that’s a nice looking planet’ or ‘I need more ficiticium’)
Maybe zone it - trade zones, pretty zones, killzones &c.
Best programmer/designer gets the most planet visits, best casual gamer gets the most cash/kills.
This would work as a single player game, just exploring, but could also be multiplayered (server allowing).

I like this coz its simple: class Planet(), class Ship(), class Product(). If it’s kept procedural the whole bother of assets is removed.

Pros:
Discrete - once the framework’s agreed everyone gets their space which they can do what they like with.
Immersive - it’d be tempting to fly around & see what others are doing with their planets.
Accessible - easy to understand concept in a browser so anyone can try it.
Diverse - participant coders can focus on their strong points: art or logic.
Inclusive - participants can plan missions/quests together, sending the player to eachother’s planets.

Cons:
3D maths is hard.
Texturing might present problems.
How to pull in new planet classes as a player approaches them?

I like SimonH’s idea. The discrete component idea would probably work out well. Also… i am impartial for a space simulator :stuck_out_tongue:

Has anyone played Escape Velocity? As long as we’re talking about a space simulator, that game should be used as inspiration. It’s one of the best games of all time, in my opinion.

http://www.ambrosiasw.com/games/evn/

Another very easy game to make, would be a Mario Smash bros style game.

very easy to start off on the 2D side of things.
Very easy to port over to 3D, when the project is ready.
very easy to setup for networking, as connections are made pre-game.

we could keep 2D for applet version.

but i think AI would be hard (early stages wouldnt need AI just multiplayer).

Whatever idea we end up needs to suit the goals.

  1. Work together
  2. Complete something
  3. Support continued development and polishing
  4. Provide an example for Java games development

So far, the only two I see as fitting this well are the Elite game (especially with SimonH’s refinements) and the modular (M)RPG (that woogley and orangy started off with). Platformers don’t work split well even if you take the LBP approach - mostly since the developers of the add-ons are the users not the core developers (which is great of course, but is going to segregate us pretty early on).

The only other idea I’ve had is some sort spore/robotarena type sandbox game where players build something that they submit to central servers and the game plays out based on the offline design of the player’s component.

Either that, or a persistent online RTS which I’ve been trying to write for about 10 years, but I really don’t think it’s possible to any great shakes.

The front runner for me at the moment is Elite style game - lots of room for expandability, easy to split into tasks and not a great deal of high level art content. Difficulty would be multiplayer but as SimonH pointed out we could have the game single player but with an online component where the trading world and some aspects of the sectors are shared. I’m actually liking that a lot :slight_smile: I can almost see the game working.

Kev

+1 for an elite style game.

… and I would like to be able to land on a planet ;), so 3D is mandatory