Over the past month I have been working on cross platform integration of the replay feature over Windows, OSX and Linux. I have also been working on improving the server's security and other small details which should improve the user's experience.
This proved to be quite difficult and it took a month more than expected. I only had to make one compromise and that's in order for OSX and Linux to successfully upload a video to any social media site you must install Mono onto your machine. If you do not have Mono installed Rivalry will detect this and give you a link to the download page.
Because this has all taken longer than expected I only recently applied to Facebook to have permission to use their publishing actions. They should get back to me in a few more days, and when that's done (and if they approve it), I should be able to open the beta!
I have also been commissioning and testing the servers. My dad has been helping me with getting the server application working on AWS using Docker. I am not sure if what we have written is entirely scalable under load but hopefully I will find out. :)
While I have been testing social media posting and fixing those issues I have been working towards adding real time connectivity between the app and the servers which will form the basis of network play.
From this experience I have learned a lot about the structure of servers and how components like Nginx, Redis and NodeJS works. I have also learned a lot about the networking between servers and how information is sent across the web.
Currently you may be wondering why the game doesn't look that different from the last update. This is because I have really been focusing on the replay feature for the last 9 months, which was basically writing a video editor and solving the problem of getting videos out of unity and onto social media sites, It is for this reason that I haven't gotten much time to add any game changing new features. However once I have released the replay update I will work on adding new weapons, arenas and online multiplayer.
Over the past month I have been working on cross platform integration of the replay feature over Windows, OSX and Linux. I have also been working on improving the server's security and other small details which should improve the user's experience.
This proved to be quite difficult and it took a month more than expected. I only had to make one compromise and that's in order for OSX and Linux to successfully upload a video to any social media site you must install Mono onto your machine. If you do not have Mono installed Rivalry will detect this and give you a link to the download page.
Because this has all taken longer than expected I only recently applied to Facebook to have permission to use their publishing actions. They should get back to me in a few more days, and when that's done (and if they approve it), I should be able to open the beta!
I have also been commissioning and testing the servers. My dad has been helping me with getting the server application working on AWS using Docker. I am not sure if what we have written is entirely scalable under load but hopefully I will find out. :)
While I have been testing social media posting and fixing those issues I have been working towards adding real time connectivity between the app and the servers which will form the basis of network play.
From this experience I have learned a lot about the structure of servers and how components like Nginx, Redis and NodeJS works. I have also learned a lot about the networking between servers and how information is sent across the web.
Currently you may be wondering why the game doesn't look that different from the last update. This is because I have really been focusing on the replay feature for the last 9 months, which was basically writing a video editor and solving the problem of getting videos out of unity and onto social media sites, It is for this reason that I haven't gotten much time to add any game changing new features. However once I have released the replay update I will work on adding new weapons, arenas and online multiplayer.
On Sunday I managed to get a sever installed. I learnt quite a lot about Docker container managment and AWS in general. This week I will be testing replay and posting to social media features on the new live sever.
On Sunday I managed to get a sever installed. I learnt quite a lot about Docker container managment and AWS in general. This week I will be testing replay and posting to social media features on the new live sever.
Over the past month I have managed to almost finish the replay feature!
I have created a system that can correctly limit the video's specifications to each social media's platform limitations while keeping it (hopefully) seamless for the user to navigate through.
I have also created a UI that enables you to write a message with your video and a pretty HTML page that will open when you have posted a video.
I hope to have the replay feature in a closed beta by next week where I can test it on multiple operating systems. Once that is complete I can stand up a server and officially release it.
In other news I'll be heading to PAX Melbourne early this November to showcase Rivalry. I am hoping to have a few more features and weapons implemented before then and looking forward to meeting some of you there!
Over the past month I have managed to almost finish the replay feature!
I have created a system that can correctly limit the video's specifications to each social media's platform limitations while keeping it (hopefully) seamless for the user to navigate through.
I have also created a UI that enables you to write a message with your video and a pretty HTML page that will open when you have posted a video.
I hope to have the replay feature in a closed beta by next week where I can test it on multiple operating systems. Once that is complete I can stand up a server and officially release it.
In other news I'll be heading to PAX Melbourne early this November to showcase Rivalry. I am hoping to have a few more features and weapons implemented before then and looking forward to meeting some of you there!
Sorry about not posting any status updates over the past 3 weeks. I have currently been working on school assignments and am only now getting back into the habit of working on Rivalry.
This weekend I have done some work on the replay feature and more specifically sharing. Both Twitter, Facebook and YouTube have certain limitations to what videos they can play. This means that if you wanted to upload a 60fps video to Twitter, and Twitter can only support a maximum of 40fps, then the upload will fail and things would fall apart.
So to combat this issue Rivalry will now disable the button that lets you upload a video to that certain social media sites, if that video is above the limitations for upload.
However I am now planning to change the buttons colour instead of disabling the button entirely. This is so the user can then chose to continue clicking the button causing a small text box to appear warning the user that the requirements of the video don't meet the needs for the certain social media site. It will also give the user the chance to cancel the upload or to have the computer automatically fix it for them.
Sorry about not posting any status updates over the past 3 weeks. I have currently been working on school assignments and am only now getting back into the habit of working on Rivalry.
This weekend I have done some work on the replay feature and more specifically sharing. Both Twitter, Facebook and YouTube have certain limitations to what videos they can play. This means that if you wanted to upload a 60fps video to Twitter, and Twitter can only support a maximum of 40fps, then the upload will fail and things would fall apart.
So to combat this issue Rivalry will now disable the button that lets you upload a video to that certain social media sites, if that video is above the limitations for upload.
However I am now planning to change the buttons colour instead of disabling the button entirely. This is so the user can then chose to continue clicking the button causing a small text box to appear warning the user that the requirements of the video don't meet the needs for the certain social media site. It will also give the user the chance to cancel the upload or to have the computer automatically fix it for them.
Spent most of today in "DLL Hell" but my dad managed to get me out of it with some Visual Studio tricks. Eventually I managed to get my sharing code intergrated with the game and was able to play a game, select a section and share it with Twitter, YouTube and Facebook all in one session.
A lot of the time, over the past month, I have been learning how to write client/server code. Luckly using node.js I can write server code in JavaScript which is the language I first learned.
Because Twitter has a lot of restrictions on video size, resolution, duration and frame rate I will have to create a UI that can inform the user and restrict some of the export options. For now I am just detecting when Twitter fails and activating a placeholder dialogue box that warns the user that the upload failed.
Its easy to upload to YouTube because YouTube will accept any video you give it. Facebook is limited to 30 fps, 45 minutes and 720p. Twitter is limited to 40 fps, 30 seconds and effectivly 720p. So when you want to export to all 3 at once I am going to have to find a way to limit duration, filesize, frame rate and resolution to the lowest common denominator.
Facebook's policy is that the user needs to be able to write their own message and description and developers are not alowed to auto-populate any of the text.
This is adding up to a complex UI that is going to take some thought.
Apart from that I have been working on weapon balancing by creating a whole new damage system while still keeping the game fun. Some of the heavy weapons such as the BattleAxe and SledgeHammer are underpowered especialy when you get them up to speed. I kind of feel that the Knife is pretty perfect right now so I am trying to balance the other weapons around it. (Reach vs weight vs damage vs "swiftness")
Spent most of today in "DLL Hell" but my dad managed to get me out of it with some Visual Studio tricks. Eventually I managed to get my sharing code intergrated with the game and was able to play a game, select a section and share it with Twitter, YouTube and Facebook all in one session.
A lot of the time, over the past month, I have been learning how to write client/server code. Luckly using node.js I can write server code in JavaScript which is the language I first learned.
Because Twitter has a lot of restrictions on video size, resolution, duration and frame rate I will have to create a UI that can inform the user and restrict some of the export options. For now I am just detecting when Twitter fails and activating a placeholder dialogue box that warns the user that the upload failed.
Its easy to upload to YouTube because YouTube will accept any video you give it. Facebook is limited to 30 fps, 45 minutes and 720p. Twitter is limited to 40 fps, 30 seconds and effectivly 720p. So when you want to export to all 3 at once I am going to have to find a way to limit duration, filesize, frame rate and resolution to the lowest common denominator.
Facebook's policy is that the user needs to be able to write their own message and description and developers are not alowed to auto-populate any of the text.
This is adding up to a complex UI that is going to take some thought.
Apart from that I have been working on weapon balancing by creating a whole new damage system while still keeping the game fun. Some of the heavy weapons such as the BattleAxe and SledgeHammer are underpowered especialy when you get them up to speed. I kind of feel that the Knife is pretty perfect right now so I am trying to balance the other weapons around it. (Reach vs weight vs damage vs "swiftness")