Community Project Mark 562

Here are some personal prefrences, but still I dont really hold them too strongly, Im willing to accept whatever is decided in the end:

I personally would like to do something very impressive with Java. So id prefer something a little more “advanced” than a 2D clone.

I agree that we can do something impressive

I personally would not like to open source the project. I dont really see the point,I know this statement can open up an arguement but id rather not argue on such a small matter, I just wanna say my bit.
I dont see the need as people that are joining the project should already know how to program and dont really need to learn off other peoples code (thats what this forum is for).
Other programers should only know how to use the classes supplied and not be tempted to spend alot of time criticising other people code.
I would rather have a utility style setup (rather than an engine) so that programers can interact with other peoples code without having to learn much about its implementation.

this can wait, but something im willing to offer for starters is alot of my current binary code to get things rolling.
current support is:
(I know alot of other people have this but im trying to give a realistic starting point even if im the worst case senario)

3d:
obj loading, with generation of tangent/binormals for shader use such as parallax bump mapping.
map editor that opens as 3d(personal variation of juddmans 2d tilemap editor).
obj collision detection: takes an obj model and converts front of faces to collision object for sphere to triangle collisions
mouse pointer/line to object selection/collision: used for bullets and object selection

2d:
menu system (not proud of it)
openGL cut scene support (can convert movies to custom video type for optimised openGL performance)
grid pathing (alot of room for improvement)

audio:
ogg sound fx, havnt made it support 3d yet
ogg music.

networking:
very solid TCP setup, with a requst style layout.

I personally always start my projects with networking in mind, even if single player, the user sends a request via the network (loopback adress) and the server decides if it passes
I think this helps alot later down the track for devolpment, I think this is a good idea for this project if we decide to make an oblivion clone style multiplayer RPG.

Yeah that was a bit long winded this early in the proposal of a group project, but id just like to say that this is very possible, and I dont see the need to have low standards for this project.

I still strongly agree, if we do choose to go with an RPG, that it should have a way for alot of mini games, woogley is right when he says the best times in an RPG is the mini games. would be cool if players can unlock minigames to play at there leasure, this way it has a “desire to return playing” value.

I could only give higher level or other support. Something that can be done in an hour a day.

IMHO you even benefit from it because people already know the game. They also get updated graphics and possibly more content/features.

Why not a concept like typical FPS’ have where you can play purely single (+bots), multi (+bots) or coop?
Or, with an idea I had, allow people to upload their chars and others can ‘rent’ them as bots. The char would get a share of loot, rent and xp.
The amount of players need not be that large (a Gauntlet-style game could have 4-8)

Side features could be to have a ‘online arena’ where uploaded chars can duel it out on the server. (kinda like TurtleCombat, iirc)

From what I read the typical age of a gamer is like between 25 and 35. I would think they also prefer casual (0-30 mins) to ‘a-little-more-involved-casual’ (30m-1hr).
So games like my beloved Elite would not fit into this category, just like a RPG.

Maybe we should start small and build up from there.
We should also remember that we want to make a game, not a tech demo.

This sounds like an interesting idea, I’m definitely up for helping out.

Since I don’t have the time to comment in detail (I’m blowing 5 minutes waiting for a long calculation (real work, bah!) to complete), let me leave it at this: anything we do should highlight Java’s particular strengths as a game platform. My problem with things like Jake2 is they seem to implicitly send the message “Hey, guys, look, Java can do it, too, see? See?” I think people would get a lot more excited about a project that would have been truly difficult to pull off in C++.

What specifically that means, I don’t know; unfortunately “ease of development” doesn’t show up so obviously in gameplay. Perhaps we all need to think a little bit about what can be visibly achieved with Java that would have been a heroic effort in C++, because if we worked it into a game without too much trouble, we’d really have something to point to when people get confused and ask why we would even consider Java as a game dev language.

Also, it sounds like we’re getting close to time for a vote, maybe give this thread another day or three, and then we should settle on something and cut off the brainstorming with a draft spec or something like that. We don’t want everyone to generate and run with (in their heads) their own exciting ideas about what this project will be and then ultimately be disappointed when another path is taken, so it’s better to decide relatively early what to do and run with it.

That’s the plan.

Kev

Project Darkstar comes into my mind - it’s something that only Java has (although it does not yet scale as planned, it’s work in progress). Other than that, I can’t think of things that would be different from other programming languages.

Crossplatform-ness? A game you can play on PC, MAC, Linux, Phone etc

