This trimester has been fun. It’s been something different from what we have had before. We started off doing some networking. Using Winsock to connect to a server thru broadcasting. Then drawing pixels on a 512x512px canvas by sending packets with information in them. Then we worked on a raytracer which you can read about here. After that came SQL databases. We played around with SQLite and amazon servers. Week 5 was shaders. We learned how to use audio to change the shape of an object with shaders. This was for the Studio 2 designers we collaborated with for their music game. You can read more about that here. When the shaders were done we had to collaborate with our Studio 3 designers to make their New Intelligence app. This was not fun. The app was not a conventional game but more like a training game. All 5 programmers were working on different parts of the “game” to finish it. My tasks were to make the app read XML data from an XML file, make a player profile with bars to show progress, make analytics that saves a bunch of information after each exercise, and I was build master. No one else could build the game for some reason. So everytime someone needed a new build it was up to me to build it and upload. For this Adrian showed me how to use Unity Cloud Build.
And here’s some of our analytics. (Hope no one gets mad about this.)
When the New Intelligence app was finally done (it actually never got done, we just got tired of it and quit) we could continue on our network game that we programmers had been dreaming about for 5 weeks. For this game, we all wanted to use Unity to actually make the game. But the server was being made in C++ by Greg. We managed to get Winsock working in Unity and connect to the server with broadcasting. The server was sending the map, starting info and bullet info, it was receiving move and shoot commands. The map was compressed with RLE and we had to unpack it.
While all of this was going on I was still working on some side projects like my team’s final project Space Crawl. I was also working on a Discord bot that would relocate messaged into special text channels. It can remove messages that contain banned words like 9gag and facebook. It can also send random pictures that it reads from a folder. I managed to get it to connect to a voice channel and play an audio clip. But it was really buggy and only worked 1 out of 5 times. When a user entered a new game it would create a voice channel and role for that game.
Studio 3 was really fun and interesting. I learned a whole lot of new things like networking, shaders, analytics, and some new serialization things. I almost never worked alone on a project except for my own side projects. This made me improve my teamwork and communications ability. I learned that it’s much better to have one person as a communicator with a group. Like an audio lead or animator lead. One person that takes care of a department so it becomes more like a pyramid hierarchy. I work best with a free schedule, just having a deadline. That way I can work when I feel like working instead of being forced to work when I might feel like not working. That way I’m more productive with the same amount of hours worked. I have also learned what information is safe and not safe to store with analytics.
I must say that my favorite part about this trimester was the work I did in VR for Space Crawl and networking. I found networking very interesting and challenging to think about what has to be sent and how often. Trying to shrink every packet by mere bytes, just to make every update smaller. Which with time will save a lot of bandwidth.