Devlog #18 Mind the Gap-The study of LUNA's Character walking system

So, we’ve been meaning to write about LUNA’s character walking system design for quite a while. Now that the optimization of the system has been completed, we are finally able to share some of our process with everyone.

Have you ever wondered how characters walk in video games? In a nutshell - imagine we have a box. The typical method would be to program this box to move from A to B, then replace that box with your character in a flat walking cycle animation. The character will look like it is walking (or running) between those two spots.

But if you look carefully, you will notice that the walking is actually only an imitation - Technically it is a character sliding across the floor while moving its legs. Hardly the carefully hand-animated approach we envisaged for LUNA! You can adjust the start and stop speeds to make it look more natural, but still, in the middle of the animation, the character moves flatly across the floor.

8 bit Mega man game, the character slid a lot on the floor, which is consider normal in most of the game design nowadays for a smoother movement.

8 bit Mega man game, the character slid a lot on the floor, which is consider normal in most of the game design nowadays for a smoother movement.

In real life, we walk step-by-step and our walking distance is usually not an evenly distributed motion like the above example. Our bodies don’t actually move too much between “lifting a foot off the floor from behind us” and “placing it in front of us”. It only starts to move forward when we actually step out and put the foot down, with the forward momentum created by the gap between the two legs.

If we break this action down into an animation sequence of eight frames, four per leg, there are only two frames per leg representative of moving forwards. Therefore, it is rather difficult to code an animation system this way, because the movement is not evenly distributed across the eight frames. ( see break down image for walking cycle below)

walk breakdownOct 2018.png

We knew we wanted to do better than this and for some reason with LUNA, we are so crazy that we wanted to imitate the normal way in which people walk, with each step having a solid place on the floor. We liked the tangible realism of this kind of animation and a handcrafted style worked nicely with LUNA’s hand drawn backgrounds, aesthetic and other animations. However, it also came with a very big challenge!

In order to interact with the different objects in each level, the character needed to be able to start walking then stop at almost any specific spot. A realistic walking cycle would surely not be able to stop at a precise stopping point. So, we had to find a way to deal with the gaps in between.

First of all, we made a total of eight sets of walking animations to cover some of the stopping points within a full walking cycle. If the total set of distance is X, the character can now stop at his ½ X, ⅓ X,¼, X⅛ ...etc. . With these eight mini-distance options and combinations in place, the programming was now able to choose the most suitable animation to play after the player clicked the point where he wanted the character to go.

Also, within each walking set, the character would not just sharply switch from walking to an idle pose. Instead, when he was about to reach his destination, he would stop more like a real person, turning the body a bit and lowering his step. If the walking distance required is a very small amount, instead of walking, the character would now do a small sideways hop like when we cross a puddle on the street!

3 steps of improving the basic walking cycle

3 steps of improving the basic walking cycle

Here we’re showing 3 sets out of those 8, which you can see they cover different distance from a full cycle to just 1/4 of it.

Here we’re showing 3 sets out of those 8, which you can see they cover different distance from a full cycle to just 1/4 of it.

Everything seemed good so far, however this system still did not allow the character to stop at ANY point, because distance can be divided into even smaller fractions, leading us to create an infinite set of animations. That just not achievable (and crazy).

So, after many other tests and adjustments, we decided on a minimum unit of travel, around 5 pixels. This is an insanely small distance at the game’s resolution, but is small enough to serve our purpose. Based on this spec, we distributed any extra distance that our current walking system did not cover into a few of the transitional frames among the eight sets of walking animations - usually the step-down frame which you actually need in order to move the body forward.

This has been one of the most challenging things we've worked on since the beginning of LUNA. It is time-consuming and quite difficult to do. During all this time we couldn’t help thinking, "no wonder most developers choose not to do their walking system in this way!". We don’t know whether it has been worth spending so much time on this and maybe it is not the best approach to walking issues in video games after all - but, this is also the kind of challenge that makes us really grow and learn from the journey, and it is one of the the few precious moments of pride in indie gaming, knowing we stuck to our unique approach and it worked!


Together with our characters’ cell animation and the 2d draw backgrounds, the world of LUNA now feels both magical and also has the tangible feeling we hoped to achieve. It was a kind of adventure journey into the unknown, crossing desert and dark forest but finally arriving the other side, we truly think it was a great experience that we’ve loved sharing with everyone :)

Devlog#17 Milestone reached, Steam Community & Newsletter!

LUNA’s development is moving forward at a good speed in the past two months! We’ve accomplished a lot of work in the past month, now let’s break it down in details. 