If we go the way of the RPG, I could make my contribution to the project be to write the story. I’ve been writing for as long as I’ve been programming - it’s my other big hobby. I’ve also got about 250 pages in a novel written which could potentially be used for the story, but I don’t know if it’s got enough battles and whatnot. Plus it’s based around the real world. I’ve got a lot of other shorter things I’ve written that fit more with the genre, but it may make sense to write something from scratch. One thing I did a while ago was I had a column that was connected to a forum, and I wrote a pretty long story (100 pagesish) that had each person’s forum persona as a character. So like goussej could be a French guy with a beret and a giant JOGL sign on his shirt, or Kev could be a mad scientist. Anyway I would enjoy writing the story and I’m open to any ideas or suggestions.

I think an interactive ‘tech demo like game’, will be the only option to really cause a stir in a reasonable timespan.

With a RPG with dozens of minigames with wildy varying quality, is hard to keep overall quality up, as players are likely to leave the game when they have stumbled upon a few mediocre minigames in a row.

In my opinion that would mean a very pluggable framework, where the framework itself is rather simple, with most effort put in graphics (!). I still think an interactive ‘tech demo like game’ will achieve this with least effort, most fun, and least collaboration problems, as changes made by 1 coder won’t mess up the gameplay (as much) as in an RPG where gameplay is easily ruined by unbalance.

I still think we need to do at least 2 projects. One small proof of the team concept that can be completed within a short fixed deadline (2 weeks max). I think a first project should be a single player 2D original focusing on some interesting and polished game play. Once we have proved that we can work as a team and get something finished we could try for a more ambitious 3D game.

Some ideas for first project (from easy to hard):
Turn Based Puzzle Game (Match 3)
Real Time Puzzle Game (Tetris, Peggle)
2D Racer (Micro Machines)
Platformer (Mario Bros, Donkey Kong Country)
Turn Based Strategy (CIV)

Second project ideas (from easy to hard):
Real Time Strategy (Warcraft, C&C)
Space Trader (Elite, Privateer)
FPS (Halo)
RPG (Zelda)

Personally I would like to go for a Platformer for a first project. I have always wanted to do something along the lines of Metal Warriors and think it would be great first project (if a little too ambitious). Basically you run around levels in various massive mech suits (when you hop out you are only a few pixels high). There are 6 different suits in the game with completely different characteristics.

For a second project if we could pull off something Zelda64 like (more action oriented RPG) I think people would take notice. There are a ton of generic anime RPG games out their but only a handful of Zeldas.

The benefit of a platformer that supports online play, would be that we could do a 3d version for PC’s, 2D web deploy version, and 2D phone, a very accessible game. that at least high lights the platform independancy of Java. as well as high lighting the range of the community.

As far as getting the job done, or done well. It would be totally up to the person setting the dead lines, It would be fine if someone is having trouble finishing there code, as Im sure there is always someone that can take over, its up to the organiser to pull things together considering there are so many accessible programmers. So weather the game/project is ambitious is not really the issue.

I also think that alot of us have had experience making games, and are fimilar with the basic steps involved so the natural progression of things should be productive.

A few qestions:
If the project ends up being 3D, what is the dominate opengl wrapper in the java community?
If it ends up being 2D would we still use openGL?

plzzzzzzzzzzz lets make a GOOD game :wink:

Yeah I think my vote for a first game would be for a 2D platformer/puzzler like Mario. This concept is simple and I think still has miles of potential in terms of innovation (look at Braid or Little Big Planet, for examples). All the programming in it is also easy to grasp for beginners, and it would be easy to port this to other Java platforms like Android or mobiles. In terms of spreading the coding out across multiple people, that is more difficult in a simple platformer than in an RPG, but not impossible. Like someone could work solely on level design / environment coding, someone could do enemy AI (think how much the world needs a platformer that has really smart AI!), someone else could code the behaviors of the powerups, etc. Once again, as long as we have something common that we can tap into, then people can mostly do their own thing, I think.

And way back in the day I made a Mario clone, and I added in multiplayer. It turned out to be incredibly fun. Basically other players could control the enemies, toggling which one their were controlling at any time. The enemies would still be confined to their usual crappiness (like a goomba was still very slow at walking, etc.), so the person playing Mario would have a gigantic advantage, but the players controlling the enemies would get basically infinite creatures to utilize. So it got really frantic and fun, with 4 players all on the same keyboard, one controlling Mario, the other three shouting and ranting as they did their best to foil him.

