Legend of the Chambered

Legend of the Chambered!
(This isn’t a game at all yet, but rather an early version of an engine for a game)


http://www.mojang.com/notch/chambered/screenshot4.jpg

Play now! (Applet, 210KB)

The game runs at 320x240 pixels, and is scaled up to 2x for enhanced playability. Full mouse picking support is implemented, so I can detect exactly what pixel on any surface (wall, floor, sprite) the mouse pointer is currently hovering. The engine supports non-orthogonal walls with no slowdown, but I kinda like the blocky look. :wink:

I really, really want to finish this game, so I decided to not use any placeholder graphics, but rather draw everything myself (mostly in paint.net), and it’s going better than I hoped. Obviously, those monsters aren’t final, but I like the look of the rest.

Let me know if it works!

Very cool, works perfectly here no speed or rendering issues. Feels a lot like dungeon master (yes, I know it was 90 degree turns but still). Yay! Win! :slight_smile:

Look forward to seeing where this goes to.

Kev

Doesn’t seem to accept input in opera 9.5. :confused:
Tried it in Firefox, works great. Feels very solid. Movement - and the little bouncing up and down - feels just perfect. I admit to thinking “oh, another columns-raycasting game…” when I saw the screenshot, but it has a great feel to it. Slightly too dark for my taste, and you might want some sky for the woods :wink:

In any case, great stuff. Looking forward to seeing more of this.

Even after clicking it? I tried to keep the input handling as simple as possible, but I guess I failed. I’ll investigate!

Aye, even after focusing it. Sorry!

I updated my post above while you were writing your response, have a look. Oh, and you really should switch that screenshot - since they’ll never see the dynamics again, screenshots should always show as much as you possibly can to attract interest - that’s my opinion, in any case :slight_smile:

EDIT: Also, I never understood why these games always have so low ceilings… :> Why not make it a head or two higher?

EDIT2: Personally I’d switch Q/E for A/D (turn with A/D) since turning is the primary movement option… but if you’re going to incorporate mouse turning somehow then stick with it the way it is.

EDIT3: I’m on the latest weekly build of opera in case it matters. JRE 6 something, methinks. XP SP2.

Works great here, WinXP & Firefox, java 6.

I made it to the woods and saw some bad dudes dancing around.

Why don’t you use mouse look?

Very cool :smiley:

Very cool (and smooth too, Firefox)… :slight_smile:

It is an excellent start! It is fast! I will put this in the incubator in the Java™ Game Tome, it will be transfered in the list of games when it is more complete. Keep it up! I’m very happy to see a new project of 3D game written in Java!

The first news posted on the Tome will speak about your game. Please let me know the following information:

  • who work on this project (full name)?
  • what are the technologies involved in the project? Which API? Which engine? Which algorithms for rendering (hardware, software: raycasting, raytracing…) ?
  • what is the category of the game?
  • what is the story?

If you prefer, write this article and I will post it when the news system is ready. See this as an encouragement.

Just one point, please check if it works fine under Opera. It works fine under Firefox and Iceweasel as far as I know.

Thanks for all the feedback. =)

I’ve uploaded a new version with some additional tile types, mouse look support (since it’s an applet, I can’t recenter the mouse, though…), and a sky in the woods!

I’m going to keep the ceiling that close to the head, though, as I’m trying to make the game feel like a mix between Dungeon Master, Eye of the Beholder, and Ultima Underworld

gouessej:
Neat!

- who work on this project (full name)?
Markus Persson, under the alias Mojang Specifications