First of all, we’re really happy to announce in this update that :

We reached our 2nd Milestone! 
ALL the level design and background art for each level have now been completed!

 

This is a great accomplishment in our development, it means no more temporary mock-up blocks or shapes lurking around in the game anymore, and for the first time in the last two years of development, we get to looking at LUNA in the way we imagined it should look like. In HD quality and vivid color! 

                                                      Here are some (sneak peeks) of few of background images

                                                      Here are some (sneak peeks) of few of background images

The other reason why hitting this milestone is so significant for us is, now that all the gameplay related objects have locked on their final position, we can then kick off the task of precisely tweaking all the animations/interactive movement for each level. Here’s one example of an animation - before we decided on the best position for the stool and the table in the house, the mouse move distance couldn’t be finalized. But now we can push with these types of jobs. Below is the final version for this small animation.

                                                                Mouse jump animation from…

                                                                Mouse jump animation from draft to final version

Because we can now truly visually experience the game in the same way that all players will experience it, we can also start working on adjusting the storytelling part of the game design. Between animations and cut scenes, there will usually be a transition period. It might seem like just a simple fading in or out or 1-2 short pause, but in order to give the best storytelling result, we need to treat this timing as an “editing job” like in a post-production movie. eg. Inside a dark room, do we want the players to feel excited or a bit uneasy? According to that, should we then increase or decrease the time they remain inside the darkness? Many of these nano-adjustment might seem unimportant in a puzzle game, but subconsciously, what we see and hear for a split sec will influence our emotion at different gaming stages. We could only start to play around these adjustments once we got the final artworks and animation in place.

Last but not least, this is also extremely important to our Musician, Wang Qian and Sound artist, Mr.F - by looking at each level in full detail then they give the best SFX designed for LUNA. Here is another music demo piece from LUNA.

Next (few) months’ plans:

The next milestone we are heading towards is to build a complete beta demo. We will be aiming at two major tasks in the next few following months.

1) level gameplay optimization.

From all the exhibition experiences and a few private playtest results, we already gathered quite a lot of valuable feedback. That includes major bug reports/fixes and user experience improvements, so the characters can walk, climb, perform the way players think they should. Anything that’s confusing or leads players in the wrong direction will have to be taken out. This part usually takes a quite bit of back and forth, testing to get a perfect balance.

2) Cinematic production.

All cinematics need to transform from storyboard mockups to animated scenes with music. There’s really no shortcut for that, I just need to put my head down and start to draw. We’re planning to complete at least 80% of them by when we have our level optimization done. So when we send a demo for the formal playtest by professional QC and QA ppl, they should be able to have a very complete experience of LUNA.

                                                           Storyboard drawings are ready for animat…

                                                           Storyboard drawings are ready for animation

Steam Community / Newsletter / more social media platforms are now available!

We can’t leave our marketing side-quest neglected. A huge thanks to everyone who has been spreading the word for us and please continue to do so if you can! Now, you can not only follow us on Twitter and Facebook, we’re also on Instagram and Tumblr!

2018 Aug02.png

We’ve also set up a Lantern Studio Newsletter and Steam Community page, just choose your favorite media, we will make sure to update on all these platforms with our latest news! 
Sign up now and you’ll get some exclusive desktop/phone wallpapers to say thanks!

                                                                      Free…

                                                                      Free wallpaper for desktop & phone when you sign up

So that’s all for this update this time, we’re getting there slowly but steadily! 
See you guys very soon with more news! 

Devlog#16 Steam Page, Indie Prize Nominees and recent development progress

Summer is near, I always love the summer. The memory of summer always seems associated with holidays, reading comics, playing video games, swimming pool trips and watermelons. The good old days without smartphones to tell you that you might just miss a million of fun things. Although we can’t really go for holidays in the middle of development, however with that uplifting summer spirit, we’ve got a lot accomplished during the past weeks.

Steam Page Announcement

LUNA's Steam Page is out! It's officially here! Now you can add LUNA to your wishlist and be notified with LUNA’s release news and other stuff! We’ll really appreciate that you help us spread the news, tell your friends, family, or anyone who might enjoy our game!

Speaking of which, we’re introducing our Lantern Studio's "No-budget-for-marketing-DIY-indie-style” promotion event. Every week, anyone who re-post news related to LUNA from any two of our social media account ( Twitter | Facebook ) will have the chance to win a free A3 poster or one postcard with hand-drawn doodles!! 

This event will start from June 16th till August 31st! Winners (two each week from each platform) will be announced on Friday! For example, retweet this dev update from Twitter or share it on Facebook will give you the chances to win these goodies! 
Our social media account:  Twitter  |  Facebook 
 

