DEVLOG#11 – Yapping about the music


Zircon here. And no, it’s not my real name. It’s a code-name thingy one of our producer created. Yeah kinda silly I know, but whatever. In this blog I’ll be yapping about random bullshit nobody cares about, about my life, my favorite pair of jeans, and POSSIBLY something related to the game. Nah just kidding, I’ll be talking entirely about my life obviously.

So basically I’m the sound designer for the game. More specifically, I’m the one responsible for music composition, production, design, and everything related to those beautiful melodies you’ll hear in the final version of the game. That’s the plan anyway. Here in the team we’ve got two sound designers. The other (whose code-name thingy escapes me at the moment) will be responsible for other sounds such as SFXs and ambiences. He used to help in making the music and modifying my songs, but now it’s just me.

Moving on, let’s talk about the game itself, shall we? If you’ve read the other devlogs from our producer and script writer, you probably know by now that there are 8 main areas in the game. The idea is that for each area there will be a song, and the song itself will be modified to fit any other sub-area in it. The current total is 40 songs which I’ll have to finish by the end of the year. Woohoo.

The game is about the journey of a sentient Frisbee finding stuff for its female amputee friend so that the friend can conquer the world. Nothing screams “walking hockey puck“ more than the sound of a flute and an orchestra, obviously. Everybody knows that. In fact, the music for this game will have a lot of that. It’s essential to capture that beautiful and traditional sound the producers want from me.

We currently are working on the starter bundle for Game Developer Gathering Prime in Bandung next week, so it’s kinda busy right now. Busier than the usual day, I mean. In the bundle, there are some cool things you’ll get if you happen to be coming next week, and one of those things is a music CD. With 10 songs in it, the CD contains 5 themes from our past products, and the rest will be included in the final version of the game itself. Pretty exciting, eh? *awkward laugh*

Well, since this is my first time writing in this devlog thingy and I don’t know what I should write about, so I think I’m gonna talk about those 5 songs. The web developer said I can write as much as I like, so might as well writing about those things I’ve always wanted to talk about anyway. To be honest I don’t talk too much about music in my life because there aren’t too many musical nerds I know. Not saying that I’m a musical nerd myself, but when you live in place where people around you consider “Dream Theater” as a musical genre, knowing the differences between major and minor is enough to make you look like frickin’ Nikola Tesla. The five songs I’ll be talking about are called Metallic Knight, The City Beneath, Calming the Qualms, Forgotten Lullaby, and Reinforcement.

First on the track list is the theme song, Metallic Knight. The idea of the song is an imagery of the entrance to a new world, followed by the sound of a journey in said world. I split this song into two movements, creatively named as the Entrance and the Journey. For the Entrance, I put some traditional Celtic music flavor, topped with strings and English horns for the mystical sound. Also I believe I put a harp there, because it’s beautiful and everyone needs a little bit of harp in their life. For the second movement, it’s a more upbeat version of the Entrance melody, with timpani, cymbals, trombones, and other marching stuffs. Essentially this song is my depiction of what the whole game will be.

Next, The City Beneath. This is probably the most fun song I’ve ever make for this game and also my own personal favorite. Being the song for the biggest and main city in the game, I needed to make a song that is welcoming, not boring after 3 seconds, and as neutral as possible without altering one particular mood of the listener. The idea is simple, or should I say WAS simple; to modulate the root key from major to minor, and then modulate it to major again. It ended up being the most complex song out of the game so far. Well, theoretically anyway. The song starts off in F Mixolydian, modulating to F Aeolian for 1 bar and then to Mixolydian again. The second verse is my favorite part. The song modulates entirely to F Mixolydian b6, or as some people might call it, the “Hindu” scale, which comes from the fact that this scale is usually used in traditional Hindu and Buddhist music and/or chants. After that, it modulates again for a bar to F Aeolian before entering the chorus, which is also in F Aeolian. The tempo of the song is Andante, so yeah it’s very calming. The bells and the flute help a lot for the graceful sound of the underground city.

After that we have Calming the Qualms. This one is actually the evolved version of the first song I made for this game. The first version sounds too much like an ancient Chinese music, and while sounding like Chinese music is not bad at all, I just don’t think it fits the atmosphere of the game. So I changed some of the notes from minor pentatonic to major and now the team loves it. I don’t really understand why though, I mean it’s probably the simplest song I’ve made so far. The song is in Bb major with 4/4 time signature, verse-chorus-verse-chorus structure, and without any other variation at all. There are harp, glockenspiel, and bells in it though, so it really is calming (hence the name. Ha! I’m a genuis!). I personally don’t like it that much, but whatever. I hope the player will love it too.

