Noodling the Numbers

Been working on creating some better combat mechanics and options for Auto Fire lately. One of the factors I was working on was tangibly having hit chance be affected by tactical choices such as “painting” a target with radar for more accuracy, or on the other side moving faster to avoid getting hit. I got those systems in but it didn’t really seem to matter.

I had to seriously think of how I’m dealing with accuracy, range and speed. My initial version of the combat system in Auto Fire was inspired by the system in Diablo II. It used this sort of calculation:

Chance =200% * AttackRating /

(AttackRating + DefenseRating)

Consider AttackRating to include things like gunnery skill, weapon accuracy, and other targeting bonuses. DefenseRating in contrast is stuff like range, target speed, and target size.

Multiplying the value by 200% gives the player 100% hit chance whenever the Attack Rating is more than 50% the Defense Rating… So in the average case the player is guaranteed a hit. This was the system I used in X-Men Legends, and it feels pretty good in an action game where you are directly controlling your character and only want to have misses when your opponent clearly outclasses you.

The problem with this method is that the chance to hit tapers off because it never reaches zero… Thus, I was finding that there’s only a small sweet spot where hit bonuses mattered between 100% chance and maybe 60% chance.

If you like numbers, here are the results of that sort of calculation.

I made some changes and pushed the system more towards a classic “opposed totals” method more akin to D&D or most pen and paper games.

Chance = (base + AttackRating – DefenseRating) * 10%

It’s not original, but what it did was make each bonus you earn through improved targeting, or sustained fire (or penalty from moving fast) has a pretty chunky impact on the hit result.

Here’s that table if you’re feeling nerdy.

I do put a minimum hit chance of 10% just so it’s not worthless to attack, and I’m not sure what increasing the miss chance is going to do to the feel of the game.

I have a mechanic where excess above 100% is used as a critical chance (That is, 130% chance is an automatic hit with a 30% crit chance). I might consider doing the same on the bttom so a “miss” is a glancing blow that still does a little damage, progressing to a real miss based on the percentage. (For example, -30% is a 30% chance of a real miss and a 70% chance of a glancing blow).

I’m wrapping that back into weaponry definitions and looping back around to where I can try the new system in the wild. From there we’ll see what happens.

Auto Fire v0.5.08 – Controls! Citadels! Courier Missions!

I’ve had a pretty busy last month (and some weather drama), but luckily I did get some meaty things done on Auto Fire.

Controls

Many people have lamented that it is difficult to control Auto Fire because the “forward” key also accelerates. Responding to feedback, the new controls are thus: If you press forward, your speed is capped at 40 MPH (that is, 2 actions per second). This way you can manage most maneuvers without crashing into everything around you (previously a popular activity in urban areas).

Speed is still king however, especially out in the badlands! A separate Boost key is used to accelerate beyond 40, up to your vehicle maximum.

Citadels

A citadel is a civilized city where you can take a break, get repairs, and buy/sell items. Eventually different citadels will have their own specific functions, depending on which corporation owns it.

The cool thing is that you can now load up courier missions at a loading dock, giving you a non-combat way to earn more cash.

Cool Stuff

Gaw’bless Unity. It took like a half hour to put ragdolls on the soldiers.

I’ve also got some transition improvements, added new features in the overworld and improved the entrance/exit of areas.

We now save out fog of war between maps. (Whew that was annoying).

Quests work better! They’re improving all the time… but in this case I needed to create a quest on the fly when the player had to deliver cargo. This way I can use all the quest features like lists of rewards, player tracking, unique generated descriptions, and hooking into triggers such as arriving at a destination and showing quest markers.

Lame Stuff

Some significant bugs were also dealt with… I had previously been very diligent about properly and safely deleting entities, so that I wasn’t deleting them from a list I was parsing through. Unfortunately I wasn’t doing so when adding entities to the list. Thus C# was complaining at me nonstop, and it was nice to deal with that.

I also had a few remaining Entity pointers that I was saving across frames, which was not safe. I had changed everything over to a unique token method of tracking entities, but I had missed a few things previously. Again, good to get that out of the way and run some stress tests!

Snowmageddon and ‘splosions

