Showing posts with label Design. Show all posts
Showing posts with label Design. Show all posts

Wednesday, 4 March 2020

The story so far...

Do you like reading?
More than looking at pictures?
Good.
Here we go.

It all started when Francisco was 6 years old.
As a young and excited boy that he was, Francisco would play videogames for hours on end.
His parents still recall that one time when they thought he was crying because some bully made fun of him on the playground. No. Those were 10 hour long CRT videogame tears. The best kind of tears.
Yes. Because back in the day real men (or boys in this case) would play videogames on Cathodic Ray Tube TVs. You know, the glass box with a huge light bulb inside directly pointed at your eyeballs.

 
If you look closely, you can see the tears in Francisco's eyes (he is the one holding the controller)

Some years passed and Francis, now a young man, decided he would take on his life long dream of creating videogames by enrolling on a videogame course.
He decided to go to the best videogame course in Lisbon* where the best teachers taught. The Videogames and Animation HND course. There he met the greatest videogame developer (and teacher) of all time, Filipe**.
Together with Filipe, he learned that making videogames made him no money whatsoever. After all, why was he there teaching videogames instead of making them?
Money.
Obviously.

Filipe teaching... somewhere... something... in very low res

*We've heard it lost its charm recently
**He paid us to say this


During his tenure at Etic, Fran worked on a concept for a new and interesting videogame.
A platformer game about a little boy escaping from a factory. He would use his spear to construct his own platforms and activate buttons and things.
Helped by the greatest videogame course coordinator of all time***, Ivan, Fran and his colleague Vasco from IST, worked on Out of Line for 3 months so that they could apply to the 2018 PlayStation Awards.

Francisco and Vasco at Etic "studying" videogames
***He also paid us to say this

Amazingly and without anyone expecting it, they won the Portuguese PlayStation Awards!
They won the Best Game and the Press Award. They took home 10.000€, a PS4 dev kit and 50.000€ worth of marketing money,

Francisco and Vasco at the 2018 PlayStation Awards in Lisbon

Obviously, F knew that this was not normal as videogames normally don't make any money, so he asked Fil if he and his company Nerd Monkeys could help in organizing and producing the full videogame.
Fil met with Nerd Monkeys co-founder Diogo and Etic coordinator Iv. to discuss if this was a viable proposition.
After pretending for some time that they were not interested and that they didn't need more money or projects, they accepted.

