Skip to main content

Studio - 3 Week-7

After a large chunk of the networking is working, I decided to start work again into in game mechanics, this was a nightmare at first as the controls did not seem to work, after some further testing I was able to figure out that the movement multiplier set was 0 thus there was not active movement in the game after which I decided to add controller support , this was fairly easy as all I have to do is add more axis in the input panel in unity however everything looks simple at first , but it is not true , as the each input axis requires two to be made , one for keyboard controls the other for joystick controls .

Looking at each axis’s on a wiki page helped me figure out how each input works , this is a very long process as the base unity axis’s need to be changed  , Horizontal & Vertical work with any controller thus it needs to be changed to support the first controller plugged in , then the fire needs to be disabled and for each controller a new Fire must be created in input manager , having only two controller support seems to be a blessing in disguise but I am only one person working on the project thus I have a long way to go ,  after setting up the controller support for two controllers I made according changes to the player controller which seems to be working .

Next, I started work on implementing the power up feature however the technical difficulties in implementing single players into multiplayer are too high which seem to be causing a lot of mental stress, thus is have switched my focus to the multithreading paper.
For the multithreading paper I will be researching a theoretical way to implement asynchronous processing, for which I have found a very helpful material wherein the developer has managed to get asynchronous compute to work.  (Meredith, 2017)

Last week I only moved the registering scripts online thus I took some time to make sure that the login and register were both there and while I was working on that I noticed the login was not working thus I employed the same test as I did before only to find out that the server connection information was wrong which resulted in the script trying to connect to a server which probably did not exist, this was fixed however I needed to add salting to the password  while it was being sent from unity , what I did not know was that unity had 1 drop down menu for that under the text component to make it looked like it was hashed however the password was still not encrypted thus I worked on encrypting the password while registering and then decrypting it while checking the login details , this helped increase the knowledge I had on encryption which I can later use in my secutiy and risk paper .

After the php stuff was complete I got some background audio from my audio collaborator after it was integrated I realized that the UI and the main game were different scenes and that this would later be a problem for the mobile build as changing scenes can take up more resources & time .
Towards the end of the week I finished the multithreading paper , after which I decided to test the progress made so far for the week only to find the register not working , however this was human error on my end as I included too many conditions for the register process to take place , this was my fault entirely . Next I tested out my new controller based controls only to find that they were not working! After debugging for nearly 40 minutes I checked the input manager only to realize that the values were never saved thus I spent the end of the week fixing that but there was a sense of fulfillment once I finished my first paper.






References
Xbox360Controller - Unify Community Wiki. (n.d.). Retrieved March 19, 2018, from http://wiki.unity3d.com/index.php?title=Xbox360Controller

Meredith, R. (2017, July 23). [illustration of process ]. Retrieved from http://www.richardmeredith.net/2017/07/simple-multithreading-for-unity/

Comments

Popular posts from this blog

week 11

For this week I will be learning some basic animation from one of the animators to understand the workflow of other fields and in doing so I have modeled some basic objects such as a table, chair and a few other things visible in the picture below. Another learning outcome I have been working on is around making a API wherein I decided to make a dll file , the reason I chose a dll file was because this is something new to learn and it is a good way to protect my code from being used by unauthorized users . To start off on learning how to make a dll, I started with looking at lots of guides but noticed a lot of them were not using monobehaviour which is something I needed to run my steering behaviors as they use man classes found in monobehaviour such as transforms and vector3. After some assistance from my lecturer I have been able to find the right resources and start working on the dll itself but more things are yet t...

Studio - 3 Week-5

For this week I have been working on setting up by SQL database on localhost but I know nothing about it and I will be researching on how to make a table, learning the right syntax to use in php to communicate with the SQL server. The PHP code necessary for connecting to the SQL database on localhost is pretty simple as all you have to do is declare in the information needed to login into the database such as the server name, database user, database password and the databases name which can be seen in the snippet below. Next, we need to form a connection to the database and check if we are connected before we can go ahead, this is a small optimization. In order to connect to the database, we declare a reference $conn which will equal to mysqli_Connect which is the syntax needed in the PHP script in order to form a connection. The if condition only checks if a connection is made and if it has not then it will kill the connection with a die functio...

week 12

This week we were going to start building our final builds however we found a new bug which was due to poor design from my end as a programmer, last week we fixed the issue with the player partially being the in the wall however this created a new problem wherein the shields did not take and damage and this is really bad as it is a major game mechanic. To fix this issue we tried many solutions , but they all seemed to be having their own flaws & drawbacks thus we eventually decided to keep the rigidbody on both the shields and made the main objects box collider bigger with the shields box colliders being slightly bigger than the main bodies , this made the collision work properly and was a simple enough solution however I feel like this situation could have been avoided if better tech design decision would have been made from the beginning  . Once all the problems were solved I started working in 3ds max again to cr...