AJ Devlog


For this project I was the programmer. I'm upset I ultimately wasn't able to get it to working properly. While the core functionality of painting, removing said paint, while being able to adjust the score based on those actions does work; the multiplayer is something I ultimately struggled a lot with. Initially I tried to get the multiplayer working through client/listener servers, however,  I encountered a lot of bugs. Those bugs mostly dealt with replication, there was a lot of stuttering movement, the game would spawn two projectiles that would follow different paths, and the were a lot of errors with the projectile in terms of acting on the client before the server which caused issues. Based on some feedback I tried to change the project to be a split-screen game, however I encountered a different bug where the game wouldn't create or possibly recognize a second player controller.

The initial painting mechanic attempted to use render targets as the system for painting, while there was functionality that let a player draw and erase, I was ultimately unable to extend this functionality to the blueprints used to add score in the game, aside from the fact that this method absolutely destroyed all our machines. Since this didn't work I instead change the system to rely on decals, which worked out pleasantly well. In terms of adding score and removing what has been painted it worked out better than I had initially thought.

The game uses tags to differentiate between whether a player is either cleaning or painting. By default the player is set to have the ability to paint, however this can be easily changed by assigning a new tag to the player and calling a function. The player's projectile will update to reflect this change which allows it to affect certain assets based on this change. Whether the projectile paints or removes paint is wholly based on the tag that the player blueprint assigns to the projectile. While the project does add decals to anything that it touches this can be changed in its blueprint, however for the more whimsical nature we wanted for this game, we felt that everything being paintable was more enjoyable, including the player. 

The score a paintable asset gives is determined by the level designer. While this seems a bit arbitrary the reason its designed this way is to ensure the game feels a bit more fair; after all if a painting that is over double the size of another were to give the same amount of points as the smaller of the two it would feel unrewarding. Additionally, instead of points being awarded based on just shooting, we decided the game should add to the score or remove from it based on the target that players should be focusing on. After all, the game is based on protestors who are seeking visibility for their causes. If players were to receive points for just making a mess then the tone of the game would be entirely different, and it wouldn't align with the initial story we sought to create.

Files

Project Painting Panic.zip 773 MB
Sep 19, 2023

Get Painting Museum

Leave a comment

Log in with itch.io to leave a comment.