As such, I think if we do make a multiplayer platformer it could turn out to be incredibly fun, and that extra multiplayer bit could be all the game needs to really stand out. There are certainly lots of co-op multiplayer games, but very few counter-op ones, especially none in platformers (maybe a few in FPSs). It might even be interesting to take the platformer up a level from Mario and go for something like Metroid where we have a massive seamlessly connected world or Gunstar Heroes / Mega Man where the game is still level-based but there is a lot of potential for coding different weapon upgrades and the like.

I was thinking also that there aren’t very many platformers with any real sort of destructible terrain - imagine the possibilites if to get past certain areas you need to cleverly blow up certain walls and trees? A lot of possibility lies there. Similarly, a cross between Worms and Mario could be very interesting, where everything is a destructible bitmap.

So there’s two schools of thought at the moment:

  1. Make something so easy to implement that everyone can participate. Attempt to split the work by micro pre-specified features.

    • Pro: More likely to complete something
    • Pro: Likely to get more people involved
    • Con: Less likely to keep the interest of more experienced developers
    • Con: Much harder to manage across a large set of developers
  2. Build a system that allows developers (albeit only those with a reasonable level of experience) to build on modules independently of other.

    • Pro: Allows developers to make progress when they have time
    • Pro: Potential for viral growth of content
    • Con: Complicated initial development
    • Con: Alienantes very new developers
    • Con: Potential for disjoint final game if not managed carefully

FWIW I feel adding multi-player as an initial goal to any project is a touch of death. However, as someone mentioned above that doesn’t prevent this initial architecture having the facility designed in for future growth.

Kev

Good luck, Kev. :slight_smile:

Because yeah, you make or break this project, I think.

In my opnion mixing experienced and new programmers in a project where collaboration takes place virtually, there is no hope whatsoever to get anywhere.

It might sound harsh, and arrogant (maybe?) but it just doesn’t work well with very diverse groups. Even in reallife projects in the office, people get grouped by their skillset, just because then everybody stays productive. When the ‘n00b and the pro’ work together, it’s very intense, one on one, which requires reallife contact, as body language is just so important to see if someone really gets it / agrees / is convinced.

So, it’s better to have the experienced guys lay the foundation, and everbody else can then craft some toys.

Note: I’m not saying this to ‘secure’ my own place in this project, as I’m very likely to not even join due to lack of time. It would just be such a disappointment to see such a project with potential to grind to a halt eventually.

I think you are mostly right but it’s worth giving it a go. The main reason why I would be in favor of starting with a trivial game with a fixed deadline and doubling the time-line for every subsequent project is to try and evolve a method of working as a disjoint team. Either way, having a fixed release date I think is very important.

Alternately competitions seam to bring out the best in people so you could have a couple of team captains outline a basic plan for a game and then have people sign up to either team and have a month long team contest to make the best platformer between the two.

One thing that comes to my mind is to break the programming into small parts with strong requirements and then making a solution could be a contest where the best implementation is voted on by the community and then included in the project. The difficulty of implementing the task could separate the newbies and the experience programmers, while still encouraging the newbies to shoot higher and increase their skills (this would mean no flaming though as it could hurt feelings). Examples would be creating a basic potion class or designing and implementing new type of enemy(something that flies instead of walks etc.). Their could also be art contests and such, or just a collection of free art that people vote on. Trying to get a group of disjointed programmers to work together and agree on something otherwise seems a difficult task to me.

argh im late in this topic…
I’m good with art/pixel stuff and somewhat good with programming so i’ll help out, something does need to come from our talents and cause a stir in the game development with people saying wow that’s java.

What about an earthbound style rpg? or a simple cool Zelda (1st) game? we could even make it do random dungeons so your hero or whatever progresses and you see how far you can get your hero with out dying, sorta rogue-ish.

just some ideas.

Cool idea! The truth is that any of you could make a sensational game on your own, you’ve done it heaps of times. But when your powers combine!!! i’m sure it’d be something awesome. I’d be glad to lend a newbie hand :slight_smile:

EDIT: One of the coolest things that java gaming land got recently was some fantastic physics libraries. JBullet for 3D and JBox2D/Phys2D for 2D. Some pretty good games are being made with box2d recently - see Rolando for example (http://rolando.ngmoco.com/).

it would also be nice to know how much time, indivduals are willing to offer. then depending on there abililty maybe make a decision.

because if there a few newbies that are only willing to offer a few hours to the project per week, then it wouldnt be a problem them working on stuff like creative exciting GUI’s. that in its self can amp up the impressiveness of the project.

another idea for a game would be redoing Block Dude that’s on the Ti Calculators, i think there is a simple flash version if you Google it. We could do something like that but enhance it with cool features.