Showing posts with label shuffleboard. Show all posts
Showing posts with label shuffleboard. Show all posts

Monday, 3 November 2014

And It's Goodnight From Me...

It's 3AM and I'm about finished for the night. It's been a long day.

The game should be back on the Play Store and I'm hoping that tomorrow will see fewer dramatic bugs.

I'm still not sure what caused the physics glitches except there appears to be a difference in how screen touches are handled between Android devices. I increased the sensitivity of the throws and that allowed the pucks to fly at the maximum speed. However, this caused a very rare situation to occur on the Dutch Shuffleboard, in which the pucks could bounce back towards the front of the board. I'd written code that caught them and destroyed them (putting them 'out of play', as the rules of Sjoelen dictate). However, the code had a loophole I hadn't spotted and it allowed some of the pucks bounce back, escape the board, and cause all manner of hell with the game logic, which didn't expect pucks to be rattling around the floor.

But this is the nature of computer programming. One small change (the sensitivity control) caused a bigger bug to reveal itself. And this is why I never believe any leader who announces that new computer systems will improve the NHS or any branch of the government. The complexity of computer systems increases enormously the bigger they get.

In addition, I fixed about nine or ten smaller things. Or I hope I fixed them. I'll be playing the game tomorrow and hunting out more bugs. I'm sure there are plenty.

If anybody reads this blog and has an Android device, please give the game a try. Perhaps drop me a line to say it seems stable because now I'm now going to bed and I know I'll be dreaming of pucks flying out of the screen, causing all kinds of havoc as they break noses and glasses, chip tooth enamel, go flying out the window, damaging cars, nuns, and policemen...

Under The Rock

Woke up dreading the coming day. Not that I have anything out of the ordinary to do but the game being live makes me uneasy. I had a restless night, wondering about how it's performed. I always feel like this when something I've poured my heart into is suddenly out there. I just want to crawl under a rock and not look how my work is faring. I guess I'm not really suited to the harsh reality of internet life. I appreciate the good people enormously and it's why I do this. I feel lifted by every generous comment and email.

Good people make me feel better about the world and I know there are plenty of good people out there. I've been very blessed in my time as a blogger to have contact with many bright, encouraging, enthusiastic, and generous souls. I've also had the misfortune of attracting the scorn of a few whose vengeful ugliness really breaks my spirits. There really are too many Welsh Rottweilers in the world.

The outcome of yesterday was my releasing version 1.0.1 of the game. I'm taking an ambitious approach to my version numbers. The first 1 represents major alterations to the game. So, if I add a new big exciting feature, such as a new game mode, that number will increase to 2. The 0 will only increase when I add smaller but key features, such as new menu options or I fix some large bug. Last night I increased the last number, from a 0 to a 1 since I fixed a small but dumb mistake I'd made, positioning an important button in the space occupied by the ads. That last number represents everyday bug fixes. I expect it to get into double figures very quickly, possibly by early afternoon...

The other outcome of day 1 was my first look at my advertising stats. The numbers were higher than expected (due entirely to Tim Worstall, many thanks Tim)  but the income depressingly oval shaped. I don't understand it but I hope it will increase in the coming days and weeks. I never did this to make a fortune. It's more about achieving a goal and raising my competence as a programmer. However, I'd like to think that I'd get money for allowing people to paste their ads on my game. At the moment, if feels like I'm providing a charitable service to billionaires.

I'm honestly at a loss as to what to do next. I had a report from Barman who says that it's too difficult to throw the pucks the length of the board. I now have to go through my code very carefully, trying to figure out if I've overlooked anything that would make the throw power device dependent. The two main things that change from device to device are screen resolution and processor speed. But since neither should affect my calculations, I can't see what it could be. I could increase the power of the throws by any amount I like but I've spent weeks carefully tuning them to a point which doesn't break the game's physics. Time in computer games is not linear but discrete. A moving object doesn't have every moment of its path calculated to an almost atomic scale. Like slowing down a movie, objects leap through space. In a physics simulation, the objects also leap through space (but, theoretically, the gaps are much smaller) and if they're moving quickly, they can simply leap through other objects because the computer never examined the time-frame where the two objects would have collided. Of course, there are ways to calculate these things more carefully but it requires so much more computer power that, in the context of a simple game, it's unworkable.

However, that's my day. Solving a problem which I'm not entirely sure how to solve.

I drew some cartoons last night but they're lousy.

I'm going to hide back under my rock.

Saturday, 1 November 2014

Shuffleboard King: Your New Must-Have Android Game



Well, here it is, the efforts of the past few months which I've given the catchy name: Shuffleboard King.

I'll probably regret this in the morning but I've now released my first game onto the Play Store (hopefully, it should appear here in the coming hours). I might have delayed more but I'm mentally and physically exhausted and this is a somewhat daunting moment and I just wanted out of the way so I can move on and improve the game.

What is Shuffleboard King? Well, it's the version of shuffleboard I wanted to make for myself and for my friends who regularly play shuffleboard on their tablets. The problem with current shuffleboard games is that they feel quite artificial to play. Their physics tend to feel and look quite scripted in that you throw a puck and the damn thing flies out of your hand in a perfect straight line. Even the best shuffleboard game out there feels like the computer is playing the game for you.

So, I thought I'd try to make a shuffleboard game myself and this is the result.
I'd like to say it was 'easy' but, in truth, there are many hundreds of hours of work in this and it's probably thousands of hours if I take into account the many months before I started, just to learn Unity and all the other packages I used in this game's creation.

The part I'm most proud about, I guess, is the version of Sjoelen included in the game.
I nearly released this a few weeks ago but at the last moment, I discovered Dutch Shuffle (called Sjoelen on the continent). I watched a few videos and got hooked on the gameplay. I also realised that I could add my own Sjoelen mode to Shuffleboard Kings using the code I'd already written and, an extra month of work later, I'd expanded my original three game modes to include a fourth.

Those 4 games are the traditional shuffleboard, Sjoelden (Dutch Shuffle), as well as two games of my own creation: Angleboard and Crossboard, which do pretty much as described. On Angleboard, you bounce your shuffle off a rail so you have to play around a 90 degree bend in the table . In Crossboard, you can throw your puck from one of four sides toward a target in the centre of the table.

There's a tournament mode, in which you play opponents who are increasingly difficult to beat. There's also a challenge mode in which you have to beat 50+ challenges, such as throwing the winning puck on a board already dominated by your opponent.

I know there'll be bugs, typos, and probably even the occasional glitch. Some I can't fix but are part of the Unity engine. Others, I'll work hard to eradicate in the coming months, should enough people actually play the game.

I hope you will take a chance and play the game and perhaps, if you do, you could tell me what you think in kind, even patronising, words.