Archive: Dev Blog

July 31st update – Programming retrospective

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.

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!

July 30 – Novakid Spaceship

Hey guys, Supernorn here!

I’ve been busy the last few days working on the Novakid spaceship. The concept art from a while back showed it as a pretty fancy looking space train, and I wanted to follow through with that.

Pretty happy with how its turned out, and hope you like it!

novakidship