Tumgik
#nebulass13 dev
mistakenot4892 · 2 months
Text
Nebula devblog, July '24
Sneaking in this month's update two days before August due to Nova Lands eating an entire week of dev time and Warframe eating another 2 days. It's a hard life. This one will probably be a bit patchy or sparse as I have genuinely lost track of what was new this month due to leaving it this late. I am a highly trained and competent professional.
Nebula SS13 is an open source project based on the Baystation 12 version of Space Station 13. SS13 is a topdown multiplayer simulation game where you play the crew of a ship, station, colony, etc. depending on your fork and map, with the Nebula and Bay forks having a focus on roleplaying and simulation interactions.
Notable changes
The first phase of a major AI rewrite has gone in, separating AI behavior from mob type so human-type mobs can be given AI. This is mostly to support undead and skeletons on Pyrelight at the moment, but will be much more flexible in general going forward.
Simple wall-based windows/shutters have been added for low tech maps that need airflow and light. Penny's genius idea of having them cast a light cone towards the darker side of the shutter makes for some very aesthetic medieval interiors.
Spacefarers, a ship-based fork, has a new ship, and the painfully tricky shuttle rotation PR Penny has been working on is slowly progressing towards a mergable state. When it goes in, manual ship landing will be greatly expanded as shuttles will be able to rotate to match docking ports, instead of having to strictly dock in the same direction every time.
The atom temperature system has been disabled in several cases due to a lot of weird edge cases and bugs in the simulation. It needs more time in the oven. The disabled interactions include things like all of your blood congealing into black pudding if you stand on a stove, being able to instantly heat a beaker of beer to 5000K with a cigarette lighter, or all of your clothes melting off in a fire.
Penny has also put a bunch of work in to moving most of the 'classic' Baystation SS13 game modes into modpacks. This allows forks to pick and choose which are available, since as funny as it could have been, having high tech spacer mercenaries landing on Middle-Earth wouldn't fit the vibes.
Lots of small changes and features have been coming out of the Pyrelight fantasy map testing. Little things like honey being usable for wound disinfection, various crafting tweaks, and things like flooded turfs not putting out your lamp unless it's deeper than your waist.
Automated movement that previously relied on BYOND's inbuilt walk_to() procs now use a dedicated subsystem that calls the appropriate MayMove()/DoMove() proc chains. This essentially just means AI-driven mobs no longer completely ignore little things like pain, having working legs, or being dead or unconscious when chasing you.
Bugs of note
Trout were completely invisible because their main texture was accidentally named world-trout instead of world. This definitely impacted the trout population.
Undead on Pyrelight don't know how to pick up their weapons if they drop them, so disarming them literally or figuratively makes it turn into a slapfight.
Prosthetic limbs, like cybernetics or peglegs, were getting itchy or developing rashes. Maybe it's psychosomatic.
Simple animals like deer were dying en masse on the wilderness maps due to hail. We didn't intend for hail to be the size of hen eggs and covered in spikes, so deer and such are now unhurt by weather.
Current priorities
Personally my focus has been on getting through the Pyrelight feedback list after each test. Lots of small things come out of each test round and my limited time after my real-world job has cut into my space feature time. The Neb general issue list has been getting a bit long so I'll probably put a weekend into getting that cut down again this month.
Otherwise, I have three big PRs open waiting for me to find the focus to finish them: the floor rewrite (aiee), a wizard modpack and ability rework (needed for Pyrelight, eventually, but augh), and a bee rewrite (beewrite) to make bees and other insect nests available outside of one specific machine on space maps.
NataKillar has an amazing PR in the works that sounds quite mundane: separating liquid and solid reagents in reagent containers like beakers. However, this opens up a buttload of interesting chemical interactions down the track, not the least of which is finally getting ice cubes to not require a dedicated ice material.
23 notes · View notes
mistakenot4892 · 7 months
Text
Nebula devblob Feb '24
This is a crosspost from cohost.
Thinking I'm going to start doing a weekly or fortnightly summary of changes on Nebula in a given week. Probably not going to be the most super thorough or well structured post, as I am a bit scatterbrained at the best of times, but heigh ho.
Nebula SS13 is an open source project based on the Baystation 12 version of Space Station 13. SS13 is a topdown multiplayer simulation game where you play the crew of a ship, station, colony, etc. depending on your fork and map, with the Nebula and Bay forks having a focus on roleplaying and simulation interactions.
Notable changes
Traitors (sort of like mafiosos in Mafia, secretly assigned antagonists) were getting tasked with assassinating their own informants among the crew. That has been fixed.
Quite a bit of work has been going into the fluid simulation. The current sim is a bit haphazard and allows you to use crewmembers or monkeys as sponges to soak up any flooding, since the water goes into their touching reagent holder and vanishes into thin air.
Lots of optimization work being done by Penny, mostly around initialization time, event registration/deregistration, and various smaller fixes and streamlining from her downstream project Lighthouse.
Outstanding bugs of note
There's a fun issue with the dev branch currently where, due to some changes to how atoms handle temperature changes, if you put a human in a 100C environment, all their blood will instantly coagulate into one giant clot. This has absolutely no negative impact on the human.
A serious client crash issue has been narrowed down to specifically trying to cut the tail off a humanoid mob with one. As soon as you dismember the tail, everyone within viewing distance will experience a hard client crash to desktop. This may simply be God's punishment; investigation continues.
Using an elevator to descend a level can drop you into a small patch of vacuum for unclear reasons. If you're very unlucky, that one tick of total pressure loss can explode your lungs. Use the stairs for now, it's better for you.
Current priorities
We have a few PRs waiting for merge into the 5th staging period, where we shake as many bugs as we can out of the dev branch before marking it an official release and pushing it to the stable branch. When those go in, we'll start r5 staging. Exciting stuff.
I'm working on some changes around enhancing the cooking system and the general experience of interacting with food. So far I've rewritten utensils to work a bit better - previously they liked to just teleport a chunk of food from your meal into your guts, bypassing all checking of petty things like 'can I actually fit this food in my stomach' and 'am I physiologically capable of eating this mint without exploding'. Next up: Soup(tm).
I kinda wanna add fishing? But I don't just want to use Polaris fishing where you click a rod on some water and wait for 300 years. Pondering how responsive a Stardew Valley fishing minigame would be in BYOND...
41 notes · View notes
mistakenot4892 · 5 months
Text
Tumblr media
20 notes · View notes
mistakenot4892 · 4 months
Text
Nebula vledbog May '24
This post was crossposted from cohost.
It has been a busy month on the dev branch. A lot of forward progress has been made on the Shaded Hills fantasy map, and several big rewrites have gone in and are under active adjustment and review.
Nebula SS13 is an open source project based on the Baystation 12 version of Space Station 13. SS13 is a topdown multiplayer simulation game where you play the crew of a ship, station, colony, etc. depending on your fork and map, with the Nebula and Bay forks having a focus on roleplaying and simulation interactions.
Notable changes
A big chunk of the work this month has been adding subtypes and variants for the fantasy map. You can now override things like loadout options, backpack types, survival box types, and starting cash options on a per-map basis. The fantasy map has also had a lot of aesthetic adjustments made to lighting and turf colouring to make things look really nice.
Penny has finished removing a billion unused procs and vars, cleaning up the code significantly.
Lots of clothing has been generalized. The /accessory subtype has been removed, and combining clothing items has been generalized. Shirts can be freely matched with pants, suit jackets no longer come with full business casual attached, and more.
Penny has also gotten the dev branch compiling on OpenDream, an open-source BYOND alternative with a lot of potential. The OD compiler is also included in the continuous integration testing for each merge to the dev branch, identifying problems that would be missed by the linter or the base BYOND DM compiler.
Penny has also resolved a really annoying issue with map edge lighting causing weird artifacting, making edge transitions much nicer visually.
The daycycle system has been gutted and reworked to take advantage of our much faster ambient lighting. Instead of crawling left to right across a single level, daycycles are now applied to entire z-level chunks, and can be customize with individual periods, lighting changes, and temperature. Dawn is bloody red, evening is dim.
Storage has been datumized! This is a bit of an arcane technical change, but in essence it means anything can have the ability to act as storage and hold items inside itself. Previously this was restricted to a single specific item subtype.
Supporting code for quadrupedal (or hexapodal, or n-podal) species has been merged, and immediately caused all simple animals to believe they had no legs and fall over. Working as intended. Grafadreka (reworked from the Polaris version) will be going in soon...
Bugs of note
C4 immediately melts at room temperature when spawned, making it very hard to attach it to doors or walls.
Taking the 'synthetic brain' aspect to fulfil your beep boop robot roleplay needs appeared to work fine, but five minutes after you spawned it would delete your brain and kill you.
You can use a lighter or welding torch to 'carefully heat' yourself, a mechanic intended for chemistry, but one that results in your hands becoming white-hot beacons that instantly melt anything you pick up.
Due to hairstyles defaulting to a human buzzcut when hidden by gear, neo-avians and yinglets manifested a floating buzzcut two feet above their head anytime they wore a hat.
Current priorities
r5 is very close to being ready to go. Once the robot bugs are sorted, we can finish off this staging period and start on r6.
The MVP TODO list for Shaded Hills is down to 10 or so items - getting through that before r6 staging would be ideal, since Shaded Hills being incomplete on staging/stable would suck.
I really want to completely dismantle the /under subtype and make all the various uniforms into component clothing items. It's much nicer for customizing your character and making outfits for jobs etc. than the current arrangement. As of my current PR, there's only ~200-odd uses of /under in the codebase, so we are closing on victory (act now).
7 notes · View notes
mistakenot4892 · 4 months
Text
Tumblr media
Not pictured: 10,344 runtime errors in the log because I poured the kettle into the stove by accident.
10 notes · View notes
mistakenot4892 · 5 months
Text
Tumblr media
Important Nebula development update: hats on big dumb lizards
10 notes · View notes
mistakenot4892 · 3 months
Text
Nebula vedlbog June '24
This devblog has been crossposted from cohost.
Hello, hello. This one's a bit late because there were a few bits and pieces pending merge. As a bonus, I moved back to Linux from Windows this month after Win10 pushed Copilot once too often, so that has taken up a bit of my time and effort. My workflow is a bit horrifying, but so far works well enough to be getting on with. Now if I could get Vulkan to stop crashing when I play Warframe...
Nebula SS13 is an open source project based on the Baystation 12 version of Space Station 13. SS13 is a topdown multiplayer simulation game where you play the crew of a ship, station, colony, etc. depending on your fork and map, with the Nebula and Bay forks having a focus on roleplaying and simulation interactions.
Notable changes
Melting has been disabled on dev due to the UX impacts of having all your clothes melt off if you step onto a fire for a few seconds.
Drakes have been merged! Big stupid lizards are now live on the dev branch. This has come along with stance and dexterity refactors to support non-human behaviors.
Bows have been reworked to have slightly nicer UX and to support multiple ammo types. Crossbows, regular bows and slings are now available in the crafting menu.
Penny has been busily moving all of the SS13-specific game modes into modpacks, to allow them to be dropped from maps where they wouldn't make sense. While it would be funny for a meteor storm to land on Shaded Hills, it probably wouldn't be a lot of fun to play through. A nuclear mercenary ship landing on Middle-Earth might be more fun.
A swathe of fixes to the atmospherics system have been authored by NataKillar, and should help resolve some of the weird edge cases that have been cropping up during testing.
We have finally, FINALLY removed /carbon from the /human mobtype. This means that the majority of life code like breathing or equipment handling are available to all /mob/living subtypes, not just humans (and diona nymphs). It also basically guarantees all map or code ports involving humans will need extra work, but them's the breaks.
We have replaced /datum/dna with a new mob_snapshot datum, generated on demand. This was a big job due to how entangled DNA was with mob code, and cleaning up like this allows for us more flexibility when implementing new things like a reworked changeling or new genetic conditions/superpowers.
I finished dismantling /under, which is a minor victory. Originally this was going to support adding a lower body/pants equipment slot, but in practice with accessory stacking the pants slot seems like unnecessary complexity; maybe something to consider down the track(pants).
Shaded Hills has had quite a lot of work done, most recently adding beggar knights and shrine attendants to the job roster. We are down to 6 items on the Shaded Hills MVP list, one of which is lobby art, which I have been putting off for something like four successive weekends.
Penny directed me through some adventures in updating the scripts we use for running headless Linux servers to support BYOND 515. I am still not sure where she finds the information, other than some kind of communion with nightmare gods.
Just recently I added a bunch of skeleton icons for kobolds, tajara and drakes, mainly to support zombies and skellymans downstream.
Bugs of note
We have an annoying issue on ScavStation where some quirk of the server scripts and the Linux setup is resulting in a round end looping the round end sound effects and warning message until the server finishes rebuild and restarts. It's not great to get bombarded with 50 YOU WANNA PUT A BANGING DONK ON IT out of nowhere.
Until a recent dexteruty tweak, drakes were fully capable of cocking aiming and firing a combat shotgun using nothing but their mouths. They could also arm grenades and perform surgery with scalpels. Thankfully they have been nerfed before they could seize power.
Current priorities
With the PR list in single digits, I'd like to take the opportunity to work through our backlog of fiddly issues. Getting that down to zero (or at least getting through some of the old issues and any new dev issues) would be nice.
r5 has been merged to stable, and r6 will be staged soon. One of the big remaining PRs is a flooring rewrite that I have been working on off and on for months. It's now blocking the next staging period, so hopefully that will put some pressure on me to finish it.
Just recently, the Shaded Hills map and the fantasy modpack have been spun into a fork server called Pyrelight. A lot of the content I'd like to make using the Shaded Hills map and Neb systems is a bit too magicy-fantasy for Neb main, so I'm going to point it at this fork.
5 notes · View notes
mistakenot4892 · 7 months
Text
Nebula devblog March '24
This is a crosspost from cohost.
Nebdevblob time! Fair bit of neat stuff to talk about this time, though it's a bit delayed due to work.
Nebula SS13 is an open source project based on the Baystation 12 version of Space Station 13. SS13 is a topdown multiplayer simulation game where you play the crew of a ship, station, colony, etc. depending on your fork and map, with the Nebula and Bay forks having a focus on roleplaying and simulation interactions.
Notable changes
We have finally managed to kill /turf/simulated. This sounds a bit arcane probably, but it represents a project I've been plugging away at off and on for a couple of years. Basically the previous system used a specific kind of tile to represent parts of the map that could participate in the atmospheric simulation - if you weren't on /turf/simulated, things like depressurization, poison gas, etc. ceased to matter. This was a problem for modelling large areas like the surface of planets, because if we made them /turf/simulated it would cause horrendous performance impacts when the zones had to be rebuilt (as Polaris experiences whenever someone leaves the Cynosure front door open). Our workaround in the past was a whole new turf type, /turf/exterior, that did some hacky workarounds. Now all our turfs are unified as /turf/floor and /turf/wall and we can go forward with some cool plans that weren't possible in the past, like material-based turfs.
Similarly, we're closing in on killing /mob/living/carbon. This is a very outdated middle-man type harking back to the days when monkeys and xenomorphs were their own mob type. Killing this has no real impact other than making a lot of previously human-only behavior like breathing and metabolism available to mob types outside the human type tree.
There's been a bit of a fey mood resulting in a fantasy-themed planet map called Shaded Hills with a focus around more low-tech crafting like carpentry and pottery, as well as survivalist mechanics like cutting down trees for wood, making campfires, and harvesting wild plants. It's a lot of fun, and provides a very different experience to the standard space station style of play. I wasn't intending for it to be a 'main' map, but with Penny and I working on it in tandem, it's starting to shape up into something that might actually be playable at some point.
Outstanding bugs of note
No big or funny bugs to talk about this time, just the usual gamut of smaller ones.
r5 staging has begun, so we should find some fun ones over the next couple of weeks. We're shooting for an April deadline, so it should be nice to hear the whooshing sound as it flies past.
Current priorities
Testing r5 is the other big ticket issue. We'll probably organize some test rounds between now and April so we can do some shakedowns.
Getting my fire source rework in is important as it means I can get pottery and metalworking into a state where we can playtest and potentially merge them.
We're so close to removing /carbon and /exterior entirely I can taste it. I'm going to be working on that as/when my current PRs are merged.
The skeleton of a fishing minigame is done, but there's no fun UI stuff or skill testing yet. Perhaps...
6 notes · View notes
mistakenot4892 · 5 months
Text
Nebula blevdog April '24
This post was crossposted from cohost.
Quite a bit to talk about this month! Mostly relating to the various crafting and building systems being put into place for the low-fantasy map, currently titled Shaded Hills.
Nebula SS13 is an open source project based on the Baystation 12 version of Space Station 13. SS13 is a topdown multiplayer simulation game where you play the crew of a ship, station, colony, etc. depending on your fork and map, with the Nebula and Bay forks having a focus on roleplaying and simulation interactions.
Notable changes
Fair bit of boring backend stuff - some HUD code has been streamlined, the way stack recipes are handled has been redone, and using an item with even the slightest heat difference to the target will no longer 'carefully heat' it.
Penny removed a metric shitload of unused procs and variables, cleaning up the codebase and revealing that a bunch of really fiddly DNA code just... doesn't need to exist anymore. Blessed.
The fantasy map is now merged into the main dev branch, and has been receiving periodic updates from Penny and I. It's slowly approaching a state where it can be playable...
Flame sources like matches and lighters have been reworked, and now include fueled lanterns and torches, which can be crafted. This is mainly to support the fantasy map, but also means you can hotbox the station in carbon monoxide with 200 lighters burning at once, if that appeals to you.
Farms have been redone. Rather than building a plot out of stone, you now dig a plot into a dirt or mud turf. Plots will take water from adjacent water sources or rain, and you can fence them with bricks to prevent people walking over them and squashing your crops.
Various other crafting systems are in, albeit in skeletal form. Metalwork, tanning, making catgut, and weaving cloth are now supported. You can grow cotton, process it on a spinning wheel to make thread, and then weave the thread into cloth on a loom.
Fishing got merged. It's basically Stardew Valley without the minigame, currently. If I can get through my backlog in a reasonable timeframe I'm going to try working on a proper little minigame for it, but it's a pretty chill mechanic currently.
Bugs of note
r5 is overdue, mostly because I've been putting my after-work dev hours into random stuff like weaving or clothing code. Hoping to get onto that before making any more big feature PRs. I have instructed the dev channel to smack me if I open more feature PRs before r5 is stable.
While testing campfire cooking I was saddened to discover that all of my food would get up to cooking temperature and then instantly melt into 'liquid nutriment' which fertilized the ground under my campfire.
Downstream on Scav, dexterity changes resulted in one of the species being totally unable to pick up or use items with the only inventory slot they had capable of doing so (their mouth). 'Baxxid Stares Longingly At Vending Machine' indeed.
Current priorities
r5 is the main priority, we need to get that stable as soon as possible. r6 is going to be enormous due to all the crafting changes and several big backend rewrites like the removal of /turf/simulated.
I'm working on getting the fantasy map into a state where we can actually run a round, off and on. There's still a pretty big laundry list of props we need to be able to get the map populated, but it's all pretty achievable.
My storage rewrite PR is now up to its fourth or fifth rebase. Please save me from this PR.
1 note · View note