Mike said:Frontiers also features a deeper set of living world systems. Things change and evolve more as you play, and you can influence factions, reputations with characters, even the outcomes of trade wars.
Maiden Voyage, Fixing Saves and Pathfinding
Hey Folks! Managed to fix several save game and pathfinding issues, launch my crew on their maiden voyage today, but not without issues.
The first order of business was to finish fixing the save game bug that over- or underpopulated ships loaded from a save file. The issue turned out to be in the Star System's "spawn ship" code. It needed to decide whether to load a ship based on a template or a save file, and was always assuming template. Checking if the ship had any objects loaded into it yet was sufficient for solving this, since if we have none, we want some, and if we have some, we don't
I solved a few minor bugs after that, to regain momentum. The career screen had incorrect dates on past jobs, and crew could show up as items in the barter screen. So those were fixed fairly easily.
Once those were done, I retried hiring my crew from OKLG and setting-off. However, I ran into issues after getting them aboard. My ship was now considered a station, due to sloppy code during docking. Oops!
On my second attempt, after hiring my crew, they refused to board my ship due to pathfinding issues. It turns out the pathfinding code was using a bitarray to keep track of already-checked tiles (a performance optimization), but this got confused in cases where ships docked, and the bitarray indices didn't match ship tile indices.
The fix turned out to be in the code already, and I had stopped using it for some dumb reason. Basically, each tile has a boolean "are we checked yet?" flag I setup exactly for this, but only used in other processes. Switching this back solved the cross-ship issues with pathfinding. (And for those wondering, this didn't undo the performance optimization. It turns out the pre-optimization code was doing expensive array.indexOf calls every step in nested loops, and the "checked?" flag avoids this, too.)
Okay, third time's a charm, right? Right!
I shepherded my crew to my ship, closed the airlock, requested pushback/take-off clearance, and I was away! Set in the course for the nearest derelict. A mere 2.97 days travel at 2gs constant burn...
And here we are. Sitting in a tin can. For 3 days. Craig, Lindsay, and Brooklyn, wandering around chatting, avoiding eye-contact, attempting to sleep, pooping. So far, the trip is maybe 0.5% done, as we're mostly in real time, or 2x real time.
I've found a few bugs so far. Two different rebuff interactions had bad pathfinding info setup, so AI could get stuck wandering around the ship until manually "jogged" back to reality. I fixed those. Also, there seems to be a bug in my room atmosphere code, which I'm still tracking down. Possibly another save/load bug. Though, save/load seems to be behaving for the most part now, so I can save progress during the trip and resume later.
More importantly, though, I think we've identified a major weakness in the game design. I hoped to make these trips a realistic length ("days" is expected), and have the entertainment come from watching and making the AI do stuff. Kind of like the Sims, only better. Ideally, like watching Firefly until arriving at the destination.
Alas, procedural, needs-driven AI probably won't cut it as it sits now. There's only so much chit-chat worth watching before I want something to do. I didn't actually try anything, though. Which I could have. Force certain interactions. Try to minimize low points in their moods. Hm, forgot about that.
But yeah, this warrants some thought. I can insta-teleport to the destination and deal with this later, as we still have some salvage/sell-off/salvage loops to toy with. And there is also the "plot" system mostly lying unused. But those things are activities at the ends of long trips, so the stuff in-between either needs to be more fun, or less long...
Clothes and Body Temperature
Hey Folks! Hope everyone had a good weekend. Unfortunately, some sickness going around the household here, and I may be next in line. Hopefully that won't be.
Back in the space prototype, I've continued the slot work from last week. This time, the focus was on clothing. I had three sets of clothes used on my old crew, so those body part sprites were already done. And last week, I added two sprites for unequipped clothing, so they could be displayed as items on the floor. They were just missing the data files to make them available in-game.
That, however, turned out to have a hurdle to overcome: which slot to use? The browncoat clothing was blue pants, a brown coat (naturally), and shoes. So I could go with the old NS slots and have one for pants, one for the torso, and one for each foot.
However, the EVA suit is a onesie. That means you'd have it cover all your body slots when you put it on. And that makes per-part clothes tricky.
There are some ways to handle that, but for the sake of simplicity, I decided to just have a single "body" slot for now. Each set of clothes is a complete outfit. And some day when I have more time, I can try breaking it into piecemeal clothes.
Once that was done, it was a snap to copy most of the helmet data to make clothes items. And in today's picture, we see Lindsey Lindsey wearing the browncoat outfit, and approaching the EVA suit in the utility room. The user has to manually unequip the current clothes if they want to wear the clothes on the ground, or else the AI will just pick them up. Similarly, one has to manually drop the clothes on the ground before equipping them.
All stuff I hope to smooth out in future work.
Anyway, the clothes now equippable, it was time to look into temperature. The game already tracks temperature as part of the gas dynamics, since pressure and temperature are interdependent. So the remaining work was to make the human body temperature react to ambient temperature. And lucky for me, NS already has code and data for that!
So for the rest of the afternoon, I ported the old NS body temp code over to the space prototype. And converted it's old Fahrenheit data to Kelvin, so it would be compatible with the other values in this new engine.
As of now, crew spawns with core body temp, min and max comfortable temp (dry and wet), passive rewarm rates, and body insulation. The next step is for me to attach this code to the crew and test it out. And finally, to add reasonable stats to the browncoat and EVA suit items for testing.
Hopefully, that'll be smooth sailing. There's a slight chance that I'll run into stats dropping below zero, which can cause bookkeeping issues in the current system. (E.g. if a stat is at 3, and an item causes -5, it bottoms-out at 0. And later, when that thing is removed, the game will "undo" the -5 and bump it up to 5.)
However, there are ways around that issue if it comes up. We'll have to see!
Heat Rejection and Exchange
Hey Folks! News is a bit earlier today, as we have a school potluck to attend in a few minutes.
After stumbling over the "louvered" radiator style idea yesterday, I couldn't get it out of my head. Instead of massive, flat panels sticking out like sails, I could use louvers like you see in today's screenshot, on the right. Basically, they're small radiators, they still direct heat away from the ship and each other, without departing from the ship styles we see in our favorite sci-fi. The numbers won't add-up in reality, but they're about as "hard" as the idea of having a TW fusion torch on your ship that doesn't instantly vaporize the entire ship's mass.
So in other words, we're being consistently hard-ish with our science.
Under the hood, I just added a bit more code to my heater so that it could optionally pump heat out the other side. Whatever it does to heat on one side, it does the opposite to the other. In this new system, the heater just has an ignored output, as you'd expect from an electric heating element.
The cooler, on the other hand, applies its effect on the interior side (the white box with green LED and blue snowflake label), and the opposite effect on the exterior (louvered) side. And for now, I'm treating it like an ammonia coolant loop that's run between the interior cold plates/heat exchangers and the exterior louvers/radiators. It sits at 200K, just above ammonia's freezing point. And in practice, basically works like the AC in Rimworld (with a minimum operating temperature of approximately -70C).
I still have a bit of tweaking to do on the numbers, as it has a much slower effect than the heater right now. This is mainly due to the fact that the heater has a temperature of 1000K, and the cooler 200K. This means the difference between air temperature and heater is ~700K, while the cooler is more like ~100K. I think I can get around this by fudging the surface area and volume stats on the cooler to make up the difference.
It's working, though. Even hooks up to the thermostat if I want it to. So we're nearly done with regulating cabin temperature on our ship! Might be worth trying to yank the overheating/hypothermia conditions from NEO Scavenger and slap those into this system, as it shouldn't take long. It might not matter yet, but I could see crew hypothermic/overheating via their stats if it works.
Teaser Teaser
Hey Folks! Not a lot of progress today, as quite a few interruptions and admin work got in the way.
What work I did manage to do, however, was for the upcoming teaser video. And today's image is a teaser for the teaser, so to speak. Joshua and I were chatting about possible scripts for the teaser, and I think we've settled on this establishing shot: we see NEO Scavenger hex tiles, and we pan up into space. From there, we show off in-game footage of the new game.
The point here is to answer a question a lot of folks have when they hear about this space game. "Is this a sequel? Is this a new setting?" Right off the bat, we see this is in the NEO Scavenger universe, and we'll even get a bit of context to explain how these two worlds coexist without much contact. We also can see that, while Philip wanders the Earth down below, this other set of characters is doing their thing up in space.
Same universe, parallel stories.
That's the hope, anyway. I think it should be pretty clear once folks see it. Not to mention eye-catching for both fans of the original game, and newcomers wondering where the camera is going to point next.
Behind the scenes, I've been coding something in Unity to approximate NS hex maps, but to also show this fade off into the horizon, leading eventually to a star field. Since getting a smooth panning shot of this in NS would involve a lot of custom coding (remove the UI, add fading hexes and horizon, etc.), I decided to just use a fresh scene in Unity. I originally was just going to mock it up in Photoshop, but it turned out to be really slow and tedious to line-up all those hexes.
Scripting to the rescue
Anyway, once this is working, I should be able to either capture the panning shot and send the footage to Joshua, or even just send him the app so he can run it there and capture what he needs. Unity to the rescue!
I started playing NEO Scavenger for the first time yesterday at roughly 9:30PM. It is now 9:48PM the following day and I am just now going to sleep.
That game is a fucking masterpiece.
don't forget to sell the necklace you start with, it's worth a lotI started playing NEO Scavenger for the first time yesterday at roughly 9:30PM. It is now 9:48PM the following day and I am just now going to sleep.
That game is a fucking masterpiece.
Maybe in a few days, your character will live longer than ten minutes after the intro... if you're good.
Steam Page Approved! Email Newsletter Prep, etc.
Hey Folks! Inching forward on marketing push each day, here.
I received word that Valve approved the Steam "Coming Soon" page for the game, so that can launch at any moment now. I made a few adjustments there, hooked it up to my developer/publisher page there, and I think it'll be good to go after one final review.
I also managed to finish the email newsletter today, which I wasn't expecting. It involved updating the mailing list to weed out suspected bot subscribers, back during a time when Mailchimp allowed opting-in without confirming emails. Cut the valid recipients by 66%, but I'd rather that than trigger spam blacklisting anywhere.
There's one or two things I could add to this website, such as a larger "Settings" page, or other info pages for the game. But otherwise, it's looking like I could maybe launch this thing next week? Scary!
For now, it's possibly my last weekend of relaxation. I'll probably be stressing out after the announcement, keeping up with feedback and questions
Have a good one, all!
Tomorrow's Announcement Day!
Hey Folks! Development took a back seat today as I mostly focused on reviewing announcement material one last time before tomorrow. Pretty much as soon as I get to work tomorrow, it's all cylinders firing to get the word out.
That means new subforums, new discord channels, getting twitter and reddit accounts ready. News posts crafted and ready to go. I put together a couple of gifs for easy tweeting/sharing, plus the Steam store page stuff I've been working on, like teaser video, screenshots, descriptions, wiki content...it's a lot.
It's also been a while since I had a lot of eyes on me. Probably not since NEO Scavenger launched on mobile, and even that was minor compared to the launches back in 2012-2014 as NEO Scavenger released for the first time on various sites. I don't enjoy the pressure, if I'm being honest. But I think it will be a relief to get the word out and see what people like vs. not.
Much as with NEO Scavenger's long, public development, this is going to be a project that grows based on player feedback. I learned a lot about what people enjoyed and ignored as NEO Scavenger grew, and I hope this to be the same.
So it might be a few days before I'm back in the dev seat, since PR can get a bit time-consuming right after an announcement. But hopefully, we'll be full Steam ahead again soon!
Announcing Ostranauts
Hey Folks!
I'd like to tell you about my latest game, Ostranauts.
Eight years ago, I began work on NEO Scavenger. And after five years of updates and ports, it was time to begin working on a new game. That game started as simply "space prototype," but has turned into quite a bit more.
So what is Ostranauts?
Well, if you have a minute, here's a teaser video:
Ostranauts Announcement Teaser
Ostranauts is a detailed simulation of owning and living aboard a spaceship, in a solar system where honest living is a slow death sentence. Set in the NEO Scavenger universe, where Earth has suffered cataclysmic collapse, the rest of the System lives on in a state of capitalistic dystopia.
Players will create their captain, build or customize their starting ship from the spoils of their career history, and find ways to keep their motley crew in line, fuel in their tanks, food on their plates, and the debt collectors at bay.
If this sounds interesting to you, you can learn more at the Ostranauts Steam page. Wishlisting it there will give me an idea how much interest there is in this game, and how much time I can spend on it.
And if you know anyone else who might dig this type of game, let them know! Spreading awareness is something everyone can do to help me continue to make games like this.
Thanks for your time, and I look forward to seeing the stories you create in Ostranauts!
Best,
Daniel Fedor
Founder, Blue Bottle Games, LLC
PS: Is this a sequel to NEO Scavenger? Not directly. Think of it more as a parallel story involving different characters, but in the same universe. An official sequel, continuing Philip Kindred's adventure, is still on my wishlist of games to make.
You had me at profit and loss statement.
Steam page said:
According to Steam page, the main simulation is rtwp + fast-forward. But yeah, it's hard to judge how it's going to play, or even if stuff like combat is going to be interactive at all. Then again, it was hard to judge NEO Scavenger without playing it.Sorry if this is a stupid question, but will this be turn based?