Aug 12, yep definitely 12

August 13, 2014 in Dev Blog

Sorry, I was supposed to do the daily update yesterday and I missed it :(

I’ve been working on a ton of things lately, instancing and unique world support, world <-> world warping, new world generation types and general world generation fixes, material light sources.

But right now I’m fixing a loooong standing series of bugs in starbound regarding projectile disconnects between the client and server. ¬†I’m basically done, and with any luck you will see it in tonight’s update.

If I finish and merge today, I’ll do another post later today that goes into how the fix actually works.

August 11 – Documentation again

August 11, 2014 in Dev Blog

Remember the late time I mentioned documentation I said I’d eventually make it automated?

I did that today. It’s now tied to the steam upload so it should update every time Steam does (ie, nightly).

You can find the documentation here: http://doc.playstarbound.com/

You can navigate around by classes or by namespace, but the front page is mostly blank (because it’s the default doxygen setup).

The bits that you lua modders are most interested in are located here: http://doc.playstarbound.com/namespaceStar_1_1LuaBindings.html under the namespaces section (for instance: http://doc.playstarbound.com/namespaceStar_1_1LuaBindings_1_1WorldEnvironmentCallbacks.html )

Hope this helps!

Also did a few things with the Sky today. I’m currently separating the Sky from the Celestial Coordinate system so that we can give fully featured Skies to Outputs and Instances and the like. Nothing too exciting though.

August 8th – Mission to the Moon!

August 9, 2014 in Dev Blog

The last couple of days have been really exciting. As our work on progression continues, we’ve been putting some serious focus into our missions; what they will be, and how they’ll tie into the grand scheme. Those of you who follow the daily updates will likely recall the moon mine George showed a mockup of a little while ago. Well, now you know what it was for!

We sat down and mapped out the overarching goal, structure, events, and enemies for the player’s first mission. Unlike the dungeons where I would generally build a single carefully detailed room at a time, we intend the development of this mission to be a highly iterative process, with feedback and ideas from other members of the team.

For now I’ve got the entire layout boxed out with a loose scale reference, but next week I’m going to really go to town shaping it into an actual environment. Detailed decoration will come later after we’ve got something solid we can actually play through.

I’m honestly really excited. Being able to work on a carefully constructed experience from start to finish will be a refreshing change of pace from having to build dungeons that are inherently dynamic in nature, as I am not bound to the limitations that randomly generated layouts bring with them. In the interest of keeping specific elements a mystery, I won’t be sharing any media of it today, but I’m sure you guys can understand.

In any case, that’s it from me. Take care and good night!

7th of August, 2014: Blog of Dev

August 7, 2014 in Dev Blog

Today one of the many things we worked on was improving the visual distinction between the various ores and bars. This will continue to change over the Beta and this is not final.

NewOres
Click to enlarge!

BYE!

August 6th – Progression Progress

August 6, 2014 in Dev Blog

Everyone’s been working on the various elements for the gate and outpost stuff, and today we’ve started putting them all together!

August 5th – Mission Prototyping

August 6, 2014 in Dev Blog

Evening guys! I’ve been up to something a bit different today.

With the recent addition of the floating dungeons and player spawns, I spent my day building a rough prototype for what our missions could be like. The objective was for me to create a level for players to move through from start to finish, with environmental hazards and enemies to fight. The main objective of this test was to assess how long I would need to produce a mission, so we can gauge precisely how many polished missions we could create in time for 1.0, and to highlight any issues we may run into.

When I say the prototype is rough, I mean super rough. I didn’t spend any time dressing it up visually, since it’s just for testing and it only involved me using randomized monsters for now, which means no configuration of behaviours or dialogue as there would be when using humanoid NPCs. I ended up using the glitch dungeon files as the base for the mission.

For my test playthroughs, I would attempt to get through it repeatedly with a tier 1 broadsword, shortsword and shield, 10 bandages, and my starting clothes. It would typically take me anywhere between 10-15 minutes to get through in one go (without dying).

The difficulty of the mission varied greatly since the monsters are randomized on each instance, but when approaching the actual missions we’ll have a good idea of what the players will have by that point and be able to scale the difficulty accordingly, not to mention we’ll be using specific enemy types with known behaviours, making it easier to craft challenges with a bit more thought. I imagine it’ll be a tricky balancing act when we factor in whether you have other players with you too, but that’s just one the many challenges of game design!

This test mission also highlighted what the current benefits and limitations of using wiring within the missions are. Because I am able to plan around a linear approach, I have the ability to set up traps and obstacles that may change as you progress. In the case of the glitch, they have a number of switch objects and even hidden door objects that can also double as platforms when used in an open space, so I was able to create timed alternating platform jump puzzles, passages that only open when all switches in a room are activated and the like.

All in all it’s been a valuable experience that will prove most useful once I start working on the missions proper.

Apologies for the lack of screenshots by the way, I’m writing this from home.

August 4th – Liquidity

August 4, 2014 in Dev Blog

Howdy! My main project for the past couple of days has been prototyping a tool for sucking up liquids into the player’s inventory. Aside from the obvious utility of being able to move them around, we plan to make them used as fuels and in crafting recipes, so finding biomes with certain kinds of liquids (such as oil) will become important. Here’s how it looks so far:

Since this is the first real scripted item we’ve built, it’s involved a lot of testing and adding functionality to the Lua item API, so that’s been a nice side benefit. I’m definitely looking forward to making some more interesting scripted items and tools in the future, as well as seeing what modders make with it!

August 1st – Quick Progress Report

August 1, 2014 in Dev Blog

Evening folks! Looks like I’m doing another daily update, but since it’s my second in a row, I’ll be keeping it fairly brief. :P

For my part, I did what I set out to do and finished setting up the moon mine dungeon file and key, so I’m good to start building at any time. That said, I opted to spend some time fixing an issue that’s been bugging me for quite a while with all the chests. Up until this point they opened up in a painfully slow fashion and as a side effect were not appropriately playing their closing sounds if players closed them relatively quickly.

As for the others, here’s what I know:
- Supernorn has continued working dilligently on the Novakid ships.
- Metadept has been working on implementing a new item type. Not quite ready to talk about this one yet. ;)
- George has been producing new assets for the gateway to appear in the nav UI, along with some other elements relating to Metadept’s work.
- Kyren has been doing some cool stuff with instancing, specifically concerning how they can be located and reached in the world. I’m afraid I don’t fully understand the specifics, not being a programmer, but she should hopefully be able to make an post about it sometime next week.

