art is slow, but time is fast. for much of the previously-prescribed [unit of time since prior blog post], we've been quietly chugging along with art of all kinds, including concept art, tile art, character art, map art, life as art, and art of otherworldly entities as likely to hold you against the ground and stare coldly into your eyes as you burn to death as they are to nuzzle the top of your head and give you lill smoochies because who's the cutest little mortal creature this side of the ethereal void of existence??? you are!! oh, yes you are!!!!!!
but today we're only going to be talking about two of those things: map art, and character art.
mapping in reborn is fairly straight forward. gen 3 and reborn uses 32x32 pixel tiles, which are at 2x resolution so they are actually 16x16 tiles. this does not leave much room for detail, but it does make tiles very quick and easy to pixel on the fly. so we slap some tiles down, passability is automatically generated from them, aaaaand that's basically it. it's quick and fast to match gen 3, but it's also fast to produce a lot of maps unless you use a bunch of cliffs because you hate yourself which is great because pokemon games are all about exploration, and we really want to have a lot of different varies maps for you to explore!!!
mapping in starlight is the same in that we are still putting tiles down................................ but that's about it.
for one thing, the process of creating those tiles is much more time-consuming than before. our tile size is 48x48 which i used to feel like i was too big, but now that we've made the jump to 1080p part of me almost wishes they were bigger. only part. anyway, pixeling tiles of that size would take approximately much longer than for reborn since they are effectively 9x the size, so instead we draw the tiles out in smooth digital art, and shrink them down to the size we need.
this takes a while!
i kind of hate it!
once we have our tiles, we place them as normal. and then we spit the map out as a raw image file which we can separate in layers, do any kind of other visual editing work we need and re-import. this process is called parallaxing! it might sound like a lot of work, and it definitely is extra work, but the balance between [Extra Work] vs [This is fun to do and looks very cool] is tipped highly in the latter's favor.
After doctoring the map, we reimport it and manually set the passability per map, since we won't have tiles to do it for us anymore. This process is actually much quicker than it sounds! For a project like Reborn with hundreds of maps, it would definitely be less efficient than auto-generating passability. However, doing it this way is actually faster when we have fewer maps, and tRPGs definitely spend much more time on a small set of maps as opposed to an exploration-based RPG where you nyoom through them at the speed of speed-up-mode. It also means there will be very few passability-based tile errors!
In short, it is very much a map-quality vs map-quantity type of thing. Episode 1 of Reborn had about 80 maps in it. The Starlight demo had 3. While Reborn's maps are amazing by gen 3's standards, I have eagerly awaited the chance to do better.
So, here is an in-game look at the first map we've made for the intro!
In the near future, we'll be breaking down the process of making this map in a much more detailed fashion on our patreon, so if that kind of thing interests you, please consider visiting us there~
As one extra note, if you are someone who is skilled at digital art, or working on learning, and you think it might be fun to make tiles like this, maybe drop me a message! The mapping is very feasible, but the tiles are somewhat time-consuming, and we could perhaps use the help.
Of course, character art has also been a big focus lately! Since we're making the start of the game proper, there are lots of characters to introduce all at once. That means a lot of art has to be done all at once! Painful, but fun!
I won't be talking too much about this right now as I've already gone into detail on our patreon about these as well, but I will share two recently finished arts with you from characters who we'll meet early in the game.
First up is Raine!
Raine is our protagonist's best friend since childhood, a serious and mature angel from a rich and stern family. She is also an archer who uses ice magic to create arrows on the fly!
And then, the aforementioned protagonist...!
I'm sure you've all seen her somewhere before...
...And no, it's not Star! Star is our deuteragonist, a central character to be sure, but the real main character is--
We've seen her once at the end of the demo already. A studious young lady who always has her nose buried in a book, Aulyra wants little more than to serve her community faithfully! Like many protagonists, she has just a teensy-weensy case of amnesia, but unlike them, she has luckily had Raine and the rest of her community to kindly help her remember and readapt to her old life. As all angels ought to, she aspires more than anything else in the world to earn her wings rightfully and bear them with pride.
That will surely happen peacefully :)
That's it from me this month! Thank you for continuing to watch patiently as we march forward~
I guess it's been exactly a month, ain't that somethin' special?
When we last left our heroes, I mentioned that our first focus was going to be on a handful of structures that exist mainly in the backend, not necessarily things we can show off. There's A Lot To Unpack There ™️ , but for the sake of giving a quick update we're not going to go too in-depth on any one thing. In general, we'll talk about three broad categories today:
look at me responsibly creating three-bullet talking points for two posts in a row like some kind of professional speaker. aren't i doing so well? it makes me sick. next post i make is going to be all one long run-on sentence and a picture of a minion if you're lucky, mark my words.
for those less familiar with software terminology, when i'm talking about the backend, i'm talking about anything in the code the player can't actually see. the opposite would be the UI and graphics-- things the player can interact with. things like optimization, update loops, loading and memory are all things that exist and relate to the backend. with that in mind, in general the project backend has been the focus over that last month.
imagine you're playing pool. billiards, that is. and you've got your cue and you're gonna be taking a shot. any good player takes a moment to line up their shot before taking it-- we wanna make sure the angle is right, that we know exactly how the 8 ball is gonna bank off the back wall, and which pocket it's gonna go into. hopefully this'll save us a turn or two down the line. that's kind of what this is. we want to make sure that all of our systems are in a good or clean place that they will be easy to work with and scale well into future development.
so, what are some backend systems we've gone over recently?
Preloading- the demo runs two different preloading systems because one had to be added at the last minute and they kinda trip over each other. nicky has made them play nice and are easier to work with than ever!
PIXI- pix pix pix, this is our graphics library plugin! we were previously stuck on version 4 but hewaje found a way to jump us up to version 5 which brings several years' worth of performance and stability improvements and enables us to do some cool new stuff with animations.
Mouse Support- i wouldn't quite say we have mouse support yet, but we do now have support for mouse support. nothing to it but to do it from this point.
Lane-handling- all of the information about showing and detecting the timed hits before was stored in a series of arrays and variables. instead, this is now a much more manageable object-oriented set up which is infinitely more stable and easier to work with. we're also setting up to do some more fun stuff with it...
Image-managing- basically the same as the above, we're working with them a bit smarter now. still some clean up to do here. shout out to perry for doing like all three of these previous things btw.
Message Arts- it only comes up i think once in the demo but due to a mess in how message arts are displayed, sephany actually briefly grows her wings back, and so we're having to rework this whole bit lol . . . .
Controls- my latest project, the handling of controls was kind of a mess in the demo, and was only getting messier over time. now we have everything set up sick and span through a finite state machine so it's easier than ever to work with and refine them.
[columbo voice] oh and uh just one more thing-- Spine.
O Great Slumbering Goddess, We Offer To You In Holy Tribute, Our Very Bones
Spine is a 2D animation software. By attaching images to 'bones' which are just a structure of data for instructions and movements, we can create 2d sprites such as the ones we use in our combat scenes in Starlight.
y'know, like this:
The Starlight demo does not use Spine. It uses a program called DragonBones. DragonBones does exactly the same thing as spine, but lags like hell, has fewer features, was effectively abandoned years ago, and (although this doesn't matter now i mention it out of sheer pain and spite) when we first started there was actually 0 english documentation for it dfjnkfdjfd
So anyway, we wanted to update to Spine. I wavered on if it would be worth it for a while-- and eventually decided that for the quality and quality of life improvements we'd be getting from it in the long term, it would. But that meant rebuilding the compatibility for handling animations, which was the biggest overhaul of them all. It was kind of a core system, and integrating third party APIs is always just suffering. software devs, you know what i mean
we won't be talking about the nitty-gritty of this overhaul or others in this post, but let's go ahead and drop a... fun screen... from when we were in the process of trying to get this to work. actually this was from during the pixi upgrade, but it's a great example of how code being a little bit off can-- um... well...
uh, here's Star:
.........and all the king's horses and all the king's men couldn't put star back together again............
but that is to say, it was a huge endeavor, and even now we're still piecing our combat models back together, but we're through the code-side part of it. another issue we ran into was that, DragonBones handles animations per-frame, but Spine handles animations per time-passed, and so we had to kind of rework the entire combat and attack-handling system around it too. fun! then again, managing per-time means that we can potentially do something like... a slow motion hit effect on kill... things like that. fun stuff. we'll get there.
other fun stuff we can do with functioning animations: not have them be in the way!
and that brings us to Jugdralian Squaredancing.
ame what the fuck are you saying?
now here's where we climb out of the backend and start talking about real things that you can actually see and touch. i'm a huge FE fan, have been since i was a kid, and i saw the wild animations of the GBA FE games-- like this shit???
dope as hell. what the fuck. lyn best lord. so obviously i'm like okay let's style the game after this.
...but as we realized from the demo, that's not actually the best fit for our game compared to FE. in FE, everything is RNG-- there are no inputs in combat. they get to just show a pretty scene, but our animations have to be snappy enough to not feel like input latency, and the closer we lean towards unfortunately resembling a rhythm game, the more long animations are going to get in the way.
even ones that aren't flashy like the above--
...still take a good bit of time to move forward and back. and styled after that, that was how our animations in the demo have been as well:
because we have to move forward and back between each attack like in FE games, we can only have the time hit inputs so close to each other. there were ways i tried to work around this before, and they definitely didn't not work, buuuuuuuuuuuuuuuuut....................... um anywayso last year i played FE4. It's older than the GBA titles, and after playing it i am so firmly in the camp of Echoes of Jugdral when, intsys?
but i also noticed their style of animating combat is........
...for our purposes, way better. it is just one single engage, and then simple, non-flashy attacks on the player's own time. most critically, this means we can put inputs much closer together, which greatly expands our flexibility, especially in the way of keeping the game interesting for rhythm game veterans.
so this gif is messy and the animations are WIPs, but here's an idea of what we mean at its extreme, where we can now concentrate a bunch of attacks close together if we so choose:
no shot that was happening before.
and to tie it back to spine, while this technically would've been possible before, spine is doing a lot of work here in including features like auto-mixing between animations. we've got a lot going for us with this set of changes.
and now, that just leaves........................................
coughs gags wheezes dies
the demo was originally made in 720p. I don't think I need to say why we had to go up further. the original jump was spooky, look at some of these screenshots from right after we change the setting:
it's a lot of work to reposition and re-export everything. in addition though, some elements like sprites just can't be resized, and so we can't just reproportion everything-- it has to be adjusted around in the UI. and then the message frames-- they no longer cover the whole bottom of the screen, and that's too much space for text, so how do we work all this out?
i won't be getting into the detail of that in this post, so we'll jump straight to the end and show some screenshots of the game in 1080p.
here's the loading screen (ignore the buttons in the middle, they were just part of the screenshot from before fixing)
here's the message frame:
here's the summary screen:
everything is now on one page. and also...
it can be quick-loaded in the battle scene directly. loading into the summary scene before took half a second and i disliked that. you can also now select units on the battle scene directly through the summary wheel, or just see where they're positioned.
oh. what happened here? perhaps it is a harbinger of future developments....
that's the show for today. a lot of this has been gone over very glancingly! if you are more interested in in-depth looks at the process of actually making some of these changes and details behind it, whether that's because you're interested in making your own game or just curious about what goes into a vidya, much of these things have more detailed posts about them on our patreon. that is also the best way to support development, but sharing and talking about it with friends is also incredibly helpful, and again,
aside from all that, i am also just super super grateful to have you all here and following along with this project. this is a childhood dream, and the support is invaluable to me. much love <3
if you're reading this, you already have my heart. pokemon is one thing, but you're telling me people out there are actually interested in our own original game??? incredible. i love you.
all right, so here's a three part post.
first, for the new folks, we're going to go over what is Starlight Divide and why should you care?
secondly, we're going to go through a rundown of the development team, both new faces and old
finally, we'll briefly go over what's going on in development right now, but details are going to be left for future posts
What is Starlight Divide and why should you please care about it 🥺
Starlight Divide is an action-tRPG about two angels in the distorted worlds of heaven and hell after God has abandoned them.
Okay first off, Ame, if that is your real name, what does 'tRPG' mean?
thanks for asking, imaginary reader! tRPG is short for 'tactical RPG'. some big examples of games in the tactical genre include Final Fantasy Tactics, Triangle Strategy, XCOM, and most critically for starlight's inspiration, Fire Emblem. If you haven't played any of those, imagine chess but instead of wood pieces you have pretty characters with blue hair and swords.
So why is it an 'action' tRPG? That just sounds like something you made up.
well, I did.
so as anyone who's played these games much knows, they can sometimes be frustrating as they are very dependent on RNG. you can plan a perfect strategy just to have it ruined by a 92% accurate attack miss, or an enemy hit a random 3% chance critical hit. it's painful, and watching these battles play out can take a fair bit of time, making players wait and bogging the active time of the game down. I say no-- we can do better than rolling dice in the year of our lord 2022.
One of the premier goals of Starlight is to have a system that is entirely independent on randomness. By taking elements from rhythm games, we've created an active system where who hits what attacks and crits is entirely in your hands, and you'll have to be on your toes every step of the way. I'm hopeful that, with time and care, we can offer a worthy evolution of the genre as a whole.
The side-bar says something about pretty screenshots. Prove it.
These are taken from the original splash page for the demo, but for those of you who haven't been there before, have a gander!
So... is it playable yet?
yes! we release a demo at the end of 2020 which you can download and play from here! we still have a lot of work to do though, the demo is just a starting point and we've already received a lot of feedback that we're excited to get back to the game, dust off the old content, and start implementing.
As someone coming from Reborn, why should I care about this if it's not Pokemon?
here's my secret, loves: sure, i'm a good and talented developer, but I'm far from perfect, and so was reborn to start. still, whatever strengths reborn has aren't just luck-- they're the result of 10 years of passion and work and, most importantly, a cycle of listening to and implementing feedback and features from and with the help of the community. in short, reborn is good because of the support and love you all showed it.
off the top of my head, here are some examples of things that exist in reborn because of the community:
the level cap
the slickest bits of the UI
the existence of 7th street
all of these things and a toe more came from you guys.
most AAA studios don't get the luxury of episodic release cycles and being able to draw from and directly interact with their fanbase. on top of that, they're weighed down by corporate necessities and profiteering. indies are running away with the industry, but many would-be projects never get the logistical support (funds, team, time, etc) to reach their imagined heights. meanwhile, we're sitting at the eye of the storm, where thanks exactly to you all and especially the folks on our patreon, we have both the means and the freedom to do exactly what we need to do make this game wonderful.
more than that, i hope to prove through action that this is a better, sustainable way to produce games for everyone. between rising expectations, harassments, and everlasting crunch, many studios and devs are struggling, but we are here thriving because of the exchange we have with you all. it takes a village to raise a child, and this is our child.
finally, as a bonus, (please imagine i smile at the camera and my teeth sparkle in the cheesiest way possible) you already know me, and that, if nothing else, i can see a project through to the end no matter how long it takes. we're not here to make a homerun, we're here to walk the ball into the end zone, touch it down, (??? idk i dont sportsball), and make sure this project can really be something special.
in short, if you're interested in Good Video Games, we've got all the odds stacked in our favor. why not stick around and be part of it?
of course, i can't do this alone on the dev side either. so, let's talk about the team.
Who is Chasing Selene?
that's all of us on the dev team! you've probably seen the name on e19's splash screen-- it only felt appropriate to get a group name together for as many of us carried over to this project. let's do a roll call and say hi to everyone now!
of anybody, surely i need to introduce her the least. it's a whole new engine that could be ripe for optimization and posts bitching about how inefficient this god awful starting system is.... maybe. either way, we still have her sharp skills and sharper wit on deck to edit and code, cleaning up the worst bits of both the programming and writing.
march has been with us since way back in 2015 when we were first tearing up essentials' original AI. nobody expected back then that they'd go on to write some of many people's favorite parts of postgame, such as the epilogue and a certain quest involving a time-travelling onion... or that they'd steal jan's lemonade stand in cold blood. nonetheless, here they are, ready for action and chaos on both the front and and back end. ...nobody take that out of context, okay? taking quotes out of context just isn't something anyone does around here, right?
sam's been with us nearly as long as march has, but rather than monkeying through code, smeargle is out there painting wonderful animations across the board. in addition to doing about a quarter of the animations in reborn, including big ones like doom desire and judgment, sam also jumped into some hella spritework with the overworld legendary animations, the charous mountain dragon, ferris wheel, and so on. for starlight, he's made the jump to rigging and animating our 2d combat models, ready to paint a new kind of scene for you all!
vulpes joined us on the animation team around 2018, going on to make some of the most impressive animations in reborn straight from downtown (genesis supernova anyone?). later, she suddenly jumped into the code, stitching up the editor, and undertaking a project to give every pokemon in the game form change animations on a whim. from what i understand, starlight's style of animation is closer to her home territory than reborn's was anyway, so i'm extra excited to see what she can do with us here!
Falcon hasn't participated in Reborn's development directly, but you might recognize some of Falcon's art from the recent set of wallpapers, where he's torn through the majority of new ones himself while we worked on postgame! That aside, his art is already in and beautifying the Starlight, as he first helped produce character and environmental art for the demo before! We're ready to get back in action with it!
....Unfortunately crim's statement could not come to work today. After asking what they might be interested in doing, they proceeded to list almost every role in development and then some, so for the sake of our viewers at home, we've been left with no choice but to redact the entire list and airlift crim into a very large cardboard box until they calm down.
That said, listing every role in development is probably the correct choice! It is easier to list what they don't do, and I'm not even sure about that. After first joining us on Starlight to help out with sprites, crim came over to Reborn and proceeded to put an incredible amount of work into the project, learned to do like eight other things at once, and were irreplaceable in helping me hammer through postgame as quickly and strongly as we did. Now they're coming back home stronger than ever.
Perry first joined us after he pulled up the broken Battle Factory code, magicked it together, and then asked if we wanted it. We were like 'yes and we also want you', and pulled him into help with Starlight during the initial demo development. He's been an incredible part of the team ever since, a pillar of stability when we need it the most (usually), and a rival agent of chaos when we least expect it (there have been delightful firestorm gif wars, i'm never ready).
...and that's all the folks that were on Reborn's team*... but it ain't the whole show
Nicky's been around, supporting us from the sidelines for years, from first getting the wiki going to being a voice of encouragement to the sidelines, offering to help out with video editing, and now this. He's already gotten a jump on working out the technicals of our loading systems from the demo, and I'm super grateful to have their help with the code at the ready!
Frequent Discord visitors might recognize Hewaje from their occasional posts in the creative-works channel. After being continually impressed by their work, I made a move to snipe them and have only continued to be amazed in more directions than I bargained for as they blaze through with beauty and work solutions all the way down.
*Okay, so I said that was everyone who was on Reborn's team, but Darius did some work for Reborn too! Those of you who replayed e19 might've noticed Kiki's new theme thanks to his talent and work! I hear he's also working on some other nightmarishly good tracks for another project... But I'm ecstatic to have him on board for Starlight as well!
Maybe we'll have some posts from some of them in the future too. Regardless, I'm eternally grateful to everyone who's embarking on this wild journey with me. Not just a solo endeavor anymore, it helps me so much to know the team's got my back, and I'm looking forward to what we can do together as Chasing Selene!
Wait hold on, who is Selene and why are we chasing her?
oh, that? selene is the greek goddess of the moon.
we're chasing the moon.
you think if we run really really fast, maybe we can catch it at the horizon?
i hope to find out.
and if not, i think we'll have a hell of a time trying to do the unreasonable.
like an 18 badge pokemon game and a giant postgame?
that's just stupid.
nobody should do that.
nobody ever do that, it's a bad idea. okay? it's just bad scope.
................but what if--
So what's going on with development now?
Well, we're just revving up. As I've said previously, the chapter featured in the demo is not the start of the game, so we gotta go make that start properly now!
There is also a lot of feedback to implement from the demo. After all, on both the front and back ends, we've got our starting point, but now we need to take our first step. I'm especially looking forward to the coming iterations as we feel out, with everyone's help, the direction we need to be going.
The back end is taking priority. Our first big project has been migrating the code and animations to a different animation program than we used for the demo. We previously used a freeware called Dragonbones, and while it did the job, but that software is all but abandoned. It is laggy, missing some features... and most of the documentation is Chinese. It's not exactly great for future development. We've been moving over to the more popular, much fresher equivalent, Spine, but that's a lot of work to patch up both the code and the models to all work in a new context.
In addition to that, we're looking at changing some fundamentals of combat, there was the aforementioned preloading, mouse support is a high priority, higher resolution looms over me like the shadow of a lion about to devour its newly slaughter prey in the saharan sunlight, and on top of that we've got a few things to patch up from the demo which are currently constructed out of toothpicks and prayer. ...They're efficient building materials, I promise?? ...No, they need work. It's a whole thing.
For these reasons, our focus isn't going to be on anything we can immediately be showing*, but those details are going to be saved for a future round up.
*actually a lie lol they'll never know im lying lol
Please stay tuned for as we get those details coming... and hey, maybe keep an eye on our sidebar. I'll say hi now and then. And regardless of any of that, you giving this post and this game the time of day already means the world to me.