Archive for the ‘Programming’ Category

Happy Programmers’ Day

Friday, September 13th, 2013

A few months ago, we celebrated the Moustache Day. Yesterday was the Video Games Day and we celebrated it, as well, the best we could by spending more time with games we like. But today is one of the most important days of the year for Fishing Cactus. Today is the Programmers’ Day and we decided to make a special post dedicated to our beloved programmers who are working very hard these days on a couple of secret awesome new games.  Also, we would like to thank programmers all over the world for the good work they do to improve our everyday lives.

fc_prog_team

 Nowadays, coding is coming to every industry you can think of. From your Facebook page to your newspaper online, including games and apps on your Smartphone, it’s everywhere. Without even knowing it, coding turns out to be the most important and desirable skill there is. It’s huge part of our future. At Fishing Cactus we are completely aware of that and that’s the reason why our Artists and Game Designers worked hand in hand with our Programmers to create a very special game named Algo-Bot. Games are mostly related to coding, now discover a game that offers a real coding experience.

screenshot_small

Check out Algo-Bot’s Facebook page for more information about this coming game and feel free to spread the word all around you.

Creatures Online: live session round up

Thursday, July 4th, 2013

Creatures Online is now over and we would like to thank all the 85 of you who were on the chat and TUNED in to our Q/A. Special thanks to the ambassadors who helped in moderating this wonderful session. Our final thank is for ProSiebenSat.1 Games and Bigben Interactive who support us in our efforts.

Over 190 persons have seen the recorded version that was available on our twitch channel. Unfortunately this video has been deleted by Twitch.tv. But thanks to HelloInterloper, a version with the live chat has been recorded as well. And for those who haven’t seen those videos yet, you will be pleased to find below a third version with devs annotations.

We were extremely happy with the response to the livestream, hopefully we can get around to stream the game again up until the release.

montage_small

Creatures 4 : Procedural Fur Patterns

Friday, March 22nd, 2013

Many of you, in comments to our blog posts, during the Q&A chat sessions and also on Facebook, have shown curiosity regarding the procedural methods that we use to ensure that no two Norns look alike. Today we will be detailing how the Norn fur patterns are produced by our artists and coders. 

 

First things first. There are several breeds in the game, between 12 and 16, depending on what we manage to fit into the launch edition.

Up to a couple of months ago, our process for creating new breeds was rather messy to say the least, based on us trying to understand how to make the bricks turn into solid foundations that were still being designed. Uck!

We are in a far better spot now, which makes it actually fun to create a new breed :-)

It starts with one of us coming up with a cool idea for a Norn breed and defining some basic traits for the breed.

The second step is to prepare a reference art for the new Norn breed

Olivier and Antoine, two members of our awesome art team, work together to produce a concept art that conveys the traits of the breed.

WildlingNorn

 

This one above is a “Wildling Norn” by the way, a Norn that managed to escape from the safety of the Hatchery region and evolved in the wilderness.

 

Once we are satisfied with the art, Olivier’s procedural tinkering begins.

Two main goals here: first, to make sure two Norn from the same breed do not look the same (that’s one of the main perks of using procedural generation); second, to allow all the Norn breeds to be crossed together through natural breeding and gene splicing operations.

Each Norn is made of several texture layers, some procedural and some hard-set. Every element below can be swapped during breeding/splicing.

  1. One Skin texture: static picture that contains the underlying skin which is unique to every breed and can’t be “blended” with other skins. There are variations of these for male, female and elder Norns.
  2. “Belly” Texture: static texture that contains the belly spot most Norn breeds show.
  3. Eye texture & color: static texture. The color is pre-set in the texture, meaning that all Norns that are pure breed have the same eye color (of course they can be crossed with other breeds to exhibit another eye color). Heterochromia iridum is also determined by this texture. That means that a yellow and pink heterochromia will always be yellow/pink. While this is a limitation of the system, it bears the benefit that it allows us really setting in stones the look of a breed.
  4. Base fur color: while the color is not set in the texture, it is fixed for each breed during the creation in our tool (see below). At the moment two pure breed Norns have exactly the same color although we might end up adding some slight hue variations to further differentiate two same-breed Norns.
  5. Main Pattern: There are two pattern textures (which can be empty if needed). We call this the “main” pattern as it is usually used for the most recognizable visual markings.
  6. Main Pattern Color.
  7. Detail Pattern: Same as the previous one, but usually used for smaller dots and marks on the Norn fur.
  8. Detail Pattern Color.

 

