Monday, November 16, 2015

Dev Diary Week 10 - BattleTech Design Software

Quick update as I'm exhausted tonight.

This week I finished up a lot of the code flow, tweaked the way actuators work, made a LOT of little bug fixes, and started working on supporting all the armor options.

Funny thing.  Buildings can be up to 30 hexes in size, and up to 30 levels tall, and each hex can have a turret.  This means to track building damage you need 900 groups of CF (1 per hex, 1 per level) of up to 150 (1500 for capital scale), PLUS armor, PLUS turrets.... its horrible.  I'll have to create a dynamic system to be able to handle that sort of system... no biggie, just didn't realize it was THAT mind boggling!

I also have costs *mostly* working now.  I can create an AS7-D Atlas and the cost is right except the lower arm and hand actuators, which I haven't written up the actuator allocation part yet (things like PPCs on omni's replace hand actuators, need special handling).

Years of availability are also right, so you know when a unit is available as experimental, advanced, standard, and tournament legal.  Weights are also working in most cases.

I think I'm only getting about 4-6 hours per week on this, so for the 10 weeks I've been working on it it is really only a full week, though probably not that much as I've had a lot come up.

Anyway, chugging along.  I'll try to finish up all the armor combinations for various units next, and maybe work on the critical allocation system after that, dunno yet.

Other battletech news:  I bought 11 of the new lance packs, for the cards and the 2 new miniatures.  Nice stuff.  I *really* hope the alpha strike boxed has 13 reseen miniatures, plus 10 or so clanners and some nifty design, but we'll see.  If they are that, I'll take a dozen please! :)

Been a couple weeks now since the Battletech Kickstarter closed.  I haven't seen a pledge manager yet to add on the $140 in books, but based on their past kickstarters we will only see a communication a month so I guess maybe in a couple weeks.

Tuesday, November 10, 2015

Dev Diary Week 9 - BattleTech Design Software

Sorry I was a day late on this one.  Had a frustrating programming session this weekend and stayed up too late to do the update.

Not a lot new to show, but that doesn't mean the week was without progres!  This week was mostly interface tweaks, adding things like tooltips and changing of the way various item lists are displayed.  I also implemented fuel, and made numerous behind-the-scenes changes, and added saving some defaults to speed up my development time.

I am still tinkering with the interface a bit more before I dive into the 200 or so unique variables applied to various equipment in order to make sure all designs are legal.  This is kinda time consuming, but not really all that hard due to the way I designed the application.  

Once I get those variables done I have to focus on equipment selection.  I want to only show ammo for items you have put on your unit.  I need to ensure proper arcs are shown as an option, consolidate multiple similar items down to 1 line, show the arcs on the same line, and implement "addon" support for things like Artemis, Apollo, Pintles, One-Shot, MG Arrays, and so forth.

I'll then have some minor things that are pretty easy to do, like bay allocation for DS/WS/JS/SS, crew allocation, frankenmech support, and crew augmentations (both for vehicular pilots and infantry platoons).  

After those it'll be BV, which I want to make sure all other things are done first.  Weight, cost, availability, tech rating, and years for each rule level are all ready pretty much done.  BV will be the last consolidation thing.

Then I'll go add the alpha strike conversions, which isn't too hard.

And finally record sheets.  After which I'll start focusing on all the extra bells and whistles I promised.

I am developing slow though, due to a few reasons:
#1.  War Thunder.  I play this game a lot, and sometimes when my brain isn't "into" coding instead of focusing it, I take my tank and go blow stuff up :)
#2.  Real life.  I do have a wife that requires a certain amount of attention or she'll kill me.  Therefore at least 1-2 hours a night I usually spend with her.  This usually means the earliest I code on weeknights is 8:30-9.
#3.  Sleep.  I can stay up till 11-12 just fine, but sometimes when you are doing things on a computer your brain says "Uhhh, nap time!" and I kinda fall asleep in my chair.  It doesn't happen too much, but it happens often.  I'll usually go play war thunder when I get too tired.  I have MS and a slew of veterans related issues, which doesn't help things.
#4.  Sometimes I get a new group of toys in, miniatures/books/etc, that can kill the nights development.  I have 3 tripods on the way and 11 boxes of lance packs for example :)  I also have a LOT of GHQ 1/285 and 1/2400 stuff I still haven't finished assembly on.
#5.  I still play battletech with my group here in DFW.  I often run games, to stay busier during play, but it still eats through 1-1.5 days for prep time and game play.
#6.  Sometimes I get sidetracked by things.  

