[ jME GAME ] Prototype

http://www.jmonkeyengine.com/jmeforum/index.php?topic=9588.30, here is some opinion that i and few members have about the prototype…

please give your suggestion on prototype…How it should be started ?..

Before we have a design, we can experiment a bit. But prototypes tend to get bloated over time.

I already have put a prototype engine in the repository. We can play around with that, to get some answers (executing some code always give good answers, wether you like it or not).

The same can be made with the frontend (the actual game client). We can create some experimental game, that ignores the upcoming design for a while, and tries to find some answers. Technical obstacles, wasy to do things, interaction between gui and engine and all that.

Start with one of the jME game samples. And then we can put in stuff that we are interested in. Later, when the design is ready, we create a clean frontend, where we can use parts of the prototype.

The experimental prototype then can be used as a playground to test some techniques or what everv, without harming the real game frontend.


padam proposed:

padam said:

In first phase prototype will have the following:
1>1 map
2>soldiers(atleast 2 or 3) and vehichles
3>moving soldiers and vehichles on the map

I think this is conceivable (if we take out "vehicles") even if DarkPhoenixX says:

DarkPhoenixX said:

....soldiers(at least 2 or 3) and vehicles....

Of course.....ARE YOU CRAZY!!!!

We don't need a full completed state of the art soldier to get this prototype done. All we need is a test terrain and a mesh with some animation. Once we get one, the prototype will "clone" it to simulate 2 o 3 soldiers.

We can start with these requirements for the first iteration (it's better to call each release process "an iteration" rather than "a phase". Phases are Inception, Elaboration, Construction and Transition in RUP, while iterations are deliveries of the software made about 4 to 8 weeks in most of the software proceses, so "iteration" is a better term):

-Main Goal: Make a program that allows the user to move some 3d soldiers on a terrain.

-Use Case Description (or story in XP): When the app starts, it shows a 3d terrain from above (top-down view) with some soldiers on it. The user drag the mouse to select some soldiers and then click on one point of the terrain. Then, the selected soldiers move to the point clicked (a soldier can be any 3d animated mesh).

That's it. Once we finish that, we can add more use cases.

Yeah, sounds good. I would take boxes or spheres as soldiers (but thats due to the fact, that my 3d moddeling skills are not there at all  ;))

@alejandro: will you do it? if so, please create an issue for it (as you might need one for committing: http://code.google.com/p/proxywars/wiki/Repository

Vardamir said:

alejandro: will you do it?

I'm going to learn more about jME (I'm quite newbie) before starting coding a prototype.
alejandro.d.a said:

I'm going to learn more about jME (I'm quite newbie) before starting coding a prototype.

Writing a prototype is the best school, so i'd say, go for it and hack in some prototype.

do we need to make some usecases for our first start(prototype) ?..

I think just being able to load up a map, have some guys on the map, and being able to highlight them and tell them where to move is a great start for the first prototype.

I'm going to play around with MW3D and get a basic map onto SVN this weekend.

I tossed up what I have so far for value bars.  Note that right now it is just layers, I haven't built the ValueBar class at all, but it will essentially be a node with multiple layers on it - not all that different from how the test classes are.

The test classes show each class in action - except the text layer.  Text2D I think is still a work in progress, and/or my code is still buggy at this point…  Not too sure what to do for the text layers yet.  I might take a look at some jme1 code or the forums to see what else can be done.

Once the text layer is complete, I plan to make a SimpleValueBar - with just a ValueBarLayer and ValueBarTextLayer, a ValueBar that extends the simple value bar and adds a background/foreground sliced rectangle, and a floating value bar class that actually floats above the heads of units.

Once those are complete, I'll be working on traditional unit, party, raid panels and things.  To get an idea of the overall picture the objects will act like nodes - object1 attaches object2 as follows:  Raid Panel < Party Panel < Unit Panel < (Portrait2d or 3d, ValueBars<ValueBarLayers).

I created the shapes to break the code down into segments of functionality, especially since I see them potentially getting a lot of use if I decide to make more advanced GUI structures - panels, buttons, etc. etc.  I am trying to stay away from Swing since I have read it slows things down considerably.  I'm also not sure if we plan to use fenGUI or gBUI.

I'll check this code asap. But what i found out yet, you checked in some svn structures (branches,tags,trunk).

Good job… Just remember this: http://code.google.com/p/proxywars/wiki/Repository.

I’m working on Games, GameStates and InputHandlers classes and it would be really easy to integrate both projects. I’m going to check in my project this week.

Yeah I was having trouble figuring out how to link my project to the actual SVN.  So I used Team -> Share Project, and it added the /trunk, branches, etc. stuff in there.  Not sure how to do it without that though.  I could import the folder, but then my code base wouldn't be attached to the SVN.

I'm working on the text a little too, and I did get some text to display finally using Text2D (haven't committed it yet).  I realized though that Text2D doesn't handle umlauts(spelling?) or other foreign characters very well.  I'd prefer for whatever text method we use to be international, especially since it could be used to display character/npc/monster names.  (Remember, the design isn't just for RTS games!)  I'm thinking of trying out the AWT Billboard code here http://www.jmonkeyengine.com/jmeforum/index.php?topic=6485.0