Ai is literally procedural placement of difficulty according to progression, each level must be design carefully to hit the flow and learning ramp. What you want is the illusion of dynamism.
Yes - except that we don't want the difficulty to be rigidly tied to a specific level (in our game, a specific board/layout). There are easy and difficult boards, but a player should be able to play a wide enough selection of boards regardless of their current skill level, and the adaptive AI is our way to achieve this. There's still incentive to self-improve though: as you genuinely get better, the AI will unlock even more difficult and fancy levels to play.
If you want to dynamically set the difficulty, without creating weird meta effects, make it explicit. You could suggest a difficulty rating after games or simulate a rating system (like in online chess/go/etc.).
Yes - this is something we plan to add - but only after you finished the whole game or at least some big enough chunk of it. That is, we don't want to annoy the player with a constant "hey, you're good, so I'm getting smarter, oops, now I'm getting dumber" display, but when all is said a done, letting the player know their average level of skill in this game (in a non-condescending way) will add value.
But making the opponent a continuously moving target seems like a terrible idea, because the player won't get any positive feedback when they improve (like winning more, getting a higher rating or being able to defeat a previously too difficult opponent)
I understand this logic but I don't think it's really a problem with our game. Let's assume the adaptive AI is perfect in the sense that the overall game score is always even (in reality it's not perfect, of course, and there's a lag, so there's always a chance for human to get ahead or to slip back). But even if it's even, the score isn't everything: you're always aware if you won this round because you really did a spectacular hit, or because you played shitty but the computer also did a stupid move in response. In other words, the AI does not alter the physics, and you see at once how well you hit or miss, so you do have the motivation to improve. It's only that this motivation isn't pounded on you by means of the score. And, as I said elsewhere, at the end of the game you do get your reward: there's an average mark of how well you played, and regardless of the score, clearing a certain play quality threshold will unlock more boards and levels to play.
In other words, there are many "naïve" players (think children) who play mostly for the score, so the AI will let them enjoy the game without the score getting ridiculously bad or good. The AI is a way to sustain some healthy drama around the score, without it becoming a tragedy. But the minority of player who get interested and start playing for the art of it, they will get other reinforcements and motivation, and if they want they can always get to the options and turn the adaptive AI off.
Nice approach. Maybe you could do this for the AI too? Then the simulation for each move could have errors introduced into the direction and force to get around the unfairness of perfect simulation.
Yes, the AI has some wiggle room too, and sometimes should make mistakes. The lower is the calculated "smartness of the AI", the more mistakes it should make, letting even a weak human win.
Might be better to only adjust between games. Otherwise the best strategy might be to play badly early on and wait for the perfect opportunity to suddenly improve and win.
Not with this type of game, I think. We have many short levels, each round lasts only a few minutes. The first person to shot always has an advantage for that round but once you lose your turn, you might not get it until the end of the round if your opponent plays wisely and doesn't make a mistake. And there are many levels to complete (we currently have 20+). So even if you play badly on purpose during the few easiest levels you will still have a long road ahead, and as soon as you start playing better, the AI will catch up and improve its smartness as well.
Besides, it's not in human nature to play on a shallow level Why would you keep playing a game at all if not to master it and outperform your own past scores? So if you want to play to your full potential (as most people would do), the game will match your skills accordingly. But if you are sick, tired or just want to kill time without much effort, then you will be able to do so as well.
Also, along with the short-memory tactical AI that only looks at your last few moves and adjusts the current strength of the response, we are adding a long-memory strategic AI that assesses your long-term gameplay and, once you clear a certain threshold, announces loud and clear that you have ascended. That means prizes, fanfares, unlocking more difficult levels (which are too hard for a beginner player anyway), and yes, displaying some proud label/mark. We do believe that positive reinforcement works; negative, not so much.
Game AI is such a rewarding coding experience. The hardest part is making sure the player can't 'game' the AI. Collisions and AI - I'm excited - please count me in as a tester.
We envision this AI as a kind of a trick to hook casual and beginner players who can immediately enjoy the game without feeling it too hard or too easy, and without burdening them with choices before they are informed and hooked enough to make them. Later, a regular player will be able to adjust their desired level of intelligence in options, and to lock it from any learning drift.
Most games these days have some kind of AI — Artificial Intelligence — for human players to fight against. But just how strong should your game's AI be? Make it too strong and you discourage players; make it too weak and the game will be boringly easy to win.
A popular solution is to put up an easy/medium/hard/insane switch at the start of the game so the players can choose for themselves. But that means burdening the player with a choice they may not be prepared to make. How on Earth am I supposed to know if the "easy" is not too easy for me? Or if the "hard" is even worth trying at my level of skill?
Truth is, people don't want a uniformly smart or uniformly silly opponent. Instead, what they want is an opponent who is engaging. An ideal opponent should match your individual skill: sensing how good you are, it should be playing more or less at your level. Sometimes it would deliberately yield (but never own up, of course!) and sometimes it would challenge you, but overall it would let you progress: not too fast and not too slow — at just the right pace.
In a word, the perfect AI is as smart as needed to keep you interested in the game... for arbitrary values of "you"
That's the approach we're taking with our new shuffleboard-like game, BATTLE OF THE PUCKS. The goal of the game is to shove one of your pieces so as to drive the enemy's pieces off the board without losing any of yours. And for this kind of game, the AI can be pretty straightforward: it simply runs simulations of a number of randomized shots and chooses the shot that scores best. Already at a few dozens simulations per move, the computer player is virtually unassailable for humans.
However, In BotP, the game's AI spends more of its spare cycles on measuring the optimality of your moves than on calculating its own. Again, the way it does this is by running multiple simulations of the human opponent's every move and its randomized variations:
- If the human didn't score, just how inapt their move was — how far was it from the nearest move that would score? Beginner players' moves tend to be farther off the mark than those by seasoned players.
- If the human did score, how difficult it was — how many of the move's randomizations would have resulted in the same or similar score? If you make a move that scores a ton, but any slight deviation from it would have lost badly, then it might be that you were just lucky — but a more reasonable conclusion is that you play this game very well.
Taking a weighted average of several of your last moves, BotP constantly adjusts its depth of foresight and precision of strikes to match the level you play at. As you master the game, your AI opponent becomes stronger too — never too easy but never too formidable.
It also matters how to weaken a too-strong AI. Perfect unfailing precision is boring, but so is perfect randomness. If you simply add a random fuzz to every AI move, it won't be very engaging: that might feel mechanically stupid, not humanly stupid. Instead, we're giving our game's AI a character of its own that regular players will soon learn and relate to: a variable-but-remembered preference for certain openings, certain directions, certain ways to hit. We humans like entities that we can relate to: entities with their own faces, their own quirks, their own weaknesses that we can learn — and exploit!
Finally, even with the best adaptive AI, it is important to avoid monotony. Having determined the optimal level of smartness, sometimes the program would make a move well above or well below that level. Surprises make the life worth living! Sure, that sudden superstrong move of your opponent — erasing half of your army with a single hit — was a bummer... but, hey, wasn't it beautiful! And soon after that, the AI's amazingly inapt misstrike when you least expected it, just when you were prepared to lose the game... but went on to win... ooh.
Yes, I want to Play Again!
Wanna try? BATTLE OF THE PUCKS is now available for pre-release testing! Please comment or PM us if interested.
We face the following problem in our now-in-development game Battle of the Pucks. Its idea came from a Russian board game Chapayev. It's a 2-person (or a person vs. computer) game where the first player has a noticeable advantage. The classic rules call for the first player to continue making moves until he/she makes a mistake, then the turn goes to the second one. In some cases, this results in the first player winning a round (or even a few rounds in a row) without letting the other person to make a move at all. We keep arguing between ourselves on what should be the best approach to equalize the chances:
- Keep the classic rules intact: the first player continues playing until a mistake is made - Limit the total amount of moves a person can make in a row - Always change turns after each move - Always change turns at the beginning of each new level - Make two rounds for each level, to give each player an opportunity to move first
New game currently in development by Lifemakers Studio
What do you get if you crossbreed air hockey, curling, pool, sumo wrestling... and even checkers? That's right: Battle of the Pucks!
An exciting little game with a very simple goal: propel your pucks so they ram your opponent's pucks out of the field! And whenever you score (drive off their puck(s) but don't lose any of your own), you get to push again! GO GO GO!
(Why checkers, you might ask? Because there exists a version of this game where you don't move from field to field but finger-flick your pieces across the board to knock off enemy's army.)
Despite the game's simplicity—and addictiveness!—it takes time to master the skill of propelling your pucks with the exact required force and direction. More than that, it takes strategy and foresight to not only score but create positions that are of maximum difficulty for your opponent. In the Battle of the Pucks, you can play against a human or a computer—and the computer's level of skill ranges from comically hapless to deviously agile!
Levels of the game will vary by the initial position of pieces. The further you go, the more difficult would be to knock off your opponent's pucks without losing your own pieces.
This GIF shows one round of the game, at the simplest of levels, where two computer opponents face off—one a little more capable than the other. The Greens start and get quite far along but critically misfire at some point—and the lone remaining Orange warrior takes revenge and brings its side to victory!
Written in Java in LibGDX, a release for Android is planned for now.
- By popular demand, we completely redesigned the complexity of all Batonic levels, so as to make the game more accessible and engaging for players of all ages and skills. No more of the boring, too-easy-too-long levels — but also no more so-difficult-as-to-be-almost-impassable monstrosities! (Well... maybe except the final Day 10!) Overall, the game of Batonic is much more dynamic and fun in this version.
- A number of visual tweaks make the Batonic creatures even more funny and weird!
Months of hard work developing, designing, and testing are over. Brace for months of even harder work promoting it, supporting real-world Batonic players, and frantically releasing updates!
Please get the game on your phone or tablet, play it, and leave your rating/review on the Google Play page! We would hugely appreciate if you also let us know directly by a PM or email
We've released a trailer of Batonic: fast, frenzied, fun-filled arcade!
This is a game of quick reaction, agility, and physical intuition: you need to be constantly alert and quick to right the tilt. With a simple premise but challenging, addictive, adrenaline-filled gameplay, Batonic tests your agility and precision, your ability to adapt and to make quick decisions in situations of uncertainty.
Winds and gravity change, creatures bounce, stick, explode, your own baton sometimes behaves like a wild horse... luckily, playing Batonic is a learnable skill — the more you play it, the better you get at it. And sometimes, the very threats that bombard you can help you stay afloat!
Based on testers’ feedback, we tweaked gameplay parameters to make it both more challenging and less frustrating at the same time. We adjusted the length and girth (therefore, mass and inertia) of the baton to make it feel more controllable and engaging — though not necessarily easier to handle!
Granted, Batonic is not a kind of game that you can finish on your first try. It is a casual type of game with little rules or story to learn, but it gets really difficult as you progress, and you really need to master and practice the motor skills of controlling the baton in the game's physics. In the end, it's so rewarding to feel completely in control of the capricious thing — easily deflecting or avoiding whatever befalls you!
Our new game in development is called Batonic: it's about balancing a circus baton on the tip of your finger as various creatures fall from the sky trying to strike you out of balance.
We added an opening screen at the very beginning of the game. Testing showed that the universe of the game is sufficiently weird to need some kind of introduction!
Batonic is an exciting new physics simulation game, with a simple premise but challenging and addictive gameplay. It tests your agility and precision, your ability to adapt and to make quick decisions in situations of uncertainty.
The idea is simple: poise a circus baton on the tip of your finger as various creatures fall from the sky trying to strike you out of balance—and score points as those creatures disappear from your magical touch.
Now, before the first public release, we are calling for all to beta-test the game. It's your chance to experience the thrill of Batonic before it becomes a Google Play sensation — and to influence the way the game turns out. We listen to all feedback!
Please contact us for a download link if you have an Android device and can install an APK file. Alternatively, you can test it on desktop with mouse or touchpad control (Java is required).
Here is an introduction to our first game, Batonic.
This is a game of agility, reaction, and physical intuition.
The idea is simple: poise a circus baton on the tip of your finger as various creatures fall from the sky trying to strike you out of balance—and score points as those creatures disappear from your magical touch. Just like in life, you have to be constantly alert and quick to right the tilt—but the very threats that bombard you may at times help you stay afloat.
The game is divided into days (levels) of increasing difficulty, each day featuring a different set of conditions—winds, gravity, types and behaviors of the creatures. Surviving all 10 days (even though you are given 9 spare batons in case you lose the first one) is no mean accomplishment!
Release for Android: Summer 2016 Release for iOS and desktop: Fall 2016
And here is our very first teaser with one level of the game:
We are Lifemakers, a small independent family-operated game studio based in Canada. Our philosophy is simple: the best games are those that are exciting, complex, nuanced, and at times bewildering - just like life!
We were born in Russia, live in Halifax, Canada, and have a long programming/publishing/design history but this is our first attempt to try to code a game. We (a husband and a wife) do everything by ourselves, from the idea to code to art to music to marketing. So we have a lot of new exciting things and stumbling rocks to discover, many questions to answer and a big need for feedback and advices from experienced fellow gamers.