Once Olivier has completed the technical design of the pattern and produced the required visual assets, the last step is to assemble all of the above in our Norn creation tool. It’s a web based tool that allows us to push new breeds into the game and preview them in real time. It’s pretty neat!

You can see that the information here is grouped into 8 boxes. This is important as they correspond to the 8 genes that define the Norn visual look. More on that in a further blog post about splicing ;-)

 

viewer

As a side note, this creation system allows us to specify cosmetic differences reliant on gender/age but truth to be told, we haven’t gotten around to use this cool feature yet, due to time constraints.

 

The assets themselves are produced as follows:

The static textures are produced in Adobe Photoshop as standard character textures.

 

texture02

 

The procedural textures are generated in an open source tool that allows basic 2D patterns to vary depending on several parameters defined by the artist. 

procedural_patterns

 

This is really cool because even if two Norns have the same pattern (eg. The gene is the same), the pattern will be generated and applied a bit differently on each Norn.

patterns_demo

 

 

 

Once that step is finished, the only thing left to do is to preview the Norn in the game. Tada!

 

wildling_ingame

 

Hoping that this brief overview gives you a better understanding of how the Norn cosmetics are created. Obviously the goal of all this is simple, making sure no two Norns are exactly equal and give you bazillions of possibilities for combinations!

We’re pretty sure you’ll have even more questions after this post and we’ll do our best to answer them, just keep in mind that part of our team is at GDC next week so replies may take a little longer than usual (okaaay, we’re not THAT quick usually, but still, you get my point :-)

 

UPDATE: fixed a couple of link to full-sized pictures

Valentine Special: “Ultimate Care Bear Love Rampage” (Arcade title made in two days during Global Game Jam)

Thursday, February 14th, 2013

flip

Arriving At The Global Game Jam

That they work all day every day on Creatures 4 is normal. It’s their job. That they keep working on it overtime, long nights and during weekends is somewhat understandable. For it’s their passion too. But when we unleashed our Andrea DiStefano, Samuel Languy and Gauthier Billot for two days off so that they can relax and recharge the batteries a bit, we didn’t quite expect that they’d go ahead and build another game from scratch during their spare time. Yet that’s exactly what they’ve done two weeks ago during Global Game Jam. They were accompanied in their little escapade by our Fabrice Lété and Guillaume Bouckaert, though the latter both ended up working with other dev teams once on site.

 

 

IMG_2530For those who are not familiar with it, Global Game Jam is a regular worldwide effort organized by a central entity that coordinates all local chapters. The concept is both simple and amazing: on a given day, game developers and artists from around the globe, professional or hobbyist alike, set up locations in their region, where they meet and… Improvise the creation of video games on the fly. By the end of the event, the games must be finished.

The latest Global Game Jam took place between January 25th and 27th, and the Belgium scene gathered to the Design Center of Winkelhaak (Antwerp area) for the meet-up. Our three nutjobs only joined the partay on the Saturday ;-)  

 

doubleThe Ultimate Care Bear Love Rampage

Upon arrival on the set, two things immediately grabbed our gang’s attention. First, the camping tents in the corner of the room. Then, a fascinating object had already caught their eye:  the Winnitron indie Arcade system. Already existing in Canada, Shanghai and New Zealand, the collective-spirited retro system was introduced to Belgium for the occasion. A stick and two buttons over a stylish wooden cabinet. 

Take off your jacket. Code, draw, assemble. Don’t stop until they tell you to. Gauthier Billot took the lead on the actual coding, assisted in that by Sam Languy, who also handled sound and music on the side (he actually kept tweaking the main track for a week after, in the car-pool ride to work that he shares with Andrea every morning – note that his creation scooped the prize for “best sound”). Andrea drew the graphic assets to change his mind from his game designer routine. No real director to speak of, our three stooges pretty much decided the mechanics and the flow of the game collectively, in iteration and in consensus. 