Forgotten Lullaby is the evil ghastly defective twin brother of the previous song. My producer said that for the area this song is played, it needs to be pretty creepy. Well that only means one thing: The Whole Tone scale. This scale is so creepy, that I’ve heard a story that this scale was banned in some churches in the past because it was believed to be able to summon the Satan. Yeah that’s right. They actually believed that by playing a melody constructed with this scale, you’d be able to make a crack on the Earth which went through the hell and summoning Lucifer Himself. If that’s not your definition of what the word “badass” is, I don’t know what is. Google it yourself, I’m not kidding. Well it might be true though, because making the scale sounds good requires you to sell your soul to the Devil. Hahahaha, just kidding. It’ll never sound good regardless. Nevertheless, it’s really fun to mess with this scale. I’ve accidentally used it in one of my own song, and I was like, “wtf is that? That’s awesome!” In this song itself I use it at the last verse before the loop occurs (oh btw the songs in the bundle have an ending, but in the game I’ll take it away so it can be looped) to leave the creepy impression in the player’s head. The song contains some key changes. It starts at Eb minor with some chromatic notes in the melody and chromatically descending chord progression, then modulating to F# minor, Db minor, and back to Eb. The key changes 6 times I think. Unfortunately, no crack to hell was made in the making of this song.

Finally we’ve got Reinforcement. Making this song really felt nostalgic. This is something I’d make back in the middle school, when my playlist contains songs from Iwrestledabearonce to Panic! At the Disco. This was the phase when I’d arrange a church song to a technical death metal song, put a little Bossa Nova before changing the time signature. You know, fun times. This song is the theme for the forging area, so it HAS to be a metal song. Throughout the whole song I just play some generic drop D guitar riffs, but I also put another influences here and there. In the intro I put some strings over the riffs, because that’s the main theme of the game. In the verse I take the strings away, put some metallic percussion, and palm mute the riffs so it sounds pretty heavy. There’s a blues sounding flute melody mid-verse as well. For the pre-chorus, I decided to put marimba and fill it with melody in D Javanese pentatonic scale. No, it’s not a typo. Not Japanese. Javanese pentatonic scale, the scale mainly used in traditional Javanese and Balinese music, is what I use (fun fact: did you know that Bali is actually an island in Indonesia and not the other way around? Yeah, crazy right?). The Japanese pentatonic scale, or the Hirajoshi, does sound really similar to the Javanese pentatonic scale though (the locals call it “Pelog”). They differ only by one note, which is the 4th note. In Hirajoshi the interval between the 3rd and the 4th is two whole tones (in western musical system of course) while in Pelog it’s just one. So the formula (if you “translate” them from diatonic major scale) is 1-3-4-6-7 vs 1-3-4-5-7. I hope that makes sense because to be honest I’m not really fond with this kind of things. Well anyway, after the pre-chorus I put another bars of riffs, change the pre-chorus riff a little with another marimba melody on top of it before hitting the outro. I like to think this song as what Willie Adler (the guitarist from Lamb of God) would make if he drank too much rice wine from Bali at a small village in Solo while playing Crash Bandicoot.

I think that’s pretty much everything about the songs so far. There’s more to come, so stay tuned. The game will be out sooner or later. You should check it out when it’s released. It’s cool and fun if you’re into brain teaser and exploration kinda game. And if you aren’t just check it out anyway, because my songs are in it. I don’t know why that’s important and relevant, but seriously you should check it out. Well, that’s it. It’s kinda fun writing about random things you love. You should do it yourself, because I think if you manage to read until this paragraph then you must be bored as hell. Either that or you just skipped the entire thing. Anyway, thank you so much for being here. You’re awesome and I love you ❤

DEVLOG#10 – Irritating Implementation of Platforming Predicament, Part II: Rune System

Good day, Ascenderians.

Today, I, Chalcedony, the programmer of Ascender, also an intern in devlogging, am going to tell you an important element of Ascender – the rune system. But before we start, let me give you a sneak peek at what feature is being cooked in our kitchen. It’s your turn, Sky!

Yes, drag it along, Sky.

