Lost Seas

Login menu
Front image

Technologies

Start playing right now...
Avatar

Random
StartStart GuideGuide NewsNews IdeasIdeas TechTech

CodeIgniter 2.1

Lost Seas is using the PHP framework CodeIgniter to simplify a lot of stuff that takes unnecessary time in PHP. I choose CodeIgniter because it's fast, and doesn't load a lot of crap when you don't need it. The MVC approach is also very helpful in big projects.

jQuery 2.0

The second framework that is being used is jQuery, that makes Javascript a lot easier. While PHP is somewhat simple, Javascript kan be a real mess! To do the advanced things that is necessary for this game, a framework was needed. jQuery 2.0 doesn't support Internet Explorer 8 and below, which is ok for me because i'm focusing on modern browsers only. A lot of other features in this game is too cutting edge for Internet Explorer 8 anyway :)

I've choosen to make this game AJAX based, which means that the whole page won't reload every time you click a link, or press a button. Instead, just the important pieces of the page is updated. This makes things a lot faster, and let's you play music without interruption.

html5

This game validates as HTML5. It has some nice features like pushState, new form elements and SEO friendliness that I use.

CSS3

Well, you could play this game while only supporting CSS2, but it would not look very good. I like rounded corners, but It's not worth the hassle of trying to trick the browser to render this. It makes to many HTTP requests to load a lot of images to simulate this.

The CSS won't validate without some warnings. I know, and I don't care. This is some browser specific styles that actually work and won't hurt anyone.

Speed

This game has 94 points out of 100 on Googles Page Speed This does not mean that the page automatically is really fast, that depends on the web server, the users connection and some other factors. It does mean, however, that I really tried to speed things up a bit. It has to do with compression, the right HTTP headers, good browser cache, fewer HTTP requests and to load the right code when needed.

Yes, I could do even more. But not very much without making it much to maintain the code and develop new things. It just isn't worth it to make it hard to make new things, just to make a bit of Javascript 5 kb smaller, when todays Internet connections let's you download megabytes per second.

Mobility

Lost Seas can be played on a mobile device. I've not focused too much on this, but it works. To my help I've used responsive design. This design is temporary, and in the future I would like a totally fluid design with a mobile first approach.

Anyway, if you resize the browser window you will see that the panels to the left and right gets smaller, and if you resize further, they will collapse into menu buttons on the top instead to save space. Kind of cool.