The game was built upon the Love 2D multi-platform technology, using a Linux PC, a Windows PC and a MAC. It relies on the Winnitron Frameworks to run on Arcade machines. Maps were created with Tiled software. The underlying concept is clearly and blatantly borrowed from Halfbrick’s brilliant Jetpack Joyride. You press a button to go up, and release it to go down. But there’s a tiny twist that the crew borrowed from some frantic button-mashing titles of our youth, such as Track’n'Field: sometimes to floats upwards, you have to rapidly and repeatedly tap the A and B buttons at the same time until you break a sweat out of it. The action gets increasingly hectic as you progress. Levels are generated randomly. You can play the game alone or against a friend. 

In lieu of Barry Steakfries, the central character you control is an adorable care-bear made of thick and blocky 8-bit era pixels. Don’t be fooled by its cuteness though: it is out for rampage. There’s your title right there. Just throw in an “Ultimate” at the beginning for the wow-factor, and add the word “Love” somewhere in the middle because it’s got heart (and pixelated hearts assets too) — And that’s a wrap. Happy Valentine’s Day everybody!

You can freely download the game file from here

Special thanks to Wim Wouters for setting up the GGJ belgian chapter and making this wonderful weekend possible. Here below some more pictures of the event that he took.

If you recently tried to comment to our blog articles in the section below and found yourself stuck because of not having an account, please note that guest-commenting was disabled by mistake earlier (we omitted to toggle an option off during our Disqus plug-in implementation)… Guest posts are now enabled again! So if you don’t like sharing private information at the same as your opinions, you can take it easy and feel free to speak out anonymously again!

Creatures 4: Underneath the Norn’s Fur

Friday, February 1st, 2013

shii_okay_smallUnderneath Creatures 4, like in previous episodes, there’s an entire matrix of codes and parameters that determine the behavior of Norns and their interactions with the eco-system. Today, we’re going under the hood to delve deeper into the mechanics and the inner-workings of a Norn, and present you with an overview of the in-house tools we used to debug our little creatures’ behavior.

In the making of Creatures 4, the main challenge resides in the fact that every time you implement a new feature, or change the way the Norns behave just a tiny bit, you need to go through hours of play-testing to make sure you didn’t mess up the complete balance of the game, that the various scenarios remain bug-free. This, knowing all the way that you can never truly harness a Norn’s behavior, since it’s conditioned by countless personal and environmental factors.

To this end, our tech wizards have developed several tools to monitor and debug our implementation of the original Creatures AI. As we established in previous posts, moving the Creatures engine to 3D proved to be a more daunting task than expected, for which we needed constant access to a certain set of variables.

Over the past year, our programmers have spent a lot of time on in-game debugging tools that help our game designers track the Norns’ attitudes as well as their environment. You’ll find some exclusive screenshots of these debugging tools here below.

The standard Creatures 4 in-game view, free of debugging clutter:

00_ingame_small

 Crowd/Physics status

 This view informs us about the status of our crowd management system (avoiding collision between agents) as well as the physics for each agent in the world.

Most agents in this demo-screen have been put in “custom” state which basically means they are doing something script-specific and do not belong in special groups like physics or crowd.

01_crowd_physics_small

 Attributes and Scripts

Opposite to what all the visual clutter would have you believe, this is one of the most informative views. It shows many properties for each agent: attributes, instinctive/genetic behaviors, category, running script etc. All this determines what a Norn can do with each agent in the world (e.g. an attribute sets a flower as eatable by a Norn).

02_agent_attributes_small

 Facial expressions

Norns have several facial expressions that inform the player on their current status or mood. Facial expressions are triggered by a sum of parameters that determine which expression has the higher “weight” and should therefore be displayed. This algorithmic approach makes the process slightly more opaque than simple “Norn is happy –> happy face”. What expression is displayed when a Norn is both happy and hungry? Which has priority between hunger and sleepiness?

While some choices are obvious (pain often wins), some are not. Hence, the debug options!

03_facial_expressions_small

Senses Range

The Norn’s focus and path are partly driven by its senses. Sight, hearing and smell play an important role in an agent catching the Norn’s attention.

Below you can glimpse at a Norn’s sight and hearing ranges, represented by the blue and green outlines respectively.

