About Lipedal (twitter: @Lipedal)

I'm lead game designer and co-owner of small indie studio Luderia, based in Santa Maria, Brazil.

Entries

 
Ludum Dare 37
 
Ludum Dare 28

Lipedal's Trophies

Lipedal's Archive

Humanity Walks Into a Bar, asks for a post-mortem

Posted by (twitter: @Lipedal)
Monday, December 19th, 2016 3:42 pm

humanity-header

Last post here.

First things first, thank you all for playing Humanity Walks Into a Bar! We’ve been getting a lot of positive feedback and critique over the past days, and it’s been really awesome ūüėÄ

We’ve already uploaded the game on GameJolt and Itch.io and we’re doing small bugfixes, balance and performance improvements there, in the post-jam version. If you already played the jam build and liked what you saw, don’t forget to¬†give it a try in one of these other platforms!

So, let’s talk some¬†game design.

We had a bunch of things we wanted to try when diving into this Ludum Dare. A bit of background: @vexille666, @caua_fs and me (@lipedal) are¬†Luderia, an independent developer based in south Brazil that’s been in standby for a little over 2 years now. We work together at a larger company now, but the indie spirit had been itching for a while and we thought this¬†Ludum Dare would be a nice way of blowing off some steam.

One of our¬†desires was to make a “little computer people” simulator. We’ve always been fans of games such as Dwarf Fortress, The Sims and Peter Molyneux’s works, and we never got to make anything like those.

Little Computer People_Front

When we saw the theme was One Room, we decided it would be fun to¬†cram a¬†god game inside a single room. Perfect way to keep the scope within our capacity. “Humanity meets inside a room” would be the tagline, and Vex quickly arrived at the joke setup: Humanity walks into a bar…

We had a name, of all things. Humanity Walks Into a Bar. What do they do?

We wanted to make them “behave” first of all. Walk around, fight, reproduce, etc. That settled, two options appeared: The first one was putting some kind of danger inside the¬†room (like spikes, a pit or something), and prompt the player to somehow save as many creatures as he could. The second one was to try a concept from a few days before: creatures have a¬†different color each, and when they meet they have a child¬†whose color is the mix of her parents’.

We always try to go for the game mechanics and core systems of tension first ‚ÄĒ which would make the spiked room the obvious choice ‚ÄĒ, but we¬†were in the mood for trying¬†something different this time, so we¬†went for the second option.

The toy statement was: You watch colorful little people live, have kids and fight, toss them around, and see how your screen looks like after some time. The game would come after we had that set up.

There’s one line of thought that helped us find the¬†design¬†at¬†this point: It’s easy for us to brainstorm a game in terms of several events and scenarios, and harder to think of only a small set of systems that make these situations emerge. We wanted to avoid the former, when defining how the critters would behave. What I mean is, saying “They just¬†walk, fight and reproduce” is tighter and potentially better¬†than “They will do all sorts of stuff, they will drink beer if they see beer, interact with what furniture they come across,¬†protect their loved ones in situations of danger, etc”. We use to think in terms of several singular¬†narrative events, much because that’s the way we perceive our consumption of¬†games. But it’s been safer for us to try and¬†find¬†a couple of¬†systems that work together and open up¬†a larger set of scenarios. Aaand we just had 48+¬†hours.

After a good night of sleep, we defined the core behaviors.

Our little people would walk around randomly, and engage whenever they were close. When engaged, there would be 3 different outcomes: they would either be repelled by one another, fall in love and have a baby, or fight to the death. They would also die of old age.

The thing that regulates this behavior is a curve representing their “fertility” over time, or their perspective in life or something like that. Two fertiles make a¬†baby, two infertiles fight, anything else¬†makes them repel each other. The actual implementation is a little less binary than that, but that’s the idea.

That’s more like it

We wanted the behaviors to talk to one another: two creatures repelling each other would change the state of the board, potentially making one of them have kids with a third party, kids which would probably get into a fight as soon as they became adults, and so on. Although each particular individual was simple and predictable, Humanity as a whole acted as a fluid organism, scaling to a bar full of people loving and fighting in a couple minutes.

We still didn’t have the “game” though. We had something simple in mind, should all else fail: You watch colorful little people¬†live, have kids¬†and fight, toss them around, and try to get as many of them in as little time as possible.

A step forward from seeing how your screen looks like after some time. But it still didn’t sound compelling, and didn’t seem to fit well with the player’s interaction. At this point, we made eggs and little kids explode when the player tapped anywhere near them. Some tension at least: you want to get more people fast, but you can’t tap like crazy or you’re going to lose your young ones.

