December 23, 2014

Christmas Demo

And here is the last demo of World of Thieves, a 3D adventure/stealth game between "Zelda" and "Beyond Good and Evil". Don't hesitate to test/share/reblog/comment/like if you want to help me!






Survey: Don't forget to complete the online survey after playing the game!
Bug hunt: As usual, contact me for bugs or any feedback.
Get all the news: if you don't want to miss anything, subscribe, or follow me on facebook!


MAC OS X and Linux are back


It's been a while since I haven't posted a release for MacOS and Linux, so here they are! I recently optimized the demo filesize, so I can post 3 downloads again.

  • Linux

Under Linux, you have to change the execution rights on the game file:
chmod +x worldOfThieves.x86

If you use this 32-bit version of the game on a 64-bit operating system,
you may also have to install 32-bit libraries.
I was successful with the following commands:
On Ubuntu:
sudo apt-get install ia-libs
On Fedora:
yum install libstdc++.x86
... which doesn't seem to be the exact same thing. But it did the trick for me.

By the way, I noticed the game is really slow on my Linux systems. It was only playable with the lowest quality settings possible. Maybe this is due to my graphic drivers, but I'll have to test further. It even crashed at the beginning of the pirate warehouse level. Don't hesitate to tell me if you experiment such problems.

  • Mac OS

Haha... I didn't test on Mac, because I don't have a Mac. But the beauty of Unity is that I can release on Mac from a Windows system anyway.
So, if Mac users out there want to give it a try and tell me what's wrong (or what's right, hopefully ;) ), you're most welcome!

What's new since the last demo?

You have to know the demo quests are more or less final at the moment. The next official demos (including this one) will only provide bug fixes and graphics/sound/music enhancement. I now focus my work on adding levels and quests for the final release.