Each ray tells the ability for a Norn to see each agent. If the line is white, the agent can be seen; if it is red, rather not. The environment’s geometry is taken into account to compute this: in this case, most visible agents are on the same height as the Norn.

Hearing range is pretty self-explanatory.

04_view_hearing_range_small

 This picture below shows the smell propagation. In Creatures, smells are called Cellular Automata (CA). Technically speaking, CAs are not exclusively used for smell, they can be means to other ends, such as giving the Norn a sentiment of “being at home”. Still, most of the time we use them for smells and to be honest, we still have to tweak a lot of them.

The propagation display is made of small spheres: you can see some spheres fading out on the border of the screen… At those spots, the potency of the smell is lower.

05_smell_CA_propagation_small

 Outside the game, a handy webpage allows us to monitor the Norn’s drives and decisions. We can also access all this data in the game itself, through the science kit, but this raw and dry mode makes batch-processing tasks much more efficient.

06_chem

 Please note that, like in previous installments of the series, each Norn still has a set of organs that simulate its digestive system and comes into factor to determine when a Norn contracts an illness. They also carry an artificial “brain” so to speak, and are interiorly affected by over 150 chemical elements. And of course, genomes enter into play as much as before, naturally – After all, Creatures is essentially a Genetic Game, we’re kind of going all-in on this particular aspect ;-) Our next blog article will actually focus on that: genes and what you can do with them, breeding, splicingEndless possibilities really. If you didn’t catch it yet, we’ve released a teaser pic of various breeds on Instagram earlier this week!

If you recently tried to comment to our blog articles in the section below and found yourself stuck because of not having an account, please note that guest-commenting was disabled by mistake earlier (we omitted to toggle an option off during our Disqus plug-in implementation)… Guest posts are now enabled again! So if you don’t like sharing private information at the same as your opinions, you can take it easy and feel free to speak out anonymously again!

Algo-Bot – How does a robot think?

Monday, January 7th, 2013

So we’ve established that Algo-Bot is a game that will teach you the logic of programming. How are we going to do that without being dull and boring? That’s a very good question, and one that we actually asked ourselves when we took on the project. Luckily enough, we think we found the answer.

In Algo-Bot, you’re given control of a little robot dude. You don’t control him directly, you don’t make him jump on mushrooms by pressing a single button either. Instead, you set up a sequence of orders for him: go straight, turn left, go straight again, turn right, etc … . When you’re done creating your little sequence, you pass it onto the robot: it will go around the power plant, following your orders. In a nutshell, the player manipulates sequential commands to order Algo-Bot around in an attempt to reach the given goal of the level.

Of course, your little robot can’t just roam freely, it has a job to perform. It must carry around toxic containers, sort them out and re-arrange them, and call on smaller robots to help him when he has too much. And you have to provide him with orders for every step that he takes.

Imagine the following situation: you have to get your robot around a specific arranged path, and you can see that this path is repeated a few times along a mission. What you have to do thus is to create a separate sequence of orders that you call each time you want the robot to go through that path. Exactly like how functions work in real programming! By solving small problems in the game, you’re learning the logic behind it all. You’ll be able to play with programming concepts such as variables, functions, conditions and groups.

So that’s our Algo-Bot for you. We’re currently in finalization stage with this Serious Game and we hope to deliver it by the end of the month. Be sure to check it out when it comes out! We’ll of course keep you abreast when it does.

 

 

Algo-Bot – The Game About Coding a Game

Thursday, January 3rd, 2013

Have you ever wanted to learn programming, but were too intimidated to give it a try? Were you turned off by the logic intricacies that programming requires? Well, here at Fishing Cactus, we are currently working on a Serious Game that will help you with that. The game is about Algo-bot, a cool little robot that’s here to teach you the basics of coding. So, grab your cup of coffee, here the story begins.

A few months ago, Technobel tasked us with making a game that would be used at their training center. So we set out to create a game that will help people grasp the essential skills of logic that the programming craft requires. And that’s how our little Algo-bot was born. 

 

 

The Algo-bot world is one of leaking toxic containers, industrial crates and stubborn little robots. It takes place inside an unspecified power plant, in an unspecified future, with an unspecified number of hazardous things waiting for you. Fortunately, there is one thing that is specified: the gameplay!

