KoboldKare - Naelstrof
This month I've been trying to pave way for full blown multiplayer-- This has so far been a really good decision because it's forcing me to clean up how objects interact, and clean up the structure of things. My code is getting cleaner and easier to work with as I approach actual multiplayer readiness.

With lots of new players in mind, I finally tried addressing the fact that the game has really weird controls. I watched a fair number of people play the game, and they all would try the same things at first-- So I tried to transform my controls to work with what these players tried!

I also finally got Localization in the pipeline, luckily I have a lot of friendly users who helped me with the translations-- I haven't got credits ready in the game yet so I might as well post it here:
TabbyCatface: Russian, Ukrainian Translation
Slowboii and Kujawiaczek: Polish Translation
Snaked Snake: German Translation
LynxModernWitcher: French Translation
Adept Lughir: Dutch Translation

The rest of the languages are machine-translated, if you're interested in helping with the translation, join the KoboldKare discord! https://discord.gg/WGff3rR (and poke me)

Anyway, here's the patch notes for this month:

  • Added localizations for many languages, dialogue is still in the works though.
  • UI rework, well more like suddenly there's UI. Should help with figuring out the controls!
  • Press F to ragdoll.
  • The "advanced grab" is now buried under a context button (currently shift). This button immediately detaches the mouse and lets you aim and grab stuff. It also shows some helpful UI buttons you can press so you know you can rotate, freeze, and push/pull with it.
  • Controller inputs should now work properly, they still can't drive the UI, but it's possible to play with them now (with a bit of difficulty).
  • Casino prototype is in, it's looking really good! Some places inside might look empty because I had to temporarily disable the games.
  • Ragdoll adjustments and polish, they're still prone to clipping, still look dead, and sometimes their bones seem to unhinge-- but for the most part they've improved a lot!
  • I've enabled Developer Mode for the build, this is to let players give more meaningful bug-reports. It can open an annoying debug console though, click on it to close it!
  • Mirror no longer has an incorrect oblique clipping plane.
  • Switched to indirect lighting for baked lighting for just a slight improvement in the baked lighting.
  • Added a dynamic reflection probe that updates every 3 seconds, it can cause some weird artifacts, but in general it makes nights look nicer and the environment reflections more convincing.
  • Attachables no longer apply any physics (goodbye oscillating kobold-flask abominations...)
  • Hitboxes on penetrators have been refined, though if they're extremely large they'll still "magnet" into things. Smaller ones require much more specific aim and purpose.
  • Male kobolds can make eggs now, this might not stick around once more chems are added though.
  • Kobolds ragdoll when thrown, or when their feet are grabbed.


The advanced grab change is something that I've been thinking about for a long time. It used to be bound to the primary mouse button, and permanently affixed to the center of the screen. This caused a lot of confusion though because in practice it was secondary, or even tertiary to the primary game loop. The first thing any player does as they play the game is try to water the egg, and the advanced grab isn't useful at all for that.

And because it was fixed to the center of the screen, it made any sexual interaction really jarring as you had to shake your entire head with the motions. So I've decoupled it from the screen, and buried it behind a context button which switches how your mouse works. The decoupling lets you shake kobolds and penetrators without making yourself sick, and the context button allows for me to pop up a bunch of ui to help players learn how it works. Let me know what you all think about it!

I'll be spending the next couple days updating the patreon, twitter, and steam page to reflect the changes. Next month I'll hopefully actually be working on some multiplayer integrations.
KoboldKare - Naelstrof
Last month I was discovering a lot of users were completely unable to play the game, some of them even had VR-ready modern hardware!

I made the difficult decision to downgrade to Unity's URP pipeline. This means no more volumetric lights, ambient occlusion, and some other fancy effects.

However, this means even integrated, and mobile hardware can suddenly play the game reasonably! It took a while but I think I'll be sticking to URP for a while.

  • Casino temporarily removed to make room for the new one (soon).
  • Replaced decal system with an "infinite" decal system. Make a huge mess!

    URP doesn't have a built-in decal solution. I don't actually care about the individual fidelity of each decal, so what I do is re-use the lightmap atlases to map some textures to the world. This allows you to paint the entire world with decals!

  • Remade the majority of shaders to work within URP, this required some reduction in interpolators so most shaders should be a fair bit more efficient!
  • The switch to URP allows for real-time reflection probes, I render one every 3 seconds and blend to it. Allows for much more accurate reflections (especially during night).
  • The player is now completely a Kobold, spawns with random stats just like any other Kobold. Can even get pregnant, have sex, drink potions, and do anything else a Kobold can do.

    This was a really big systemic change which pretty much broke EVERYTHING. I really rushed to get this patch out by the end of the month, so there's probably a lot of broken things I haven't gotten to yet. Please be patient as I clean it up!

  • Penetrators now don't couple immediately on touch if they're not in range of the nearest hole. This means there's no more tripping over them. (This was especially frustrating as a player kobold).
  • Temporarily disabled AI for the transition into online multiplayer-capable systems.
  • Fixed the math on rotating props you're holding with R, it should make sense from any direction and perspective now. Still needs a bit of smoothing to look nice, but it's very functional at the moment.
  • Disabled procedural texture generation, this tech was far too unstable, slow, and made it difficult to test multiplayer. It probably won't come back either, people nowadays don't care about downloading an extra 200mb or so anyway.

