2014년 10월 17일
On Wednesday we finally merged the massive status system changes, including the new status effect system, into our main development branch. Those who are following the nightly builds have probably noticed some major differences, lots of improvements, and a few things still missing. The past couple of days have been spent finding and fixing bugs, adding missing Lua bindings, cleaning up old status effects and adding new ones. GeorgeV, Necotho and Armagon continue their development of more biomes and biome items, and we’ve been coming up with lots of good ways to use the new status system and status effects to make biomes and their items feel unique and interesting. Next week we’ll be reworking the food and hunger system in ways that make it less of a chore and more of a bonus. More on that soon; have a great weekend!
I’ve carried on as usual with implementing the multitude of new weapons and items, many of which are taking advantage of our status system rework. I thought I’d try something a little different today and see how quickly you guys can identify what one of these weapons is from the sound it makes. I think this one is gonna be quite popular with PvP-oriented players. Click here to hear it!
It’s been a fun implementing these new items, and the list is expanding all the time. There’s even stuff like this!
What would such an item do, I wonder?
The system she built allows an object to open a configurable interface window when the player interacts with it. This window can contain all the usual window elements, but can also include a canvas widget which gives a Lua script direct access to primitive drawing operations and user input. These ‘scripted consoles’ can monitor and respond to keyboard and mouse input, and draw their own lines, polygons, images, text, etc. Essentially this allows all kinds of custom interfaces and even simple games to be built as mods and run within Starbound!
One of the most obviously fun uses for this is to make in-game games. Here’s a truly awful implementation of Pong that I threw together as a test:
Unfortunately we don’t have the time to go wild on this just yet, but this is a good first step toward a much better GUI system in the future. Some other examples we came up with include controlling turrets in a base, hacking puzzles for missions, and numerical keypad locks for doors. I hope to have more time to develop these at some point. In the meantime, however, it’s available for modders in the nightly build, and they’re already going crazy with great ideas. For example, Neurisko is starting on a full-fledged programmable computer made from scratch:
…and that’s just the beginning! What kinds of things do YOU want to make?
One of the features that we’ve wanted for a long time is a better way for modders to make their own GUIs (graphical user interfaces). Currently, all of Starbound’s interface windows are configured in JSON, but their appearances are largely static and they can only respond to user input in a few fixed ways. On Friday we had been discussing this in the ##starbound-modding IRC channel, trying to figure out the best way to make objects with dynamic displays and lamenting the fact that there wasn’t any good method currently available. So, over the weekend, Kyren took the initiative and made one, which I finally got a chance to test out this evening!
Here’s the quick rundown of what folks have been working on:
- Metadept has been working on the GUI stuff, following on from his Tuesday post. I’m really looking forward to seeing what the community does with this functionality once he’s finished.
- Kyren is working on something cool that we’ll (hopefully) have something to show for later today, provided things goes smoothly.
- George has continued his work on filling the biomes with more stuff, which ties into…
- Yup, I’ve still been working on making lots of the new loot and weapons actually function. I’ve spent a chunk of time recording new sounds for these things too.
For those of you who read my post on Monday and took a stab at identifying what the audio sample I included was; if your guess was that it was a paintball gun, you were right!
There are six colour variations you can get, each painting the enemies you hit in the corresponding colour for a few seconds, making it super clear when you’ve successfully hit them. Novel in the grand adventure, but potentially really cool for PvP servers. You’ll be able to find the blueprint and the unique resources to make it in one of the mini-biomes.
Hey guys, noticed there wasn’t a post made yesterday. Sorry I didn’t get this up sooner!
That's all, folks! Have a nice weekend! ːSBHorseː
2014년 10월 10일
Hello! Friendly reminder that if you don't see the dev blogs cross-posted here, you can always find 'em right on our website.
Or how about a “nitroglycerine” effect that causes the player to explode when they fall too hard?
Obviously we’re also reimplementing and improving the existing status effects like fire, poison, and slows, but it’s been a lot of fun testing out the new possibilities! I think a lot of these crazy ideas may make it into the final game in some form or other, to give it a bit of a roguelike flavor.
Since kyren is getting close to completing her massive status system rework, I’ve spent the past couple of days helping her design and test the new Lua APIs, fix bugs, and preparing to integrate the changes back into our main development branch. One of the most apparent changes is that status effects are now driven by Lua scripts and have access to a wide variety of API functions, making them incredibly flexible and fun to work with. Today we’ve just been testing out features and exploring what kinds of crazy stuff we can do. Here’s one example, a sword with high knockback that makes monsters bounce:
In any case, I’ve been continuing my work with George in setting up a bunch of new weapons and fun loot for the biomes. The status system rework from Kyren and Metadept is almost done, so in the meantime I’ve been working mostly with our existing status effects, in some cases combining them for fun results. It can be a deceptively involved process, particularly if you want to make some nice particle effects to go along with it.
I’m really looking forward to when we can begin implementing some more unusual status effects, like the ones Metadept was prototyping. Then we can really go to town with making fun and, most importantly, unique weapon drops.
Apologies for this going up the following morning! The Chucklefish team went out last night to celebrate the arrival of our newest member Rosie (not to be confused with the office pet of the same name) and I forgot to write this when I got home, so that’s on me!
Nothing too exciting to post today. We’re getting very close to merging the new status changes into nightly, so kyren and I have been reimplementing lots of the old effects and responsibilities of the old system, and fixing plenty of bugs along the way. It’s going very quickly, which is a good sign because it means the new status system is very easy to work with. Today we rebuilt healing items, beds, liquid status effects, cleaned up some unused and misconfigured effects on objects, added several new functions and missing functions to the API, and added a much better system for light sources on Networked Animators (the class used to display pretty much everything on entities). I made this ridiculous effect to test it out:
Seems like a surefire way to win a snowball fight!
Sometimes you’ll find items like this in biome-specific chests, but most of the time you’ll only find blueprints, and its up to you to get the necessary materials together. Typically it will require a component you can only get from that biome.
There’s more to come!
Some of the recent new additions George and I have been making to the game’s loot pool are made because they’re cool. Others are silly and fun. Then there’s stuff like this that straddles the line.
Also! In case you missed it, we've got Steam trading cards now! Collect 'em all to craft Steam profile backgrounds, badges and emotes. You'll get about one card drop per hour of play.
ːSBHorseː ːSBchickenː ːSBpandaː ːSBpenguinː
Have a nice weekend!