Dev Log #33
.
As you can probably guess, I have done alot
I have done the following:
• Gave all levels the correct level variables
• Made buttons work correctly when rotated
• Made teleport bullets work as intended
• Made gates and broken tiles allow bullets to pass through when collision is removed
• Created an EXE file of my game for friends to use for playtesting
• Made a stat tracker to use playtest information to improve my game
• Corrected all file directories that had to be moved for PyInstaller to work properly
• Fixed the Easter egg room so it now loads correctly
• Added AI declaration comments and a Google Doc
That is a lots, so let me quick fire explain how i did them
- Painful repetition, change variables, restart level, change tiles, reset level, change ability position, reset. Repeat for level in levels (do this 50 times)
. - This was partially assisted by AI, but from what I understand the buttons’ Tiled rotation number is used to adjust the collision rectangle’s position so it matches the rotated button object in tiled. Collision check works as did previously.
. - Teleport bullets originally tp the player if a bullet fired priviously hit a way after pickup, despite no bullet being fired after pickup and also sometimes caused the player to shoot downwards through tiles.
.
I fixed the wrong bullet tp by using a self.variable rather than a global one as previously, allowing each bullet to know if they were teleport enabled, rather than all bullets being teleport enabled.
.
The tile collision isssue was fixed by by moving the player backwards along the bullet’s path until they are outside the tile, preventing the gun from passing through walls and being pulled down
. - This one will just explain itself (if tile in list, then ignore kill on contact):
for tile in Tiles.tiles:
if self.rect.colliderect(tile["rect"]):
tile_property = tile["property"].get("type")
if tile_property in Tiles.open_gates:
continue
- This used pyinstaller, not something i really code or anything so, I’ll just say i did it sucessfully
. - Stat tracker records bullet count, time and deaths/restarts that a level took on completion. Difficulty of a level can also be decided by a play tester by pressing any number button during a level.
.
This data is level specific, and on key press of /, will create a json file that holds all the data, which can then be sent for me for review of things like bullet max, time complete bonus time, ect.
. - Self explanatory, just changed things like “Image/buttn.png” to “Game/Image/button.png”
. - Restart all function was required in load room function as it contains map load, so the level map that was supposed to load is not displayed instead of the secret easter egg map.
.
9.Should have declared AI useage earlier, but i have been documenting it myself to ensure I don’t become over reliant, by comments and doc will show clearly what is AI assisted and what was made entirly by me
.
That’s all, gotta try and keep my daily streak alive this time to score myself a free plush
