Pycraft Progress Report
Tags: programming, python, gamedev, opensource
Published: 2022-05-29 18:34:59

This is transferred roughly weekly from my Twitter profile (here: https://twitter.com/PycraftDev) to here on Dev! This is for the week 25/04/2022 - 01/05/2022.

* You can find the latest release of Pycraft (v0.9.4) here: https://github.com/PycraftDeveloper/Pycraft

* You can find the latest developer preview of Pycraft (v0.9.5-2) here: https://github.com/PycraftDeveloper/Pycraft/tree/Pycraft-v0.9.5-2

* You can also find the latest documentation for Pycraft https://python-Pycraft.readthedocs.io/en/latest/

## April the 25th – 2022
Today I was limited by time somewhat, so focused my programming time on two main sections, the first was fixing the home screen, and although I was worried at how big the job would be, I've completely finished it and I'm very pleased with how it Works, it reduces the complexity of the project somewhat and actually improves the efficiency of the home screen overall, and it's also flexible to work with new implementations. There are two things I could probably improve upon though in more time, the thread can be out of sync with the main display causing the message to appear to flicker slightly, although this isn't very noticeable, at any frame rates. Additionally adding animations to this would also be another thing to improve upon, to fit the rest of the project as it is a feature of this update too. I've also spent a bit of time today preparing and releasing the new developer preview and adjusting the release slightly, I'll be announcing the update tomorrow when I've checked all is working fine! Now we have released this preview we now face a dilemma, the update was, as far planned, but from here we have to add day and night cycles, but I've not planned how exactly to do that so it'll likely be a bit of experimentation, but I know what the end product should be! Although I'll be now focusing on the medium article and updating other platforms, as well as responding to messages here on twitter and elsewhere now I have a bit more time!
## April the 26th - 2022
Pycraft progress update time, today I didn't write a single line of code, this isn't very common, but I have been spending a great deal of time today on both planning the next medium article, which I've just started writing, and also redesigning the Banner image on my profile, this is in part due to a gradual redesign of all my graphics, I've this completes this process and I've taken lots of design elements from Pycraft itself (and my wife, who is much better at graphical design) and that's what has taken up All my time today, I will be focusing tomorrow on planning my next moves on Pycraft, how I'm going to manage my time to make it more efficient and the update quicker. At the same time though I'll also be working on the medium article because I've got a few days to finish that!
## April the 27th - 2022
Hello there everyone, today I have continued to catch up with the things that I can't do as much when I'm working on a release, this includes updating the folks at Dev, writing this month’s medium article and responding to messages here and elsewhere And I'm glad to say that in getting through this process quickly, I've made some tweaks and improvements to the documentation on @readthedocs, although I still have yet to finish that, it's going to be a large job finishing that write up of the documentation And there is a lot to do there, although I can't take time off from Pycraft development to do that, because it's going to be a project of several months in of its self, and I've got a lot of free time coming later this year And will be working on that then. Today I have worked on the medium article, I'm trying to improve the design of the article as part of the general improvement of the design of Pycraft, this will also transfer to the Dev article too, and also, I'll be updating the folks Over at Dev too. I've got a fair bit still to do there, maybe a week depending on how things go, but then I've got a plan written up on where to take the next update, and we are close to the final release of this section of Pycraft actually!
## April the 28th - 2022
I'll admit today I did have a bit of a more relaxed day on programming progress, so I've only been collecting some resources from the installer for the medium article, and in doing so found some areas to improve, which I'll be working on, as well As making sure the installer is compatible with Pycraft v0.9.4's and there are no issues with Pycraft v0.9.5 that we can predict!

I've also today began working on the map for the project, this is going to take some time to perfect, I'm making it in blender having Done a crash course in it over the past 6 months, I feel confident to start work, and over the coming releases to Pycraft v0.10 you will see many iterations of the map as I improve it!

I’ve also fixed numerous bugs and issues with the game engine Including investigating why screenshots in full screen do not work, as well as fixing issues with the size and position of the game engine window on screen, there will be a level of iteration from now to Pycraft v0.10 and onwards as I make improvements to new features.
## April the 29th - 2022
I have learned a lot about Pycraft today, I've not written a great deal of code today, but I have made changes to a few areas of the project, fixed a great deal of bugs and also learned a lot about what Pycraft looks for when it loads obj Files. It is expecting you to have texture coordinates, and this can be done by pressing "u" in blender and clicking "smart UV project", this takes a texture which you can load to the project, like you would do when you make a 3D object, and makes a record of the Locations of different areas of the texture in relation to vertexes in the 3D model, you can also, using the same menu that appears when you press "u" in edit mode also press "unwrap" although this effect in Pycraft is currently unclear. This will allow you, and me to be able to make and add new obj files to Pycraft, if you do not do this step, chances are the object will not load.

I also today fixed bugs with the installer so now I can continue taking screenshots of the installer for the up-and-coming medium article! And I would also like to say that I will be writing two articles, one for April that will be published late April early May, and one that will be published later in May, but I'll be very busy with work from mid-May onwards as we prepare for a significant release of work-related stuff, so will likely not have time to write that. And I'd like to say that article will be discussing the redesigned game engine, with relation to shadow mapping!
## April the 30th - 2022
It’s been a busy day here, I was at work until noon today, and then spent most of the rest of the day writing the article for April, although it is not currently clear how many days this will overrun, but I'm actually writing two, as well as Improving new features for Pycraft, including the controller, and installer, documentation and working on new resources for Pycraft. So there has been a lot going on, I've already started modelling objects for Pycraft, I've got plans for a mountain and high Terrain, as well as the shape of the island and boat, as well as a variety of trees and foliage and come up with a solution for water, although that will be the next complex feature and will be many revisions before I feel confident there, it will combine A moving 3D object with live ripple adjustments, shadow mapping, transparency and Ray marching to make it look realistic, this will be complex and I've started on the theory section there now! So, I've been really busy and will be releasing the first article in early May And begin writing the second, although that will be released much later, I just won't have the time to write it in late May due to a lot of stuff at work coming up. This update is a bit of a mess and unplanned as I have had to take a break to catch up with other channels and because the shadow mapping has gone so well, I wasn't expecting to be in this position until at least mid-summer, so I'm about a season early. I'm working on improving earlier features as well as focusing on new resources in this update, and a day and night cycle too!
## May the 1st – 2022
Pycraft progress update time, although little progress has been made on the project its self, I've made significant progress on the other areas of the project, today I have worked on new grass textures for Pycraft, and started working on an in game Theme, we had two options, realistic graphics or anime/cartoon graphics, and being stubborn and not knowing much about anime outside of the Zelda franchise I've decided to take graphics from real objects, like for example grass, then blend and modify the image to make It less harsh, I'm going for a simple aesthetic, it's going to be easier to create a good effect, so that's also why the skybox will be changed. Some of these changes are happening at this time as I introduce dynamic skyboxes into the game Although a great deal of my time today was spent on one of two medium articles, I'm about 75% of the way through the first one, the one for late April and early May and then I'll be alternating between programming and writing because I've got to continue making more programming progress, this update will be relatively small in features but focuses on adding in realism! I've also been working on the community and there is more to come there! Monday is a half day at work for me so it'll be another Day focused around Pycraft!

Thanks for reading folks!