- what are the technologies involved in the project? Which API? Which engine? Which algorithms for rendering (hardware, software: raycasting, raytracing…) ?
It uses 100% pure java. I’m going for a definite retro feeling (see the screenshots above), so the game is designed for 320x240 pixels, plus it really helps the framerate.
The rendering:
The floor is a rotozoomer, with some really slow perspective math. It’s fast enough, though. :wink:
The walls, like in Doom, heavily abuse the fact that they’re always aligned to the screen in the y-axis. To get perspective long x, I interpolate over 1/z (which is linear in screen space, yay), and over u*z, which also happens to be linear in screen space.
Sprites are basically just scaled images checked against the zbuffer.
So far, the only thing written to any buffers has been color information, z depth information, and a brightness value per pixel. This brightness is only used for shading walls, and might get optimized away in the future.
When everything has been written, I iterate over the entire screen, calculating true distance based on the z depth information, multiply that by the brightness and the color, then write that to the pixel buffer. I do things this way to avoid having to do the fairly heavy lighting math for each pixel, reducing overdraw, and to keep all the lighting math in a single place.

Walls closest to the player gets rendered first, and there’s NO overdraw and NO z-buffer checking at all when rendering walls, thanks to some seriously heavy culling.
Sprites, however, cause quite a bit of overdraw.

- what is the category of the game?
It’s a Role Playing Game, meant to feel something like a mix between ultima underworld, eye of the beholder, and dungeon master/dungeon master 2, except possibly a bit more modern.

- what is the story?
I haven’t come up with a non-embarrassing story, yet. Probably something about fetching something important, hehe.

Java 1.6? sigh I s’pose I should upgrade…

Really cool, I’ve always been a fan of Dungeon Master and this looks like it’s going to be an enhanced, more action oriented version.
Input also doesn’t work here on opera, and there seems to be a bit of flickering sometimes. Works great on IE though.

wow this engine looks absolutely awesome!

What I liked about it most is that it was really fun to explore and find the particles, woods, dancing monsters etc…

I really hope it gets a long adventure story with lots of interesting areas to explore so that it feels like a real little world (because I really see so much potential)…

Love it.

(After switching between tabs on firefox I could not reuse the w,a,s,d keys but the mouse still worked)

PS. I think the game closest to this genre I have ever played is Shadowgate Classic on the GB Color
Good memories http://www.youtube.com/watch?v=IfsMtL5cnJA

Very cool! I like the way the trees sway in the wind. Great lighting, too.

It looks like it doesn’t work on Java 5 (java.lang.UnsupportedClassVersionError) - which means it doesn’t work on the Mac :frowning:

I agree - switch the keys and then you’ve got WoW-style controls.

On Apple.com:
“Java for Mac OS X 10.5, Update 1 is now available via Software Update. This update adds Java SE 6 version 1.6.0_05 to 64-bit Intel Macs.”

Get Java 1.6 on Apple ADC as my teacher did last year if you can’t get it via software update. If Java 1.6 hadn’t worked on Mac, my teacher would have been unable to test my project and I would have got a pretty 0/20.

I guess I should have said, “it doesn’t work for the average Mac user.”

Java 6 applets on Mac OS X require a 64-bit browser and a user savvy enough to change the default from Java 5. (Or a user savvy enough to use appletviewer). My Mac stats from the past few weeks are showing 10% Java 1.4, 90% Java 5, 0% Java 6. Something to keep in mind when you want to target a wide audience.

You’re right, only 4 different mac users succeeded to launch my game as far as I know but you should have said “it doesn’t work for the average Mac user.”. Nevertheless, maybe the author has some particular reasons to use Java 1.6, I know it is my case and I don’t use Java 1.6 to bother mac users.

I don’t actually use any java 1.6 specific code, so this should be pretty easy to fix. =) In fact, other than generics (which are only compile time), it’s all 1.4 compatible.

I don’t know why but keys didn’t work the fisrt time (while i can rotate with the mouse ???). Second time, everything works fine (The graphic style remember me Eyes of the beholder ;D great !).

But… keys are mess up with my azerty keyboard :wink:

Windows XP SP 2, Java 1.6.05, Firefox 2.0.0.14

Wow, this is great!

It really does remind me of Ultima Underworld.

I would love to see this developed further into a full game.

The swaying trees were a very nice touch too.

Keep it up.

Ben.