Progress Update #74
Hello World! Welcome to the seventy fourth Dev with Dave Game Progress Update.
It’s the last update of the year, so I have tried to make this a good one. Although you know how life has been here the last few months. No doubt more obstacles will be thrown in the path of progress before the week is out.
Still, lets just put our best foot forward and try to make it to the end of the year!
Let me tell you about what I managed to do this update.,
Jobs for this update
We started the week with two cards left over on the Trello. I dragged the last three cards over from the Things to do list. This left us with the following tasks to do this update.
- Increase difficulty and rewards for the daily missions
- Level difficulty
- Add timers to rewarded ads
- More scratch card skins
- Balance trophies
I doubt I will get all these done. But I will do my best to work through them all though, as it’s the last update of the year.
I also aim to get a new build uploaded and pushed out to the store. This is so the Beta team can spend the festive period playing Flappy-vaders and hunting for bugs. As well as looking into the social media groups I joined the other day.
Increasing difficulty and reward of daily missions
The first thing I looked at this update was where I had left off with the coding last. The Daily missions.
I had been working on a system which increases the difficulty and rewards of a daily mission. Once that mission has been completed a set number of times.
However, as I said in the last update (which you can read >here<), it didn’t work too well. There was a bug which caused the reward to only show the correct value when the app is first run for the day. Every subsequent run would see the reward value drop to the base score.
It took rather longer than I had hoped to fix this issue. All the code seemed to be correct, but I did eventually find the mistake.
It checks to see if the missions have expired during the startup when they are loaded, . If the missions needed to be refreshed, everything was ok. But if the missions hadn’t expired, I found that the code to calculate the reward values was being called BEFORE the mission progress data was loaded in! So all missions were appearing to be at progress level 0!
Once I knew what the issue was it was simple to just move that line of code to later in the function.
New bugs 😢
Adding the code to increase the difficulty and rewards of the daily missions has introduced a new bug. It increases the number of days which the player needs to collect a daily prize, but it doesn’t show this change. The mission simply reads “Collect a daily prize” regardless of how many the player is required to collect.
I have added it as a new card to the Known bugs/issues list. I will attempt to fix it at some point in the future.
Add timers to rewarded ads
There are two places in the game where rewarded ads are used. There is the button in the Daily Prizes screen which rewards you with a new scratch card. Also there is a button in the Coins screen, which rewards you with n coins when a video is watched.
Both these need some kind of timer to be displayed to show the player when an advert is next available.
What I would like, is once the button is pressed, that a period of time must elapse before the player can press it again. So instead of the text reading “Get 10 coins with a video”, once it’s pressed, it will say “Next video available in 00:05:00”.
Once the count down is finished, then the text returns to the previous string.
I am unsure if I will create a new script for handling the rewarded ads and their timers. It might be easier to simply add the code to the existing scripts which handle the daily prizes and coin purchasing.
// This type is to store the data for the rewarded video timers (might consider moving this to the player script if its problematic to implement) Type tRewardedAdsData coinsAdvertTimer as integer prizesAdvertTimer as integer EndType
I added the new variables to the UI script in the end. Their functionality is largely tied in to the User Interface, so it makes sense. (At least currently, lol. I left a note in the code about moving it to the player script if I had too much trouble implementing it)
I defined the variables as integers as previous count downs have been using Unix Time. Although this one will only be for 5 or 10 minutes, so I may switch it over to use the Timer() function which returns a float.
I decided to functionise the code which provided the time in UnixTime. This made it easier to call from serveral places rather than duplicating the code.
I also realised that the two rewarded advert systems must have been written on completely different days because they are not remotely similar. One creates its own self contained loop which handles playing the advert, then checking and awarding the reward. The other is more integrated into the main loop.
Sadly, I ran out of time before completing this card. It’s an hour to go until this blog post and accompanying social media posts are due. So I had probably best call it a day.
Pressing both buttons now stores the delay timer value in the appropriate variable. The text on the button is also changed. The next thing I need to do is to get the text to count down, which should be straight forward.
As you can see from the image above, I also need to work on the actual text for this button. It works fine in the daily prize page however.
New build released for testers
The latest build went live earlier this week. If you would like to be involved in play testing the game then its not too late. Simply drop me a message on social media and I’ll sign you up.
This also led to me doing some of the basic setup for the store page while I was on the site and had a few minutes spare.
I also purchased a domain for the website, and made an attempt to set up a landing page (it’s still a work in progress, but feel free to have a look and see www.flappy-vaders.co.uk)
The key elements are there however, the trailer video, call to action, email capture etc.,
I still need to connect the email form to MailChimp or whichever service I am using for it.
That’s all for now
There is still a week of social media and working on things left to go before I take a break for Christmas, but the next Dev with Dave progress update will be available on the 19th of January, next year.
If I don’t speak to you before, have a happy Christmas and a Brilliant New Years.