Seattle was pretty well snowed in for the last 4-ish days, so I was hoping for a long weekend to work on the game (between back-breaking bouts of shoveling). Welp. I got it, but did I end up with a ton of progress? Well, I got some new points of interest in on the maps, improved the roads, threw exploding cars based on attack angle and its velocity and some other fun things…

Unfortunately, I ended up battling stale pointers and strange issues for most of the time. Ugh. A more robust system that doesn’t poop out exceptions every blue moon is good, but I am sooooooo ready to get back to the fun stuff.

But on the upside, I was able to cap off the weekend fixes with a stress test… 🙂

Tiles, tiles and Tools

I was just thinking about the challenges of generating a city map for Auto Fire and realized that I’ve accomplished a whole lot and haven’t really discussed it in a long while.

City layout workspace

Really early on in development I created some tools to generate block templates that get placed during map generation. This allows me to work with actual crafted sections of map (with variant buildings and other things that can be adjusted after the template is laid down). It’s more or less a requirement for cities since the classic “cave-style” procgen or even dungeon layout techniques don’t work as well as I’d like.

I create template patch objects that have a bunch of data attached to them such as exit points (for cities) as well as a variety of variable bits like spots for random decor and building styles (depending on the generation profile I’m using).

The block data that I save out actually even supports 9-slice scaling, so I can declare borders to be of a fixed size, but the center to be a repeating tile section that can be any size. It’s really useful in some situations like when I want a long crafted section of wall, or a large 4-lane boulevard on a city map.

For cities, however, I actually work mostly in blocks that are 4×4 in size, with street connectors that are 1, 2 or 4-lanes in size. If I want to make a larger block such as 4×8 or 12×16 I can do that as well. Getting the whole system to rotate blocks properly was probably the hardest part (you can see in the build right now that I have a few multi-tile objects that don’t yet collide properly… my work is never done).

I’ve got several workspace maps that I use to create these blocks of content (desert outpost, city, overworld, etc), and it’s a scalable system that could support a whole ton of layouts. When I say “damn I gotta work on content”, making 10x the tile variations and cities with specific flavors are ways that I could take advantage of the systems I’ve created.

Anyway, this approach isn’t particularly new but it works great for my needs… It deserves a more crunchy article dedicated to it, but it’ll have to go on the to-do list for sometime in the future. For now, hope the peek at the approach was a little interesting.

Auto Fire – Version 0.5.7

Some smaller updates to Auto Fire today… But since a good friend put the game through its paces on his stream, I discovered a number of bugs that I wanted to squash but quick:

Watch TANGLEDEEP PASSED LOTCHECK let’s play games from PlayDungeonmans on www.twitch.tv

Visuals/Fluff

  • All menus use standardized buttons and fonts now
  • Music for the garage
  • Screen darkens behind popups, drawing your attention to the UI when necessary
  • Adjusted the vehicle view in the UI to reduce visual noise.

Bugs

  • All cars now have everything socketable and swappable.  Locking equipment slots with fixed components is a feature, but not something I wanted to lay onto players at this early stage.
  • The equip popup now has a functional scrollbar, so you can use whatever you pick up.
  • Fixed hover information getting stuck if you exited the menu from the inventory screen
  • Fixed boss taunt popup issue

As always, it’s free right now, so go check it out on Itch!

Auto Fire Update: v0.5.6

Some new Auto Fire coming in! Check out what’s new:

New Equipment:

  • Mines: When anybody (including you!) moves adjacent to one, it arms and then explodes 1 second later. Be careful!
  • Oil Slick: Lay down a strip of this, and any cars that hit this immediately lose their grip… perfect for tight quarters like the city.
  • Flaming Oil:  Leave behind a trail of flaming death. Sets whatever enters it on fire.
  • Wide Smokescreen: Create a whole volume of smoke, 3 across

