Given that I’m going to be showing it to the world at a convention on Friday, I certainly couldn’t leave the TableMaster user interface in the state it was in. You know how your car looks when you’ve got half the engine apart all over the yard? Yeah, like that.
So today was spent getting the UI laid out properly and making everything work right. I added a bit for touch screen users too, since Windows tablets are a thing. And while I was at it I took a screenshot to show y’all:
Continue reading “A new screenshot”
As I said, I don’t have a lot of really interesting things to report at this point. I came to the conclusion that I was right the first time, and I really shouldn’t try to re-use old code. I’ve spent the past few days completely rewriting the expression evaluator and dice parser from scratch. On the plus side, they’re much more flexible (and more programmatically elegant) than the old version. On the minus side, this just killed the better part of four days.
But development is coming along nicely nonetheless. I’m going to have some awesome demos at Game-O-Rama this coming weekend (May 27-29). No pretty screenshots today because I’ve got the whole user interface torn apart and the buttons are all over the place. Using it on the touch-screen Windows tablet has made me quite aware of some issues with button sizes (or maybe it’s just fat fingers?), especially the one to transfer dice rolls to the table run count, and the fact that at the default font size, I had to squint to see the tables in the listbox. So, I’m rearranging everything when I take a break from debugging the main code. I’ve developed great sympathy for people who play Cathedral.
And, having a mostly-complete running TableMaster now, I’ve been having fun with tables…
Continue reading “Minor odds and ends”
The FedEx truck brought me a new toy this morning. It’s a Nextbook Flexx10, a 2-in-1 laptop/tablet hybrid, notable for being about the cheapest one I’ve ever seen — $130 from Sam’s Club. (they were actually out of them in the store, hence the need for the FedEx man). I’ve been running TableMaster on it. There is something way cool about seeing TableMaster running on a tablet.
Continue reading “TableMaster on a Windows tablet!”
Development-wise, TableMaster is well into the stage of unexciting stuff going on. Now that most of it’s up and running, things have shifted from heady, exciting work to long, slow, uninteresting, but utterly essential work. It’s a matter of testing things, fixing things, putting in all the little refinements, adding all the necessary error trapping, and so on. That doesn’t make for very interesting things to blog about, but it matters just as much as the flashier things that are easier to explain. “Added .LOCKOUT and .IFYES/.IFNO” is just a lot more exciting than “fixed bug 0017 on the bug tracker.”
So, instead, I’m going to talk about the first convention for Wintertree redux will be attending. It’s been a few months short of 16 years since Wintertree had a presence at a con. In a few weeks, we’ll be doing demos at Game-O-Rama in Atlanta, GA on May 27-29. I’ll have a pre-release version of TableMaster II there — both in their Demo Alley when available and wherever someone can buttonhole me the rest of the time — and I’ll be delighted to talk with anyone about it; actually, trying to shut me up about it may be the hard part. While TableMaster itself won’t be available yet, I’ll be directing people to the TableMaster Kickstarter project.
Continue reading “Wintertree Goes Out In Public!”
.LOCKOUT is in!
That’s the last major feature of TableMaster II. There are still a few minor commands missing, and a few aspects of some of the existing commands, and strange things happening with the expression evaluator, and of course the whole program is buggy as hell and there’s virtually no error handling … but .LOCKOUT is in. The framework is done. After 16 years, TableMaster is a thing again. And what a long, strange trip it’s been.
Continue reading “Last major feature in!”
I’ve been busy making up for taking a long weekend off to go take pictures of birds, gather seashells, and get bitten by no-see-ums. I put in a lot of what I think of as the “minor commands” of TableMaster today — things like .INCREASE and .ERASE, commands that are pretty straightforward on the code end.
I’ve said for a long time that I think TableMaster is a mature product. The platforms it runs on will change, there will be minor changes in what certain commands do or how, etc., but the actual .TBL language is pretty much set in stone. Well, except for the two new keywords, anyway!
Continue reading “First new commands in 17+ years!”
It’s been a few days since my last post, and things have been going nicely.
The latest addition is the expression evaluator. I’ll be honest, I cribbed it from my old code. Looking at it, I realized that I’d done a remarkably good job of writing that (it didn’t hurt that it was one of the later things I added, so I was pretty good at Pascal by then!) and it made no sense to reinvent the wheel. I needed to make some changes to fit the modern TableMaster structure, of course, and a few minor tweaks to avoid variable and function name collisions, but aside from that I could pretty much graft it in there wholesale.
Continue reading “Status update (updated)”
People have been wondering how TableMaster II will be different from (i.e., better than) the original from 20 years ago. Aside from the obvious, like it not being an old DOS program that can’t be made to run on anything past Win98, what else is different?
My goal is to make it a superset of the original. That is, any table that worked with TableMaster will work with no changes with TableMaster II. The one exception to this is anything using .GRID — which is probably not going to be an issue, because that was always buggy and I don’t think anyone ever actually used it. If something using that does turn up and can’t be worked around, I can always put it back in the next iteration, but at this point .GRID isn’t going to be there.
I’ve already got some additions in. I mentioned the new formatting codes in an earlier post. Today, I added a new feature to the .NUMBER command.
Continue reading “Improvements, tweaks, and changes”
As I mentioned in my previous post, I’m going to be modernizing and enhancing the old table packs. Needing a break from staring at code last night (not least because it was late and I’d probably be putting in bugs instead of taking them out) I started playing with a table that’s going to go into one of the Fantasy Table Packs.
Y’know, it’s just plain fun to be writing tables again. I started this as a quick little test table with more interesting output than ‘this is a line,’ then decided to make it into something that could go in a table pack, then it just kind of grew. It’s 157 lines right now and will probably get bigger as I think of more things.
Continue reading “Fun With Tables”
I’m busy working on the handler for .otherwise in TableMaster, which is enough to drive anyone to talk about table packs instead! And it appears there are people who are curious what I’m going to be doing with them, and if there will be new ones.
I’ll answer the second question first, because that one’s easy: damn straight! I’ve already got a big list of notes for what I want to do for a brand-new table pack, and I’ve got at least preliminary notes for a possible second one.
Now, as for the old ones…
Continue reading “Table Packs”