As it happens, tension alone doesn’t make for a good game. We noticed the winning move was not to play. The worst part of it was we weren’t using the colors for anything else than watching¬†new colors pop. A sad waste of resources.

vex-pessoinhas-unity-550x309

little-computer-people2

vfx-550x309

Meanwhile, Vex already had people engaging with each other, and Cauã was making good progress in the art and visual effects! What started as an unpretentious toy was getting so pretty we grew attached to it, and wanted a more gamelike loop for people to invest in and come back to.

Enter the notebook. Mainly in the first half of any project, I¬†resort to good old pen and paper to explore design solutions that may be hiding under the surface. It works great: sometimes I spend a whole week¬†searching for a solution while making other things, and can’t get to anything. But spend a day¬†on the notebook, writing in bottom gear, and all alternatives open up.

the-notebook

The process is basically trying to come up with the questions you’re trying to answer, and propose a series of possible answers, trying to be as free of preconceptions as possible. In Humanity’s case, the obvious answer I¬†got was: we were making a game about breeding colors, we were giving the player the tools to¬†manage that and making them¬†get good at it, and not using that¬†in any way.

I¬†don’t think I arrived at¬†the best gameplay Humanity could have, but it fits well with the¬†constraints we already had imposed on ourselves, and the time we had to solve it. As much as I liked what we ended up with, I feel like growing¬†the toy without any care for the game may have come with¬†its own issues.

The new game statement was: You watch colorful little people live, have kids and fight, and try to guide their paths to have the most different colors by the time the bar gets full.

UI-in-canvas

It was now a game about interfering on these creatures’ lives when you could take decisions better than them. It was about saving species from extinction…

wheel-1 wheel-2 wheel-3 wheel-4

… or playing¬†the mad scientist type and go¬†for¬†eugenics.

wheel-1wheel-2-2 wheel-3-2 wheel-4-2

That’s something that we aimed for and achieved to an extent: allowing the players to set their own goals and make the judgement about what is a win state. Of course, for us the real win state is getting as close to maximum colors as possible.¬†But as far as the game is concerned, every path you end up¬†taking with Humanity deserves a congratulation in the end.

After several tests we settled for 100 colors, to have a good amount of granularity and see how far would the players get. We found it weird, though, that scores used to hover around 85% of max, however you played it.

We ended Sunday with something that we considered finished, but lacking polish.

Something was still weird¬†about the game loop: you only discovered it was about getting as many colors as possible after the game was over, in the score screen. By Sunday night, I thought that was a cool thing. By Monday morning, not so much. It was all very abstract and loose until you finally saw¬†your final score. Playing¬†again didn’t help, because you still wouldn’t know anything for sure until 4 or 5 minutes in. We felt like we had failed making a barely enjoyable game out of our pretty little toy. My roughly assembled¬†UI wasn’t helping too, as it made Humanity¬†“too gamey”, without the good parts of being gamey.

Since we started documenting the development process, we expected a dark cave of sorts to¬†our “hero’s journey”. A low point before our¬†climax. What we didn’t expect was that it would come during work hours on Monday, make us anxious about the deadline, and have no conclusive answer. No good way to make the game¬†fun as hell, without starting from scratch or spend an extra couple days in implementing new mechanics. Just embracing the toy also wasn’t a very rewarding conclusion to our weekend journey.

As it turns out, there was still one small change that could be implemented and make a huge difference in how players perceived Humanity.

UI-in-canvas-colors

The color indicator! It was a wild guess at first, but we soon realised it completely changed the way people would interact with the game. It was now possible to assess your game state easily, and make more informed choices if you were going for a high score. As the bar-as-in-place gets full of people, the bar-as-in-HUD gets full of colors!

Me and Cau√£ had argued a bit¬†about the HUD in the previous night. I wanted to make things quick, and he wanted to make it beautiful. He likes to think of UIs¬†that fit the environment and the game’s fiction. So during our last rush on Monday night, he learned what he had to learn to make a diegetic UI, and put it to practice. It worked as a charm in maintaining the diorama aspect of Humanity Walks Into a Bar intact, and made the color indicator work without any further explanation.

phumanity-4

In the last hour before submissions finished (11 P.M. here in Brazil), we noticed yet another game-breaking issue we hadn’t noticed until then. As the colors filled in the bottom of the room, we were caught by surprise: kids were not taking into account their parents’ colors.