The main new things (most of which can't be seen in the demo) are:
  • new animals: geckos and fennec fox
  • new characters: Turtle Master on Aqualums, Rodrig the retired pirate on Zephyr Island, both with full dialog tree and quests.
  • new enemies: guards and robots (still prototype)
  • new flower: lilypads
  • optimisation on my tools for level edition
  • automatic tests on very usual mistakes I tend to repeat on each release (systematic non-regression tests)
  • more avatars/images completed
  • dialogs can now use a dynamic camera
  • sun lens flares
  • use of real-time clothe animation for pirates headbands and guards hat
  • heavy optimisation on grass rendering, ia code, dynamic loading zones
  • optimized texture sizes, resulting in 50% smaller game files
  • use of deferred rendering which slightly boosts the framerate
  • trails appear when the player falls for a long time
  • saving the game now displays a screenshot
  • whole new level: mines, with a bunch of new textures and props, effects and gameplay items...
  • new island (quite empty at the moment) with its own dynamic skybox/light rig
  • design and integration of the 1st boss!
  • map display can now manage multiple floor levels
  • a few more props: bed, various jars, metal crates, books, plants at Iris', 
  • new gameplay items: mine trolleys, lasers, energy-based switches, energy capsules, ...
  • bug fix on various shaders with depth-of-field effect
  • bug fix on several enemy freezes
  • various bug fixes on switchs/platforms dependency and state save (I bet there are still some of them in there...)
  • lots lots lots of minor bug fixes.

I spent quite some time trying to port every shader to DirectX 11, but I still have graphical artifacts despite the better overall performances.

What's broken ?


You didn't expect everything to work perfectly, did you? I'm aware of a few bugs/regressions:
  • Environments are still a bit empty
  • Some sounds must be re-designed  
  • The game lacks some music/sounds
  • You won't always know what switches activate especially in the Bo Trial Dungeon)... Try to understand :) 
  • Some pirates may not be as aggressive as before in the pirate warehouse level.

 

Controls


  • ZQSD or WASD: move the character. It's both AZERTY and QWERTY compatible
  • Space: jump and climb
  • Shift: crouch, fall and block
  • Mouse move: move the camera
  • E: weapon selection menu
  • Left click: main weapon (Bo) or contextual action
  • Right click: secondary weapon
  • Tab: inventory/map/missions


Have fun! Peace!

October 3, 2014

New Demo

And here is the last demo of World of Thieves, a 3D adventure/stealth game between "Zelda" and "Beyond Good and Evil". Don't hesitate to test/share/reblog/comment/like if you want to help me!





Download for Windows

All downloads are 32-bits 

Survey: Don't forget to complete the online survey after playing the game!
Bug hunt: As usual, contact me for bugs or any feedback.
Get all the news: if you don't want to miss anything, subscribe, or follow me on facebook!


No MAC OS or Linux ?


The demo filesize is getting bigger and bigger on every new release. That's why I only share the Windows demo on this post. If you're really interested in Linux/MacOS demos, send me a mail/comment/contact form/whatever to tell me. But the final release will be on Windows, MacOS and Linux.


What's new since the last demo?


The main new things are:

  • A few concepts/tries for a villa design (new level) (not in the demo)
  • Better HUD effects and lighting for pickable items
  • 3 new aquatic animals (not in the demo)
  • 1 "boss theme" music (not in the demo)
  • 1 new level in the thief Guild (that was quite long...)
  • New props: jars, rocks, decals, water particles ...
  • Lia's quest is now only available after the pirate level
  • Enemies and breakable items now generate power ups. 
  • A few additional dialog lines
  • Better map display with local and global/world view, taking into acount map items.
  • Lots of bug fixes:input priority fix while on the turtle back, recoding of switch mechanics enabling the activation of various gameplay blocks (platforms, doors, ...) with multiple links, bug fix of annoying auto-slide when trying to climb on a wall edge, smoother transition from slide to jump, better scene bounds computation for nav graph generation, ...

What's broken ?


You didn't expect everything to work perfectly, did you? I'm aware of a few bugs/regressions:
  • A little display bug when you get the package from Reno, near the end of the demo
  • Some of the enemies might get "stuck" on a wall in the dungeon of the "Bo Trial"
  • Environments are still a bit empty
  • Some sounds must be re-designed 
  • You won't always know what switches activate especially in the Bo Trial Dungeon)... Try to understand :)

 

Controls


  • ZQSD or WASD: move the character. It's both AZERTY and QWERTY compatible
  • Space: jump and climb
  • Shift: crouch, fall and block
  • Mouse move: move the camera
  • E: weapon selection menu
  • Left click: main weapon (Bo) or contextual action
  • Right click: secondary weapon
  • Tab: inventory/map/missions


Have fun! Peace!

August 5, 2014

New Demo

And here is the last demo of World of Thieves, a 3D adventure/stealth game between "Zelda" and "Beyond Good and Evil". Don't hesitate to test/share/reblog/comment/like if you want to help me!





Download for Windows

All downloads are 32-bits 

Survey: Don't forget to complete the online survey after playing the game!
Bug hunt: As usual, contact me for bugs or any feedback.
Get all the news: if you don't want to miss anything, subscribe, or follow me on facebook!


Beware!


If you complete Lia's quest, this will take you to the end of the demo. You may want to wander around and find other quests before completing this one.

Furthermore, demo filesize is getting bigger and bigger on every new release. That's why I only share the Windows demo on this post. If you're really interested in Linux/MacOS demos, send me a mail/comment/contact form/whatever to tell me.


What's new since the last demo?


The main new things are:

  • New GUI/HUD design for the Link menu
  • 3 new menu items for collectibles in the Link menu: flowers, animals and paintings (not all in the demo)
  • 6 animals to cure (only 1 in the demo)
  • Better weapon control explanation in the Link menu
  • Better item pictures in the Link menu
  • Apples can now be stored and used from the item wheel menu
  • Better visual effects on bomb explosion (not in the demo)
  • Better visual effects on Bo mega attack charge
  • New item: magnetic arrow/bow
  • Enemies sometimes drop items
  • 3 new characters: Lia, Garnet and Iris
  • 1 new place: Aqualums (not playable in the demo, but you can see it). See the dedicated post here.
  • 1 place re-design: Zephyr Island (formerly Tera) including huge windmills, beaches and stone houses
  • Skybox re-design with dawn and dusk variations and better clouds
  • Sun and cloud color variations following day/night cycle
  • New animated banner for the website
  • New presentation cutscene on Eagle Islands
  • New cutscene on Aqualums Island
  • Most of the cutscenes can now be skipped (mouse click)
  • 3 new musics: 2 for Aqualums, 1 for Eagle Islands
  • Better audio mixing and mastering of musics
  • New credits screen
  • New sidequests: collecting flowers and curing animals (partially in the demo)
  • Lots of bug fixes: character now disappears when the camera is too close, no aiming animation for range weapons if no ammo, swinging lanterns can now be parented to moving platforms, giant windmills still turn when looked at from far away, better scene structure for dynamic loading, and many other things you won't even notice ;)

What's broken ?


You didn't expect everything to work perfectly, did you? I'm aware of a few bugs/regressions:
  • The color of the slingshot target is not always accurate depending on what you aim.
  • Completing Lia's quest directly leads to the end of the demo. You may want to postpone this one. 
  • Environments are still a bit empty.

 

Controls


  • ZQSD or WASD: move the character. It's both AZERTY and QWERTY compatible
  • Space: jump and climb
  • Shift: crouch and block
  • Mouse move: move the camera
  • E: weapon selection menu
  • Left click: main weapon (Bo) or contextual action
  • Right click: secondary weapon
  • Tab: inventory/map/missions


Have fun! Peace!

July 3, 2014

Aqualums, the main island

Hi there!

It's been a while since I haven't posted anything game-dev related. But, don't worry, I won't write a very technical article this time. I'll just speak about a new content in the game: Aqualums, the main island (which is NOT the hero home, on which I still have to work by the way...)


I - Concept


So, for this new island, I had a precise idea in mind. I made some concept works using any tool I thought was good for the job: this included a textual description (in a text document), a color scheme and a logical/quest plan (in Inkscape), a digital concept art and a few traditional paper sketches. This is all very rough, but I wanted to have some kind of basis to set the mood. The goal is not to be perfect at this stage.

So here are a few snapshots of my base material (in French for the text, sorry):
 
Of course, a real concept artist would be horrified by this... Everything is loose, perspective is off, and texts are full of mistakes. BUT, this gives me a good idea of the way I want to go. And I don't have the time to make it better anyways :p.


II - Prototyping


So right after this, I jumped into the "blocking" phase: the goal is simply to create ugly 3D blocks to check the dimensions and proportions of the island. Not very pretty, but very useful to make the first tests in the game and "feel" the level.

Here's how it looks in the game:

The block level. If you look carefully, you may spot 3D texts here and there. It's just a hint (for me) to know what I'll put there in the final graphics.


In this stage, I can also check the masses and forms of the buildings and see if there are mainly good visual compositions from the player point of view. The camera/player moves of course, but I just check that there aren't any ugly/unbalanced spots. I also tried to avoid a too square-y plan of the city.


III - Finalizing


And once everything seems OK, I start to create the final graphics, using textures, and finer 3D modelisation:


The island during the refining step: some blocks are still there, but I slowly replace them by cartoonish houses (with no windows at this point)

This process is very long! And lucky for me, I already had a lot of wood and stone textures as well as nice wood pontoons from the previous levels. Of course, I reused some of the items, but not all of them! I don't want this island to have the same look as the other ones. So I also had to create new items: bridges, carpets, a tree, small boats, paper lanterns... There are currently 1300 objets in this level... for now.

The thing is, creating a graphical appearance is good, but this is not enough for a game. I must specify other properties for some of the elements in there: Is it solid? Can the hero collide with it? Does it move? If yes, how?

And some elements have a complex appearance/rendering stage (the tree for example), so, in the end, I also had to code additionnal stuff to create a believable city in the game: flying leaves around the tree, occasional halo around swinging lanterns, and of course, I had to optimize everything to make it run smoothly enough. Because, I'll have to add characters on top of that.

And the final look is like this:



Soooo finally, this took me nearly a week of work (I only talk about blocking and finalizing; concepts were done long before and went through a lot of changes). But, at this point, you can't do anything in this city, except walk/climb around. And you can't go inside any of the buildings. Useless, isn't it?

IV - Other stuff


In addition to this new island, I also worked on various stuff, including (but not limited to):
  • A redesign of the "Link" menu with a better inventory,  map navigation and other surprises
  • A redesign of some weapons (slingshot and bow)
  • New items: a magnetic bow and a flute
  • A new character giving a "collecting" sidequest
  • A very big ocean animal to track (more on that later)
  • Better smoke effects on bombs, 
  • 2 new musics for ocean exploration and for the Eagle Islands
  • And more recently a new sky/cloud system. By the way, the city above looks like this now:




Yes you can ride a turtle in the canals of the city.

In the end, it's kinda cool to see that I started with a simple text paragraph describing the city and it's finally taking shape! But the work is not finished yet...

So that's all for today!
Peace :)


