So as Kyren mentioned, yesterday I arrived in the UK! I said I’d write a post, but then immediately got distracted by a bunch of other discussions… sorry!
My main activities yesterday were discussing plans and priorities, getting my desk set up, and being a zombie from lack of sleep! Kyren and I talked a lot about her progress on the new status system, which is sounding awesome. The biggest feature is the conversion of all complex status effects to Lua scripts. Aside from massively improving the engine code and cleaning out a ton of unused hard coded stuff, this will allow us to easily implement some very interesting status effects, so we spent awhile coming up with ideas for possible scripted statuses. I also talked with GeorgeV and Armagon about how to implement features they need for the missions they’re designing. More traps, logic/wiring bits, and scripted/triggered events for NPCs are all in the works. More on that later; time for me to write some code!
Oh, and a small note for modders: Kyren added Lua bindings for getting and setting arbitrary world properties, so we now have access to world-level storage to communicate between script contexts and store persistent world data. I’m sure people will come up with some great uses for this!
Hello there!
So we’re going to have a few missions in Starbound and here’s just a glimpse of another one. This is a Floran mission where… bad things happen. Staying true to myself I’ll barely say anything and let you wonder…
This week is off to a very good start, with lots of small (and not so small) progress made on several different fronts. My main accomplishment was adding functionality for quests to be turned in to quest giving NPCs rather than completing immediately once the requirements are met. Kyren’s continuing work on the status system and Lua APIs. We improved the gate placement and starting system selection, cleaned up a bunch of quest text, improved the layout of the AI interface a bit and fixed some GUI issues and other bugs. We’ve also started adding in tiered guns and ship upgrades for the Novakids!
Hello earth!
That’s so exciting, it’s the first time I make a “daily update”! I take this opportunity to introduce myself : I’m Neco (or Necotho), I recently joined the Starbound team as an artist. End of the introduction, let’s get serious! I have finally finished making the graphics for all of the the tiers of the Novakid’s Space-Train-Ship, and I spent a long time to implement them in the game.
I really looking forward to seeing how you will fill your Space-Train!
So as Kyren mentioned, yesterday I arrived in the UK! I said I’d write a post, but then immediately got distracted by a bunch of other discussions… sorry!
My main activities yesterday were discussing plans and priorities, getting my desk set up, and being a zombie from lack of sleep! Kyren and I talked a lot about her progress on the new status system, which is sounding awesome. The biggest feature is the conversion of all complex status effects to Lua scripts. Aside from massively improving the engine code and cleaning out a ton of unused hard coded stuff, this will allow us to easily implement some very interesting status effects, so we spent awhile coming up with ideas for possible scripted statuses. I also talked with GeorgeV and Armagon about how to implement features they need for the missions they’re designing. More traps, logic/wiring bits, and scripted/triggered events for NPCs are all in the works. More on that later; time for me to write some code!
Oh, and a small note for modders: Kyren added Lua bindings for getting and setting arbitrary world properties, so we now have access to world-level storage to communicate between script contexts and store persistent world data. I’m sure people will come up with some great uses for this!
Hello there!
So we’re going to have a few missions in Starbound and here’s just a glimpse of another one. This is a Floran mission where… bad things happen. Staying true to myself I’ll barely say anything and let you wonder…
This week is off to a very good start, with lots of small (and not so small) progress made on several different fronts. My main accomplishment was adding functionality for quests to be turned in to quest giving NPCs rather than completing immediately once the requirements are met. Kyren’s continuing work on the status system and Lua APIs. We improved the gate placement and starting system selection, cleaned up a bunch of quest text, improved the layout of the AI interface a bit and fixed some GUI issues and other bugs. We’ve also started adding in tiered guns and ship upgrades for the Novakids!
Hello earth!
That’s so exciting, it’s the first time I make a “daily update”! I take this opportunity to introduce myself : I’m Neco (or Necotho), I recently joined the Starbound team as an artist. End of the introduction, let’s get serious! I have finally finished making the graphics for all of the the tiers of the Novakid’s Space-Train-Ship, and I spent a long time to implement them in the game.
I really looking forward to seeing how you will fill your Space-Train!
Evening folks!
I returned to my efforts on the lunar base today, as I’ve begun my detailing pass to make it all look nice and fill it with loot. There’s still a couple of elements I’m going to need before I can totally wrap up on the mission, like scripted NPC events (among other things). The good news is that we will have Metadept officially joining us in the office next week so we should see some really big progress on this front soon! I’m quite looking forward to having him in the office for the long haul, since he does a lot of stellar work and is a great guy to collaborate with.
George has continued working on his own mission and has been making excellent progress, with very little support required from yours truly. He’s already got a solid foundation down to build upon, and even though it’s rough around the edges it’s already looking great, I fear I may soon be eclipsed by his talent! That said, the fun bit will be when I get to teach him how to configure NPCs.
I’m afraid I don’t personally have much more to report, again for the wish to keep missions relatively spoiler-free. The programmers have continued to toil away on their respective tasks, which continue to sail over my non-programmer head, but what I was able to grasp is that they’re intensely focused on crushing a number of insidious bugs that crept their way in some time ago. Kyren in particular seems to be gearing up to assist Metadept when he arrives by tackling the systems he’ll need to work with.
Lastly, just in case you missed the announcement; the Chucklefish Blog has just gone live and Tiy kicked it off with a fairly comprehensive post on our plans for what will feature in Starbound’s 1.0 release. I wouldn’t advise reading it if you want a spoiler-free experience, but for those of you who absolutely must know what’s coming next you can read it . On this new blog we’ll be posting Chucklefish-related news, along with updates from the developers of games that we’re publishing, so you guys should definitely check it out from time to time!
Good night everybody!
Hello again, since I spoke last, I’ve been working on a couple of different things.
First, there was the new status system for players, npcs, and monsters which has been written and integrated into Player, but for right now it sits in its own branch awaiting a couple more things. The new system is basically ready, but there is a lot to the old status system which is needs conceptual reworking because it just wasn’t working out or wasn’t fun. The biggest example of this is the heat / warmth system, which will probably be replaced by something much simpler. The system is ready, but merging it to master is going to happen once metadept arrives in the UK and we can sit down together and make some design decisions and implement the scripts to drive them. In any case, the system is cool, it works very much like tech that you don’t actively control (player effects that involve movement == tech, player effects that don’t involve movement == status).
Oh and by the way! Metadept is moving to the UK to work with us in our physical actual corporeal office, and be a real life employee. He arrives on thursday and I am super thrilled, because you just can’t beat working together in person. Right now starbound programmers in the UK are pretty thin on the ground (me alone) so having me + metadept will be amazin’.
Other than status, I think you heard a little about the whole Star::Root threading debacle.. the important bit is that it’s fixed, and the atomic_store / atomic_load thing with shared_ptrs turned out not to even be needed. Now *every* database in Star::Root is updated through Read Copy Update, not just the few with the problems, and Root locking is avoided entirely. This fixes the problem without causing rendering slowdown, and actually speeds things up in a lot of places.
Other than THAT, I’m working on a few items in the starbound 1.0 todo, mission things and some boring technical ones involving Drawables and Particles. When I’m done, rain will NOT slow down your game to a crawl, which is nice. Next week, once metadept and I are both in the office, we’re going to start focusing very very hard on getting a new stable patch out, with all the save file compatibility fun that will go along with that.
Aaaaand in case you haven’t heard, Chucklefish is making a new game! It’s called Wayward Tide and, you should check out the Chucklefish blog post about it here. Development on Wayward Tide is *entirely* parallel with Starbound, a whole separate team in fact with Palf as the programmer.
In a technical sense, Wayward Tide is kind of cool for Chucklefish, because it represents a radical departure from the way starbound was developed, and if it works out it may very well be the way that Chucklefish makes games from now on. It’s entirely written in Haskell, primarily based on Functional Reactive Programming, and it’s really really cool. I would tell you more about it but I’m sure Palf will want to tell everyone more about it at some point in the near future.
Howdy guys!
Since I”m waiting on Metadept’s arrival at the office later this week before proceeding further on the missions, I spent my time today continuing one of my side tasks, which is to convert all existing lights over to the new flickering light code I discussed a few weeks ago. There’s a lot of lights that used the old flickering code, but I’m almost done with the conversion, and many lights (particularly fire-based ones) are being adjusted to look a bit more natural.
Working on this stuff isn’t terribly exciting in and of itself, but it makes for a welcome change of pace from all the mission work, and really it’s so gosh-darn nice to be able to make the lights pulse in time with their object’s animations!
Evening folks!
I returned to my efforts on the lunar base today, as I’ve begun my detailing pass to make it all look nice and fill it with loot. There’s still a couple of elements I’m going to need before I can totally wrap up on the mission, like scripted NPC events (among other things). The good news is that we will have Metadept officially joining us in the office next week so we should see some really big progress on this front soon! I’m quite looking forward to having him in the office for the long haul, since he does a lot of stellar work and is a great guy to collaborate with.
George has continued working on his own mission and has been making excellent progress, with very little support required from yours truly. He’s already got a solid foundation down to build upon, and even though it’s rough around the edges it’s already looking great, I fear I may soon be eclipsed by his talent! That said, the fun bit will be when I get to teach him how to configure NPCs.
I’m afraid I don’t personally have much more to report, again for the wish to keep missions relatively spoiler-free. The programmers have continued to toil away on their respective tasks, which continue to sail over my non-programmer head, but what I was able to grasp is that they’re intensely focused on crushing a number of insidious bugs that crept their way in some time ago. Kyren in particular seems to be gearing up to assist Metadept when he arrives by tackling the systems he’ll need to work with.
Lastly, just in case you missed the announcement; the Chucklefish Blog has just gone live and Tiy kicked it off with a fairly comprehensive post on our plans for what will feature in Starbound’s 1.0 release. I wouldn’t advise reading it if you want a spoiler-free experience, but for those of you who absolutely must know what’s coming next you can read it . On this new blog we’ll be posting Chucklefish-related news, along with updates from the developers of games that we’re publishing, so you guys should definitely check it out from time to time!
Good night everybody!
Hello again, since I spoke last, I’ve been working on a couple of different things.
First, there was the new status system for players, npcs, and monsters which has been written and integrated into Player, but for right now it sits in its own branch awaiting a couple more things. The new system is basically ready, but there is a lot to the old status system which is needs conceptual reworking because it just wasn’t working out or wasn’t fun. The biggest example of this is the heat / warmth system, which will probably be replaced by something much simpler. The system is ready, but merging it to master is going to happen once metadept arrives in the UK and we can sit down together and make some design decisions and implement the scripts to drive them. In any case, the system is cool, it works very much like tech that you don’t actively control (player effects that involve movement == tech, player effects that don’t involve movement == status).
Oh and by the way! Metadept is moving to the UK to work with us in our physical actual corporeal office, and be a real life employee. He arrives on thursday and I am super thrilled, because you just can’t beat working together in person. Right now starbound programmers in the UK are pretty thin on the ground (me alone) so having me + metadept will be amazin’.
Other than status, I think you heard a little about the whole Star::Root threading debacle.. the important bit is that it’s fixed, and the atomic_store / atomic_load thing with shared_ptrs turned out not to even be needed. Now *every* database in Star::Root is updated through Read Copy Update, not just the few with the problems, and Root locking is avoided entirely. This fixes the problem without causing rendering slowdown, and actually speeds things up in a lot of places.
Other than THAT, I’m working on a few items in the starbound 1.0 todo, mission things and some boring technical ones involving Drawables and Particles. When I’m done, rain will NOT slow down your game to a crawl, which is nice. Next week, once metadept and I are both in the office, we’re going to start focusing very very hard on getting a new stable patch out, with all the save file compatibility fun that will go along with that.
Aaaaand in case you haven’t heard, Chucklefish is making a new game! It’s called Wayward Tide and, you should check out the Chucklefish blog post about it here. Development on Wayward Tide is *entirely* parallel with Starbound, a whole separate team in fact with Palf as the programmer.
In a technical sense, Wayward Tide is kind of cool for Chucklefish, because it represents a radical departure from the way starbound was developed, and if it works out it may very well be the way that Chucklefish makes games from now on. It’s entirely written in Haskell, primarily based on Functional Reactive Programming, and it’s really really cool. I would tell you more about it but I’m sure Palf will want to tell everyone more about it at some point in the near future.
Howdy guys!
Since I”m waiting on Metadept’s arrival at the office later this week before proceeding further on the missions, I spent my time today continuing one of my side tasks, which is to convert all existing lights over to the new flickering light code I discussed a few weeks ago. There’s a lot of lights that used the old flickering code, but I’m almost done with the conversion, and many lights (particularly fire-based ones) are being adjusted to look a bit more natural.
Working on this stuff isn’t terribly exciting in and of itself, but it makes for a welcome change of pace from all the mission work, and really it’s so gosh-darn nice to be able to make the lights pulse in time with their object’s animations!
Proving once again that it’s somehow possible for indie studios to work on two games at once (!), Starbound developers Chucklefish have announced Wayward Tide. The top-down piratical action-adventure is being put together by a separate new four-person team. They’re still in the very early stages of development, but the grand vision is a 2-4 player competitive-coop booty-hunter full of treachery.
Evening folks!
For the past couple of days I’ve been chiefly focusing on the armor balancing that I mentioned last week, as it’s proven surprisingly difficult. I’m beginning to understand the pains that other developers must go through when painstakingly balancing their games, especially the competitive multiplayer ones! Our armor balance is getting to a better place, but it’s looking like there are a number of earlier armors that are going to need to be rebalanced as well to suit our progression changes.
I’ve also been doing little bits of work on the lunar base here and there. I’ve turned it into a floating dungeon type while await the completion of Omni’s work on the skies so I can configure the parallax layers to my liking. I still wish to keep most elements of the mission a surprise, so I’m reluctant to share any further media relating to it and its unique enemies.
The efforts of the rest of the team seems to be stuff that’s mostly under the hood, like the biome threat level changes that Metadept talked about yesterday. He’s continued his efforts on that front but has also been working on the enemies I’ve been trying to stay so elusive about. He’s also fixed a few long-withstanding bugs with the humanoid NPCs that have been present in the nightly build for some time (such as their inability to properly switch between their melee and ranged weapons appropriately).
George on the other hand has been busily devising our other missions, with some seriously cool ideas being laid out. Once I’m done with the lunar base, I’ll be moving right along to start building one of those.
In any case, it’s about time for me to hit the hay. Good night everybody!
Since it seems nobody else has anything particularly new to report as we’ve all continued working on the same things for the most part, I’ll cave a little and give you one more glimpse of what you can expect on your mission to the moon. This is the only lunar base media you’re getting out of me for a while, so enjoy it while you can!
Keep your eyes peeled, and you might just see something. ;)
Continuing work on biomes, I’ve been configuring a new primary biome type for starter worlds that we’re calling Garden. It’s a sparsely forested biome with gentle, rolling hills that should be easy to navigate for players just starting the game. It’s got quite a pleasant atmosphere:
I’m also working on surface terrain generation for all biomes. Higher tier planets will be a bit craggier (in general) since players will be likely to have some movement abilities and grappling hooks, but mainly I’m just aiming for interesting variety. I’ll post some screenshots of other terrain types in a future update. Have a good weekend!
Not much exciting to post about today. Kyren’s been working on nitty gritty technical stuff, addressing some threading issues we’re running into with C++11 pointers. Armagon and the artists are continuing work on missions that I’m not allowed to post about yet.
I’m still playing with the terrain generation, seeing what its capabilities and limitations are. Here’s a screenshot of some WIP desert canyons (click for big):
The terrain generator works by combining multiple layers of Perlin noise. In this shot, I’m using one source to define the primary surface terrain (low dunes), another source to define the rough bottom of the canyons, and a third to mix between them, with bias toward the primary source to make canyons less frequent. There are several problems with the current configuration, however. The most obvious problems are the sharp corners at the canyon edge where the mix shifts from 100% primary surface and rapidly begins switching to the lower canyon terrain. These can be addressed with some smoothing in the mixer (which needs engine changes to implement). Another issue without an obvious solution is what to do with the background. Because of the dimensionality and limited number of layers, it’s difficult to visually distinguish an open valley from a long, narrow canyon from a deep hole. I’ll have to experiment further to find a satisfactory solution.
Hey y’all!
I spent my day helping George by setting up a dungeon file and key for the mission he’s about to start working on. He had already knocked up a detailed plan of the mission’s structure and layout, so he spent most of today roughing it out visually in-game while I worked on getting a functional setup together. George seems keen to tell a story with the environment, so he’s been creating a bunch of cool new objects as he’s progressed.
It looks for the most part like he has everything necessary to get started turning it into a functional location, so most likely he’ll be spending the next week focusing on this mission. I’ll probably get called in from time to time to help him with the finer points of the dungeon system, but I’m really looking forward to seeing how he does with it, since his mockups are generally very good and having someone else to work on this stuff with me will be most welcome.
Sorry I don’t have anything fancy to show off, it’s just been that kind of work lately and we’d like to keep at least a few surprises, if possible.
Good night!
Evening folks!
For the past couple of days I’ve been chiefly focusing on the armor balancing that I mentioned last week, as it’s proven surprisingly difficult. I’m beginning to understand the pains that other developers must go through when painstakingly balancing their games, especially the competitive multiplayer ones! Our armor balance is getting to a better place, but it’s looking like there are a number of earlier armors that are going to need to be rebalanced as well to suit our progression changes.
I’ve also been doing little bits of work on the lunar base here and there. I’ve turned it into a floating dungeon type while await the completion of Omni’s work on the skies so I can configure the parallax layers to my liking. I still wish to keep most elements of the mission a surprise, so I’m reluctant to share any further media relating to it and its unique enemies.
The efforts of the rest of the team seems to be stuff that’s mostly under the hood, like the biome threat level changes that Metadept talked about yesterday. He’s continued his efforts on that front but has also been working on the enemies I’ve been trying to stay so elusive about. He’s also fixed a few long-withstanding bugs with the humanoid NPCs that have been present in the nightly build for some time (such as their inability to properly switch between their melee and ranged weapons appropriately).
George on the other hand has been busily devising our other missions, with some seriously cool ideas being laid out. Once I’m done with the lunar base, I’ll be moving right along to start building one of those.
In any case, it’s about time for me to hit the hay. Good night everybody!
Since it seems nobody else has anything particularly new to report as we’ve all continued working on the same things for the most part, I’ll cave a little and give you one more glimpse of what you can expect on your mission to the moon. This is the only lunar base media you’re getting out of me for a while, so enjoy it while you can!
Keep your eyes peeled, and you might just see something. ;)
Continuing work on biomes, I’ve been configuring a new primary biome type for starter worlds that we’re calling Garden. It’s a sparsely forested biome with gentle, rolling hills that should be easy to navigate for players just starting the game. It’s got quite a pleasant atmosphere:
I’m also working on surface terrain generation for all biomes. Higher tier planets will be a bit craggier (in general) since players will be likely to have some movement abilities and grappling hooks, but mainly I’m just aiming for interesting variety. I’ll post some screenshots of other terrain types in a future update. Have a good weekend!
Not much exciting to post about today. Kyren’s been working on nitty gritty technical stuff, addressing some threading issues we’re running into with C++11 pointers. Armagon and the artists are continuing work on missions that I’m not allowed to post about yet.
I’m still playing with the terrain generation, seeing what its capabilities and limitations are. Here’s a screenshot of some WIP desert canyons (click for big):
The terrain generator works by combining multiple layers of Perlin noise. In this shot, I’m using one source to define the primary surface terrain (low dunes), another source to define the rough bottom of the canyons, and a third to mix between them, with bias toward the primary source to make canyons less frequent. There are several problems with the current configuration, however. The most obvious problems are the sharp corners at the canyon edge where the mix shifts from 100% primary surface and rapidly begins switching to the lower canyon terrain. These can be addressed with some smoothing in the mixer (which needs engine changes to implement). Another issue without an obvious solution is what to do with the background. Because of the dimensionality and limited number of layers, it’s difficult to visually distinguish an open valley from a long, narrow canyon from a deep hole. I’ll have to experiment further to find a satisfactory solution.
Hey y’all!
I spent my day helping George by setting up a dungeon file and key for the mission he’s about to start working on. He had already knocked up a detailed plan of the mission’s structure and layout, so he spent most of today roughing it out visually in-game while I worked on getting a functional setup together. George seems keen to tell a story with the environment, so he’s been creating a bunch of cool new objects as he’s progressed.
It looks for the most part like he has everything necessary to get started turning it into a functional location, so most likely he’ll be spending the next week focusing on this mission. I’ll probably get called in from time to time to help him with the finer points of the dungeon system, but I’m really looking forward to seeing how he does with it, since his mockups are generally very good and having someone else to work on this stuff with me will be most welcome.
Sorry I don’t have anything fancy to show off, it’s just been that kind of work lately and we’d like to keep at least a few surprises, if possible.
Good night!