Yes, we plan to extend the usage of hook, so you soon will be able to see Sky happily yanking boxes around Dolopo. Oh, about Dolopo, here’s an animated GIF showing sketches of that city.

Dolopo. Oh, please ignore those odd sprites at the beginning of this GIF. That’s solely for testing.

Enough peeking! Without further ado, let’s get into the rune system! What is rune, you say? Hey, don’t make that what’s-wrong-by-not-knowing-it face! Check this blog post by Amethyst, you will get an explanation why it’s so awesome that it brought us the title “Leading Engineers of Game Mechanics” from Compfest, a prestigious information technology event in Indonesia. Or better yet, play the prototype now!

Alternatively, I’ll just be nice and once again copy-paste his explanation for you.

“So what is Rune? Rune is type of stone that can be found by the player. Each rune can equip Sky with new skill in order to explore the world of Ascender. The trick is that each rune can be only equipped in a limited slot. Player need to figure out how to equip rune effectively and efficiently”.

Rune system

You might have known from the image (or by playing the prototype) that the rune system is placed on a triangular grid. I found that triangular grid suits well with what we need – a simple grid type so anyone would have no trouble fitting the rune in, but not too simple to maintain the ‘puzzleness’ and to preserve some rooms to make it more interesting.

This rune system is appealing, but we want to make it fascinating. We have considered some ideas, such as combining runes to produce new skills, e.g. Fire + Run = able to walk on fire, Strong + Hook = able to pull heavier blocks, etc. We also thought about more rune placement rules, such as which rune must be put close to each other, and which should not, and its consequences.

Along with those thoughts, we also want the rune system to develop as the game progresses. Runes (and slots for runes) will be awarded upon quest completion, and maybe at some other rare occasions.

Now you know the charm of rune system in Ascender, let’s talk a bit about the implementation, a.k.a. the annoying math and programming stuffs. First thing first: How can we construct a coordinate system for this grid? Actually, there has already some solutions on the net, with this being on top of the search result:

Example of a coordinate system for triangular grid

The implementation was straightforward. Here, we choose (0, 0, L) as the origin, and assign the triplet (x, y, z) to each triangle slot, with x and y being integers and z being L or R. Note that for each increment of x by 1, we move right exactly 1 triangle length, and for each increment of y by 1, we move up exactly 1 triangle height, and right by 0.5 triangle length. If z is L, the triangle is upright, but if it is R, it is upside down and shifted right by 0.5 unit of triangle length.

Then another problem jumped out when we needed the rune so it can be rotated. Now how do you map some point to another when it is rotated around the origin by 60 degrees? Try it – you will know that it’s not a trivial process (except maybe you are some geometry whiz, that’s it).

Rotating the rune. Note that each rotation is exactly 60 degrees.

After some hours thinking, I decided to play with some other coordinate system, like this one below.

Some weird coordinate system for the triangular grid

Now, the coordinate only needs x and y, but it omit some points as it is not valid to put a triangle in, such as point (0, 0). All valid points have odd y coordinate. Moreover, we need to derive a formula to know whether the triangles should be upright or upside-down. On top of that, the distance in y-axis is shorter than x-axis (it’s approximately 0.87 times, = 0.5 tan 60)). It looks totally uglier than what we had before. But, by some magic process, I then found a way to map it!

Imagine we are to rotate point (x, y) by 60 degrees. By using rotation matrix, we have the new point (x’, y’) to be (x cos 60 – y sin 60, x sin 60 + y cos 60). But remember that the y-axis is ‘shorter’ by half of tan 60 times than the x-axis! All in all, it turns out to be easier after we done those trigonometry calculations. Aw, yeah! Simply put, convert from integer coordinate to Cartesian, do rotation, then convert back to our integer coordinate system.

Well, that’s one problem about Ascender’s rune system solved. But we still have plenty things to experiment with, and we need your help for that! Remember about making it fascinating? How about some suggestions in these things.

  1. What other platforming skills would you like to see?
  2. Is combining runes compelling? What rune combination do you suggest?
  3. What rune placement rule do you think is intriguing? Are there any game which you must put puzzle piece in interesting ways?
  4. Do you have any ideas to make the rune system (or even the whole game) more engaging?

If you have any thoughts, fill the comment section below and we will be very glad to hear it.

