WHAT HAPPENED
It’s time to start treating this more like a dev blog and less like my old Blogspot page. I will not be linking to my old Blogspot page. 😀
Here’s a list of progress that was made:
I added “Ebonhorn” to MotW – Written with ChatGPT and re-written the hard way. 🙂 Text copied to the Bestiary entry. (Man, I can’t wait to get on the Bestiary full time!)
Tested Dan’s improved sedchain function code for the info pack builder section of Mass-IV. It’s looking a LOT better, but there are still errors. Running a huge dataset and auto-logging them to a file on the Desktop for future fixing.
UPDATE: I realized that the sedchain was the wrong way to do this all-around. It wasn’t Dan’s fault because he was just following my lead. This was MY bad idea. Fortunately I had a much better one – instead of trying to strip data out of variables, what I should have been doing all along was declaring clean variables without any dressing on them like magical plusses or special effects like Werebane. Once that happened, we were able to do away with the sedchain function altogether, trim up about 40 lines of now-supurfluous code, and the “can’t find file” errors are now gone.
What’s a “sedchain function”? It’s a chain of sed statements that looks a lot like Perl, but don’t be fooled. It stands for “stream editor”, and in my use case, it would check a variable’s contents and remove quite a long list of specific pattern matches I had defined. Then this new pared down variable would be passed to the next part of the program that actually generated the packets. It was at least 30 elements long, and cumbersome as all hell.
The way the packet generator portion works (and the one I use for getting ready for conventions) is to spit out a list of PDFs that include the race and class information specific and unique to each character it makes, as well as detailed descriptions of their gear. All this information is in a bulging folder filled with individual PDFs that it concatenates together (“cat” for short), and deposits on a folder on my Desktop. It was having trouble finding those PDFs because the data-stripping function wasn’t consistent. Some files were stripped clean. For example “+4 Broadsword, Holy Avenger” was supposed to be stripped down to “Broadsword”, and that’s the name of the PDF it would look for. However (and this is just a for-instance – I have no idea if this is exactly how it was getting treated), it would be stripped down to ” Broadsword” instead. Note the leading space. THAT file doesn’t exist, and it would throw an error during generation, much to the woe of my blood pressure. But we fixed it!
I do feel bad for all the work Dan did on that sedchain mess just for it to go in the trash, but he didn’t seem bothered by it so I’ll try not to be.
“Got caught up in Mass-IV development again. We’ve finally squashed the “file not found” bugs! Also fixed the “too many skills” bug! (There were 7 skills hard-coded to show up for everyone, regardless of class)”
Yeah, about this one. At some point in the distant past I needed characters generated with a specific list of skills, such as Mountaineering, Survival, and so on. I left the code in place. Oops. We cut it out and now the correct number of skills are generated for new characters.
Another odd bug (and the one I was begging Dan to address) was the TAB generation. The base attack bonuses for Strength and Dexterity were just plain gone. Without going into too much detail – mostly because I was very tired and can’t remember it – Dan chased the problem down to a sieve I had written for including dual and multi-class characters. The sieve itself was fine. The data it was getting was not. Two lines of fairly simple code took care of that. We then found a half-assed patch I put in that was adding 4 points to Fighter’s TAB scores to get around a different mess that I made a long, long time ago. It also got the axe. These two fixes resulted in characters being generated with no errors to stdout! Like, NONE. The code that’s there is working right!
That said, there are more than a few half-implemented features like bonus skills for generated backgrounds that are less than half done. But that code is a slog and I hate writing it. It even says so in the development notes at the top of the file. I think I’ll work on that some next Monday and make those my “code days”.
I also designed a new spellbook description generator so Mass-IV doesn’t keep churning out the same old, same old with every spellbook it makes. It’s not written or implemented yet, but the outline is there and I think it’ll work. There’s not a whole lot more to say yet on this one.
MINE: I opened the file! That’s really all I got to do before I was pulled away. My intent was to flesh out a bit more than Grigori’s denouement, but that’s the progress I made there.
CONCLUSION
That’s all I have for today. I think the wife is going to take me out for a birthday dinner! ^_^
I’ll be back tomorrow with (hopefully) some more real progress – if I don’t eat myself into a food coma tonight. Hey, it could happen.
-Alan