Gameplay:

  • The player can choose one of three cars at start with different weapon and equipment loadouts:
    • The Stallion has 3 Junkthrowers, a smokescreen and an oil slick. Good starter vehicle if you’re just getting familiar with the firing arcs
    • The Panther puts 2 Bolt Rifles, one front and back, as well as a minedropper and smokescreen. Its longer range makes for stronger hit, but you’ll need to pay a bit more attention to your facing.
    • The Cricket is small but has a short-range machinegun on its front. It also can spray flaming oil behind it. Good vehicle if you wish to stay mobile.
  • Things can now be set on fire, for continuing DOT. Right now just hooked to the Flaming Oil, although other weapons including the flamer will definitely be dealing this out.
  • There are now two sizes of cities… There’s a medium-sized 64×64 city, and the old huge 100×100 city (which is much rarer). The appearance of the smaller city in the overworld map is different.
  • The default boss is far less overpowered now. Sorry ’bout that!

User Interface:

  • Automap icons for exits and garages
  • Title screen popup allows player to enter name and choose starting vehicle.
  • Health and armor UI over various enemies only appear when that component is damaged… reduces UI spam overall.
  • Took a unifying pass on my amateur-hour HUD, so that everything has a more consistent look. Thanks to my developer friends for the feedback!
  • The vehicle display is now unified with weapons and armor in a single location.
  • Weapon names now pop up on the vehicle display so you are clear what weapon (and what side) you’re firing.
  • Updated icons for some equipment
  • Status icons are larger and more attention-grabbing.

Audio:

  • New sounds for rockets, flamers, and cannons.
  • Stingers and music now doesn’t start until a map is fully loaded.
  • Ram and explosion sounds are replaced with less terrible ones.
  • Vehicle acceleration (and visual effects) only play when speed is actually gained, rather than when you press forward (so it adjusts to “coasting” once you hit max speed).

Visuals:

  • Rockets have new effects and sound
  • Car body shakes when moving at high speed, camera shakes less.
  • Overworld cars now visually swerve and arc like the cars in tactical maps.
  • The borders on terrain maps look a hair better.

Bugs:

  • Fixed some elements of map generations on height-mapped terrain (although there still is a bug in there).
  • The Homestead and Walled City (both of which were ugly temp maps with very little functionality) cannot be entered. Will be replacing them soon. They are marked as not being able to be entered in the overworld.
  • The Boss site in the city (which announced, temporarily and rather cheesily, “Here Comes the Boss”) no longer can be seen. It was intended to be a marker for system use, not player facing.

I’m starting to enhance the equipment now, and am looking forward to new usable items and updating the inventory for its use. The future is bright!

Pay 2 Win Talisman Returns… with DLC!

The holidays have come around again and for us that means another all-out session of Talisman. To us, this board game is played just once a year because it’s always ridiculous… When you pile on expansions packed with every fantasy trope, it becomes a madcap race around the edge of the board with heroes, werewolves, reapers, frogs, faeries, and god knows what else. Anything can happen in this game, and any roll of a six-sider could send you rocketing into the lead or plummeting headfirst into failtown.

More Pay 2 Win madness was had.

Last year our buddy Jim, who owns a sizeable column of Talisman boxes, devised a new style of play that was both terrible and somehow made the whole thing work: Pay to Win. These homebrew rules allowed us to stake our own cash to correct some of the random chaos that crops up in any Talisman game. It was a memorable night to be certain.

Always one to outdo himself, Jim upped the ante this year with an all-new set of Pay to Win models. However, this meant he had to step back from the table of players since he knew all the game’s secrets… Our host, our DM on this zany adventure!

Talisman: Courage and Coin

The printer ink was running out, and soon you’ll see why.

We started with a sheet of monetary rules that was familiar, but with a few changes:

  • $1: Stop at any point during your move.
  • $1: Add one to your Movement roll.
  • $1: Re-roll any one die that you just rolled.
  • $1: Discard a card you just drew and draw again from the same deck.
  • $1: While in The Dungeon, The Highlands, or the Woodland, return to the entrance of the sideboard you are in.
  • $1: While in The City, travel to any space in The City.

This was just the beginning though… we were then introduced to a series of achievements that would factor into the (as yet unknown) win condition. This was a nice twist to the rules since Talisman’s endgame can break down, with one player strong enough to steamroll anything, but unable pull off a win… until 2AM rolls around and you call it and go home. Since we weren’t aiming for the Crown of Command, we didn’t need the inner circle of the gameboard, where really crazy (and sometimes tedious) stuff can happen.