Now, for a closing, check out Ascender’s Starter Bundle: You’ll get the release version of Ascender (when it is released, of course), together with some exclusive rare items, such as digital wallpaper, soundtrack, mouse pad, and a 4GB flash disk! As a bonus, we also included 3 of our games inside! Alas, it’s for sale in Indonesia only, though.

Ascender starter bundle

Whew, this is the longest blog entry so far, but now is the time for us to part. Always keep this blog in sight, though, as future updates might pop up anytime soon! Thanks for reading!



DEVLOG#09 – Imagining Ascender

Hi there, I’m Amber, the art director, this is my first time for me writing this game development blog. First, let me take you for a walk in imagining the concept world of Ascender through this blog.

I want you to imagine a big world, full with Ascendrians (ancient people of Ascender) living peacefully in their own group without conflict or greed. They communicate with nature and use its resources, then hold ceremonies as a symbol of thankfulness. They are used to sing and pray together, with calmness and emotion control to keep themselves from confronting each other.

Ascender world_ok

Then, later in Ascender world’s history,they found a disbalance among themselves, and they began to differentiate between themselves. Those who are able to achieve synergy with the nature, can manipulate and harness its power, are called the purists, whereas those who didn’t possess such ability, but is excellent in logical thinking are called the scientists. The scientists improved their way of living by researching and technology. Sadly, there was a third group of people which wasn’t granted any purity nor logical skills. These people, whose rely only on their body strength, are called workers.

In that ancient times, those groups of Ascendrians were still living harmoniously together regardless their differences, but it didn’t take long before they go separate ways. After centuries, they are growing larger and larger, with the scientists being the largest group, followed by the workers. Capitalism began to corrupt Ascendrians, which became big concerns for the purists. As it is not their nature to confront each other, they were forced to evacuate into deep jungle, surrounded by factories, skyscrapers, and toxic waste.

The purists had nowhere to go, as the nature was getting ruined. Trees were cut down, sea was full of oil, and the air was contaminated and full of dust. The elder of the purist decided that they had to vanish with all the nature that’s left, and preserve them to stay pure. The only way they could go is upward, where the air is still fresh. So, alongside the nature spirit, they combined their almighty magic to lift the parts of the world which was still pure to the sky.

Finally they did it. The depressed, threatened minority race show their teeth, their true ability. That giant continent, rising slowly to the sky, left only huge holes on the ground. Such display of power, amazed all other Ascendrians beyond their logic and technologies, and set their ego burning. It was a challenge! As the floating islands were getting smaller from the view, the scientists speed up their research, fueled by the anger and jealousy to achieve what the purists had done. But before they did it, the whole ocean slowly moved up above the ground, into the sky, like a big giant jelly. It’s not long before they eventually blocked the sunlight.

That was the ultimate act of the purists, blocking every Ascenderians left below from reaching their pure continent. It’s almost dark in the ground below sea water, only a gloomy bluish light faintly illuminates for days. Then suddenly, the sea water above cleared, causing bright sunlight to be shed on the ground once more, although not as bright as before. It was the purists who cleared the ocean from toxic waste and oil, which now effectively separate them with the world below.

Left with holes, contaminated air, and no water, was unacceptable for the scientist. So, they created a giant mechanism to lift the remaining land above to get fresh air. They were able to mimic the floating island with heavy machinery, but they cannot got any further as the sea obstruct their way. They researched and experimented, but to no avail.

What remained on the ground was mostly the workers now. They were bound to meet their doom. Without any knowledge of technology, they left behind with no trees, no water, nor fresh air. Some tried climbing the tallest building in order to grow hydroponic plant with few water left, but not for a long term.

In that times of desperation, most of them tried going down into the ground, dug deeper and deeper, and ultimately lived in the caves. They found underground water source, and built the first ancient underground civilization called GOA, with some technological knowledge and magic from some scientists and purists who refused to go up.

That, is the first story told by Ascendrians, which recovered from an ancient text from the first year after the world separated and created layers of civilization, with GOA as the lowest layer deep underground. Now, centuries after that event, the memories of the past event had been buried, and the present generation living no longer know about the world above them.

This is our challenge, to capture and present the multilayer civilization world of Ascender. Stay with us to see out process of creating the beauty and complexity of Ascender world. Amber will guide you through the enigmatic journey, let’s start imagining…

DEVLOG#08 – We won something huge.. thanks to our Rune System

Hello all Ascenderians,