Patch notes isn't super long since majority of my time this month was spent switching to URP. Though next month I'm going to have something extremely exciting to show, might have something to do with online multiplayer but no promises!
KoboldKare - Naelstrof
New Features:
  • New genitalia variations (equine flared, tapered).
  • You can now freeze grabs by holding m1 then pressing m2.
  • Tails can be grabbed and pinned just like any other limb now.
  • Added various sound effects, UI prompts to help indicate which buttons can be pressed.
  • Kobolds now start flaccid, messing with them in any way will get them excited.
  • Two new soundtracks, also music fades out when you go to bed now.
  • Added a "reset all to default" button in the graphics menu.
  • Added pregnancy! It's still early in development, though you can totally start breeding kobolds finally.
  • Recreated all tree assets because the old ones had incorrect normals, also got them to properly noise blend so pop-in is less noticeable.
  • Replaced custom skybox with HDRP's new fancy procedural skybox. This includes stars, and more convincing mornings and evenings.
  • Night time actually dips the usually static ambient lighting now too. Nights are actually dark now!
  • The hand visual that appears when hovering now actually touches and moves soft-body physics (you can now touch the boobies).
  • Added a reagent scanner that can be used to analyze container's reagents. Really useful for the upcoming set of new reagents.
  • Kobolds now can vary in contrast and brightness.
  • Lots of tiny bugfixes and stability patches.
KoboldKare - Naelstrof
Here's the changelog of all the stuff I did in July, I tried to keep it to only interesting stuff, so I've glossed over lots of bugfixes.

This month was mainly to stabilize and polish, starting August I think I'm ready to do another broad stroke of content!

  • Online Substance texture generation, this reduces build size and allows me to craft much more detailed worlds! (Though increases load times significantly.)
  • Reworked penetration physics.
  • Kobolds can now have randomized dick shapes (only has two for now).
  • Arousal mechanics for male Kobolds, gotta shake em a bit to get them excited.
  • Many graphics options were actually bugged and not changing their quality correctly (only High or Off), now all options work correctly.
  • Depth of Field, Panini Projection, and Fov options were added.
  • Grabbed objects now turn transparent (if able to) again.
  • Now there's nipple approximation for attachables, so boob attachments work better.
  • Grabbed "weapons" now aim at the cursor rather than forward. This helps a lot when multi-firing flasks.
  • Input bindings are now serialized and can be changed through a text file within the game's userdata folder.
  • Reworked softbody colliders and settings, they still need a bit of tweaking, but butts should jiggle more and bellies jiggle more consistently.
  • Pumping, plapping, and sliding sounds for penetrators.
  • Disabled dynamic resolution (should prevent some graphics cards from crashing as often).
  • Kobold hue shift! Kobolds right now spawn with a random hue, in the future their hue will be restrained to Kobold species.
  • Fixed a UI overlay that was breaking Reshade functionality, only useful to Reshade users but worth mentioning! (Thank you LuxIsBored!)
KoboldKare - Naelstrof
Sorry I've been so quiet about this update, most of my time was spent trying to home-grow my own behavior tree system for AI. (Technical post to be found on Patreon.) I also spent a lot of time developing a conversation system and dealing with a bunch of bugs that were slightly outside of my control. Anywho I still managed to get some stuff done and I think it's ready to show!



New Features:
  • A dialogue system! The super market sheep now has dialogue and a tiny completable quest (Press E to talk).
  • Small button prompts appear near the cursor when you're near contextual actions.
  • Kobolds now all have their own player controller, and can walk around, do actions, jump, and are still very dumb. They'll get smarter as development continues...
  • Kobolds will path home when night falls, this currently doesn't happen during the time-skip so you'll still have to gather them up if you're going to skip the day.
  • Unity update to the 2020 beta! This might fix some crashing issues for some people. (This also makes it so animation overrides work again).
  • Music is now used very sparingly, still needs work but now it doesn't just loop the 7 tracks or so over and over.
  • Some minor graphical improvements (floating dust is more dense, soft body physics are more synchronized with character movement, walking dust is now visible (again), some minor character retopology and weight painting).
  • New flamingo character for the casino, doesn't have any dialogue or AI yet, but will soon!