Some achievements were known, but others were secret until revealed.

The initial Achievements were:

  • Defeat the Lord of Darkness (complete The Dungeon)
  • Defeat the Eagle King (complete The Highlands)
  • Complete a Meeting with Destiny (complete The Woodland)
  • Have 10 or more points of crushed monsters (turn them in instead of using them to raise skills)
  • Have 10 or more gold coins
  • Possess a Talisman
  • End your turn on The Sentinel with a follower. Throw the follower in the river.
  • Turn into a Frog, then return to normal without dying.
  • Have 5 Fate tokens, then have 0 Fate tokens.

The Werewolf and Death were out prowling the board, controlled by Jim when his turn came around. We dutifully went about our early-game business, not quite knowing what was coming… A few bucks were thrown into the pool, but it all took another step forward when one player managed to die… and unlocked a secret achievement (“Be the first player to die”), earning a trophy! It turns out these trophies were worth 7 Victory Stars.

BAM! That was the moment the winning conditions were unveiled. The first person to complete each achievement earned a trophy worth 7 Stars, and some were repeatable, so they could be accomplished by others for 3 Stars. The Time of Reckoning, when all Victory Stars would be tallied, was set to 9:30PM, five hours after the game began.

Death then began to pursue whichever player had the highest number of trophies, and the Werewolf pursued whomever had the lowest number.

I was the first to Complete a Meeting with Destiny and have 10 gold coins, and each of us earned stars from completing sideboards, finding a Talisman and turning in 10 points of crushed monsters. But Talisman: Courage and Coin had more in store for us… things were going to level up.

Packages of Power Update

Now we were able to spend stars for certain actions as well, but more importantly we could unlock Packages of Power. Here were the rules:

  • Purchase and unseal at any point during your turn, including mid-combat.
  • You are limited to ONE per turn.
  • When unsealing a Package of Power, you gain all the contents immediately.
  • Objects “earned” in a Package of Power do not count towards carrying limits.
  • NEW DYING RULES
    • You keep all Objects “earned” from Packages of Power.
    • If killed by a Monster, you may also keep one Weapon and one Armor.
    • Your new Character begins with +1 Strength and Craft for each time you have had a Character die.
    • You must hand one Victory Trophy to another player.
  • NEW MICROTRANSACTIONS
    • 1 Star: Stop at any point during your move.
    • 1 Star: Add one to your Movement roll.
    • $3: Unseal a PACKAGE OF POWER!
    • $10: Delay The Reckoning for 30 minutes.

Out came the 10 Packages of Power, our very own physical loot boxes to waste our money on. Each whale-decorated box held untold treasures. Who would be the first to buy in?

We all dove in really quickly. These lovingly-crafted boxes contained things like fate tokens, gold coins, and even alternate minis, “skins” you could swap out your regular mini for if you didn’t like the fig you were playing. If you got an item from a box, it didn’t count against your item limits either… So naturally I bought 3 boxes. (That’s how they get’cha.)

I was piling up the items, stars and trophies, and I could even play as a wolf or warrior.

The best items I got were some special dice, that I could swap out for any 6-sider roll (whether I was rolling for my own results or taking the role of my neighbor’s enemy!) One was a D10 with nothing but 1’s and 2’s. The other D10 had a single 1 and 2, but two results each for 3, 4, 5, and 6. Oh man.

Fair? No. Awesome? Absolutely.

Some of us bought more boxes, some bought less, but each of us ended up absolutely packed with crazy gear and powerful perks… We marched around the board and pushed our advantages to the fullest. Then two hours before The Reckoning rolled around and we were introduced to even more Talisman DLC:

Talisman: Legends of Balance

That moment brought out four more ridiculous boxes, each embossed with the most luxurious, shiniest whales that the craft store could provide. The cost for accessing the contents of these amazing items? 5 dollars. I don’t think I’ve paid 5 dollars for a microtransaction in my life. Dammit Jim!

There were four of us playing, and four boxes. Naturally we each dove in headfirst and bought our way into this madness… and pure, unadulterated madness was indeed within each cardboard tome. Holy Jesus… (In my case that was quite literal).

