DEVLOG #45 – Preparing For The Proofreading

Hi, Ascenderians!

Garnet’s here and now I’m preparing to send the draft of Ascender dialogues and quests for proofreading. Basically, all I have done for the narrative assets need to be checked and corrected. Grammatical, terms and phrases in English are the main issues identified from our feedbacks. I’m planning to give one of Ruby’s friend lived in Australia for some years that can speak, listen, write and read like a native English. But, there’s a job to do for me since all the narrative assets is written in excel format and without premises text, she won’t know what I mean and how the game flow with that narratives. It seems that she isn’t really a player, but I need her English skill to do the proofreading. Here is the Excel structure of my assets and converted to Words with added premises.

See the differences? Yeah, I tidy it up  a little bit as well, it supposed to help the proofreader I hope. I also add some table of contents, character descriptions, prologue and ending scenes as well. Right now, I have to finish up premises that define the correlation between quests. Hopefully, with Ruby’s friend checking Ascender’s narrative drafts, our lovely game can have a better quality before it launched (I’m looking for publisher input also later on before it become the very best appropriate draft). You guys also can give suggestion with the formatting or input in the comments below.

Oh yeah, right now I’m working on new game that relate something about graves as a producer! Let’see where it goes!

Garnet is signing out from GameChanger Headquarter! Ciao!

 

 

DEVLOG #43 – Credit Title

Hi Ascenderian, Fire here..

Ascender began entering the finishing stage. In this stage, there are polishing process and put some additional object to the game. Amber, the art director told me to make the credits title by using the concept of Ascender. So, the concept of this credit title is illustrated by showing the camera moving from bottom to top, showing the background that is used as an in game stages.

3

The name of the stage are Rajumla, Helion, Mustang, Dolopo and Everest. There are a lot of NPC representing every stage and had a simple animation. The NPCs have many spreadsheet that wasting a lot of time to make and i must put it in after effects composition.In addition, Sky must be animated to jumping from text credit to the background platform.

6

Sky character animation process is a little bit tricky because it must adjust spreadsheet from different layer and animations. Sometimes, I have to double checking the timing of each spreadsheet layer for smoothing the transitions.Stage also had changing several times. It caused by strange looking parts from the stage and it must be repaired.

5

Unfortunately, the file does not have a Photoshop format so that the repair process is a bit time consuming. The credit title making process  is entering the finalization process, but I must wait for more people that will contribute in making this Ascender game. After that, I can finish it.

7

That’s all from me, continue to support Ascender.

Cheers 🙂

DEVLOG #42 – Irritating Implementation of Platforming Predicament, Part V: The End, or Not

My goodness, there you are! You see, I’ve been buried in this pile of codes ever since the last devlog post, and I just barely have the chance to write this one!

Umm, where do I start? Oh well, I’m Chalcedony, and here is the 42nd entry for this devlog series. It might as well be my last chance to write, and hence the title. This will be the story of preparations towards the ending of this project.

Let’s start… Or not. Heheheh.

There is an interesting trivia about the number 42 to be the answer of life, universe, and everything. Others view it as death – the end. It’s up to you to interpret it your own way, but hopefully this entry, the 42nd, will provide you with some answers… Or not. Oh right, back to topic! Ending, from a coder’s perspective.

It is the time where every other members from the team flood you with their not-so-final creation. Yeah, nothing can ever be treated as final, as revisions pop out every day, hour, second, even millisecond.

Picted below is one in-game footage, after and before some lovely revisions… Or not.

airChange
The right one transforms into the left. Some rooms and corridors are generally widened for easier navigation.

Little changes are more often than not, jeopardize your code structure, if they are numerous and are done near the end of the development process. The addition of many if-elses is killing you. We have a couple of instances where some objects only appear at a specific time and place (and aren’t used in any other occasions). We have a dedicated folder containing local script object for those things, just to avoid massive lines of ifs.

localObjects.PNG
This cutesy folder of LocalObjects is home to nearly 100 scripts

Events that are tightly tied to time also serve as a genuine hassle when changes occurred. Mistimed jumps, stuck in closing door, you name it.