Blue + Red = Red? Green + Green = Orange?

Guilherme searched the code and found out that kids were being born at random. Since Saturday afternoon! We never had babies working properly, and still we believed in the game and were going to publish it without noticing that.

Luckily, that was quick to fix. Remember the score always being near the 85% mark? As if colors were spawning at random? The side effect of the fix was that now the score made complete sense, going from 1 to a lot depending on how you played it.

So that’s how Humanity Walks Into a Bar came to be! It has issues mainly regarding feedback on the critters’ behaviors and the results of player actions, but we’re proud of what we managed to make. We’re in a real hurry at work, but Cau√£ and Vex¬†will also try to make post-mortems regarding art and programming respectively.

We hope you like Humanity Walks Into a Bar, and vote on it if you can :) We’re updating the game with fixes and balance changes in both GameJolt and Itch.io.¬†Eggs don’t crack as easily now, and Vex fixed an¬†endgame issue that kept you from finishing it unless you were really good at it. We also have dying folks turning into ghosts, and a neat screenshake when you click! So if you like what you see here, make sure to give the latest version¬†a try ūüėÄ

Thanks for all the love, and have a great week!

humanity-is-over

Humanity Walks Into a Bar, doesn’t know any good bar jokes

Posted by (twitter: @Lipedal)
Monday, December 12th, 2016 11:52 pm

Last post here. (seems like aeons ago)

After a long dark cave, we finally made it!

Humanity Walks Into a Bar is complete, click here to play.

Pasted image at 2016_12_12 11_37 PM

For those not following Humanity in the past few days, it’s a tiny people simulator constricted to a single room. It was made by @caua_fs, @vexille666 and me (@lipedal).

The colored guys walk, love and fight according to their current perspectives on life, and eventually fill up the bar.

Pasted image at 2016_12_12 11_37 PM-1

Pasted image at 2016_12_12 11_36 PM

As the mighty hand of nature (or whatever you think it’s best), you interfere in their paths by throwing folks around.

Pasted image at 2016_12_12 11_36 PM-2

What will you do with humanity? How will it look like by the time the bar gets full?

Congratulations to all Ludum Dare participants! It’s been an amazing experience for us :) In the next couple days, we’ll share some more of our story and make a post-mortem on the victories and pitfalls of making Humanity Walks Into a Bar.

Enjoy Humanity Walks Into a Bar, share your screenshots, tell us what you think and let’s play some games! ūüėÄ

See ya!

(I lied about not knowing bar jokes. Past and Present walk into a bar. It was tense.)

Love is in the air

Posted by (twitter: @Lipedal)
Sunday, December 11th, 2016 1:53 pm

Last post here.

Hey, wanna see little computer people having a baby?

little-computer-people2

Red guy and green lady make love, they give birth to an orange-ish adult!

In fact, in Vex’s computer they give birth to proper kids, but it still needs some work.

They also get repelled by one another or fight to the death, depending on their current perspective on life.

I made simple animations for each of these events, and Cau√£ is working on cool visual effects:

vfx

Oh,¬†here’s a gif from before we went to sleep this morning:

That’s more like it

We still have lots of work ahead and not that much time, since we have to go back to our jobs¬†tomorrow and won’t be working on Humanity. Wish us luck!

Not quite

Posted by (twitter: @Lipedal)
Sunday, December 11th, 2016 12:51 am

Trials and Tribulations

Posted by (twitter: @Lipedal)
Sunday, December 11th, 2016 12:05 am

Last post here.

So, we hit some lows tonight.

First of all, I had to go to a party and left @caua_fs and @vexille666 working alone in the game. Bad me.

When I got back they had had some awesome ideas on how to make things look pretty. It’s not 100% as of now, but it looks promising! ūüėÄ

foo-baregg

Then some things started misbehaving, namely the way the characters handle colors, and their luminosity.

null

Down here is little Sharon as she usually is.

girl-right

And here’s how she looks like when we apply the lighting layer. Hair looks messy and there’s something weird going on in¬†her pants.

girl-wrong