Each player that put up the cash for a box got a completely new character, each with its own miniature and utterly broken rules. We kept our stats and items, but these Legends of Balance were the very opposite of balanced… The race to victory was now on, with these four characters on the board:

Dungeonmans

Dungeonmans is the protagonist of Jim’s magnum opus (that you should totally buy right now). He certainly ruled the Dungeon and gear was his bag. I think you can guess what Stremf is.

  • Do not roll to move in The Dungeon. Instead, move up to seven spaces in either direction.
  • When you gain Stremf you gain an equal amount of Life.
  • You may hold any number of Weapon and Armor cards in your inventory.
  • If you roll a Six in a Combat or Psychic Combat where you kill the opponent, the monster or player Critically Dies and you immediately gain one Stremf.

Fairplay.ru Legit Gamer

Created in honor of a hacked Diablo character we encountered online one day. Complete with counterterrorist miniature. This dude was nuts.

  • In The Dungeon, Forest, Highlands or City, you may move Up and Down in addition to Clockwise and Counterclockwise. In the City, you may move through walls.
  • When you purchase an item from any merchant, you may do one of the following: Pay zero gold, if you have enough to purchase the item OR purchase the item as normal, but take every copy of the item from the merchant deck.
  • If you have zero gold, and are forced by a card or effect to lose gold, you gain 2,147,483,647 gold.
  • When spending Fate to re-roll a die, you may roll eight times and take the best result.

The New Ultimate Jesus

This was my character. I almost, almost, alllllmost caught someone with rule 4, but I was just a little too slow to catch him. Everyone was just a bit more careful after that. Then Legit Gamer started chasing me around with his spear… I managed to fend off a few assaults until I was able to exceed 10 Life.

  • You may enter and exit The River using any adjacent space in the Middle and Outer ring, regardless of distance or direction.
    • Note: The river can be entered from any square adjacent to it in one step, then exited at any other square adjacent to the river.
  • If you roll a One for Movement, you may call upon Angels to carry you to any space in the Middle or Outer ring.
  • When you lose Life, you may choose to not lose Life, or to gain one Life instead.
    • Exception: If a Player or Monster uses a Spear of any type to make you lose Life, you lose 10 Life.
    • Effects that Kill Him still work, regardless of lives He has left.
  • If another Player says “Jesus”, you may claim them as your Disciple. They change to Good alignment, and at the end of the game give all praise and glory (Victory Stars) to you. This ends if they change Characters through death or MTX (microtransaction) purchase. If all other Players are Disciples, you win the game.
    • You must claim a disciple within three seconds of the utterance of His holy name.

Shang Tsung

Ohhhh man, a tournament in The City… A massive row of character cards lined up along the side of the table, bristling with special abilities, all controlled by one player…? TEST YOUR MIGHT.

  • Shuffle the deck of Character cards and draw six of them at random. They are now Souls under your control.
  • When any other Character dies, it becomes a Soul under your control.
  • While in The City, you may spend 10 Gold to Host a Tournament. Draw 4 Character cards at random. Choose one to be the Winner, they then die and are a Soul under your control.
  • Shang Tsung has the special abilities of all Souls under his control.

The Time of Reckoning

The clock ticked away and we finally hit the Reckoning. Some of us spent wayyy too many turns trying to become a frog (how the hell did we finish a game of Talisman without anyone ending up as a frog?) Dungeons were delved… Jesus hit the Highlands. Legit Gamer noclipped through walls all over the place. Victory Stars were heaped everywhere.

At the end, it was time to add up our shiny, glittery craft store stars, adding in the 7 Stars we earned per trophy. As with any Euro boardgame there were additional ending criteria that modified the total, although these were secret until the final reckoning. (Jim was keeping track of some of them) Any end condition that was a tie meant nobody got the award:

  • Most Weapons and Armor: 3 Stars
  • Least Trophies: STEAL one Trophy
  • Most Loot Boxes/Books Purchased: 5 Stars
  • Most Life Remaining: 3 Stars
  • Most Cards with “Dragon” Printed On Them: 5 Stars
  • Most Town Bounties Collected: 3 Stars
  • Most PVP Victories: 4 Stars
  • Caused the Most Skipped Turns: -4 Stars (penalty!)
  • Most Encounters with Reaper or Werewolf: 4 Stars
  • Most Cards, All Types: 2 Stars
  • Most Followers Killed: 3 Stars