June 11, 2014

Presentation in secondary school

Hi there,

This is just a quick post to share a little presentation I made in a secondary school to introduce the job of "game developer" to young guys between 11 et 15 years old. By the way, thanks a lot to my friend Mathieu for inviting me and thanks also to his colleague Richard! And of course, thanks a lot to all the pupils of the computer science club of Jacqueline Auriol school in Villeneuve for their enthusiam.
It was really fun to discuss with them. It's quite funny to see that they had the exact same questions I had in mind when I was their age...

For the curious guys out there, I share my presentation here below:

http://www.oneiricworlds.com/siteResources/presentation/creationJeuVideo.pdf


It's in French and it's a very introductory/simple presentation, but if it can be of some interest to somebody...
And surprisingly enough, it was quite difficult to prepare this presentation, because I had so much to say, but I had to simplify a lot the complexity of the problem to make it understandable for teenagers. A very interesting exercise!

Apart from that, I still work on my game of course. But more on that later!

Peace!


May 17, 2014

New Demo

And here is the last demo of World of Thieves, a 3D adventure/stealth game between "Zelda" and "Beyond Good and Evil". Don't hesitate to test/share/reblog/comment/like if you want to help me!



Survey: Don't forget to complete the online survey after playing the game!
Bug hunt: As usual, contact me for bugs or any feedback.
Get all the news: if you don't want to miss anything, subscribe!

Install Notes


  • Linux

Under Linux, you have to change the execution rights on the game file:
chmod +x worldOfThieves.x86

If you use this 32-bit version of the game on a 64-bit operating system,
you may also have to install 32-bit libraries.
I was successful with the following commands:
On Ubuntu:
sudo apt-get install ia-libs
On Fedora:
yum install libstdc++.x86
... which doesn't seem to be the exact same thing. But it did the trick for me.

By the way, I noticed the game is really slow on my Linux systems. It was only playable with the lowest quality settings possible. Maybe this is due to my graphic drivers, but I'll have to test further. It even crashed at the beginning of the pirate warehouse level. Don't hesitate to tell me if you experiment such problems.

  • Mac OS

Haha... I didn't test on Mac, because I don't have a Mac. But the beauty of Unity is that I can release on Mac from a Windows system anyway.
So, if Mac users out there want to give it a try and tell me what's wrong (or what's right, hopefully ;) ), you're most welcome!


What's new since the last demo?


A lot less than for the last demo, since it's been only 1 month since then. And it's still a lot of "core invisible thankless" stuff:

  • different font for dialogs and HUD/GUI
  • slow motion to accentuate the character KO/game over
  • big jump landing animation
  • turtle travelling (see the detailed last post) with various feedback effects (not in the demo)
  • cyclic/infinite map (not in the demo)
  • floating barrels and crates that can be crashed by the turtle (not in the demo)
  • new barrel design
  • moving platforms (not in the demo)
  • better visual feedback when curing animals (not in the demo)
  • recoding/debugging of the slide movement on slopes when the character can't climb (I bet you didn't even notice that the character could slide, did you?)
  • lots of bug fixes on the climbing and graple aiming algorithm
  • bug fix on the water splashes when the character falls into water
  • bombs can hit the player (not in the demo)
  • lots of optimisations on animals and pirates reducing the computation time by 70%
  • other optimisation on various objects, making the game running smoother
  • lots lots lots of "minor" bug fixes:  music volume transitions, avoid sound saturation, avoid slow camera moves when fastest render quality is selectionned, fixed locally inverted image on several graphical effects under Linux, better state transitions for the player, better gamepad compatibility during weapon selection, switch activation from slingshot, many other fixes...


What's broken ?


You didn't expect everything to work perfectly, did you? I'm aware of a few bugs/regressions:
  • The inventory is not fully functionnal yet: you have to use the keyboard to change the current page (missions/inventory/map) but the mouse to select items inside each page. And sometimes the current page changes when you click somewhere else.
  • The color of the slingshot target is not always accurate depending on what you aim.

 

Controls


  • ZQSD or WASD: move the character. It's both AZERTY and QWERTY compatible
  • Space: jump and climb
  • Shift: crouch and block
  • Mouse move: move the camera
  • E: weapon selection menu(useless in this demo)
  • Left click: main weapon (Bo) or contextual action
  • Right click: secondary weapon
  • Tab: inventory/map/missions


Have fun! Peace!

April 28, 2014

Turtle travelling

Hello everyone,

These last days, I've been working on 2 new features in the game:
  • Travelling on the back of a turtle
  • Having a cyclic world (well, technically, this is a torus)
