Mind Jabbed


Mind Jab is a computer card game where two minds duel to stay sane. Mind Jab is a both a race to build enough sanity and/or resources to win and a challenge to avoid losing all your sanity.

Project info

Mind Jab takes a lot of inspiration from Arcomage (from the Might and Magic series) but has a few more random elements to it and has all new cards. In particular I wanted more balance between the three resource types and functions and the cards as I felt Arcomage, as brilliant as it is, remains off-balance.

I had one aim for Mind Jab: I was sick of coming across dull corporate micro-transaction infested card games with cutesy pukey family-friendly names and just wanted to play a game with cards called "Oh Fuck Off", "Your Mother", and so on, so I made this game just for that. (There's a lot of nice cards in Mind Jab too, such as "Group Hug" and"Petting the Pet").

Development started in April 2021 and was sporadic for the duration, as I was still grieving over the loss of my mum, and moving house, and resting my ankle.

Timeline milestones (simplified)

  • April 2021 - code, art, AI, UI
  • May - AI tweaks, card balancing
  • May/June - final adjustments

Tech used

  • Unity (C#)
  • Photoshop
  • Illustrator
  • Audacity

What went well

Concepts

I like how I transformed the Arcomage concepts into mind-related ones, and replaced the Wall and Tower with Will and Sanity. It's a little weird at first, the idea of Will shielding Sanity but it makes sense and means Mind Jab keeps the strategic elements of Arcomage as well as the three resource generators and spenders.

I kept to Arcomage's pair-backed approach although I did add one mechanic which was the synergy star: play a card of type where the star floats to get one star. Get ten stars and your Sanity increases by 1 next turn. (Some cards have stars when played too, usually weak and middle cards.) I liked this mechanic as it is subtle in longer games since all those Sanity boosts add up.

Cards

I'm pleased with everything about the cards from the structured elements of having fixed resource-type cards and some random resource-type cards to resisitng to the urge to go full CCG-type bullshit (having random card effects all over the place, cards that can't be discarded etc).

I was worried about having too many free cards and too many cards with Play Again but after testing I found these worked really well since they kept the cards in hand flowing, mostly, and really helped in the early part of the game to avoid stagnation.

I did cheat with the opening hand in so far as three cards will be cheap ones but I'm sure no one is going to grumble.(The AI gets the same. The concept of both players starting equal was one I was keen to keep).

Art

It took a few tinkerings to settle on the bevelled and garish art style, heavy on textures and glows and I'm pleased with this too. I really like the pointy shape of the cards in comparison to the soft nature of everything else and the heavy use of textures. To some extent I was still influenced by There Is No Game but also wanted more colour harmony and distinction between elements.

Using sprites for the card effect details and elsewhere proved the most challenging in terms of legibility but also getting the bloody thing to work in TextMeshPro. Got there eventually and found a way to "format" the strings that work - yes there are perhaps too many tags in my code but it looks great.

For the card art I deliberately avoided the typically twee CCG "art-school" painterly crapola and went for the weird Rorscach pictograms instead. I hoped for generating some every game but as this proved time consuming in Unity (forreasons to do with Texture generation) I had to settle for making them once (batch process in javascript in a browser) and styling them in Photoshop. Easy. I'm amazed how hypnotic the Rorscachs are.

UI

No Unity Canvas for this game. I wanted to see if I could do it and basically yes. TextMeshPro I love you. This also meant I could particle effects anywhere I wanted. TextMeshPro I love you.

<span class=" author-d-iz88z86z86za0dz67zz78zz78zz74zz68zjz80zz71z9iz90z956nz67zz66zeavz67z8h1z77zixz68zdz122zvz89zz69ziz82zz89zz90zz67zz90zz68zz73zq" <that="" aside="" the="" ui="" was="" still="" influenced="" by="" there="" is="" no="" game<="" span="">That aside the UI was still influenced by There Is No Game </span>(like the rest of the art) and I wanted to sneak some controls on screen to. My favourite part of the UI is the wipe effect over cards that can be played this turn - there is probably a right way to do this (involving some messy GPU shader code) but I found a sprite mask really quick and easy and achieves so much.

What went ok

AI

<span class=" author-d-iz88z86z86za0dz67zz78zz78zz74zz68zjz80zz71z9iz90z956nz67zz66zeavz67z8h1z77zixz68zdz122zvz89zz69ziz82zz89zz90zz67zz90zz68zz73zq" <instead="" of="" going="" for="" a<="" span="">Instead of going for a  </span>(Monte-Carlo) tree-based/node-based style of AI I instead thought that a utility AI might be interesting. I didn't want perfect play (I couldn't achieve that since there was far from perfect information), I didn't even want human-style play, but wanted an illusion of human-style play and felt this was the best approach.

Utility AI is a bit of pain of get going, especially when deciding what the inputs should be, on top of the stress of having to read far too many fucking technical morons tell me what a utility AI is instead of actually telling me how to create and modify one!

I ended up creating four AIs (with various styles) as I discovered that having got some values from the graphs in the AI they need to be adjusted. Strictly speaking the AIs are utility AIs but with modified outputs to reflect their personalities, with some token randomisation to avoid predicatability. 

Too further the illusion of human-style play the AIs are chosen at random and occasionally swopped for a dumber AI for a turn or two in game. This has two benefits: the first is that humans make odd choices, more often than they admit; the second is that the output from the utility AI can be all roughly the same (at certain points mid-game) and often the dumber AI makes a helpful choice, playing a card that makes the smarter AI make clearer choices in subsequent hands.

If I wanted to develop the AI further I would add history states of some kind as well as combining the utility AI with a tree-based search of n depth, but I fear the computational time might run too far along with the point at which the probabilities of drawing X card become stupidly small to not matter.

What went badly

Concentrating

During development of Mind Jab I fractured my ankle. Also during development what would have been my mum's 80th birthday occurred, and also my own birthday. Combined with having to de-clutter and box up my stuff to move house, maintaining focus was hard. Mind Jabbed.

Future

Onwards to the next game.

Files

Mind_Jab_MAC_DEMO.zip 52 MB
Aug 27, 2021
Mind_Jab_PC_DEMO.zip 43 MB
Aug 27, 2021

Get Mind Jab

Buy Now£5.00 GBP or more

Leave a comment

Log in with itch.io to leave a comment.