Albion

Hi, the game works great in linux using the j2d OpenGL backend at 60fps but it crawls between 25 and 32 using the default url

I think you are using google app engine to deliver the game, am I right? If not, ignore the following questions.

How are you delivering the game resources, jar, and other files. Are they static resources (which means that everytime they change you have to redeploy the application) or do you upload them to the application and store them in the datastore?

How does the 30 second limit per request work? does it counts the whole time of the request or only the time it takes to process, ignoring the network transfer time.

What is your experience with the time to start of the application? Do you have enough traffic to keep at least one VM always on, or sometimes the first user to make a request receives an error if there are no VM on, and it takes more than 30 seconds to start?

sorry if these questions are offtopic, but I have been unable to find the answers online, and would like to start serving games using the app engine, and using them for storing highscores, savegames, and configuration.

thanks in advance.

Rubén

Yeah, it’s the usual j2d quirky performance issues. One of these days they might actually write a backend that works reliably, but until then the dual-url solution is the best I can do (the OpenGL backend doesn’t even work on this machine!).

[quote]I think you are using google app engine to deliver the game, am I right? If not, ignore the following questions.

How are you delivering the game resources, jar, and other files. Are they static resources (which means that everytime they change you have to redeploy the application) or do you upload them to the application and store them in the datastore?
[/quote]
Yup, it’s GAE. The applet is built into a single jar and then copied into the web project, then uploaded to GAE as a static resource. I had hoped to just have the applet hosted on my regular web server (www.triangularpixels.com) and have the applet html reference it (from albion.triangularpixels.com). However it seems that the applet sandbox only allows you to communicate with the exact server you downloaded from, so the applet has to be served from the albion subdomain.

Obviously that could all be avoided if you signed your applet.

[quote]How does the 30 second limit per request work? does it counts the whole time of the request or only the time it takes to process, ignoring the network transfer time.
[/quote]
It only counts the processing time, not the transfer time.

[quote]What is your experience with the time to start of the application? Do you have enough traffic to keep at least one VM always on, or sometimes the first user to make a request receives an error if there are no VM on, and it takes more than 30 seconds to start?
[/quote]
Users are really, really low now so most people will end up starting a new VM (which is why the applet page usually takes a while to load). VM startup time seems to add somewhere between 1s and 4s.

GAE is… different. It’s very easy to get started and set things up but I’m still having difficulty mentally adjusting to the way it wants you to organise and store data. I suspect I’m writing my servlets in a very naive way right now, so my logs are full of ‘request took a long time’ warnings (anything over 1s it seems). I’m also not using any of the fancy stuff (like the memory cache) which would probably help matters. I’d certainly recommend giving it a try, as the barrier to entry is so low.

I see. Now I got a level with a bit more enemies. Nice! But something that I miss is to be able to right click on an enemy to see what kind of attack and defense values it has, and also how much energy it has left. Is that something you are planning to add?

Oo, interesting question - I’ve not figured out how that will work yet.

On the one hand, I’m trying to keep the amount of stats and numbers the player sees down to a minimum. And I’m not sure how knowledgable I actually want the player to be - I don’t like the idea of turning a corner and seeing a brand-new enemy for the first time and instantly knowing that they’ve got 40 HP, a strength of 8 etc. etc. I would quite like to do some kind of learning system, where you gain knowledge about a type of creature after encontering them a few times. Similarly I don’t want tell people “dark imps are vunerable to cold”, I’d rather have the player figure that out themselves to encorage experimentation (but once they’ve figured it out, then it should probably be displayed on the monster’s info page).

It also raises a whole bunch of interface issues (I’m not sure if I want to make people use right-click yet).

I’ll put it on the todo list - at the very least you’re right in that the HP of a monster should be displayed somewhere. :slight_smile:

I see what you mean. But I still think some kind of info about an enemy is nice to have, perhaps not much, but at least how much energy they have left so that you can plan some before you go to attack. Otherwise I can imagine there will be alot of trial and error the first games, which I think is a bad thing. But just my opinion.

Yet another Albion applet update playable here.

This time we’ve got chests and corpses which can be searched and their items retrieved.

http://www.triangularpixels.com/Albion/Images/12%20Container%20menu.png

Chests may have secret compartments too, so now you’ve got an additional incentive to keep a rogue in your party to spot the more cleverly hidden goodies. And as a side bonus now dropped items can stack so they won’t be inadvertently destroyed now, which also means monsters may drop multiple items when killed.

As per fruitmaze’s suggestion, you can now see health bars for all characters (friendly and monsters) by pointing your mouse at them. They’re also shown whenever you take damage.

And doors and chests will now be drawn in the fog of war in their last known state (rather than disappearing, which is what they did before).

Man, it’s been over a month since I made any progress on this. :o So this is a shameless attempt to give myself motivation to get something done: I’m going to try and add something over the weekend and have a new version up on Sunday/Monday. Not sure what yet, probably either something to increase the combat variety or something to increase the environment variety.

You need a nicer font you do.

Cas :slight_smile:

Yeah, at the moment I’m still using default java2d ‘serif’ font, since as far as I know there’s no easy way to embed a proper true-type font for use with java2d which doesn’t come with a whole bunch of licensing issues. :-\

Unless someone knows of a suitable alternative?

Maybe these?

http://code.google.com/webfonts

You’ll have to dig in the CSS files to find the font-files.

IIRC: with MSIE you get different font files than with FireFox.

do you really need to use ttf fonts? its a fixed sized applet, you could just use bitmap fonts. There are plenty of nice tools out there to help you create bitmap fonts from ttf files.

I could, but to be honest I don’t want the effort right now. Graphically I’m already way above most roguelikes already, but I’m way behind on features and gameplay so it’s pretty far down the priority list.

I’ve been making some good progress towards making ranged combat more interesting - letting the user equip arrows and using them with an equipped bow. At the moment I’m pondering whether to allow the user to fire pretty much any item as ammunition or whether to restrict it to sane types (ie. only allowing arrows to be fired with a bow).

You could go like Fallout 3 and allow certain weapons to fire certain ammo, with some weapons being able to fire anything.

That would probably make the most sense. It’s somewhat silly to be able to fire potions via a bow, but it’s reasonably to be able to fire them via a slingshot.

(Although I thought the gimmick weapon in F3 that could shoot anything was pretty damn useless, mainly due to it’s huge reload time and rubbish range).

Agreed, it really did suck. I was all excited to get it too.

I spent time making characters and everything and when it starts it says “Paused, click to start” and I’ve been clicking away and nothing!

At school using a mac.

That’s disappointing. :’( The ‘paused’ shows up when it’s not got mouse focus, so clicking on it should let you continue. What browser were you using? I’ll see if I can reproduce it here.

Ok, it works on Safari but NOT google chrome for me.

Clicking on the ground takes a couple clicks sometimes but I like what you did and wish to have skills like you someday (:

are you on OSX?