It’s basically the same sprite, she definitely shouldn’t do that :(

“You come here often?”

Posted by (twitter: @Lipedal)
Saturday, December 10th, 2016 3:19 pm

Last post here.

Such lovely creatures, look at them mingling!

View post on imgur.com

Colors are all random now, but they will play a part in how a play session evolves.

People look at each other and say…

Posted by (twitter: @Lipedal)
Saturday, December 10th, 2016 1:32 pm

Last post here.

Things are starting to take shape in Humanity Walks Into a Bar.

@vexille666 is setting the crowd¬†up in Unity. They’re already lovely!

vex-trabalhando

vex-pessoinhas-unity

@caua_fs made a mockup and is exporting some placeholder art.

caua-trabalhando

caua-bar-mockup

@lipedal is detailing¬†the behavior of the bar’s patrons and defining¬†their math.

felipe-trabalhando

felipe-caderno-design

That’s all¬†for now ūüėÄ

Humanity Walks Into a Bar…

Posted by (twitter: @Lipedal)
Saturday, December 10th, 2016 11:29 am

Hi folks!

We just started our second day of work in our #LDJAM game. Team is me, @caua_fs and @vexille666, together known as @playluderia ūüėÄ

It’s called¬†Humanity Walks Into a Bar!

IMG_2285

It’s a simple people simulator inside a bar, with humanity doing what it does best: reproduce, fight and fill the whole place up.

We’re still experimenting with it.

IMG_2283

Not sure yet what’s the player’s ultimate goal, but we wanted so bad to make something with little persons¬†walking around :)

View post on imgur.com

Good luck to us all! ūüėÄ

Tall Grass art assets generation

Posted by (twitter: @Lipedal)
Friday, December 20th, 2013 7:07 am

We still didn’t have time to write a post-mortem for Tall Grass. Too many cool LD games to play, christmas shopping, steam sale… things are frantic this week.

Oh yeah, Tall Grass was featured on IndieStatik’s 28 Free Game Picks From Ludum Dare 28¬†post! Don’t forget to check their list out, there are lots of great games there ūüėÄ

But while we don’t write a detailed post on what we did right and what went wrong in our very first Ludum Dare entry, we decided to post some art Cau√£ did on Sunday and Monday. At first we had some ‘game designer art’ for the creatures, objects and obstacles, then he did some artist magic and voila, all of a sudden we had pretty things in the screen ūüėÄ

Tall Grass - Pewee Concepts

A few alternatives for the main creature and the protagonist’s colors.

Of course, as a good design practice, we use to do some alternative generation. That is, we¬†try a lot of assets before choosing the right one. Cau√£ often nails it on the first try or so (see the tree below, for example), but that doesn’t take the merit away from this practice. We see it as a tool: it just guarantees that you won’t settle with a crappy art asset only because you didn’t try a second or third way of expressing that.

Tall Grass rocks!

Tall Grass rocks.

The football material - hard to make a nice ball with a square :/

The football stuff – hard to make a good ball with a square :/

Bushes, rocks and trees, that's what forests are made of.

Bushes, rocks and trees, that’s what forests are made of.

Bushes, trees and rocks all have the same gameplay purpose: they’re obstacles. 3 hours before the time limit, they still were all ugly rocks. With some alternatives laid out, we choose which items would make for a pretty and varied forest, and we went for a gray rock with a perspective gimmick, a green round bush, and the tree. The tree can be disproportional if put in scale with bushes, rocks and the creatures, but hey, that’s videogames!

Cau√£ also had to design two monsters:

A bunch of alternatives for monsters.

A bunch of alternatives for monsters.

More monsters, trying to take all we could from a 5x5 grid.

More monsters, trying to get all we could from a 5×5 grid.

It’s hard to make adorable little creatures inside a 5×5 pixel grid. Tall Grass being a little homage to Pok√©mon, we settled on making monsters that you would want to capture. Not too abstract, not too domestic. Things more like Rattata and Zubat than faceless aliens. Again, Cau√£ made these concepts, tried some colors, and then we discussed the more promising designs. That happened on Monday around 4P.M. here (7 hours before the time limit).

Narrowing down and getting the colors right.

Narrowing down and playing with colors.

Narrowing down once more, and generating more alternatives.

Narrowing down once more, and generating more alternatives.

Getting to the final designs for Bubafoos (left) and Twerkos (right).

One more design consideration: one type of monster moved horizontally, and the other kind moved vertically. This was not very clear when we were using my ‘game designer art’, but the final assets should help players identify each movement pattern. So, Bubafoos ended up looking right/left, and Twerkos gained a face and a back, so you know if he’s going up or coming down. We think that worked well :)

The final version of Tall Grass looks like this:

Twerkos, Bubafoos and Teen Pewee.

Twerkos, Bubafoos and Teen Pewee.