Optimizations:
  • Most logic that doesn't need to run every-frame now doesn't, this includes soft-body physics, penetrator/penetratees animation updates, AI, and the music manager.
KoboldKare - Naelstrof
New Features:
  • House has been replaced by some brushwork, it looks a bit nicer but still isn't finished.
  • Basic brushwork for a city has been put in place, it's still a WIP but it should give some stuff to explore and an idea of how some city buildings might work.
  • Two new characters have been made and put into idle poses in their respective buildings. (NPC interactions coming soon!)
  • Audio reverb zones have been set up, different rooms and building locations should have a noticeable difference in audio reverb.
  • Many textures have been replace with procedural textures, they still aren't generating at runtime, but as soon as a bug in Substance's Unity plugin is fixed, we'll be able to have a LOT more high-res textures without taking up lots of data.
  • Fruits all now have random sizes and contain coherent amounts of juices.
  • Kwicc n' Thicc has been replaced by a generic super store, the store re-stocks each day with a certain amount of goods.
  • New main menu, it doesn't have any tessellated geometry or any complex parts. This should make it easier for lower-power hardware to at least reach the options.
  • Penetration physics are now fully physical, this means knots "pop", and more complex physics interactions can be had. Needs a bit more work still, but the physics seems to come up with reasonable solutions.
  • The day night cycle is now linear (before nights used to be about 25% of a full day) This should allow users to stay up later without being surprised at the speed increase.
  • Kobolds now have random proportions! They can be really short/stocky with a big butt, or really lanky and top-heavy. It's all random!
  • Timed the day change during the fade-out so it's harder to tell the game froze while generating kobold proportion meshes.
  • Decals can now affect the player.

Optimizations:
  • Kobold proportion generation has been threaded.
  • Reduced max world decals from 1024 to 256, should help people who had low fill-rate speeds.
  • Animations are now played on physics, this makes them a bit more jittery but it's also required for the physics to work well.
  • Replaced lots of hand-crafted materials with procedural ones, I have yet to reap the full benefits from this but instead of having around four 2k texture maps per prop (~20mb), there'll be a single 16kb file that generates the textures on runtime. This'll let me use a LOT more textures, and a lot more detailed textures without impacting hard-drive space soon.
KoboldKare - Naelstrof
New Features:
  • You can now attach nozzles to fruit and use them like flasks to extract their fluids.
  • Mac support! Mac users can finally play the game on their machines. All future updates will include Mac versions, though the Mac build won't have grass until some geometry shader business is figured out.

Optimizations:
  • Resource based optimization for Kobolds. IK, softbody physics, and detailed collisions are only enabled for the 5 closest Kobolds. This allows for many many more Kobolds to be active simultaneously!
  • Nearby physics objects are now also using this resource optimization system. Only 5 of the nearest physics objects will have interpolation or continuous hit detection enabled.
  • Soft body collisions now have a limit of 5 per Kobold (25 total). Before it was unlimited and caused a cascade of calculations whenever a bunch of Kobolds got clumped up.

Tweaks:
  • Eggs only need 1.2 units of fluid instead of 2 to get to the next stage.
  • Melon juice metabolization now results in 3.7 units of milk split evenly between breasts instead of 1.
  • Player's hand is now more centered when grabbing things.
  • Strength of player's hold was softened near the center so that giant piles of Kobolds freak out less.
KoboldKare - Naelstrof
KoboldKare Build 14 Patch Notes
  • Eggplants no longer turn into melons on save/load.
  • Macro Kobolds get properly saved and loaded now.
  • Added a tiny tutorial for picking things up, you can't get outside without completing it!
  • Re-implemented goopy strands, this will be a temporary effect as I implement more systems to only make it goopy when it makes sense.
  • Fixed rebinding UI not working when playing the game.
  • Planted kobolds no longer automatically grow to their next stage without being watered. You have to water them each day!
  • Black fade-in is no longer tied to if the game is paused or not.
  • Re-organized the UI so the most important binds are at the top.
  • Linux build is now up-to-date with the Windows one!
  • Upgraded HDRP to 7.3.1, this should increase stability for some.
  • I believe I fixed the Steam Overlay bug that was causing freezes. Let me know if you still freeze with it on!
...