Sunday, 24 October 2010

And one year later...

I have finished my work on Assassin Creed Brotherhood, the next game on the series. A challenging project (developed in less than 10 months with teams all around the world) that I think will please the fans.

But that also means that now I will have some free time to work on some personal projects, being the first a small c++ challenge, a delegate/functor class with no runtime cost (in the optimized build), apart from the fact that as soon as you use the addres of a function it can't be inlined by the compiler. My target is to eliminate the additional level of indirection that all the delegates/functors I've seen add to the call.
I have it working on MSVC, but now I want to port it to GCC (ouch!), as I intend to use it on PC / 360 and PS3 platforms.

It's good to be back...

Have fun!

J.

Monday, 16 November 2009

Assassins Creed 2

It's been awhile since the last time I wrote anything, but I've been quite busy working at the biggest project I've ever been working at, the new Assassins Creed 2.

So far I'm happy with the result, working on such a huge team (with more than 400 people working in parallel in several countries with different timezones) it's been both a challenge and a nice experience (you have to live something like this to understand how really simple things become a problem on such a big team and how good and practical people help on that situations).

Apart from that, I have played the game until the end during the last couple of weeks, and I like it a lot more than the first one. I'm waiting for both the magazines and players reviews to see if they think the same.

Now a couple of weeks of code cleaning and some holidays to get back some energy for the next game I will start working on January.

Happy to be here again, but not for long I guess ;)

Cheers!

Jaime

Saturday, 27 December 2008

Mixed feelings about the new Prince of Persia

Hi everyone,

Now that the work it's over and I got my holidays, it's the time to recap and think about what went good and what went wrong about the game.

For one side, I really like the look of the game while playing it, the models, the animations, how fluid is the movement, it's almost hipnotic. Also, I think it is the first time I play with one NPC on my side that actually I feel it's helping me to progress rather than being an obstacle most of the time.

On the other hand, I think we went too far on making it easy for the casual player (so all the hardcore fans hate us with the heat of two hundred suns) and I can almost play with just one hand, both the acrobatics and the fight. I think that a bit less of autotargetting and limiting the amount of times that Elika is able to save you would have added that bit of challenge that I feel is missing while playing (but I'm an old guy that played too many crazy difficult games).
Being one of the creators of the first first Commandos games (some of the most difficult games on the market but with great success) I think that PoP missed it just by few inches, but anyway, we feel that we made a good game, maybe not one for the hardcore audience, but one that you can play and enjoy.

So, what's the final score for the game?
The metacritics got us an 82% on 360 and 85% on PS3, with a mix of really high and few really low scores (I think that the game doesn't deserve a 100%, nor a 60%, as some magazines reviewed after the launch).

Now, we'll have to wait and see how well it sells over the next few months, as PoP always have a longer sales life than the average game. In the meantime, I will start on January on my new assignment, that will be another challenging project.

Take care all, and see you around.

Jaime

Thursday, 21 August 2008

Simple and fun

One of my team mates sent me yesterday the link of a small physics based game:

http://FantasticContraption.com

Solve the different puzzles is really fun (after #12 get's harder), but compare your own solutions with your friends it's just awesome.

After solving the #13 compare your solution with mine (as a feature, it allows to save the solution and gives you a link you can send to your friends):

#13 - http://FantasticContraption.com/?designId=684627

Edited:
#14 - http://FantasticContraption.com/?designId=686419
#16 - http://FantasticContraption.com/?designId=687704

I have to say that it's not easy to catch my attention right now, but this game it's so fun, I couldn't avoid playing it and sending the link to my friends.

Enjoy!

J.

Monday, 21 July 2008

Working at Prince of Persia

Hi all,

As some of you know, I am in the final development stage of the Prince of Persia project, and as result of it, I am quite busy right now (and I will be until it is released).

I like the last months of the projects, I usually work like crazy, but it´s the moment when you see everything coming together for the first time since the start of the project, and it is really beautiful.

There are some cool Prince of Persia videos in GameTrailers, even if it´s not your type of game, I think it does worth a click to see them.

Check it here : http://www.gametrailers.com/game/6739.html



That´s it, just a quick post to show signs of life!!!

J.

Sunday, 16 March 2008

XML based script for use in tools

Some months ago, I was asked to find a way to store user profiles and other internal application data so it could be saved for later use and shared between the application users, not a big amount of information, but enough to avoid standard .ini files.

I had been using TinyXml in the past, but I do not really like the interface to access or store information (not really a problem of TinyXml but the xml itself), so I decided to use it but also to implement a small layer over it, to have a better interface from the application and at the same time hide as much as possible the standard xml usage.

Some small issues appeared though, as I had to encode regional characters into the xml files, so UTF-8 was selected as the xml encoding. I created a couple of functions to convert from ansi to utf8 and from utf8 to ansi, so save standard local text was possible (this is not intended to be a unicode universal conversion tool, but with few changes it can be used with any language and codepage).

Once the encoding problem was solved, I started to work on the intermediate layer, to enable the applications to store and retrieve data without any xml knowledge and doing it with the less possible amount of effort (the objective was to allow users to store and retrieve data, not to force then to learn the xml internals).

The result is a small class called DataScript (the name clearly indicates the intended use, it is not a script for decision making, it is just for data storage).

As a small example of use, look at this code to store and load some bits of information:

<code>

****** SAVE ******

DataScript root;
{
    DataScript usersDataSection = root.addSection("USERS_DATA");
    for (int i=0; i<mNumUsers; i++)
    {
        DataScript userSection = usersDataSection.addSection("USER");

        userSection.setString("NAME", mUserData[i].mName.c_str());
        userSection.setUInt("ID", mUserData[i].mId);
    }
}

root.saveFile("DataScriptTest.sb");

******* LOAD *******

DataScript root;
if (root.loadFile("DataScriptTest.sb"))
{
    DataScript usersSection = root["USERS_DATA"];
    int numUsers = usersSection.count();
    for (int i=0; i<numUsers; i++)
    {
        DataScript userData = usersSection[i];

        sUserData * user = mUserData.addUser();

        user->mName = userData.getString("NAME", "");
        user->mId = userData.getUInt("ID", 0);
    }
}

****** XML File generated *******

<?xml version="1.0" encoding="UTF-8" ?>
<Root>
    <USERS_DATA>
        <USER>
            <NAME Str="Jaico" />
            <ID UInt="1001" />
        </USER>
        <USER>
            <NAME Str="Cherno" />
            <ID UInt="2002" />
        </USER>
    </USERS_DATA>
</Root>

<code/>

Feel free to contact me if you need something like this, I will be happy to help in any way my limited free time allows me. I still have to search a place to store it and post a link to it, but in the meantime I can send it by email to anyone interested, just send me an email to cherno.olivares at the google mail system.

And this is all for this weekend, I have a really busy months in the horizon, but I will do my best to continue writing some articles.

Have a great day!

J.

Monday, 10 March 2008

Test with windows writer

 

 

I've just downloaded windows writer with the last messenger update and I'm testing it to see if I can avoid the pain of editing the blog online.

If this works will publish a couple of articles I have ready on my computer (waiting for a decent blog editor) in the following days (or maybe weekend, as I am a bit busy during the week).

 

Edited : Looks like editing the blog it is much easier using Windows Writer, try it if you have not yet (do not expect miracles though) .

 

Jaime