I’ve been working on a few nice things for the behind the scenes stuff.

First thing I did was make a few of the admin commands nicer. Banning now can take an optional timeout and unban automatically once the time is done. The cavaets are that the server needs to stay running, because temp bans aren’t stored, yet (perm bans are of course). This is useful for short term bans for someone to cool off, like 10 minutes or a few hours.

Next, I retooled a bunch of the duplicate admin commands to take a playerSpecifier instead. See my player specifiers post on the forums for more detail on how they work.

Then I changed /listcid to simply /list and modified it to also display the player’s UUID and if the player has characters that can’t normally be displayed by our font it will display the UTF escape code for the character instead. So if you have someone named “😀☃” you won’t be able to read their nickname normally but the list command will output them as $3 : \ud83d\ude00\u2603 : $$(uuid goes here).

You can use the unicode escape sequence to address them to any admin command.

Notice that I’m using the \u not the \U unicode escape sequences, which means much of my time this morning was taken up writing an encoder and decoder for UTF surrogate pairs and redoing bits of the parser to handle them better. This will save a lot of keystrokes though, because that sort of huge unicode codepoint is rare.

Next, I stuck a lua script hook into the command processor. Now you can define your own admin commands. There isn’t much to the lua API yet, but that will change as we figure out what you need.

Finally, I changed the format of the Lua callbacks so that Doxygen can parse them (some of them anyway, there’s still a lot to do), then I changed our doxygen settings to make documentation fit for public consumption (remove verbatim_headers and full_source).

You can find public documentation at: http://doc.playstarbound.com.

Currently it’s updated manually whenever I fancy it. But once we get the nightlies system working, I’ll make sure that the script that uploads the nightlies also updates the documentation. Enjoy modders.

June 9th: Chairs, Beds & Monsters

As I’m currently waiting on some new and fairly significant assets for the Outpost, I’m holding off on starting the dungeon for the moment. It doesn’t make much sense to go designing the dungeon only to have to fundamentally re-think it from the ground up based on new ideas that have arisen in our process. So for today I started looking into some of my secondary tasks (believe me, it’s a long list).

Since Kyren implemented a more functional orientation system some time back, there are a great many of our objects that would benefit from an update to this sytem, specifically our beds and chairs.

Why the beds and chairs? While the vast majority are okay, there are a number of these objects that under the old orientation system are prone to having the player appearing misaligned when sitting or sleeping on them. Often the seating/sleeping position would be configured to an ideal spot for one orientation, while sitting awkwardly in the other. It’s a petty grievance, but it’s the kind of thing that breaks immersion and drives perfectionist folks like me up the wall.

One of the other things I’ve been playing around with today concerns our monster sound effects.

For a while now Tiyuri and I have discussed a complete restructure of how the monster sounds operate. While the current monster sounds are functional, many on the team (myself included) feel that the current batch of monster sounds don’t quite mesh with the overall aesthetic we have going with Starbound. I’m currently experimenting with new sound directions, trying to find something that sits right with both me and Tiy, but it’s proving challenging.

Seeking inspiration, we’ve been looking at some of our most beloved games, examining how they approach sound effects for the enemies that populate their worlds. In doing so, we’re hoping to find an approach that works for us. Once I have a direction nailed down, it’s highly likely that the monster sounds you know right now will be removed altogether to make way for a cleaner and (hopefully) more suitable set.

The key thing we’ve taken away from many of the greats (Legend of Zelda, Mario, Rayman Origins) is that a lot of the time the sounds from enemies are usually fairly minimal. Rather than being especially vocal, the tendency is to have sounds associated with their physical actions.

The advantage of this approach would be that it ultimately decreases the number of unique sound effects I’d need to come up with. On the other hand, I’m having quite a bit of difficulty finding an audio aesthetic that doesn’t feel jarringly out of place in the world we’ve built.

I’m confident I’ll get there eventually, but it might take some time. I’m always open to any ideas you folks out there in the community might have, so feel free to shout ’em out in the comments! What kind of sound design would you like to see on our monsters?

9th June Progress

Hi there,

Today we mostly continued on the tasks we’ve been talking about lately. The AI interface is coming together nicely, work on the outposts is ongoing and we’ve added a whole ton more monster attacks. Here are just a couple. We’re aiming to make sure every unique monster piece has it’s own attacks and affects the monsters behaviour differently.

 

boulder

bubble

snot