My anniversary is tomorrow the 11th (married in 11/11/01!) which is also veterans day, but I took Thursday/Friday off to hopefully get a good 8-16 hours by the next update.

I doubt I've put in 40 hours on coding at this point, which means I'm only probably getting a good 4 hours a week in on it :(  It'll get done, but not as speedy as any of us would like.

The official software request thread from CGL on the forums that made me start doing this has ended up where all of them end up.  Zero progress, and 2 sides bickering over all digital or all paper.  One guy did some great HTML5 work, and had a great interface, but we've all seen many mech designers for 3025 stuff with some 3050 thrown in (I could do a designer in excel for any single item in under a day with *most* stuff supported), it is orders of magnitude more complicated to support everything and all the rules.

Anyway, thanks for stopping by!

Monday, November 2, 2015

Dev Diary Week 8 - BattleTech Design Software

Week 8, not a real productive week, I suck, however it was far from unproductive!

Again, I go into more detail on my daily facebook group, so this is just the highlights.

Now, it all isn't done, there are numerous issues I can point out in the attached picture, but it is pretty considerable progress.

Though not 100%, the following parts are now working:
- Total weights (no ammo counted, also did not exclude free HS that come with engine yet)
- Total unit cost (missing life support, sensors, chassis multiplier, free HS, and musculature in pic)
- Overall tech rating of unit, so you know where you can get one.
- Availability of the unit in all 4 (yes 4 now, thanks IOBeta!) eras
- The 5 years are determined (Prototype/L3/Exp, Introduction/L2/Adv, Common/L1/TL, Extinction, and reintroduction) so you know when what you are designing could possibly have been built, and went it become extinct.

Sorry it isn't sized right, blame blogspot.  Click here for full size.

I still have a lot of cleanup, and some item renaming, but getting closer.  It'd help if I spent more than 4 hours a week on it, but you know, life. :(

Other stuff:

I already found a bug in the way SSW deals with actuator cost, which apparently has resulted in at least the AS7-D cost on the MUL being incorrect, though I suspect many others may be affected, and this was just an original 3025 design!  Hopefully SkyHigh will notice and fix it.  Not sure if MegaMekLab does it right, hope so I guess, but I don't really care as nothing ever written in Java hasn't sucked (interface/stability wise - not the developers faults) and I don't use MML.  :(

I wrote a little excel spreadsheet to track the necessary roll and time it takes for a repair based on rules in Strategic Operations.  Note that you always want the best possible techs you get, else you will always be sending your mechs back to the factory for refits, else they fall apart on you.  Interesting stuff, anyway link here.

Looks like the HBS Battletech kickstarter met all its goals, with plenty of time to spare, woot.  Stretch goals are pretty weak IMO which hurt it, and I have like 5% faith the game won't be boring as heck (War machine was made into a great looking turn based game, but it plays so slow I just can't keep interest). Nothing like waiting 15 minutes for your opponent to move something as you sit there and twiddle your thumbs.  They aren't implementing the features necessary for it to have a long life (custom maps, custom units, modding) and are using the unity engine, which nearly always results in nothing more than mediocrity.  But I funded it anyway, because its battletech!

A whopping 12 views last week, probably mostly on my facebook group, hopefully once I'm done the community finds out about it.  I'd hate to think only the 30 or so users on my facebook group are going to be users, but that'd still be enough ;)