Lord of the Fjord: viking boat bongo battle!

I’d like to show off a little of one of the two jME projects I helped develop this semester:

You are the drum beat inside a team of heavy-metal vikings’ heads as they plow through the water in a race to become the Lord of the Fjord!

Created in about two months for Celia Pearce’s “Multiplayer Game Design” class at Georgia Tech, Lord of the Fjord was designed to be played head-to-head on a network, using Nintendo’s Donkey Konga bongo drums as a control device.

This was our first experience with jME, but we were able to get solid 2-player networked races going for our demo day and people had a blast. They were also blown away by jME’s rendering capabilities (and of course, especially projected grid water - thanks MrCoder!) Lord of the Fjord is still pretty buggy for now, and we’d like to speed up network play and add some actual rhythm game elements before releasing it to anyone else, but feel free to ask questions about the project here.

Check out a YouTube video of a single-player time trial!

Some positive press from demo day: http://gaygamer.net/2007/12/winter_2007_demo_day_at_georgi.html

Pics! - click on the image to see the full-sized version

Quick Post Mortem:

What went right:

  • Having Java experience, we were able to dive right into jME and make lots of quick little prototype to test controls and content pipeline
  • getting sweet terrain from L3DT and gorgeous water up and running was pretty easy
  • Used the properties dialog to allow user to select between 5 quality levels for the water, from quad-with-alpha-texture to projected grid reflecting full scene
  • Modeling in Maya then animating in Milkshape worked great: as long as you can see it in Milkshape, you're pretty much guaranteed that it'll look that way in jME
  • basic terrain and starting line collision was pretty easy to do
  • JGN had us up and running with basic networking support pretty quickly
  • using a novel interface (plastic bongos) with a unique setting (viking fjord) made a simple idea (race!) really fun
  • we made a cool, fun game in about 2 months using an engine we hadn't even looked at before!
  • we got an A

    What went wrong:
  • Having to hardcode object positions and rotations because we didn't have time to create a level editor was a big pain
  • we were originally using SimplePassGame and our boat's top speed and handling kept changing based on framerate, even though we were factoring in tpf in each equation. We ended up making a frankenstien SimplePassGame + FixedLogicGame to fix the logic tick rate and that "solved" the problem.
  • Boat to boat collisions over the network never ended up working quite right
  • we didn't take the time to really learn JGN before implementing it, and we started the implementation late, so when it came to optimizing network performance, we really didn't know what we were doing, nor did we have the time to learn! Our game ended up being very slow with over 2 players. My advice: if you are doing a multiplayer game, get multiplayer up first, then worry about visual and audio bells and whistles. Also, test the game on multiple machines over the network as early and often as possible.
  • the GameCube to USB adapters I bought acted really wonky. Not a fault of jME, but of sketchy adapters from HK and good ol' Windows. The old version of the adapter doesn't work well with Vista, the new one doesn't work with XP…
  • we didn't implement 1/2 of what we had designed because we ran out of time. Future improvements = better stamina system with icons instead of text for a hud, rhythm mechanics, power-ups, and more! (maybe  :smiley: )


    (ninjaboy)John  - Design, Programming, Modeling

    Veronica - Modeling, Terrain, Sound

    Ajani - Programming

Nice work!!  I hope that earned you an A. :slight_smile:

edit: (ah, see the last bullet on Pros… nice work!)

hehe awsome, the video is fun.

but where is the webstart version ?? :slight_smile:

I love the name  :smiley:

Can't wait for a demo, but how will you handle the controls for those without USB Bongos?  :stuck_out_tongue:

I hope for a demo that can be played with keyboard or mouse buttons. Not quite the same, of course, but I'd love to check it out without buying all that hardware first :slight_smile:

Very nice to see successful projects using jME…and JGN. :wink:

Maybe you can ask the other jME using student group described in that article to post on here about their game as well?  (Matics?)

Matics is my other project  - I'm still capturing screenshots and videos of that one, then it'll have its own thread.

As for controls, LoF can be played with any gamepad (buttons 0 and 1 I think), or with the left and right Ctrl buttons on the keyboard.

Lord of the Fjord needs a lot of work before a public release, so no webstart just yet :wink: - it was one of those "built for just the right conditions for a single public demo" kinda projects, which I've learned is very different from a "we want you to download and play our game!" kinda project.

That's very cool!  8)

Great style and cool use of controls. Looks awesome.

Lately there have been a lot of projects centered around the projected grid water :stuck_out_tongue: People choose java and jME because it has such an impressive water effect.

Maybe if we had more impressive effects people would use jME more  :wink:

Suggestions? :slight_smile:

hard to find effects that are so easy to get visually pleasing like the water, without heavy artist work, unfortunately… post or semi-post processing effects like depth of field is something that could be easily added by even noobs though…

some really phat demos would do us good though… something like ati's toy shop demo  8)

MrCoder said:

some really phat demos would do us good though.. something like ati's toy shop demo  8)

Currently doing a demo to show off the continous terrain, it will be complete in the next few days rendered and include ( veg type artefacts ).
Shouldnt be too hard to add water and bits ( maybe one artefact is bloomed and must be touched ).

Looking for others to carry this forward with their particular specialism

Projected Grid Water was definitely one of the reasons I first got Lord of the Fjord started with jME - generally, even an unplayable game might get an okay grade if its pretty :wink:

Actually, the IslandTest was the clincher, since I knew it would run on more computers and had nice terrain already integrated. I started with the simple quad water and only later added the projected grid.

So yeah, effects can bring in users, but only if the demos both look good and are easy to understand. Perhaps back up the "show off" effects with wiki pages and tutorials? I'd love to learn more about post processing effects and cell shading - the demos show it can be done, but they might not be fleshed out enough to sell the engine to someone who says "hmm… but can I make a game that uses this effect well and runs well, too?"

Absolutely excellent!!

the demos show it can be done, but they might not be fleshed out enough to sell the engine to someone who says "hmm... but can I make a *game* that uses this effect well and runs well, too?"

Yeah the bloom and water effect run at 0.3 fps on my machine but that's beside the point..
I think the wiki already has a lot of information, what needs to be done are the javadocs on jME's classes, also the "OpenGL call warning" should also be added as it was requested by a lot of users.

I would say post processing is very important in todays choice of Engines… Most 3D engines can render triangles with textures and lights… But not many can create cool effects like the water, motion blur (which unfortunately does not work as cleanly as the water one), bloom, shadows (fixing the camera inside volume issue), particles…

I remember someone (perhaps neakor?) was sometime ago asking how to create nice spell effects with particles or otherwise. If we could setup a bunch of cool effects demos showing effects that you can find in state-of-the-art (or not terribly outdated) games around, people would start turning their heads towards jME more often…

Anyway, just my 2 cents 

I agree!  :P  Now we just need someone with free time to donate said time to doing those demos!  :smiley:

Err… Well I would be happy to volunteer, I would just need some definite ideas of which features would be best… and if someone would help with particle design, I would not complain either.  :wink: