Thursday, March 8th, 2007

Primera: 3D Communication World

Category: Firefox, Games

Sebastian Garcia has spent a year on Primera and I think it shows.

Primera is a multiplayer environment where you control an avatar that
moves around an isometric-scrollable map and you are able to see what
other people are doing/saying, and it runs entirely on dhtml.

Primera has been developed from scratch. The server side engine is Perl and all other libraries
are pure javascript and html/dhtml including a javascript sprite library and an isometric sprite/map engine.

The windowing dhtml framework is called GFZ and the graphics are from various resources (e.g. map graphics are taken directly from Ultima 8 – Pagan, avatar sprites are from the Toolkit Zone, etc.)


Posted by Dion Almaer at 9:47 am

4.2 rating from 39 votes


Comments feed TrackBack URI

Too slow to be usable, but it’s a beautiful first draft. Wonderful work.

Comment by smithee — March 8, 2007

technically amazing…
practically insane…

viewing DOM in firebug is just funny. firefox went from 100 megs to 300 in a few minutes.

Comment by Marcus Greenwood — March 8, 2007

Its pretty good. There were some bugs though.

It would be cool if:

-they add collision detection for characters, and improve environmental collision detection

-they add in height mapping, which isnt too hard when you think about it (give each cell values for height and as it increases or decreases increase or decrease size of player and objects at the given height, and to make it not clippy shaky when the object is moving up or down on the height map, have a script that inserts height values between the initial and final points to make it seem smoother, and do not have it do it too much otherwise the browser will surely crash, only do like 2 or 3 additions per cell transition where the height is different). it probably wouldnt be too difficult to incorporate that into the editor they probably already have.

-improve the way the command interface works, because I could not do certain symbols they told us we could type for certain features.

-improve the script that controls the transmission of data, things seemed to be lagging.

Comment by yargleding — March 8, 2007

also it would be nice to have keyboard support for controlling the character and chatting, the constant use of the mouse takes away from the experience.

it is not necessary though, if they don’t do it, i’m sure someone will make a tiny script to associate actions with keys, and then equip it into greasemonkey for firefox and be set with that.

Comment by yargleding — March 8, 2007

Here’s my go at such an engine, nearly complete too. I stopped working on it when I got a job (ah, the life of a uni student).

Comment by Neftaly Hernandez — March 8, 2007

It’d be better if:
– it had better collision detection
– the movement was isometric too
– you could use the arrow keys or click where you wanted to go and it’d use some clever path-finding algorithm
– improved speed
– added height mapping
– fixed the viewing since players and buildings tend to pop up and disappear randomly.

@Neftaly Hernandez:
It seems alright. Add movement to the player along with a path-finding algorithm and some collision detection and you’re good to go :)

Comment by Andy — March 8, 2007

after waiting 10 min for it to load…. i gave up.
neat idea, but it unfortunately just doesn’t work

Comment by naterkane — March 8, 2007

There are some usability problems, as already highlighted in the previous comments, but nothing that can’t be solved. Overall it’s an impressive technical achievement. Congratulations!

Comment by Paolo M. — March 9, 2007

Stop checking for UA string, it can be spoofed and it’s a poor judge of what a browser’s capable of. Instead, check for JS capabilities.

I want to see how well it works (if at all) in Safari. I also find it odd that it blocks Netscape 7’s UA.

Comment by Trevor — March 9, 2007

Looks nice, needs tweaking and some speed improvement. Change it to use the arrow keys on the keyboard instead of mouse.

Comment by Alex — March 9, 2007

Fash, SVG or XAML will be better to build 3D Ajax animation.

Comment by Venkat — March 12, 2007

A lot of usefull info . Thanks

Comment by hi — June 26, 2007

Hi Look like nice game .Thanks for you article .Your article make great idea to me .Thanks

Comment by Comunication — October 24, 2007

Leave a comment

You must be logged in to post a comment.