I Finished the GDD for Astraverse!

I’m pretty proud of getting the GDD (game design document) finished.
It’s only about 88 pages long but the way I would describe the document is like it being an entire “blueprint” for the game. Put simply, I could literally give the GDD to another developer and they’d know exactly how to design the game in the way that I envisioned it (on a technical and gameplay level at least). Of course, they probably wouldn’t have the passion for the project like I do and they probably wouldn’t be able to nail the same exact “vibe” or “feel” that I would when designing BUT everything’s practically in that GDD.

 

So for this post, I decided to include a section of the GDD which talks about the basic game design concepts of the game:

 

Game Design Concepts

 

A Non-MMO, MMO Experience –

The main concept of Astraverse is to have a highly replayable multiplayer loot and level grind Role-Playing Game in a similar style and setting to Phantasy Star Online that can be fully experienced without an online or MMO server. A popular example of this would be most games in the Monster Hunter series. Almost all of the Monster Hunter games do not rely on MMO servers at all but they feel and play like MMO’s with highly replayable gameplay and a heavy emphasis on multiplayer co-op.

 

Character Creation –

The character creation should have enough depth to feel like a player’s character is a reflection of themselves or at least feel like their own unique and personal character. Just like in PSO, PSU, PSO2 and the spin-offs of said games, the character creation should be an immersive feature, not an afterthought.

 

Stages –

The stages in the game should be randomly generated enough to artificially expand the size of the game world and simulate the experience of exploring entire planets without the use of open-world gameplay. Phantasy Star Online’s randomly generated areas and the original Phantasy Star games’ planetary traveling systems and overworld are both excellent artificial world expanding features that can be easily combined to make a new system that’s simple but effective enough to gain this result.

 

Player-Generated Experiences –

The gameplay should make possible unique “player-generated” experiences/stories through harmonized gameplay systems. For example, a player losing all of his or her health shouldn’t be the end of a game experience. That user experience can be made more unique by giving players a more difficult and higher-stakes situation to deal with as a result of a player’s loss. Games like Dark Souls and Shovel Knight actually handles this quite well.  Other examples of user-generated experiences is the moogle letter delivery system from Final Fantasy Crystal Chronicles and the open-ended quest system of Divinity Original Sin 2.

 

Single Player –

The single player campaign should have a uniquely captivating story that compliments the gameplay without taking away the focus from it. Also, single player mode should also be at least “hinted” at being connected with the multiplayer experience–for example, the story shouldn’t give the player a unique/exclusive position in the game world (like being the “hero” of the galaxy) but should instead make reference to the player’s traits that make him/her unique. A story character, for example, may even say things like “I know some other rookie Seekers like you” — in effect, making reference to the existence of other players playing Astraverse.

 

Immersive Game Setting –

The setting should be a science-fiction fantasy world without the existence of magic. Most of everything, including basic systems, should have some sort of explanation through the game world’s presentation and lore. An outstanding example of this can be found in Phantasy Star 2 in which a player’s saved data file is directly referenced within the game world as the player’s “memories” and are stored in a “data center” whenever a player saves his or her game.

 

Multiplayer Graphical User Interface –

Menus, shops and anything else that is displayed with the GUI should not hinder the experience of other players but should enhance it. Shops should be accessible by all players at once without the need of splitting the screen or forcing players to shop separately. Player hub information and menus should be restricted to parts of the screen that do not take away from the experience of other players during same-screen co-op.

 

Artstyle and Music –

The art style should feel like a mixture of the look and feel of Phantasy Star Online and Phantasy Star 4 with references to retro Science-fiction artwork and the hand painted or hand drawn nature of Vanillaware’s art style.

The music should sound a lot like Phantasy Star Online’s music but also blended with my own style of trip-hop music.

Link to one of my instrumental albums (as an example): https://lastbenevolence.bandcamp.com/album/pinakamaganda

 

 

I decided to throw that example link there at the end for those who were not familiar with the kind of music I created.

 

– LB

 

 

Setbacks and “Throw-away” BGM

The funny thing about game development (and pretty much any sort of creative project) is that there are almost always things that get cut from the final version.

Even though it’s quite early in Astraverse’s development, I’ve already chosen a couple of tracks to cut from the project–at least for now.

Now, a lot of people would probably disagree with me on this but there are a few reasons why I’ve cut some music stuff so early. For one thing–I’ve already composed about 60% – 70% of the entire soundtrack–Another main reason I’m making decisions on what goes and what stays is that my external hard drive just stopped working out of nowhere so I lost all of the project files for Astraverse’s music (along with all of the project files for the music I’ve produced, composed, recorded and released since 2010).

Fortunately, I had already saved every track that I had composed for Astraverse so far on to my local drive and a cloud drive. However, this means that I either have to re-do every track from scratch (if I ever wanted to change anything in them) or just treat them all as “final” versions.