Afraid I’m not really clued in on everyone else’s activities, but exciting things are happening. I’m looking forward to starting work on the dungeon next week.

Until next time guys!

July 31st update – Programming retrospective

August 1, 2014 in Dev Blog

Hi there peeps.

Looks like no one has put out an update yet today. (Whoops, looks like Armagon put something up as I was typing this.) But I’m kind of mired in the goop of a huge change, so I don’t have much to report today other than mostly just going one by one through compile errors and handling them on a case by case basis. That’s not very entertaining!

So I figured I would take a short break and sort of give a retrospective on just what code has been changed in the background since our last stable update in late April. This is just the major new stuff. Things like bug fixes and minor features aren’t included. I figure it being the end of the month it’s more or less an appropriate time for it. And some of the stuff here, while not new, might not have crossed your awareness yet.

Ready? Go!

- Completely retooled the tile rendering system, platform behavior is now completely configurable and we have something what we call Neighbor Aware Tile Rendering which allows things like pipes automatically morphing based on neighbors. This can all be done in configuration, rather than hard coded like the old platforms. The configuration for platforms can be found in the assets under /tiles/platformtemplate.config and the configuration for pipes can be found in /tiles/pipetemplate.config.
- Changed around how ships work, they can now be upgraded, and everything else that goes with that (SAIL, short cinematics callable from world). Allowed certain features to be disabled, such as beaming down. Fixed the critical item hack and other such “just starting out” issues.
- Updated (and still in process of updating) the World Scan parameters which allowed changes to the UI. Weather is shown. Main and subbiomes are shown. Planet requirements are shown (such as low oxygen). Ability to lock the UI into certain screens based on ship capabilities.
- Completely changed around how the universe works. No more alpha/beta/etc sectors. Sectors are now areas on the map.
- All objects are now Wirable and Scriptable. Rejoice modders.
- Shields work completely differently. Melee weapons work completely differently. New weapon type: the staff. New options for weapons to make the player stand still while firing and all of the other various and related code accoutrements (like animated cursors).
- Items can now be scriptable. All FireableItems (materials, pickaxes and tools, weapons, etc.) are scriptable now. Item code organization overhaul. Internally changed to make things better
- Monster AI overhaul, new behaviors, new attacks, new most everything.
- Completely overhauled the monster spawning system. Can now accept much more data from the biomes and dungeons nearby and spawn much more intelligently.
- Added new Readers/Writers Lock to threading. Speeds up asset loading by a hell of a lot.
- Reworked our Networked Animator class. Gets rid of a bunch of redundant stuff on the lua side.
- Admin commands. Admin server logins. Show logged in clients. More! It’s almost like the server is becoming a “Real Thing.” Added stuff to go along with that, like unicode convertion and other off the wall random things.
- Refactoring a bunch of code in the Gui portion of the game. A lot of it was buggy, unfinished, and incomplete. Not a complete rewrite, but lots of stuff was changed.
- Minor changes to how lua callbacks are generated that allows them to be automatically documented by doxygen.
- Speaking of lua, lots of added functionality there, some covered in other points, some not.
- Quest changes and updates

And more, I’m sure I missed a few things because I just scrolled through a few thousand git commits.

Currently, I’m working on making player, npc and monster stats and statuseffects that operate open them completely configurable and scriptable. To that end today I removed the augment system entirely, so all 7 of those items will cease to function for the short term. I’ll eventually get them working again.

It must be Thursday. I could never get the hang of Thursdays.

July 31st – Crafting Progression & Floating Dungeons

July 31, 2014 in Dev Blog

Hey guys, just wanted to drop you an update on what’s been happening today!

For my part, I wrapped up work on the crafting progression. As we implement the over-arching objectives for the tiers, the current setup will likely undergo minor modifications and additions, but it’s looking super solid right now. We even have a few new crafting objects that George put together.

What's this for?
Another bit of exciting news for the day is that Kyren has implemented floating dungeons. It might not sound like much, but what this means is we can now create dungeons that are situated in outer space without being tied to a specific planet or biome. Right now this functionality is being used for the gateway and outpost, but it could also be used for creating things like derelict vessels, space stations and instanced missions. Exciting possibilities to be sure!

With the crafting, outpost and gateway updates out of the way, I also began setting up the dungeon file and key for the moon mine George showed off the other day. I’m hoping to have it all set up to start building tomorrow, assuming no other high priority tasks come up.

That’s it from me! Take care everyone, and enjoy the rest of your evening!

spiele