(We searched for a photo of Ivan but couldn't find it. Maybe next time.)

Meanwhile, V. decided to pursue other cool projects and a new programmer was brought in.
João Genebra, or as we like to call him, J. worked on a brand new build and started everything from scratch with F.
After that, F. spent an entire year with F., J. and D. at N.M.working to get O.L. into a reliable V.S.

This is the strangest photo we could find of the team working

Nevermind, maybe this one is stranger
Finally and after almost 1,5 years of developing, showing, pitching and producing the team managed to get a deal with a publisher to get the game out the door.

But since we can't talk about the deal, the money or the publisher yet, the "story so far" ends here.
In its due time, we will get back to this and tell you the rest of the story, hopefully after a successful launch.

Until then...
Chop chop lollipop.

Tuesday, 11 February 2020

Production report = The boring post

Production report!
To all those of you out there waiting on more art and animation (or even code... argh) today is a sad day. Well for most of you anyway, there is always that one person that loves to hear production reports. So this post... is for you... with all our love (xoxo)


Weekly meetings = Boring stuff

One of the most important things we do every week is the weekly meeting.
We gather all the team in one place and discuss the work that was done last week, and the work we will be doing on the next. Kind of like a cult, except we make videogames instead of killing ourselves.

These meetings usually start at 10am and can stretch for an hour or two. Not everyone stays until the end. Normally it starts with everyone discussing general problems and then smaller and smaller groups to discuss specific problems related to code, design, art etc.
Usually whenever we start discussing code, somebody falls asleep. We can't blame them, really.
Code is boring. That's why everyone leaves and goes back to work.

A typical meeting at Nerd Monkey's office. In the photo, Diogo and Francisco discuss design.

Also, at the start of each month, the entire team plays the latest build and gives feedback on everything. Even if everyone has played the build lately, it is always important to voice everyone's opinion as most of the times, some new idea or solution pops up from the most unexpected team member.
Except for Diogo. Nobody likes ideas from Diogo.


Organizing production = More boring stuff


The start of the week also signals the start of a sprint. We do weekly sprints and keep everything tied to these tiny focused loops of work. For keeping track of current and upcoming sprints, tasks, objectives, milestones and everything else we use Altassian Jira.

Old Jira promotional screenshot. What? You thought we would take a screenshot of our own work?

Up until recently we were using Gitlab on our own server. But due to the growing team and the need for a more dedicated tracking, we decided to jump to Jira. The IT guy wanted to kill us when Filipe told him we were done with Gitlab and all that work implementing it in our server would be thrown out. Oh well. We hope he learned his lesson. Also, our budget just increased! Cool.
Yeah, he should have studied something else. Back to school with you, boy!

Jira is an interesting piece of software. It can be used online or downloaded to be placed on our server (we won't be doing that, now. Obviously). Currently there is a free version with a 10 person limit which is perfect for most indie teams. It allows for connection and sharing with other tools like Slack, Google Drive, Confluence, Trello, and many others.
NO, it does not connect with Microsoft Messenger, MOM. Jesus!

We are also currently placing all our bugs there, but when we get to Beta we will probably move that to a more dedicated platform for bug reporting.

We continue to use Gitlab for many other things including our own dedicated Wiki.
And our wiki contains a big outline of... Out of Line... hehehe. Yes.


Files and online meetings = Even more boring stuff

We are always all online in Hangouts. Even though the entire team works in a physical office, this way if someone was out for one day of work or decided to stay home to work from there, can keep track of any important announcements. Also: memes.

For overall trips, vacations, days off or any other events, we use Google Calendar. This tool is very useful as it can be easily implemented on your phone (Android or iPhone but not Windows Phone) and synced to notify you of upcoming events. We can also all see at a glance the most important milestones without having to login to Jira or Gitlab.

Alongside the company Google Suite (nerdmonkeys.pt) we also make extensive use of Google Drive, mainly Sheets, Docs and Slides for all our documentation. We usually write in English to make sure that anyone on the team can read them. They are also usually very useful for pitches, presentations and any other occasions.


Yeap, another promotional screenshot. Easy to tell by the Cortana search still on in the lower left corner.

Production Repor-BOOOORRRRRRIIIIINNNNGGGG!

Finally the production report. Every month an email is written where a breakdown of the production with all its achievements, decisions and on-going production is det-BOORRRIIIINNNNGG!

ARGH! - sigh - Well, that's it, I can't take much more of this anymore.

We are done here.

Hope that one person that we love so much actually liked reading this blog post. Next time we will be going back into the things that matter like art, animation, music and such... except for code.

Catch us on Twitter!
Don't panic, flight mechanic!

Thursday, 23 January 2020

New San, new life

Out with the old and in with the new!
San has a new design!

Yeap, we changed how he looks, how he animates and even how he interacts with the environment and his spear. After an exhausting design and review process we ended up with a cool new version of our main character.

New San on the LEFT and old San on the RIGHT


A Photoshop mockup. Actual size of the final character in-game is slightly different.

Of course the change wasn't done just like THAT. There were tons of studies done, TONS!

So, the focus for the new designs was to try and find a more likable and relatable character while also improving upon the original design. We also needed to give more emphasis in to the character movements and the way he can express himself so we started heading towards a slightly taller character, testing new forms, colors and other options for his eyes.

You can still ear the sad voices of all these characters saying "pick me... pick me... pick me..."

A chord was struck, the design started to lean more towards the taller characters. Also... COLORS!

Some final attempts to try something completely different and opposite. Note: one of these is not like the others.

We were all a bit worried when trying to change the character into something new as everyone in the team got attached to the "old" San. But the future is here... or there... it's somewhere, I guess. So there... or here?

That's it! We are really happy with the new design and the team is happily working on a lot of other things that we can't wait to show you. Mainly how the new San is animated! We will show it on our next blog post.

Don't forget to follow Out of Line on Twitter on take a bigger leap of faith and follow some of the team's personal Twitter accounts (we are not responsible for what you find there).

The Official account - Out of Line @outofline_game
The Visionary - Francisco Santos @FranciscoMSart
The Programmer - João Genebra @genebruhh
The Producer - Diogo Vasconcelos @diogostuart
The Co-Producer - Filipe Duarte Pina @FilipeDPina
The Designer -  Wilson Almeida @foolean_logic


Get the point, double joint?

Monday, 11 November 2019

It's the little things

Here's a secret,
Inside the world of Out of Line, there are little bugs that roam around the factory. These bugs live their own happy lives doing the things they like to do more, like eat, sleep and play.
But when San comes along, they see in him someone who they can play with, someone they can have fun and maybe even help.


Bugs in Spine, from Esoteric Software

 "And there they were, in a pack of three, strutting along the grass and moss that grew over the years on top of all the machinery. As San watched them move out of the cave in the ground they were hiding in, they stopped and watched back. Silence. Both the creatures and San stood still for a moment, like two cats trying to predict each others movements. San took the first step and they did the same, even if was not just one step as their tiny feet and legs needed to take 4 or 5 steps to match him. A few more steps and some more mimicking and, after a while, San and the little things were hoping and moving about as if they had been friends for a very long time.
For a moment, San forgot where he was and the danger he was in and happiness filled the air."

Simulating AI and cooperative gameplay

For the bugs to work properly, it was first necessary to design around them. Artificial Intelligence is still a long way to become what people think it will become, so every videogame uses just a rudimentary form of AI for basic actions, functions or sometime just even simple scripts that make it look like the character has real life.

A section of one of Out of Line's level

The little bugs following San around

In Out of Line our AI is just that, chained scripts that perform counter to what the player does. They wait for triggers, delays, changes and other small things that the player does and then react accordingly. This allows us to design some cool and interesting puzzles based around the "intelligent" bugs that help out San.

Until next time,
Snug as a bug in a rug with a mug!

Monday, 7 October 2019

Designing levels

Hi there, "Out of Liners"!
Last time, we talked about a new rope mechanic and showed some photos from the team!
This caused an avalanche* of letters from the fans begging us to stop trying to be funny and stop showing our faces. Most of them said they wanted to see more about game development and less about what our desks look like.
Well, THEN. OK, "FANS"! We will stop trying to be funny and act more serious from now on. Except for that one fan that asked for more photos of Genebra, but also asked for them to be sent in private? Argh. Just no, ok? NO.
*two

So, this week we decided to focus more on level designing and less on team photos. Specifically more about level design.

A game is nothing without proper game design and level design, and to get there things must be tried, tested and constantly changed. A good designer knows when to listen to feedback and implement it back in the game. That's why it's so very important to not take your own ideas and designs too personal. Clinging to a concept or idea because "it's yours" without listening to what your team is saying can actually ruin a design or even an entire game. Of course it's also important to know how to take an opinion and use it wisely.
As an example, and because we don't want to spoil the game, let's focus on a key area from the Vertical Slice that we showed last year at Lisboa Games Week 2018.



Out of Line at Lisbon Games Week 2018

This section is right at the beginning of the current Vertical Slice*
There are three jumps that the player needs to make. Also, each hole has rocks passing through them.
It shows to the player that he can just jump over each hole, by timing his jumps just right. But if the player is smart and learned the initial lessons well, he will use the spear to create an extra platform so its easier to jump. Ultimately, if the player is really smart, he will figure out quickly he can just clog the top pipes with the spear so that they stop spiting rocks.

*A Vertical Slice is a completed section of the game that shows how the game will look when it's finished. It normally also includes all final game mechanics.

Original drawing that includes the first version of the jumps and rocks section


When we showed the Vertical Slice at Lisboa Games Week 2018, we noticed a slight problem. The 2D platforms, even though they are 2D, they are drawn as if they had perspective. This caused a problem for people timing their jumps. Almost everyone thought they could walk much further than what they actually could, which meant they would always fall before hitting the jump button. The way the art was drawn actually induced player error so we had to fix it.

Changing the art made no sense. Every other puzzle, gameplay section and overall design looked good, played well and nobody complained, but getting the right amount of physical area for people to jump was tricky. Too little and San would usually fall to his death, too much and San would appear to float on air.


Jump section with rocks falling
The decision was simple, we would allow a bit of "coyote time" for all platforms. "Coyote time" is the notion that, in a platformer game, if you jump a little bit too late, the jump still works. This is particularly evident in endless runner type games. Canabalt achieves this by having the player's hitbox actually 8 to 10 pixels behind the visible sprite.
Implementing it was not hard and it was just a matter of testing how much "coytote time" we would allow San to have. In the end San has 80 milliseconds where he can still make a successful jump.


Coyote time. Notice where the shadow disappears

This is one way to safely jump across

A smarter way is just to straight clog up the pipes


Thanks for everyone for following our dev-adventures.
Remeber to check our Twitter and feel free to send us some messages, except for the person that asked for Genebra's photos, please stop.
Bye-bye, French fry!

Monday, 16 September 2019

Rope mechanics

Hello "Out of Liners"!
Is that a thing? Let's make that a thing.

We have been busy all through out our Portuguese summer and the team worked hard on two big things. The first was all about implementing a first version of the entire levels from start to finish into Unity. The second was designing, testing and polishing a new feature, the rope mechanic.
We won't be showing the levels design as that would be a major spoiler but we will show and talk about the awesome new and cool rope mechanic.

The rope mechanic
Now, whats better that being able to throw a spear and use it as a platform? What about attaching a rope to said spear and use the rope as a transversal mechanic? Hum? What? You've seen this before? Pfff, shut up. Our is a much better rope mechanic than any previous rope mechanics. We call it the Incredible Rope Mechanic™



Programming the rope mechanic
For the rope implementation, the main characteristics we wanted it to have was for it to be able to withstand the player's weight and other objects and have a dynamic length.

To withstand the weight, the solution was to have as few segments as possible composing the rope to reduce the tension between each segment's hinges. The problem with this is that visually, the rope looks really blocky and you can clearly see each individual segment, so we just make the segments invisible and simply draw a line by interpolating the positions of all the segments.

In terms of the dynamic length, this was necessary due to the fact that when the spear is thrown, we don't know how long it needs to be. The solution was to set a ratio of segments per distance and activate/deactivate each segment as needed. If the rope needs to stretch, more segments are activated. If the rope needs to shorten, more segments are deactivated. This way we make sure there aren't any gaps in between segments so nothing falls through the rope.





Rope transversal working with San transversal included
The idea came from the need to add a new mechanic to San's spear that did not look like just a power up but just a normal progression and adaptation of the spear to the environment. This is the overall idea of the game, not having power-ups and focus more on the story and transversal, so it makes sense that the spear evolves in the same manner.





Design ideas for possible in-game obstacles
The spear mechanics means we can connect objects we wouldn't in any other way. Examples; we can create connections / bridges between platforms to cross over; create crane systems and then use them to pull or push and control objects; lock moving objects like platforms or even enemies; etc.
Usually these bridges created by the spear can support objects, the main character and secondary characters.




We can't show you much of our ideas as we implement and design the entire game, but you can see the team sweating as they endure the Portuguese heat. Can you feel it? Even San is digitally sweating.

Francisco and João laugh as they have no clue how to actually make a game

We have no rulers in the office so everything is measured in a more traditional fashion

The rope mechanic being test by João Genebra, the Incredible Rope Mechanic™ programmer

Testing out a build on the PlayStation4... with a PlayStation4 controller... in a PlayStation4 DevKit... you get the idea
Thanks for following our little blog, please check out our Twitter and drop us a like.
In a while, crocodile!

Monday, 29 July 2019

Character animations


Hi there, Out of Line followers!
So much stuff to talk about!...and ...PRESS START!

Character Animation
If you are a fan (which we know you are... yes, YOU), you've noticed the way San moves has changed a lot since production started. He now moves STYLISHLY :)

San running in Unity engine


The reason for this is that we decided to completely revamp the way we animate our characters.
Our previous prototypes were made with frame-by-frame animations. This looked cool enough but presented a lot of challenges and limitations. It took a long time to animate, changing something was very painful as it meant redoing entire animations, we were limited to what type of interactions we could do, yada, yada, yada, the list is LONG!

So we decided to change to a 2D skeleton type of animation. We know a lot of games have been doing this now for some time, but it only became obvious this way was the way to go after we did it. This is a typical thing in videogame development, try things, they don't work as intended, try new things and so on. Keep doing this until you get it right.

The new animation system has a lot of advantages
- Easier to animate, create new animations, change them, etc.
- Animation is always dynamic and fluid since it is all skeleton based
- We can have IK for San's legs. This allows him to stand correctly in tilted terrain, respond to platform movements and even stand on his own spear!

Doesn't have
- A cool looking old school animation style
- More control over stretch and squash

Frame by frame
Skeleton based


Status of development
Overall work is going nicely, lot's of new things to talk about in the upcoming weeks and months.
The PlayStation 4 build is looking steady and stable and the team keeps working hard.
Expect some details on a new cool mechanic on our next blog post!

That's it!
Don't forget to follow us on Twitter!
See you later, alligator!