This isn’t too much of a problem since I’ve spent a lot of time on the music already and I feel the tracks sound exactly the way I want them to. But there are a few tracks here and there that weren’t mixed well and a couple of them that I wasn’t sure I wanted to bring into the final game.

The following track was originally intended to be the BGM for the final area in the game (The Enemy Encounter version starts at 3:50).

There’s no need to worry about spoilers as this track’s been already replaced with something that I recently composed some time after my external hard drive failed.

And if you think it sounds good already–don’t worry, the new track is WAY better.

On the other hand, I MIGHT be able to find some use for this one somewhere in the game. But, there’s no plan for it now–I only need 12 environment tracks for the different places/planets that players will visit and those are already finished. I’m not worried about it right now.

 

This week, I’ve been dealing with this stupid bug while trying to import my animations into the game engine that I’m using and it’s taken about half the week to deal with the problem. Funny part was how simple it was to fix the issue. Even though the game engine’s compile window wasn’t explaining anything at all, it turned out to be that the names I was using for some files inside of the animation program were too long. After stressing out for about a couple of days, I ended up trying to rename everything and it finally worked!

Normally, I’d say this was a waste of time, but in reality, I learned something useful about importing my animations into the game engine that’ll save me the trouble for later on. Once I have some money to put into the project, I’m going to invest in a better animation program that will hopefully be more compatible with the game engine that I’m using (and hopefully will result in less issues like this week’s).

 

To be honest, this setback hit my schedule kinda hard and even though I’ve pretty much hit the ground running again with the game’s development ever since I fixed the problem, I don’t think I’ll be able to wrap up the character creator just yet.

But, there’s still this weekend so we’ll see what I can get done.

In the meantime, I’ll try to have something “special” prepared just in case I’m not able to follow through with that character creator by my next post.

 

– LB

Character Creation & Stuff

Ever since my wife and I came up with a decent number of outfits and hairstyles for the characters in the game, I decided to focus my efforts into finishing up the character creator.

Here’s the song I composed for the character creation:

The funny thing about making a character creator is that it’s not really hard to design. But, it can get pretty complex to implement once you start adding more possibilities for the characters that are created.

For example, a lot of games (especially in 2D) tend to have a simple editor where you can change your character’s class, palette colors and his/her name.

Not with Astraverse.

Because the game is 2D, I could’ve probably gotten away with a simple class, name and palette editor but I wanted to make it feel more like a personal experience so here are some things that are ready and being implemented in the character creator (and what’s already possible so far):

Custom Hairstyles

Custom Hair colors

Custom Eyes/eye colors

Custom skin colors

Custom colors for make-up (girls only)

Custom outfits

Of course, there’s more–like race-specific stuff such as skin types for the Android race (we’re calling them ADOLs–I can do a lore post later on). But that’s the stuff that’s mostly for every race.

Anyway, the toughest part (in my opinion) has been setting up the character creation menu. It’s funny how things that sound simple in theory are harder to program than things that sound complex. The character creator is just a menu but after programming it, I’m starting to see why a lot of games don’t bother with the feature.

Here’s what the menu should look like in-game (hopefully by the end of next week):

character creation class menu example

Once the character creator is finished, I’ll also have the character saving system ready to go, too (as they will need to both be implemented at the same time). Then, I’ll move on to the character data selection screen and then to fixing up some UI-related stuff.

 

For you guys who are following, thanks a lot for the support! Right now, I’m experimenting on when’s the best time to post here. So, at least, for the first few weeks, expect some changes in the time I post updates and stuff.

And if anybody is into the idea of a 2D (offline) Phantasy Star Online inspired co-op experience–subscribe here to stay updated on Astraverse’s development!

– LB

Astraverse Game Features and Design


While I was writing up the progress report for the game, I realized that I hadn’t really explained yet what features would be in the game or how it would be designed. So, I figure I should explain some of it’s features now before moving on to anything else.

Astraverse will have the same basic features of Phantasy Star Online but it will be in 2D and have a few changes to some of the systems and gameplay. For one thing–it won’t be an mmo.

For those who are not familiar with Phantasy Star Online, I’ll explain it this way–It’s a futuristic loot-grind action RPG (Diablo in 3rd person maybe?) but with a customizable button “palette” for assigning weapons, items, and skills to a GAMEPAD. It also has “drone-like” companions that can be fed/raised and equipped to bring into dungeons/areas. PSO also featured randomly generated (or more like randomly arranged) areas/dungeons.

All of that will be included in Astraverse but I’m going to try to expand on some of that stuff.

For example, the button palette system will include all four buttons on a controller instead of just 3. And since there’s no need for the left trigger to adjust the camera anymore, I’m planning on allowing for 4 more slots that can be used by holding down the left trigger/button.