We finally meet again. It is me, Amethyst, the lead designer of Ascender. Today I would like to share an amazing news for all of you. We have just competed at one of the biggest IT event in Indonesia called COMPFEST or Computer Festival 2015 in One of the category that is Indie Game Ignite. It is a tough competition, other finalist have a good game but we are very happy that we eventually received 2nd place 😀

The Awards

As the game designer, one of the best moment is when the game also receive the title Leading Engineers of Game Mechanics. The title means that our gameplay mechanics has impress the jury compared to other games. It boost our confidence for what we have designed but also give us more pressure to maintain the quality of the game.

One of the feature that is being highlighted by the jury is the rune system. They thought the system is unique, even though some other game use a similar system. They said that similar mechanics never really implemented in a explorative platformer.

Rune Console

So what is Rune? Rune is type of stone that can be found by the player. Each rune can equip Sky with new skill in order to explore the world of Ascender. The trick is that each rune can be only equipped in a limited slot. Player need to figure out how to equip rune effectively and efficiently.

They also mentioned that we have to be careful in puzzle based game. We have to make sure that the puzzle is both challenging and interesting to the player. We also need to really focus on the PC audience and look on what kind of successful game that use puzzle as the main theme.

It is an interesting experience for us, we are glad that we received a lot of input from the jury, our fellow finalist and also visitors to our booth. Before I end this post, In commemoration of our win in COMPFEST 2015, I announce that the prototype of the game is now available to download in IndieDB. Don’t forget to download, play and the most important thing is give us your feedback.

That is all Ascenderians 🙂



DEVLOG#07 – Districts in GOA

Hello Ascenderians,

It is my first time being a scriptwriter. Usually I become a producer which responsibility isn’t directly connected with the game development. The first thing I did was researching information regarding script, walkthrough and dialogue in the game. I also quickly learn about the responsibility and duty of a scriptwriter in the game.

The truth is…. Theory is always different from practice !!

It is not easy to create a story for a complex game with many elements. Not only the story, I also need to create a number of quest concepts that will be implemented in Ascender. After trying some variation of story and quest style, I almost gave up and stopped writing.

However, one day when I researched quest walkthrough of some adventure game, I truly realize the meaning of Ascender. Long story short… I take the basic meaning of Ascender and connect it with my hobby from a long time ago, which was hiking. I research several beautiful mountains in the world and look deeper on its uniqueness. I decided to use Himalaya Mountains as the main inspiration in developing cities in Goa’s civilization.

Why did I start the story development of Ascender from its cities? I did it because I believe that adventure platformer games need to have a clear and understandable world. I am also certain that by starting to develop the city with its uniqueness, it will create a clear and related quest within the world.

Goa is the civilization that is located underground. The civilization provide its power, light and water artificially. The land and ceiling structure is developed efficiently for transportation and other living facilities.


Ascender Sketch

There are eight districts in Goa’s civilization which some of the districts’ name is taken from Himalaya’s mountain area (Everest and Mustang). Everest is a holy district where the citizens do their divine ritual. Mustang is a farm and plantation area that provides food for the whole citizen.

  1. DOLOPO (Central City)

It is the residential, educational and business central for all Goa’s citizen. DOLOPO name is taken from regency in East Java, Indonesia.  DOLOPO is the center where people gather and commune.

  1. MAGALO (Ancient Districts)

MAGALO is the ancient civilization that provides the technology for DOLOPO. There is no historical information regarding about the city.

  1. RANESH (Forging Area)

Physical and structural condition of Goa’s civilization relies on metal such as iron, aluminum and other mineral. It is also used to create various utensils for household and industry. RANESH provides a workshop to produce such tools.

  1. HYMLA (Mining Areas)

As mentioned before, Goa is located underground. No wonder, there are a lot of minerals found in the area. HYMLA is the place where mineral is primarily mined because it contains the richest mineral in Goa’s civilization.

  1. HELION (Techno Area)

The ancient technology used in Goa can control and maintain many facilities in Goa. It is computerized which contradicts its surrounding. HELION is comprised of servers and system maintained by technician. The area has become the backbone of the civilization.

  1. RAJUMLA (Energy Area)

RAJUMLA area contains a unique mineral called onyx rune that is different from what being mined in HYMLA. Onyx rune contains special energy to support whole Goa’s activities from small daily chores to a complex task of maintaining public facilities.

That’s all from me…