John’s Blog

Its Just another WordPress weblog.. Really!

Archive for the ‘HTML’ Category

Wednesday
Aug 11,2010

dextrous

If only it was a couple years earlier and I think I would of actually applied for this!

Why? Well, I believe it would be the chance to work with exceptionally creative people both in design and technology. You would be challenged and be able to bounce ideas off one another; this is one of the things I miss working as an Oracle consultant, there is never really anyone to talk about cutting edge web technology.. Even none cutting edge some of the time.. If you look at Spaces and if I’m critical it’s running poorly scripted but functional html4 - others are working hard to push xhtml, html5 renderkits but I feel this will be too late and won`t be in the next ps3 release and will causing skinning / re-branding headaches. And there is no support for ie6 or Opera - this is just lazy; I haven’t seen any real reason why IE6 could not be supported take a look at Sencha - Extjs all that functionality still works with IE6 and the performance is outstanding!

Anyway back onto the discussion of Dextrose.

There is a risk with joining this company - but I think the opportunity to work with this team would be a great boost to anyone who is looking for a challenge and to boost their skill set.  Whats the risk.. I have to say at the end of the day I feel it’s the technology they are using i.e. the engine they are developing is a big risk.. Especially for gaming. A lot of startup online games company just fail look at Earth Eternal.. I know Dextrose aren’t making a game but an Engine but still I feel it is risky betting your chances on JavaScript although at this moment in time it seems the right approach (that’s why I’m making Simdraz but just for fun in my spare time).. And I see they are looking into the future of canvas, svg asking for experienced developers in this area but webgl and other technologies are just around the corner - I just don’t know what the future holds and how successful Dextrose would be at selling their engine.. I feel a lot of big companies like EA will developer there own or extend from others they have created like Lord of Ultima! Yes, I’ve signed up and reviewed how they develop their stuff and it is good - they have some exceptionally good frontend developers.

At the end of the day; what I look for is to be challenged and to create things that people look at and ask “how’d you do that; it’s awesome”.. As well as working with people that are creative enough to bounce ideas about and look outside the problem and not come back with the response “can’t be done” most things can you just need discuss the possibilities and delve further down the rabbit hole ;)

Friday
Jul 16,2010

Wow.. Is all I can say after watching Paul Bakaus of Dextrose discuss his chosen technology stack on the Aves Engine. [Great work guys!]
Download and watch the video here.

I started the Simdraz engine back in early September 2009 as a hobby with a colleague; at which time I had never heard of  the Aves games engine until April time where I came across it from Ajaxian.
I had seen Vanthia early on in the year - which I was amazed with and thought‘ hey they seemed to of cracked it and created a great game with html, javascript I should give it a go; but lets create something different maybe a real time strategy?’

It’s been almost a year on since I started. And I`m smiling after watching Paul Bakaus presentation of the Simdraz engine.. Why? Well I`m not going crazy and my chosen stack is what other teams are using - Simdraz works on a similar stack of technologies and with only 2 developers I think we are doing pretty well. There are things we aren’t including like the pixel map canvas support, I just don`t feel we need it - but it`s awesome and one of the things I hadn’t thought of or known about - (Canvas has always been so slow, so I’ve never spent much time reading into it); but, I`m going to look into it in the future! All our interaction is tile not object based. So if you hover over a tile with a structure you are then interacting with that structure.

Another thing we don’t use is the google maps type patch generation of it’s map tileset. We just haven`t had a big performance hit on the amount of tiles we display and we have tried thousands without issue.
But we will be breaking down our world map into manageable quadrants to help reduce map size and load times. Screen resolution doesn’t matter we don`t use a fixed view port just like Aves.

So what technology stack do we use?

.
Lets start with the front end:: -

We are using  the jQuery javascript framework and so far have had no need for jQuery UI but we may do in the future.
We are using html4 and CSS2.1 there hasn’t been a real push for us to move onto html 5 or CSS3. The way I see it is if we desperately need something in html 5 or CSS3 we can easily incorporate it, although one of the things I’m currently looking into is html 5 offline storage. ;) Browser support - well IE6 works and without any hacks! All latest browser FF, Chrome, Safari, Opera also appear to work without issue. We have had to change some functionality for the game engine in Opera but otherwise it’s all looking great.

We have also been playing with Adobe AIR and I believe we will be putting a package together to incorporate sound and improve speed through the webkit engine for our players who want added benefits and can install the game on their home computer whilst having the luxury to play the game at work from their browser.. .. Yes; I know you all play games at work.. I see you all on farmville & facebook all day when I go to get my coffees! Also benefit of AIR runs on any platform / OS you just need air installed on your computer, mobile phone, iPad type devise and you get our devised benefits plus javascript performs 50% faster on AIR. Mobile air is still in beta but when we release the game I`m sure AIR will be stable and ready for your platform.

As with ‘Civilisation V’ we have decided to go with the hexagon rather than the square to create our isometric view; it means a lot more design work but looks great and also very functional.

.
Now the Server side stuff:: -

We also are running node,js on V8 with the nginex webserver. We originally started with PHP until 2 months in, a colleague working on another project showed me the light.. And as Paul says javascript server side is awesome.. .. did he say that? well anyway it is! And the speed IO comms are just what we needed in our engine.

If node.js ever becomes it’s own webserver we will then jump onto it. But as everyone knows node.js still has a lot of security flaws.. Hey its new give it a break.. And the speed at which it runs I`m willing to give up php!! Although wiki, forums, blogs will all sit on php :)