Indie Prize finalist and nominees

LUNA was nominated for Best Game Audio in this year's Indie Prize awards! It was a really great experience for LUNA to receive a music-related nomination, as we’re very proud of LUNA’s original music design. 

Here you can listen to one of our new demo music pieces written by our musician!  
You could also click our devlog to find out more about LUNA's music story.

                                                                     &nbsp…

                                                                                     Casual connect & Indie Prize Event 2018

Meanwhile, it puzzles us that LUNA has also been nominated for Indie Prize's Best Kids Game category (?) although LUNA is not really a game that is designed specifically for kids, so this is really a surprise for us…but we guess any compliment is a form of support, we're really glad to know that young players would also enjoy our game! 

During the event, we've also met a lot of other great indie teams, made some future business contacts, and hopefully, little by little, we are getting the hang of some necessary business skills. 

                                                                     Going…

                                                                     Going to Game-Con require strong body and mental strength

 

Level development updates

The library level is now completed with over 1000+ hand-drawn books (the pain...) to create the magical atmosphere and to tell the ancient stories of the LUNA world. One fun fact worth mention here is that the chapters on the book pages all contain real reading content. Although it was written in a made-up language that we created for LUNA, however, it can be totally decoded. By the end of development, we will release the decoded document on our website, so the hardcore puzzle players could use it as the reference to having some more fun on top of playing the game.  

                                                                      &nbs…

                                                                                        screen shot of The library level

         The two rising stars of the Lunallywood

         The two rising stars of the Lunallywood

Next, is the tower chamber level, which really challenged us on the shader techniques in Unity. Many shadow-related gameplay ideas have been put to test in this level. We can't talk too much about the gameplay but here are something else about this level that we’re really fond of, we give you the Mouse dynamic duo. ( See img. left)

We also worked on some in-between locations. The story did not only happen inside the tower. These outside platforms and balconies not only serve the purpose of extending LUNA’s world map but also are where our cinematic animation takes place.
Quite a few major cinematic animation storyboards have been developed in the past few months.

The music has also been created along their side. I have to admit, these will be the most challenging pieces in LUNA’s development for me, the reason is that there’s only one visual artist, AKA me, in the team. (sobbing) It would be a lie to say that I never had doubts about if I could really get them done, but thanks to my 3 years hard-core traditional animation training back in the Uni, I know that as long as you continue to work on it, with steady progress, things can always be done. Rome was not built in one day, it took years. So does hand-drawn animation. (Hopefully, they won’t take years!)

2018 Jue update03.png

Last but not least, the music hall level. Music puzzles have always been one of the classic elements in puzzle games. However, it could appear daunting to some players who think they might not have trained ears. So bear that thought in mind, we adjusted our music puzzle several times in order to make sure they can be enjoyed by as many players as possible. Musicians or not.

2018 Jue update04.png
Clarinet-animation.gif

Also, not to mention working closely with our musician. Based on the real instruments that she used in this level's music, we designed each kind of instrument with a fantasy new look that goes along with LUNA's world genera. They are all ready to play out one big enchanted piece of music when you pass this level.


Next month's plan:  

Steady progress is what we really need now. Once you've worked on something for a long time, no matter how passionate you were in the beginning, the reality always finds a way to beat it out of you. Now it's like heading towards the most difficult part of the marathon, you're past the middle point but you start to feel the pain all over the body, the finish line is nowhere to be seen yet, self-doubt starts creeping up and looking around there's nobody else, just yourself, doing it alone.  

We know this is the period of time that you really need strong mental strength, so we just have to focus on the plan and move forward. By this point, we can’t say enough how much we appreciate our backers who have been so patient with us throughout these times. In real life, we see so many great teams that could not continue working on their projects due to many different reasons, but we’ve made it this far and that’s really lucky. So thank you again!

How the theme song of LUNA was born

By  WangQian

When I started to compose for LUNA, things didn't go well in the beginning. We had to contact each other online, since Betty lived in London and I was in Shanghai. And that caused some communication issues, such as my failed attempt at making a song based on what I felt about the game demo before I even knew anything about the background story of LUNA. However the subject I wanna talk about here is how the music originally sounded like and how it became the music you hear in the game now.

The first try I made was actually not the theme song, which may be strange because usually people tend to compose a theme song based on the story at the beginning. However I made a song just based on what I felt after playing the first level of the demo. (see image on the left) And actually that doesn’t sound like LUNA at all if we listen to it now. Well, this is also part of music composition and I should accept it. As a result, that pushed me to talk to Betty about the background story of LUNA.
 