Ending sequence is constantly changing and therefore is a total time waster :(. The team made me swear not to post any spoilers here, so sorry, no more asking, and no, no screenshot nor gifs for you… Or not.

ending.gif
Watch it on your own risk.

Now you would think that, after applying all changes, we would just hit the build button, and everything should be okay… or not? Well, we still have to do the testing, assuring this game can run on most computers, et cetera. We have seen cases where people complained about this game crashing after the first screen. Weird, as it runs perfectly on our machines. This is one of the harder case of bugs, and sometimes we decide that sometimes, you just have to use a better computer for games.

typicalTestingScene.PNG
A typical testing scene.

Done checking (internally)! The next step is to distribute the executable to some secretly picked testers, for the final input for the game. We just need upload the game, and… Hey, look at the size! At the moment, our build is 2.56 GB, waaay above our expectations of how big this game should be. Zipping could reduce it to 357 MB though.

It is possible to check on what is bloating the size of your project in Unity. The editor log gives you a pointer in it. And in our case, guess what, the textures are totally dominating the build, by a whopping 97.0%!

Not all hope is lost, though. Unity also has the option to compress texture size – crunched texture the name. The upside is, crunching effectively drop the texture size to about 25% of its original size, with almost no noticeable loss of quality! The downside is, crunching takes a huuuge amount of time, and only textures with specific size could be crunched (must be 2^n or 100 * n, to be exact). And the worst part is, it is not even documented! It is recommended to write a script that selectively crunch your assets (you can do it manually, in exchange for your sanity), and let unity do its work while you party on… Or not.

crunching
Hold on, crunching may take up to a day or so.

Great! It’s finished and ready to be served! Or not. In reality, we are still struggling with constant changes, and haven’t reached this state yet. Hopefully this madness will soon reach its end! Yeah, that’s it, that’s all, guys! Tune in this channel weekly for more updates! See you around!

 

 

 

 
Still here? Okay… here’s some statistics as of 18th June.
– Build size: 2.56 GB.
– Project size: 13.8 GB
– script files in project: 400 items
– texture files in project: 5804 items
– audio files in project: 134 items
– script size in build : 1.0 MB (0.0%)
– texture size in build : 2521.6 MB (97.0%)
– audio size in build : 55.1 MB (2.1%)
Note that this will definitely change in the released version… Or not. Heheheh.

ProjectSize
The size of the project.

I’m outta here – Chalcedony

DEVLOG #41 – Trailer Designer!

Long time no see… Hi Ascenderians, Citrine here.­­­­­

As a Sound Designer, I’ll tell you that the sound designing progress on Ascender is almost done. I just have to make some sound effect for ending scene & retouch background music for ending to the credit title. But, over the development process, sometimes the programmer still give me some input related the audio. Because he is the one who plays Ascender every day on his Unity project, so I think he would understand if there something are less cool both in terms of art or audio.

Here some of my todo list :

  • Ending scene
  • Camera moving up
  • Glow SFX
  • Ocean walking, jump & land
  • Ocean transform
  • Charging SFX
  • Audio ending transition

So,  while completing some audio work, Rubi The Producer told me to make a trailer for Ascender. From sound designer to be trailer maker, hmm, Trailer Designer! lol. Well, to be honest, I was not too great in terms of making a trailer but I’ll try my best. 😀

This time, I’ll make a different trailer from the previous one that I made for Steam Greenlight trailer. The previous trailer is telling more about the arrival of Ocean to the GOA civilization. While the new trailer, I would emphasize to the friendship between Ocean and Sky,  so we can understand the motivation of why Sky want to fight for Ocean. Here is my draft for ‘brand new’ trailer.

13427881_10206563737081251_4016908629105195448_n

Less obvious? lol, it’s just little sneak peak for Ascender’s Trailer. I’m still working on it probably until next week or the end of June. Asap.

Sorry gtg I have to finish this ‘hopefully awesome’ trailer.

Citrine out. 😀

 

nb: Thanks to Moldovite has given me the idea for this trailer & help me make a draft.

DEVLOG #40 – Everest: The Root

Hi Ascenderians, this time, moldovite is back!! In this blog, I will tell you about Everest.

Everest is one of many districts in GOA’s civilization, it is not a mountain nor a city. Everest is a massive sacred root and becomes the center of religious activities.

So why it so special?

Citizen of GOA thinks that the root is the path to the heaven. It is a sacred bridge that connects the world below to above. Because of that, many people in goa begun to come to Everest to pray for health and success to the almighty.

Just like many focus grounds before, we start it with a sketch before we went digital. For Everest, Amber (the art director) make a sketch like this

And because Everest is the root that connects the two world, it surely has something magical and mystic that make Everest different from other roots. After a lot of discussions, we choose purple and violet for the color of the tree and the surrounding. The color is chosen because they represent the color of magic. mystic and fantasy.

Here is the digitalization of the sketch earlier

4

Ta daaa…… The Everest! The root of God!! 🙂

If you look in detail, you will notice that there is a minor change with stair in the upper left, this case happen sometimes, for the sake of game design sometimes we must chop off the art, and adjust it. I think it’s not bad. And like civil war quote “sometimes we need to lose the small battles in order to win the war” so it doesn’t mind me at all.

And that will be our end of this session, let me say my goodbye to you…

Moldovite sign out.

DEVLOG#32 – Designing the Puzzles

Hello Ascenderians,

Can’t believe that it is my turn to write, it has been a challenging weeks toward the next version of our game.

During testing, some players said that the “Boss” Puzzle in Ascender is quite intense. Well, as a designer I never really think that the puzzle that they describe is actually a Boss puzzle. I like to all it Intense Puzzle where player is given a task to complete a puzzle with a pressure (it can be time or annoyance).

I use Intense Puzzle is used for two purpose,  first to validate that user know how to use certain skill and the second is truly a challenge for the player to face in order to progress the game.

The first example of Intense Puzzle is B.RO Puzzle in the beginning of the game. I use the puzzle to validate the skill that is newly acquired skill (Double Jump and Hook) and let B.RO chase them down in order to heighten the intensity of play. We even test the player to use the skill accordingly in order to get away from B.RO

Run !!! Sky... Sun !!!
Run !!! Sky… Sun !!!

After this player are tasked to finish not so obvious puzzle, and I call it hidden puzzle. This type of puzzle is where player probably saw an item but can not get into it. Some puzzle can not be directly solved since some of them uses skill that player may not have yet. In the public preview, there are a lot of these type of puzzle that you can found.

Well, I need the box to jump higher.
Well, I need the box to jump higher.

Player will not also find many type of puzzle, there are also quest that is affected by circumstances of the world. This quest includes a race with nippytron, capturing pet called gnallo and many more. Try out the public preview in order to find more type of this gameplay.

run1
Let the race begin!!!

There are more type of puzzle in Ascender but mainly it is the variation or combination of puzzle that I just mentioned above. I guess that is all from me right now, see you in another discussion.

 

Best Regards,

Amethyst

DEVLOG#22 – Ascender still waiting to be Greenlit

12651164_10205617445824561_4147676441109487629_n.jpg

Wow, we still cant believe we started our Greenlight Campaign. We are both excited and nervous monitoring the progress of our greenlight. We chose January 16th, 2016 as the first day of our campaign. Not only a beautiful number that become the reason we pick number, we also have create our own calculation and research.
We went through our first day with weird feeling. Happy, worries, surprises and many feeling occurred when we saw the number for both YES and NO vote are increasing. We are also so nervous waiting for the comment that will be written by Steam player.

Positive comment filled with praise, happy expression and support after reviewing our page or even playing our games create a joyful emotion in our heart. Every trouble and sacrifice we made while developing Ascender since May 2015 has been paid.

While constructive input or even mockery is also become our fuel to improve Ascender. We highly appreciate the sincerity and honesty of Steam’s player with spontaneous and very attentive reaction to Ascender.

The comments do not only come from Steam Greenlight page, a few player come and visit our facebook page and web. Our friends are also both willingly and excitingly send us email containing suggestions and input. Some of them are also game designer, sound designer and game experts.

The words “Thank You” can not describe how appreciative we are to Ascenderians who play the game, voted and comment at the Stream Greenlight Page. We are continuing our journey with sky, giving the best for Ascenderians for the release version later. Keep praying and supporting us through the end of this epic journey.

Vote YES for Ascender through shortlink or directlink.

Ruby the red light waiting for the greenlit

DEVLOG#20 – We are on STEAM Greenlight

Dear Ascenderians,

Today is a big day for GameChanger team, we have just publish our STEAM Greenlight page. We have been developing Ascender for 7 months, excluding our research and analysis phase. You have been a great audience for us and have helped us giving valuable input.

By opening ourselves in STEAM Greenlight page, we are ready to accept more input from the biggest community of PC Game player in the world. Our greenlight page can be visited at http://bit.ly/ascgreenlight or http://steamcommunity.com/sharedfiles/filedetails/?id=578620154

Next month, we are going to launch the beta version of ascender as the final version that can be enjoyed by public before we are releasing the game for sale.

That is all from me, a short news with the biggest information from us.

Regards,

 

Amethyst

 

 

 

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!

pullhook
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
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”.

runeSystem
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:

triangleGrid
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).

runeRotate
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.

integerGrid
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.

poster-starter-bundle
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!

 
 

Chalcedony