Another thing I’m planning on changing a bit is with the drone companion (they call them “mags” in PSO). They’ll still be robots floating right next to players but they will be more like “pets” similar to the Chao from the Sonic Adventure series of games rather than little drones. They’ll be customizable through enemy material drops in the same vein as the Sonic Adventure games, too. We’ll be able to name them as well.

Players will be able to level up to level 200 and they’ll also be able to combine weapons with other weapons to make them stronger. No need for giving up cool-looking weapons just because other weapons are stronger–there will be a system for gathering a material (we’re calling it “plasma drops”) to level up weapons and combine them with others.

The music in Phantasy Star was one of the most defining characteristics of the game. As a matter of fact, I would say that PSO had one of the best soundtracks in gaming history. The music in Astraverse will sound like a mixture of Phantasy Star Online’s music and my own personal style. I always like to say that it’s “better for me to show than tell” so I’ll post up a sample of a track from the soundtrack soon to give a better example of how it will sound. 

Astraverse takes place in a fictional star system and so there will be 6 planets that the players will be able to explore.

While that may seem a little crazy–it won’t be an open-world game so developing this won’t be entirely unreasonable. I’m planning it out to still feel immersive, though. For example, players will have to board their ship in order to go to a planet.

Each planet will be more like a randomly-generated level. I’m doing it this way to simulate the idea of exploring parts of an entire planet. After everything’s said and done, a player should feel like they are exploring a planet whenever they play through a level–even if they don’t experience everything that the planet has to offer.

There will be “rest areas” that will also randomly generate in between the regular areas that players explore. They’ll mostly be represented by cities and while they are there, players can go to hotels to heal and gain temporary stat boosts as well as go to shops to buy and sell items and equipment.

At the end of each normal planet run, there will be a boss and then players will automatically be returned to their ships to explore another randomly generated level on the planet or fly to another planet to explore that instead.

The art style for Astraverse is currently a digitally hand-painted style. My wife and I are making the art for everything in the game ourselves. Mostly, it’s inspired by 
George Kumitani (the “mastermind” behind the Vanillaware games–Odin Sphere, Dragon’s Crown, Muramasa). We’re also taking inspiration from retro-style science fiction art.  Honestly, I’m not too confident about my art because this is my first time painting anything but my wife does great art. If someone were to help out with the art–I’d be glad to talk if they could pull off some nice stuff similar to the Vanillware games. However, we don’t have a budget for the project as of now so we’re sticking to what we can do on our own.

There will also be a few mini-games that will be included in the final game but I’ll get there when we get there as I have no plans to include any of that in the game’s upcoming demo.

Hopefully this post gives a better idea of what I’m making.

If you like what we’re doing here, don’t forget to subscribe to the mailing list!

LB

Development Progress 12/9/18

So, how far is this game in development? — Let’s say further than a game should be when you start a game development blog.

Seriously. I’m actually able to see the light at the end of the tunnel for a playable prototype of the game!

Title Screen Track

First off, MUSIC–to me–is one of the most important aspects to the overall “feel” of a game. So, early on, I composed and produced most of the game’s soundtrack. I would say it’s about 70% finished. There are already 26 songs in the game’s project folder!

The demo will include some things that are sorta “non-essential” for a game demo such as the character creator but I feel like the game isn’t really the game without the character editor so–yes, we can still enjoy wasting a bunch of time in the character creator/editor in the demo!

Right now, I’m working on what’s planned to be the first planet that players will visit, Ashara. Not much has been done with it but I have created one of the variations for the backgrounds and with that came the basic framework for most of the game’s areas.

A screenshot I took a few months back when I was testing out the background layers. I’ll be adding more polish later!

That means that all I have to do now is make the background parts for the other variations of the background and place a few things here and there to generate a new possible area. Once the background parts are together, it only takes a few minutes to do the rest of that. The reason for this is that I’m using a development method I heard about called “sandboxing” which means that I make all of the necessary parts to a game so that they are ready to be used in the game before I build levels/maps/areas. This also helps me to balance things and make it all ready for random generation.


On the side of characters and stuff–my wife (who’s helping with art), is doing out first shop npc. We’ll be designing the shops as a cross between the ones in the PSU games and PSO2 as well as the shops in the old Dungeons and Dragons arcade games–totally random and seemingly unrelated but there’s a method to my madness, I promise.


Just a few possible characters that can be made when creating a character for the first time

The playable characters are all “composite” so players will first have to make a character before they can play. Almost every part of the available customization options for characters are already finished. Just a few little things to add and adjust and it’ll be fully ready. I’ve also programmed the character creator but I need to put together the UI and, of course, make it all work together. The plan is to have that done this week.

The title screen is already finished but there’s something I’d like to adjust with it.

And so ends my progress report. Subscribe to hear more updates in the future!

LB