OK, these 2 features are slightly linked...

I - The Turtle


At some point in the game, the player can travel the whole world without restriction. Of course, this means he can't only swim because it would be waaaaay too slow. So I wanted to create a cool means of travelling... and, thinking about my creation creed "freedom, humour, oneiric", I chose to make him ride a turtle! I first created the 3D model in Blender and the texture in GIMP as usual.

Another texture far from optimized...

But creating a new feature is not that easy. A lot of questions are raised about this turtle:
  • How is it controlled? 
  • How fast should it be? How long would a player travel between islands without being bored? How can I reconcile this with the minimum necessary distance between islands to be sure that I don't clutter memory or slow down the game?
  • Can the player use items while being on the turtle back? If yes, which ones?
  • Can the player jump? Or crouch? Is it interesting/useless?
  • How can the player switch from the turtle riding to swimming?
I didn't answer to all of these questions, but I made a few choices. 
I implemented the same kind of controls for the turtle as for the player.
Using the Bo (the melee weapon) seemed kind of useless on the turtle's back. Range weapons, however, can be interesting for water fights. The problem is that shooting from the turtle back at high speed gives the impression that all projectiles are very slow in comparison... It's even possible for the turtle to be faster than an arrow.

So I set up 2 different travelling speeds:
  • At low speed, the player can shoot
  • At higher speed, no shooting is possible, but the turtle can quickly travel between islands.

The turtle in-game.

In order to give more feedback to the player while travelling on the turtle, I used lots of little tricks:
  • Foam and ripples behind the turtle
  • Little water splashes
  • Random bigger water splashes
  • Water trail behind the fins
And for the highest speed
  • Wind trails around the turtle
  • Shorter camera focal length
  • Fish eye effect to accentuate the speed feel

And in both cases, additionnal turtles randomly spawn around to accompany the player for a few seconds. This gives a bit of life to the travel!

Riding turtles!


II - Cyclic world


If the player can go everywhere on his turtle, this raises the question of the world limits. I can simply put some kind of uncrossable wall/mountain/obstacle at the edge of the map, but I don't like this idea. It goes against the freedom feeling I want to give to the player.

So I chose to make a cyclic/tile-able world. The idea is that if the player leaves the map on a side, it re-appears on the other side. Basically, this is a "simple" translation of the player. However, there is a lot of other objects to "teleport" to the other side of the map: particle effects around the turtle, other turtles, all the projectiles that the player can shoot, and of course the camera, which is a bit tricky, because it has a very smooth movement based on previous position and velocity that I must recompute after teleportation.

Another problem is that there is a specific kind of object that I can't translate: trails... because they are dynamically computed in the world space and I can't access the information of vertex position (this is a limitation of Unity, I guess because it is cached in the GPU in some way). So I can't move them, and I can't recreate them on the other side of the map by copying and translating vertex positions.
If I don't teleport the trails, this creates a very visible glitch during teleportation: they suddenly disappear. I finally chose to make them disappear progressively while the player approaches the map border, which is hardly noticeable.

If the player sails exactly on a border, a new problem appears: I don't want to teleport him on nearly every frame (this can be a heavy operation depending on the number of objects to teleport). So, I wait for the player to go past X meters beyond the map border before teleporting him to X meter inside the opposite map border. This creates an "hysteresis" behaviour which prevents multiple teleportation calls and drastically improves the frame rate on map edges.

Additionally, instantly teleporting the player and the camera can create a break in the ocean animation. To avoid this behaviour, I had to carefully tune all ocean texture scales to be sure the global period matches the world size, but at the same time I wanted to avoid obvious repetitions... Another compromise to make by playing with prime numbers!

I also had to work on a few other "little" things: adding wave/water sound while moving the turtle, creating the "horn" sound which is used to call the turtle (this will be justified in the story), collision tests with islands, ... I can't talk about everything here!
And here's how it feels at the moment:

You can notice the cyclic world thanks to the basic grass square island. Of course, in the end game, it will be real islands. This is only a technical test.

Finally, riding the turtle is kinda cool! Of course, I should add more objects on the ocean to give it more life (floating barrels, plants, barges, boats, fishes, and other sea animals), but, each time, I'll have to deal with the teleportation problem. I'll also have to carefully position islands far enough from the map edges so that they won't suddenly appear when the player is teleported.

See you next time!
Peace!