That’s it for now! If you liked what you saw, don’t forget to play and rate Tall Grass here: http://www.ludumdare.com/compo/ludum-dare-28/?action=preview&uid=29565

Cheers! ūüėÄ

Tall Grass is submitted \o/

Posted by (twitter: @Lipedal)
Monday, December 16th, 2013 7:06 pm

Last Post

And we’re done! Don’t forget to play and rate our game Tall Grass, in which you get only one pocket monster and you’re totally cool with that. It’s cute, fun, short and completely hackable :)

Tall Grass - Football

Tall Grass - Channel

Tall Grass - Mine Field

Also, #NOKILL

Good job everyone! Now we’re gonna play your entries ūüėÄ

 

Tall Grass by Luderia

Posted by (twitter: @Lipedal)
Monday, December 16th, 2013 2:41 pm

Last Post

We’re almost finished!

4 hours and a half left. Seems like a lot of time, but there’s always that bug nobody saw or a last minute connection problem. I hope we don’t stumble into any of those.

Cau√£ is giving the last touches to some sprites, including the Twerkos and Bubafoos, monsters that share the tall grass with our protagonists. Apart from the issue we had with PuzzleScript’s object limit, we still think it’s an amazing tool for making small games. Our end result is better than our initial expectations for our first Ludum Dare game. That’s good! ūüėÄ

PuzzlescriptScreenshot

You only get one chance to make a game?

Posted by (twitter: @Lipedal)
Sunday, December 15th, 2013 5:10 pm

Last Post

Wow, such a troublesome weekend. I spent the saturday travelling and going to a concert, and when I was all ready to recover the lost time, I discovered my internet connection was offline. Not a single internets since yesterday at about 11PM.

Today me and Cau√£ worked apart on our PuzzleScript game (no connection, working offline). Then, 7PM into this motherfucking hot Sunday, my connection is back on.

And then a bigger problem: PuzzleScript limitations we didn’t know about. See, PuzzleScript is a crazy good tool for making little puzzle games, Sokoban-like games and a myriad of subversions on what you could call a “puzzle game”. Terry Cavanagh and Aaron Steed, among others, managed to make impressive things with it.

And we were trying to make a little piece of PuzzleScript subversion too. It was going to look like this:

Luderia's Failed Attempt

There’s a brazilian word that describes how we were planning to do it: gambiarra. Gambiarra is the art of solving problems in a way they were not supposed to be solved. Makeshift repairs, DIY last-hour tools… and it extends to programming. You have a framework that doesn’t expect you to try to do X. But you so want to do X. Then you make a little gambiarra and there is it, a perfectly fine X as long as you don’t look at its inner workings.

That’s how we were using PuzzleScript to make a game about getting Pokeymans, fighting tiny battles, choosing a little child’s destiny and so on. All full of clouds and pretty grass and a cool game view. We just needed some time and a shitload of effort. But then we stumbled into a limitation we didn’t know about: you can only have 31 objects in your game.

The fact is: anything is at least one object. A cloud was 3 or 4 objects, the whole perspective gimmick took up 19 objects, battle system was at 5 objects and counting, 1 object made sure your pokeyman chirped now and then, and so on. “Shit, can’t you guys make a puzzle game, as in PuzzleScript?”, that’s what happened.

But hey, we have still plenty of hours left till Monday night!

So, we’ll see what we can salvage, and we’re starting again! Wish us luck ūüėÄ

 

 

It’s 03:10 now here, and we may have an idea. We’re fiddling with PuzzleScript and trying to see in which ways we can make something unique.

In which you have only one pocket monster and you're completely fine with that

What if you’re in the world of Pok√©mon, but you’re not the guy who’s trying to get every one of them? You meet one, you name him Fido and he’s your best friend. “Gotta catch only one.” A tale about love instead of completionism. Now, how to make a fun game out of this? Holy shit, I hope some hours of sleep bring us answers :~

Luderia is in

Posted by (twitter: @Lipedal)
Friday, December 13th, 2013 5:46 pm

Hi everyone!

This is our first game jam. I’m teaming up with my artist pal Cau√£, and we hope to make something cool and have fun while we’re at it ūüėÄ

We’re owners of small indie studio Luderia in south Brazil. We’ve been working on our commercial games for more than a year now, yet we never participated in a jam. Shame on us!

We’ll be using PuzzleScript, as our official programmer is offline for the weekend, and it’s been a while since I last wrote a line of code. Let’s see what comes out of it :)

Good luck all!

[cache: storing page]