We know how hard it can sometimes be to wrap one’s head around some of the concepts of programming (been there, done that, bought the t-shirt), so we made sure that you were appropriately supervised.

There are two characters in Algo-bot that will help you throughout the game: Tina, and the Director. Tina is the mechanical engineer of the power plant. She’s not afraid of getting her hands dirty, works hard, and likes to crack a good joke once in awhile. She’s there to help you learn the basics of the game and give you some tips when you get overwhelmed.

The director, as his name suggests, is the big boss of the power plant. He’s not funny. He’s stubborn and only concerned about one thing: efficiency in programming. He will remind you of that fact whenever an opportunity for optimization presents itself.

Next post, our designer will take you through the gameplay mechanics of Algo-bot right in this column. Come back for more later ;-)

Get a stake in Piratoons through Gambitious!

Wednesday, September 26th, 2012

Ever dreamt of being a big shot producer or a powerful entertainment mogul? This is your chance to get started.

Piratoons_title_thumb We have listed our next hit project on Gambitious, and everybody is welcome to invest in it and actually own a piece of the revenue share! Think of it as an evolved Kickstarter: by investing, you get more than a few perks and collectible gifts; you essentially become a stakeholder in the venture. Gambitious is basically like an online stock exchange for game properties.

The game project we have selected for this, titled Piratoons, is in very early stages of development and has been identified as having strong franchise potential.

Now sit back and relax, Mr. Big, here’s our mind-blowing pitch for you:

Piratoons_Interface_thumb«Steer your ship along the tropical coastlines, upgrade it with new powerful and magical artifacts, recruit the most greedy pirate crew and engage in exciting real-time Match-3 battles to prove your skills and gather hefty amounts of doubloons!
Set sail for the search of the legendary Pelican Tooth, meet a great cast of wacky cartoon pirates, trade extraordinary goods, capture, protect and build harbors.
Piratoons lets you experience the warmth of the Caribbean Sea, its lush colors, seducing rhythms and extraordinary stories.»

Mind blown away? Feels like this is something you want to help making happen? Smells like a profitable opportunity? Then hop on board and let’s go quest for those hidden treasures together! Oh, and if you’re broke and want to help us get our games made anyway, you can still vote for Eyeball Invaders over at Steam Greenlight completely free of charge ;-)

Master Shee lessons-time on Creatures 2!

Friday, September 14th, 2012

Creatures 4 - Master Shee Yeah!The history lessons of Master Shee keep going! This time about Creatures 2.

The action still takes place in Albia, but centuries have gone by and the planet has been destroyed by a volcanic eruption caused by the taking off of Lone Shee’s spaceship, called Capillata.

Lone Shee is a bit of a geek type scientist. He was so focused on his research on the Warp (a system to transport Norns over the Internet) he didn’t quite notice his friends abandoning the planet on The Ark and leaving him behind!

Creatures 2_thumbSo he took his spaceship and used the volcano to boost it into space and started searching for the other members of his species.

Rumors says he hates the orange color, is furred, invented the Albian beer, loves tea and chocolate cookies and can smell Grendels from miles away.

In C2, the Lone Shee let Ettins in charge of the destroyed Albia, but they actually became a nuisance by stealing everything they found lying around. He admits himself it wasn’t his best move. Players however kind of enjoyed it because they could finally breed a new species!

Creatures 2_thumbThe most interesting improvement of this sequel is its ecosystem. However, due to the game complexity, a bug made its first appearance, dubbed the OHSS (the One Hour Stupidity Syndrome). This illness caused the affected Norns to become totally idiots after one hour of play, forgetting important things like how to eat or sleep.

The first Norn on Creatures 2 had a name too and it was Alice, this time.

You can close your history books for today. Class dismissed. See you all next week!

Giant kinect experience by FC @Festival VIA

Friday, March 30th, 2012

Hey guys, yesterday was an incredible night as both Fishing Cactus, Microsoft Innovation Center and Technocité presented the games created by students during the Kinect Camp at the VIA festival. It was even cooler as the games were projected on a huge big screen on the “grand place” in Mons near the city theatre. Just take a look at the screenshot below.

Giant Kinect Gaming Experience

(more…)