Now, I think this is one difference we do have. Our database is NOSQL where as I believe Aves runs off a SQL derivative.. Could be wrong.
Why`d we choose NOSQL? Speed, flexibility, scaleability current node.js adapters to mysql aren’t that great in my opinion although dbslayer does a good job as a none blocking layer to mysql and returns pure json which is exactly what I believe node.js should have but still I wasn’t happy even though surely I have enough performance who cares about a couple miliseconds of blocking.. .. um well.. I do.. I want scalability and speed!
Nope I was wrong.. Aves uses NOSQL aswell :)

So out of the 20 or so I had available I am risking it all on MongoDB!
It was a completely new world to me coming from a SQL background and there has been a lot of swearing headaches schema changes well not schema structure type changes.
At the moment I still feel it is the right choice although and with everything being none blocking super fast and returning json structured data I couldn’t of asked for anything better. Give Mongo a go.
I believe even the guys use it over on the hadron collider project ;)

.
To Note about the Simdraz Engine and its developers:: -

Now one major thing you need to bear in mind - we are developing the Simdraz engine around the 2.5d environment as discussed in Pauls presentation. We have no plans nor the time to even think of making other types of engine compatibilities; so if you want a free open source games engine other than one for strategy then look at gameQuery or talk with the real experts who have the time, money and the right people working on the Aves Engine. Another thing to note, everything I know and develop with has been self taught I don’t claim to be a Guru with javascript, html, or css. I’ve been in the web industry for 11 years now and the only courses I have actually been on are Oracle related. I have worked in the games industry working for Jagex the makers of Runescape & FunOrb and a few other secret projects. And have worked heavily with UI both for the games industry and corp/government blue chip clients.

Other than that our engine is gonna be kickass… And I hope you all decide to make your games on our free platform :) If you can draw and have a great story then Simdraz is for you - no need for you to learn how to code.

Sunday
Jul 11,2010

So here`s a quick update on progress made.
Before if you can remember we showed you a small clip on navigating around the map and the village with a few trees dotted around.

Today I have a small clip showing you a new type of context menu we are working on..
It’s Still very early days so please excuse rough items we are still working from sketches.

We have randomised the village shape as before it was a large generated hexagon - now we can randomly generate all our island maps and villages.

We also have included a small resource ticker that will calculate if you have enough resources like wood to construct your selected buildings.
(You should see it bottom right of the screen. When I place the building down the ticker goes down and begins to count back up.)

We have included 3 temporary building examples - these buildings are just for demo purposes and we will not be using these in the final release - it is just there to help visualise the game. Lumbermill, Quarry and a mansion of different dimensions. As you can see when we place a building down it appears half built; we are working on the JS refresh timer to display complete constructed items, at the moment we have the building complete timer set to 15 seconds. If I was to refresh the page after the 15 seconds of placing the building you would see the construction has been completed.

We also have object detection in place so now you can no longer build on a tile that already has something on it until it is destroyed.

Hope you enjoy.

Monday
Jul 5,2010

Ok, so here it is my Chromeless Adobe AIR App Demo!

I wish I had more connections setup at the time of the demo.. But going on holiday tomorrow so little time to add connections and make a proper presentation..

But you can see the Sencha JS framework in action pulling the webcenter data from the REST API…

ok, you can`t see the app pulling the data but trust me its connecting authenticating and working!
User Credentials are hardcoded in the app -  future update will have login ability and ability to specify which webcenter server you want to connect to ;)

Monday
Jul 5,2010

air_logoSo recently I didn’t have much luck convincing the Oracle AppsLab Team to start creating Adobe AIR desktop applications for Webcenter Spaces :( The good news is however they are creating browser extensions which are just as good and not only for 1 browser. It looks like they have been working on Chrome, Safari and firefox!

I`m not sure if I can make OOW this year.. 50/50 I`ll be going but if any of you do go. Go check out the AppsLab team booth and see what great things they have been doing..

So your probably all going I don’t know flex, AIR is rubbish what’s the point its all flash. Flash is probably going to die in 4 years time or so unless they make something cool there is no point in looking at AIR.

Well I would agree on the above points.. But wait.. AIR supports CSS3 and HTML 5 using the Webkit engine and you don`t need to know any flash flex you can simply use html javascript. AIR works cross platform - smartphones, smartbooks, tablets, netbooks, and PCs - on Windows, Mac, Linux you just need the air engine running.  It also has other benefits  - The javascript engine is 50% faster! There is mass storage detection to synchronise your files like photos, mp3s etc - Support for local DB environment upto 1 TB on mySQLLite or you could use HTML5 offline storage!

So this weekend I set the challenge to go ahead and create my first AIR application for WebCenter connecting via ajax to the REST services.

It took me all weekend but it’s done!

So what monster did I create? Mwuhahahahahahaha!!

Well it’s nothing special  - I connected to the REST People Connections API to bring back all the user details I`m connected with. And to display the data I used the Sencha JS Framework formerly known as EXT JS. This allowed me to order display and find connections quickly. View Quick Demo

I`m really excited with whats happening with Sencha - they have joined forces with JQTouch expanding EXTs potential on touch devices; iphone, android, ipad you name it!! It all looking so good.. There just isn’t enough time to keep up with technology..