The hidden trophies that we hadn’t uncovered were unveiled as:

  • Roll two 1’s (snake eyes) on Talisman dice. (This was surprising that it didn’t happen).
  • Try to bribe Jim during the game. (He was sure that would have come up).

In the end, the player who unlocked Dungeonmans was victorious, not because she unlocked the strongest avatar, but because she won a lot of trophies and had an amazing array of equipment at the end.

A great time was had by all, and while last year we had spent 30 dollars between six of us, this year we spent over 70 between four of us. We still haven’t decided what to do with the money (and last year’s take was still in the jar). Did we win or lose? Since we all shared a great evening with comrades it’s impossible to consider this as anything but total victory.

Once again I think we took a game that has its systemic faults but loads of flavor and made it into something better. Adding monetary transactions introduced an additional layer that allowed us to smooth over the weird runs of bad luck that tend to sour people on Talisman games. Adding this DLC stuff allowed Jim to have fun as a host, play a bit of a Dungeon Master to all these goings on, and create a tremendously memorable evening.

Could this model be used for other games whose systems don’t hold up, but have great flavor, items and moments within? I’d like to think so, although Talisman is a bit of a unique animal if only because of its massive amount of published expansions.

My only regret is that so much of this year’s awesomeness isn’t really repeatable… We still have the boxes, the cards and the special dice, but the secret stuff is secret no more. Regardless, whether it’s more from Jim or someone else’s doing, I have no doubt that next year will bring bigger and better things for Talisman, and another spectacular evening will be had.

New Auto Fire Update – version 0.5.5!

Another update to Auto Fire has come down the pike! A lot has happened in the last couple of months, so it’s great to get a build out…  

Thanks to Itch.io for providing the app and the Butler tool so I can more easily post patches in the future.  It’s like Steam for the rest of us. 🙂 Checking out Perforce and my Trello, here are some things that went down:

  • Added an automap so you can see where the hell you’re going.  You can bring it up with the [Q] key.
  • Added a faction system.  Each sector has a generated gang that rules it, and a boss that controls each combat zone.  Defeating the boss clears the zone.
  • Boss arc now includes escalations that spur the bosses to taunt their forces and you with procedurally-generated shouts.
  • The quest system had some work done on it.  Now the player is automatically assigned a quest to take out bosses of places they conquer.
  • You can check out the current quests in the Character menu, by pressing [Tab]
  • Quest completion now has a dialog box and some information on the results.
  • The encounter dialog has a new layout, and it shouldn’t justify its text strangely anymore.
  • The Shotgun soldiers are much less deadly than they were.
  • Unity 2018.3 update, which should improve terrain performance a bit.
  • Some of the road decals had dreadful performance, so exterior spaces run a bit better now as a result.
  • Toying around with a little bit more of an intro on the title screen. 

Visuals:

  • I’m trying an outline shader on all gameplay objects to help them pop from the background.
  • Pulled up and adjusted the lighting to mellow some of the hard shadows that was creating visual noise.  Terrain  is a fair amount brighter now.
  • The garage looks a bit less out of place now.  Still work to consolidate the colors.
  • Difficulty now represented with bullets.
  • Time slows when you die.

Bugs fixed:

  • Armor sides weren’t appearing on the vehicle with the proper direction.
  • Multiple Line of Sight fixes.  You should not be able to be hit through obstructions now.  Fog uncovering on the map, the fire arc grid, and actual combat should all reliable return the same LOS results.
  • The player was able to exploit a bug that allowed them to use any side weapon against enemies in any direction.  Fixed.
  • Removed some visual stray VFX sprites on the scouts.
  • The (correct) car model appears again on the inventory and garage menus.
  • Exploding barrels had stopped harming things.  Fixed now.
  • Vehicle models now have manufacturer logo in info.

Check out version 0.5.5 here:

Download it from Itch.io!