As you can see it is totally different from what LUNA sounds like now, because it doesn’t match the world of LUNA. So I learned more information about LUNA after I talked to Betty. In this game, the deeper the player explores, the more mysteries begin to unfold themselves, and the world of LUNA seems to start to reveal more of the dark side along with the magical atmosphere. And only when the player gets deep into the story, the true relationship between the characters can be truly realized. Without revealing too much about the story, I have to say, it was really the emotion and relationship between the characters, the trust and the conflict, that touched me. Along with this information, I made the first piano version of a theme song that matched the game more than the former one. Here it is.

Well, this sounds like Debussy, is it? Yes, I thought the story happened not so long ago, more like something that is magical and dreamlike. However Betty told me that this story should happen much earlier than this, even before everything. As for that, she gave me a suggestion that the music theme could just start from 29’’, which matched the game feeling very well and I definitely agreed with that. Later on Betty sent me a very early stage of a trailer video for me to compose with. I started  working on this video immediately without even finishing the theme song at that time. And that caused another problem as follows.

Thank God this is not the final version of the trailer. This is another exact example of composition for the whole video without finishing a theme song. Very wrong move. Since I just allowed the video to lead me without knowing what kind of song I wanted to compose. That, of course, was not approved. After many meetings and lots of discussions with Betty, we agreed that there should be a theme song representing LUNA. It should tell a story about this magical world. It should happen in a very early time, almost ancient, where magic would exist. It should pass the emotion of the close bond between the characters to the audience. So I slowed down, took a very careful thought about what I really wanted to express to the players about LUNA. And then a demo of piano version came out.

After that, things were getting better and better. Everything just took place naturally step by step. We decided to use this theme song in the trailer video. And finally here comes the real birth of the theme song.

It was born with rather cautious considerations than a glimpse of light. I never believed that compositions could burst out of inspiration. It never worked that way at least for me. It must always come out of hard thinking and long processes of polishing. The deeper you think, the more work you put on, and the better the composition will be. And please never make anything before having many very clear discussions with the creator! Or you would make something that you would rather bury at the bottom of the darkness until the end of the world.

Devlog#15 New artworks, Character animations & Finalists of the Indie Prize Event

Here comes another update from us!

It has been super busy for us recently, during the past month we’ve attended two BIG gaming events: EGLX in Canada and INSOMNIA 62 in the UK. During the show we received a lot of positive feedback, there were a lot of people who stopped and tried our latest demo. From couples to families, from elderly to youngsters. The youngest player who was able to complete the demo properly was only 5 or 6 years old! It was really nice to see the diversity of our potential players cover such big age gaps. To be able to talk to the media and the players face to face was really an exciting experience as well. We’ve also met a lot of other indie teams along with their games, it was really nice to see this indie game circle getting bigger and connecting with each other!  

Untitled-1.png

Current Progress Overview:

New background and artwork
As towards the 2nd half of the game, all the levels are getting bigger, so far there have been 5 new levels that got their new makeover done. We’re really concentrating on these parts of the work at the moment, our aim is to have all new polished artwork/background replaced by end of May or early June.

New character animation
We also worked on optimizing some of the character animations. A few of them need to have different art sets in order to look good for some special levels. In this particular level, (see image below) the character no longer walks on the solid floor, so we designed a floating + walking kind of movement for it (a bit like a dog swimming), so it now looks more like it is travelling in space.

screenshot10.jpg

LUNA is not an action game but whaaattt? I can’t believe we already have these many sets?? We hope you guys get to experience them all during the game!

2018 APril02.jpg
pet-ladder-drop.gif

New Platform?
From both EGLX and INSOMNIA, there had been a very frequent question from the players who tried the new demo, asking about if we are gonna have LUNA on Switch. When we started LUNA the Switch was not even out yet, but now by studying many other indie games, and how they adapted to different platforms, we feel it is definitely worth looking into! Our first launch platform will still be Steam but we will try our best to cover as many as possible. 

The Indie Prize Showcase Event
Last but not least, earlier this year, we submitted LUNA to The Indie Prize Showcase Event in London. And very happy to announce that LUNA has been selected as one of the finalists! 

The 11 best games will be announced at the 22nd Indie Prize Awards. Nine nominations will be determined by Indie Prize judges and the Best Game in Show will be selected by audience voting during the first two days of the conference. If you will be free during May 29-31st, Come to the Casual Connect London 2018 at QEII Centre, you can try out our least demo and many other indie games!

And that’s all from us this time! See you guys very soon with more news!