Game Progress Update #54

Game Progress Update #54

Hello World! And welcome to the fifty fourth Dev with Dave Game Progress Update!

I’m not sure how, but I have managed to get an absolute pile of work done on the game these last two weeks. I don’t think I’ve been any less busy than usual with other things. Quite the opposite, as it was my girlfriends birthday last weekend and I did the catering for the party, and made and decorated (although badly, lol) a cake.

I think it’s just being refreshed from the Christmas hols 🙂 Anyway, without further ado, let me tell you what I’ve managed to get done.

About Text Scroller

I started by going back to the About text system which I had left unfinished at the end of the last Progress Update.

I tweaked the text scrolling system a little. Introducing variables to replace hard coded values left over from the original proof of concept code. This also made it easier to change the font size, as I needed to increase the size of the text to make it easier to read.

I found an issue when I started adding to the text, where the start/end of the text message would overlap. I fixed this by replacing another fixed value, with a formula to calculate the size of the text body using the text size and the number of lines. This still needs polish, as I think there is too much white space at the beginning and end.

Trophies

Trophies were next on the list of things to do. I had noticed that the GDD said that the player will receive a coin reward for completing a trophy. This was missed from the original system when it was written.

I decided on having three tiers of rewards for the trophies, depending on how hard the challenge was. Easy trophies reward the player with 10 coins, Harder ones with 50 coins; and the most challenging will give the player 100 coins if they manage to complete it.

I added a new property to the trophies type to store the reward in. As well as a line of code to add the reward to the players coin total.

Currency

During my more AFK moments I have been considering how to structure the coin bundles which will be available for the player to purchase.

The goal was always for the entry level purchase to be £0.99 (about $1.20 us or €1.11), and for the top end coin pack to contain enough coins to unlock/upgrade every pickup and powerup.

I calculated that it takes 1500 coins to upgrade an item to maximum. And there are 8 different items to upgrade, so total upgrades would cost 12,000 coins.

Using this information, I decided on the following details for the coin packs.

  • Coin pack 1 – 500 coins for £0.99
  • Coin pack 2 – 3000 coins for £4.99
  • Coin pack 3 – 7500 coins for £9.99
  • Coin pack 4 – 20000 coins for £19.99

It didn’t take me long to add this data to the coin store page in the game. Then came time to add the in app purchase code.

In App Purchasing

I had already added one product to the developer console for the Ad removal. Adding four more for the coin packs wasn’t any bother at all.

Once I had set up the console side of things, the next task was to add the code to handle actually purchasing.

This wasn’t as straight forward as I’d hoped as the IAP commands have changed in AGK Studio since I last used them.

I think I have a handle on how the IAP stuff works now, but I need to test it on the device before I can do too much more on this.

Problems

I managed to find two new problems this update. The first no doubt was due to me being sleepy/forgetful (Which does happen tbh. I wrongly stated that the scratch cards were complete in the trello.

I actually have a fair bit of work to do to finish these. So I have dragged the card back into the In Progress column.

The second problem was that the quit button in the pause menu doesn’t work. Although hopefully, this will be a cinch to fix.

That’s all for now

And with that, we have reached the end of another progress update. I will be back in two weeks with another. So I’ll see you all then 🙂

Game Progress Update #53

Game Progress Update #53

Hello world! And welcome to the fifty third Dev with Dave Game progress update!

This is the first update since I’ve been back after Christmas. I’m happy to tell you that my girlfriend has made a complete recovery after her stay in hospital.

We had a brilliant Christmas and the best New years party I’ve been to in a long time!

I hope 2023 has had a great start for you guys as well!

Anyway, lets get on with the update..

Tidying Up

It had been a few weeks since I’d last turned the PC on to be honest, so I took a little time first off to refamiliarize myself with what I’d done already and what I was working towards.

It seems I had been quite sloppy when I had written the trophy functions. They were ambiguously named, and didn’t have comments 😕 So fixing this felt like a good place to start.

//********************************************************************************
//	void = FunctionName(value as integer)
//********************************************************************************
//	A few lines to describe the function, and explain its usage
//********************************************************************************

I prefer to comment at the top of the function as shown above. The first line shows the syntax of the function, and the second block of text details what the function does, and how it’s used.

I left the three function names as they were as once I better understood what each function did, the names became a little clearer. Lets hope the comments I’ve added prevent this confusion in future.

Trophies

Next off I did some more work on the Trophies. I’d previously got the first four trophies working. Two for distance travelled, and two for coin collecting.

I worked on the ‘Play x number of games’ trophies next. This simply involved adding a line in the play game button function, which increased a counter. Once this counter reached the target, then the trophy was rewarded.

The next two trophies were the ones relating to unlocking all the powerups and upgrades. Again this was a fairly simple job of adding a line to the button functionality of each purchase upgrade button. This checked to see if the item had been upgraded before, and if not to add one to the counter.

Once the counter reached the required value, then the trophy was awarded.

The last trophy I completed was the one relating to the player coming back to life using the “Second chance” boost. Again, I achieved this by adding a line of code to set a flag indicating the player had resurrected. This flag was checked for and the trophy awarded.

This left one trophy remaining, which is the one relatiing to watching the about text. Which currently doesn’t work so I was unable to do the last one.

More trophies

I did notice a new bug. I reached 25 distance and won a daily mission, but I didn’t get awarded the trophy for the same thing. This leads me to believe that the two systems are measuring distance differently some how.

I also managed to win several trophies at once when I wrote all the functionality but had neglected to set the target values to anything. Lol!

As you can see in the screen shot above, I also have decided on some better names for the trophies rather than “Test trophy 1” etc.

About Text

Since I needed to have this working in order to finish off the trophies section, I decided to get this working next.

I had already programmed a working example of what I wanted and Included it as a separate source in the game. So in theory it was a simple case of calling the function.

In theory…

What actually happened was slightly different. I called the function, and nothing happened! Nothing at all.

I managed to fix it in the end, but it took my remaining couple of hours time yesterday and I was unable to get the final trophy working. I still need to code a bit to signify the end of the text and to award the trophy, but that’s a job for another day.

The problem was caused by a depth issue, the about text was appearing behind the paralax scrolling images. And was resolved by hiding all the assets while the text was being rendered.

I did actually record some videos of the about scroller working badly or with unintended results, but I wanted it to be a surprise, so I won’t reveal too much just yet.

That’s all for now.

That’s all I have time for this week. I’m happy in the knowledge that at least this blog post will go out on time (It’s about an hour away from deadline now as I’m writing this last paragraph or two)

I will be back in a couple of weeks with another update.

Until then, good bye 🙂