December update
I keep neglecting to update this blog, so here's a little of what I've been doing.
Trying to turn the seal robots from Megaman 6 into a Reaverbot from Megaman Legends. Very blocky model, but it actually looks decent enough that I might finish the model (or just make a new one now that I know how I want the design to look).
Also, a Primarina robot (very very WIP because I've not decided what its body should look like)
Radio downtime
I noticed that Furry Pirate Radio was disconnecting briefly every so often and it'd interrupt the stream. So I had to move the radio to another server. Had some brief downtime while doing so but it's back up and should hopefully stop disconnecting repeatedly.
Edit: Oops! Looks like that didn't fix Shit! : )
Later edit: Might be fixed now!
Untitled
I'm trying to find the origin of the XD emoticon for... some... reason?? I don't know why actually.
Unfortunately most people in old forums I'm reading from are estimating, from what appear to be really foggy memories. Seeing around 2001-ish from a lot of people (which is around when I started using it, going by my own foggy memories) but plenty of people guessing it started around '97 with South Park doing similar faces in it. No idea if that is true though.
I'm also assuming this is like, potentially lost knowledge, especially if it was started on AOL (pain. because all the old boards from there are gone.)
Glitched video transitions
More work on my glitch gif generation, I've added video transitions between two videos (which can optionally transition to loop back to the start before ending). Below are two videos jammed together.
Radio station update and rebranding
Did a bunch of back-end fixes and improvements to (and turned back on) the radio station after nearly 3 weeks of it being offline, after I noticed the output of the LLM it uses seemingly degrading over time. For now, I've taken the host, Cinnabunny, offline and put up a new character named Kyuubit. I've renamed it (from "VRChat Pirate Radio") to a more generic "Furry Pirate Radio" so I don't have to tie it to VRChat.
Kyuubit's design was based on the pokemon Nickit, but if it was a robot. Her voice is supposed to sound like a weird amalgamation of Miku's, GLaDOS's and Cinnabunny's, though I will be doing some updates to the voice later.
Untitled
oop! fixed an error in the radio where the name/artist was doubled in the metadata
Glitch image generation
Making a glitch image generator because I couldn't find one that did the exact effect I wanted. Trying to tweak the settings now.
WIP/teaser render
Remaking an old model for a Thing. Need to put in a TON OF WIRES AAAAAAAAAHH, but that's for another day.
damnit
oh. that's good. I deleted at least two recent blog posts by accident and I can't find a cached version.
croc
I really need to get around to designing a crocodile sona for myself.
Nickit Robot VRChat avatar
I think I've finished my Nicket-like robot avatar! Here it is in VRChat. I might add more animations later and went with a shade of pink, instead of the original orange you'd see on a Nickit.
The speaker over the mouth animates with like, a beating effect, when I talk. Need to get a video of it.
This model was actually really fun to make -- and the rigging and weight painting wasn't complicated enough to annoy me this time. I will probably make more robotic characters soon.
Also, I actually want to make the eyes animate but haven't gotten that far yet.
VRChat radio updates
I finally went and debugged why my radio stream wasn't loading into my VRChat worlds. It hasn't worked since I tried almost a year ago. Apparently, mp3 streams don't play on linux!Unity -- so I had to change it to vorbis (need to update the link, though, it still has .mp3) and that fixed it! Hopefully the change doesn't break it in Windows!Unity/VRChat.
so that's one of my three hurdles out of the way. the next is that I can't upload the world because the VRChat build system is broken in Linux right now. It might be possible to run the Unity editor in Windows under Virtualbox or something, but that's a pain in the ass, if so. There are some workarounds I've seen for uploading avatars, so I'll keep looking through the forums and such.
and finally, they broke video players in Linux again (as far as I can tell. The usual workarounds aren't working for me) so I can only even kind-of load video players in VRChat. Only the audio comes through :(
Radio back online
Brought VRChat Pirate Radio back online. For now -- need to set part of it up on a dedicated server again. The link is in the Radio section in the header above.
I may actually change the name because I've still not put it in a public VRChat world lmao. Couldn't get it to load in a video player last time I tried -- not sure if they changed something or if I just did something wrong. Or if there's an issue loading it in VRChat because I'm using Linux now.
I'm thinking of going with a bunny theme, if I change it. I mean... the radio host is based on my Lopunny pokesona. So for the image on the page I gave it little rabbit ears (antenna. TV, but still.)
network borked
aaaaaaand one of my cloud servers broke. the one hosting the confession hotline stuff and some of my radio station stuff. somehow I have no network connection on it and I can't figure out for the life of me how to fix it.
not a big deal. but it's still really annoying!! I'll fix it later I guess.
rss feed
Should I add an rss feed to this blog? (and, if so, direct post linking)
November 2023 site updates
Earlier I updated the site so it loads (most) pages without refreshing. I keep finding little UI bugs here and there, fixing them as I do. At this point I think it's mostly good.
On initial page load (not after clicking most links) it now fetches another page and replaces the menus with what is in that, so I can stop editing each page when I need to add another page to the menu. Eh, it's not ideal, but it's probably the best I can do given Neocities is static hosting.
I updated the Mewtwo Shrine a bit too. Gave it a new loading screen, updated the jungle canopy textures (they were too "flat" and looked out of place before), updated the controls a bit, and some other stuff. I still get weird framerate issues when playing in the browser if I have other stuff using a lot of resources, which is weird because it doesn't happen in Unity. I'll look into it later.
The radio pages are down at the moment, and have been for a while. I've been updating the script that runs them and might move them to another server whenever I get the chance. I also made a headless installer for the part of it that generates the text-to-speech so I can try that on different server sizes... because I think the machine I was running it on before was overkill lol.
Oh yeah! and I uploaded some art of four of my characters to gallery/bio like pages.
Beefbrain
So, I was watching another stream of Hypnospace Outlaw and saw that MerchantSoft somehow blew through a billion dollars... just like facebook/oculus did, for a VR world with like, 30 players. so along with other obvious parallels, I had to remake this image with them in mind.
Bad puns bot
So I've made a new bot to terrorize a Discord server I moderate now that I've managed to get bad puns out of GPT3
OS swapping shenanigans
For the past week or two I've been using Linux (Xubuntu 22.04) as my primary desktop OS for the first time in... years. Surprised at how much it's improved since I last used it. I've used it on and off for various things "recently" (2021?) but for the most part I stuck to Windows for my primary OS, only using Linux for servers.
The last time I tried to get my monitor setup working with the NVIDIA drivers (2018?) a disk in my back slipped and yes, I am blaming the NVIDIA drivers for that.
This time though? I had ~30 minutes of trouble initially upgrading the drivers because of switching installation methods, and I have to reset the monitor settings on login (which is done automatically by script) -- definitely not a newbie friendly experience but now that it's installed, everything's running better than in Windows. Even my live wallpaper (done with script instead of Wallpaper Engine) is running better.
Speaking of the live wallpaper, I actually made a pretty cool one in Blender: a neon sign featuring my partner's and my fursonas (or one of each anyway). Click the preview below because the thumbnail is only like a second of it.
I kind of want to make more of these, maybe even for commissions, but the animation takes a while to set up in blender. Maybe I'll look into how to automate the flickering better, or see if I can get a good render through Unity.
Mewtwo shrine
Oh yeah, I made a thing for Mewtwo Day this year, a 3D Mewtwo shrine that's viewable in a web browser (on desktop. It needs keyboard and mouse to move around.)
I've also been making some extra, unrelated areas to put in it since I already got the framework for loading scenes and such made. Haven't released any of those yet.
Untitled
Made a thing to automatically play any of the TV shows I've downloaded in a "whatever the fuck, it's a rerun" order, so I can just sit it in the background if I don't know what to listen to.
It's made in Unity because I wanted it cross-platform (android/windows) and I don't have a good way to do that other than just. a webpage. which I've tried before, but most of the videos on my computer aren't in a format I can play in a browser
Radio internals update
Okay, so the radio now *tries* to sanitize titles of new songs and their artists/albums more, so that the host's text to speech can actually speak them. Names like "t.A.T.u." get internally translated to "Tatu" for the TTS, "ABBA" goes to "Abba", etc. Hopefully actual abbreviations just stay uppercase without punctuation -- I tested with "CCR" which just gives "CCR" as the name... the TTS can speak abbreviations if they're formatted that way.
In addition, it tries to strip "(whatever remix)" and similar stuff from the titles, should change "Original Motion Picture Soundtrack" to "Soundtrack", etc.
I'm using GPT-3 for this step so mileage will vary on whatever it feels like doing, but so far my tests have worked pretty well.
...
And, while not new, before it even does any of this, it has to translate the titles to English. The voice model can pronounce words formatted with ARPABET, and unfortunately other languages don't do well here -- for example, non-Latin characters just get skipped over entirely, and pronunciations in (for example) Spanish are all off. Supposedly this won't be as big of an issue with the next big update of xVASynth, but for now I need that step in place.
I've also put it all in a private (for now) GitHub repository so I can easily spin up new stations, only needing to clone the repo, swap out the speech data, and change ports/addresses.
So, in other news, I've wanted to create a good voice model of my own voice, but sitting here with a mic for hours sounds like a chore. Ancient archived recordings to the rescue!
Realized I could use positional VOIP data from a VR app, that was recorded in 2017 and 2018. I found the data on one of my old servers, where we experimented with recording company meetings in VR and 3D, that could be played back in the app. Needed to reverse engineer old code to get it working, because I didn't want to install said app and sit there with the audio recording on for hours. So eventually I managed to export all the clips of myself in wav format, all at once.
Fun fact: I spent *over two weeks* trying different versions of the code I'd made to export it properly, and nothing worked. Audio was always super choppy (it took so long that I even made a warbly voice model with the choppy data) Apparently the issue is because I was creating a new opus decoder for each frame. I didn't even *notice* I was doing it that way, and by defining it only once at the start the choppiness cleared up. And export was (obviously) faster.
Untitled
Doing a spontaneous update of the Radio New Vegas GPT code. Giving the lyrics (for songs which have them) to to the AI to interpret, tests so far are good. Apparently, it works well for songs in Japanese, too, without me having to do any additional translation or specification that I want the interpretation in English. Probably other languages, too.
Ideas graph
I made a new section called Ideas Map to organize random ideas I've had, mostly for game design or character ideas/art, so far.
So the process is: I type in a note on a page I have locally, which adds the idea to an existing list and processes it, extracting keywords and choosing existing (or creating new) categories for the idea. It gets uploaded to the site which displays the graph, using the similarity of keywords between ideas to link them together. Closer links get a brighter line.
Still working on the keyword matching. The plan is that I'll eventually turn this into a proper (but small) knowledge graph, but I haven't written the code to find relations between the subjects/objects yet.
Untitled
More updates to the radio recently:
- upgraded the host's voice to a new model without the radio filter (should hopefully sound more clear)
- the host now introduces song 1, plays it, plays song 2, gives a more detailed outro for song 2 (the take often makes no sense, GPT-3 doesn't have information about a lot of songs and there's really no way to figure out if it does automatically.)
- made various little fixes on the code and the prompts so the monologue should *hopefully* be a little better.
- fixed bugs with the player in Firefox. Previously it was playing/looping bits of cached audio after a refresh.
I also made a quick update to the video on the page to match with the newer site theme. It's just a short clip from a VRChat map that I've been working on occasionally.
Someone also requested I write some technical details about it, I'll try to do that soon.
Radio New Vegas GPT updates
Just updated the radio to find a new song from Spotify's recommendations (using only the songs I've added personally as the seed) every 4 days. Tested it today, hopefully I didn't bungle the timer.
Also made it email me when someone adds a song or when recommendations are added so I can quickly remove stuff in the case that it's the most boring thing possible for someone to suggest (looking at you, United States National Anthem. christ.)
VRChat world updates - Braixen shrine
Finally building a shrine to the fox Pokémon, Braixen.
Here's a very early WIP of a private room of a nightclub-themed Braixen shrine:
Been working on this for a few days but have had it in mind for years. Apparently, the mirror model was made in September 2020 -- but then I paused until recently because I didn't know what kind of architecture to go with. Originally I wanted to build a Braixen shrine in VRChat, like a psuedo-church kind of thing, so I briefly tried making a cathedral (back in 2020), but it seemed completely uninspired.
I recently started thinking about different styles of architecture people tend to use for worship, and what could work best as a secular shrine/chapel/church. There's a lot of classical stuff to choose from but I didn't want the religious or cultural connotation that comes with them, and I don't want to appropriate from less well-known religions to skirt around that. I've seen people make RL shrines to favorite characters, animes, etc. but they tend to be a small area composed of figurines, plushies or posters. It's closer to what I was looking for, but still not it.
Finally realized that concert venues, mosh pits, night clubs, etc., can arguably be a place of worship. Maybe a more carnal type of worship, I suppose, and closer to what I'm looking for.
I still need to block out the rest of the club, which I'll start tonight, then comes the detailed modeling. And... unfortunately I'll have to learn some video editing for what I'm doing. Lots of screens showing lots of Braixens. Do people still make AMVs?
Blog updates
Also! I've gone back to tumblr and based its theme on this blog. bunglepaws.tumblr.com if you feel like following me.
Blog updates
Just changed my blog's image uploader so it won't be using images that are like, 7680x4320 and 30+MB lmao (which is the size VRChat is saving them to by default)
I put it off until now because I thought it'd be a pain to detect if there are transparent pixels (to determine whether it needs to convert to JPEG or PNG) but a quick search gave me a 5-line-code answer.
Eventually I'll go through and manually convert the older PNG's to not be gigantic.
VRChat world updates
Created a new, small world Bed on the Lake.
Also edited my Goodra model into the Rooftop Pokemon Rave world.
VRChat Bedroom work
Just working on my VRChat map based on my bedroom. Just put in a dancing Goodra hologram, using the Goodra model I worked on earlier in the month.
Just some VRChat screenshots from the other week
(56k warning: images link to 3840x2160 png's)
Screenshots of my Lopunny OC, Cinnabunny. I recently made a new palette that I can enable with a button, based loosely on the Dark World character palette swaps from Deltarune.
endless trash!
Also I just added "endless" scrolling to this blog (though there's less than 10 posts now so it's nowhere near endless). This will be useful later when I have too much shit to load at once. Also getting some lag with the video thumbnails, tiny though they are. So I'm thinking of what I want to do about them.
Edit: turning off hardware acceleration in Chrome fixes that, though I'll need to figure out something else obviously.
Yesterday was Braixen Day!
Yesterday was Braixen Day. Braixen is one of my hyperfixations and the species I used for my first pokésona so of course I had to do something for it.
I decided to make a new avatar of one of my Braixens, wearing their wedding dress from some past commissions. I only got to work on this for a few hours last night and a couple later in the day after work, but I like the progress I've made so far.
Images from an early WIP, I'm still working on the shape of the body and clothes. The wireframe model beside them is an old lower-poly one I made a few years ago. Not looking forward to doing the eyes and mouth though.
When I'm done I'll use it as a VRChat avatar, and a vtuber avatar (mostly for weekend Discord calls).
Updating Radio New Vegas GPT
I just spent a while updating Radio New Vegas GPT to try and make the flow of songs a little less chaotic, since there's no genre or theme.
So, the program queues 7 songs at a time, re-queuing a couple songs before the playlist is cleared. It keeps a recently-played list and queues songs that aren't in that list.
Before update:
- Each time a song is queued to the playlist, we go through and pick one at random, checking that it's not in that list.
- Continue this until we find one that's not in the list, and add it to the end.
After update:
- Most songs on the playlist now have metadata taken from Spotify about tempo, loudness, danceability, key, etc.
- We compare the metadata for all songs using cosine similarity to find the most similar songs.
- Pick a random song out of the closest 4 that aren't already in the recently played list.
The aim is that as songs get added over time, there will be less abrupt jumping between genres.
ALSO I fixed the auto-translation of song titles it does. So when you request a song, for example 君の銀の庭 by Kalafina, it tries to translate to English text: Your Silver Garden by Kalafina. This is a temporary thing but the latest (version 2) xVASynth voice models can pronounce English characters only. Apparently in v3 that won't be an issue, so in the future the translation can be avoided... although I might still give the english translation to GPT-3, as the monologue is generated, just so it has the context of what the title says in english.
Goodra VRChat avatar creation
(Note: I'm in part writing this to test my blog updating/uploading script. If I thought of this before hand, I would've taken more screenshots along the way.)
I want to make myself better at character modeling -- specifically, the creation of a rig and rigging the model to it. It's something I've done before a number of times, but I still don't feel comfortable doing big avatar projects myself.
So I decided to create a VRChat avatar. A Goodra, from Pokémon, from scratch. It seemed like a fairly easy enough character to make? But I've never made a character model with both moving eyes and proper facial visemes. So, first step was to make the base model, then add visemes and a rig, then once that all worked, texture it. Making the eyelids blink and orienting the eyes for Unity were the hard part (as I wasn't going with a step-by-step tutorial, just dissecting a commissioned model to see how the eye rigging works.)
Orienting the eyes in Unity was really only a problem because at first I didn't see the little toggle to aim them separately -- after I found that I had to redo the eye geometry and re-export. Surprisingly, it worked really well then.
I think it turned out okay! Texture's a bit basic, but... whatever. I've been meaning to make an autumn leaves/grass-type Goodra OC for a while, so my next step will be to alter it into that.
First post
Added a blog page, although I still need to add the editor for myself. Right now I'm having to edit a json file manually.