Hello, in this Tic Tac Toe video, we're gonna look at some extras and where to go from here, you now have a working Tic Tac Toe game. So congratulations. If you want to check out some of the previous videos, each one, we have some stuff feel free to do that before looking at this video. As usual, the GitHub link is provided. So check that out for the code for now what to do next, you got this awesome Tic Tac Toe game, but there's plenty more features that you can implement to increase your knowledge to improve your knowledge of Tic Tac Toe of game development of programming, and most specifically Coco's to dx. And to help with that, we will provide a link to our cocoa API Guide, which is cocoa sonar, learning Docker, okay, but we're going to provide a link to it.
So let's get started. What can you implement, here's some extra tasks for you to implement, which are really, really cool. First thing is more achievements. If I click on the achievements, three achievements play first piece, win and lose, just add more. So simple as that. You can add more achievements.
You also want you to add progress track achievement achievements, such as how many games you have one, how many PCs you replace, that will be awesome as well. So if you have an achievement where you have to replace 100 PCs or when 100 times you will need to do that condition 100 times before you would get it though it will be progress direct, which is fantastic. Doesn't matter whether you're on iOS or Google Play services or you use some other sort of system, you'll have very similar system so check that out. A number thing is implement more features from the Coco's helper because it provides easy to use features such as ads, which are video ads, banner, ads, all that good stuff. It provides Social Sharing. It also provides obviously game achievements, leaderboards, that sort of stuff.
So implement that. Another thing is leaderboards, incremental leaderboards, my thinking, how can you do that? Every tic tac toe is going to require some originality, we're going to return base, how long did it take for you to you know, where much? And yeah, you could do based on that. So the next thing you could do is audio. We have audio functionality, aka disabling and enabling audio.
This does actually do that. But we've got no audio implemented. And that was by design. I wanted the functionality there to enable and disable it, which is it. Theoretically, it's an easy concept, but to implement it in a way that it works seamlessly like this because we've got like, why the code to do it, the code has how to handle all of the back end for you. We do all of that.
But we're going to implement some sound effects. You could have a music, you could have a Potential sound effects. So if I click on this it, play the sound effect, you can have one when I place a piece. So if I were to news, for example, you could have a sound effect for losing some like Wah, wah, wah. And for winning, well done, obviously, though the voices but you could just have sound effects. So you could have a sound effect.
So this and obviously local sign music so implement that. Like I said, the cost API guide will be provided as a link for for this video. So all of that sort of code for plain audio is provided. And contextual Game Over screens for me more that is, let me just lose. Four, look at the screen. I don't actually know how about one or have I lost how some of the things you want, you've lost maybe a different color.
Maybe this isn't in a different position. So I can actually still see the board updated. So it's just more user friendly. Okay, the next thing is modify the pause menu to have a retry button at the moment, you got a play button, which is just the Resume button, and a home button, which takes you back to the main menu, what you want to retry, you would have to click on the Home button, then click on the Play button. That's double the amount of steps. That's two steps instead of it being one, actually, okay, it's three steps, because technically, you have to click the pause button, but I was sort of ignoring that aspect of it.
But yeah, it's to me three steps instead of two. So also try changing it. So there's a typo here. So it's a pause, now have some different background for it. Remember, for the pause and the game over and a lot of the buttons we implemented different hash defines, yet we reuse a lot of the assets. But because we have different hash defines, we can easily modify them.
So that's all good stuff. Another thing you can do Originally, the game was to play Before AI was actually implemented, bring that back have two modes, one for IoT for two classes, that will be awesome. Maybe you want to play with a friend, maybe you want to play yourself, maybe you do, I don't know. Number one, track the statistics and have a stats page. So maybe from the main menu, you've got to have a button called staff takes you to a page to show you obviously, you would have let's say achievements for you know, a lock in certain shipments based on certain stats certain condition, but you might want you know, total time played, the total amount of pieces you place, the amount of times you've lost the memory of PCs, the enemy has placed, the amount of this the amount of that maybe you might want to the amount of time you're checking achievements, amount of time you've clicked play button, the man the time you've paused, you can track pretty much anything and I love statistics, and everything.
You could have a settings page to do stuff like change the PC in terms of like screen Right image, have more images there, provide your own images, if you will, if you love art, your Creator are creating art, change it. If you're not, that's fine, you can just do something quickly in painter if you have Photoshop, or you could use just some assets of the internet, we will be providing all pre most of our assets. royalty free, very, very soon very easy to search platform have a fee based system that you could swap out in the settings. So instead of like this little yellow and black theme, you could have black and white theme, a red and white theme. You could have like not just color based, you could have a total different theme. You could have like a video game based themes where the pieces you're placing, maybe the head of Mario and the head of Sonic, for example, something like that.
Another thing you could implement into the game is unlockables. So when you won 10 times you could unlock a new theme and that could be linked to the Settings page too. Be able to swap out the unlock both to activate the unlockables also randomize the ion movements. Or I mean by that you might be thinking, well, who randomize, he won't be very good. What I mean, if I click in the middle space, tic tac toe has some general game logic with which we've implemented to create like an optimized tic tac toe. One of the game logics is when it places a piece check if we can place one in the center.
If we can have Nike, the first condition it really should check if can eat when you can't win, then can it block the player from winning? If we can do that? If those two conditions never met, then can it place peace in the center? It couldn't. The next condition is can you place peace in one of the four corners? It could, but the problem with the way we've implemented the at the moment, it just places it in the first place.
Corner. So if I were to have one day, you just go to the next one, the next one. So you can play it a few times and sort of see the way the AI works if you randomize it, so if you placed in one of the corners, randomize, so you might be there. And there's conditions after that, if you can't place in one of the corners or the middle space, and he can't block you or he can't win, then you'll place it into one of the other four spaces again, randomize it, maybe you want to try and even go step further. add an extra layer to the ai ai to predict the player's movements. That would be fantastic.
I love to see what you come up with. Next button pressed state. Remember, with the same the code, let me just flick over to the code, or go to definition dot h. Go to the buttons. We have button pressed states as the same for the pause button as well. But if I click on it, I haven't let go yet. It's technically changed.
The image points just to the same one again, but try changing it. So sometimes people zoom in on it, I mean, like, make it bigger, make it smaller, highlight it and make it sort of like a 3d or click state. So it goes in, invert the colors, that sort of stuff, try implementing that. Even if you again, on greater our work and don't have access to an image, just use one of these images, like just use a circle for it tomorrow, as long as you understand the concepts behind it, when the time comes to you using all work that you've been provided, again, whether that's something you've created, found, or you're collaborating with someone, you'll be all good to go. The next thing, implement difficulty, that's a bit more daring, because again, that links in with you know, the sort of the extra complex layers of AI.
Well, maybe you're comfortable with that. Maybe you came to this course just more to you know, as a refresher, or just to learn about cookies to the expert. Maybe you're a solid AI guy and maybe you're solid c++, maybe you're solid programmer, and you want to tackle difficulty and that will fantastic Troy that you could essentially do difficulty by having this at the hardest difficulty, or this has a medium difficulty, the hardest had the randomness applied. And the lowest difficulty simply just puts one anywhere where it doesn't try and block you. That's a relatively easy way to implement difficulty, that doesn't really take into consideration the way the user is really playing apart from Kenny, you know, when can he lose? Can you block the user from winning, etc, etc.
But apart from that, it's just pretty basic. So check that out. That's all the list of features that you can implement going forward to improve upon your knowledge. But there's a plethora of other features. Just check out the Tic Tac Toe games on the app stores. play with your friends on a piece of paper and you'll just Think of ideas, think of ideas from other games that you've played and implement them.
Again, that is the best way of learning. As usual. If you have any questions, feel free to post them on my education platform, Summer learning.co.uk. If you liked the video, thank you very much, and the GitHub link will be provided. And as usual, thank you for watching, and I'll see you next time.