top of page
Writer's pictureJack Self

IP Law, Unit Placement & Bug Fixing

The best way to familiarise yourself with IP law is to research contemporary case studies directly related to your own practice. Staying abreast of contemporary issues ensures you are not only aware of the laws but also the precedents set in your time. The breadth of issues covered by the mainstream media is vast, ranging from patent trolls to song writers stealing melodies.


EA Sports/FIFA - Image Rights

Figure 1: FIFA 21 - Cover Image

For this spark forum response, I chose to research an IP infringement involving image rights and EA Sport's FIFA. In 2021, professional football player and Swedish international Zlatan Ibrahimović consulted his lawyer about the use of his name and image in video games, notably the FIFA franchise.


Read more about it here:


I chose this infringement because it relates to the field I am interested in (video games), and I have been an avid gamer of the FIFA franchise (figure 1) for just shy of a decade. I have never really thought about the prospect of a video game company needing to obtain a legal agreement for every athlete involved in the sport they choose to represent. This infringement is something to take note of if I were ever involved in a project that could potentially breach image rights.


A Brief Introduction into English Law

This week is all about law. Therefore, the first lecture is a brief introduction to English law by Dr Michael Scott. Scott advocates that it is good to have a basic understanding of the law, especially if you are a creator so that you can protect your creative work. Intellectual property law can include assets or snippets of code. Furthermore, Scott reminds us that English law differs throughout the world. For example, criminal law, which involves crimes and punishment and civil law, which involves disputes among people and organisations, can alter depending on where you are in the world.


Intellectual Property Law

The second lecture continues from Dr Michael Scott's lecture on 'A Brief Introduction to English Law'. However, this time, we took a deep dive into intellectual property law, highlighting copyright infringement and trademarks. Copyright protects works such as literacy, musical, dramatic and artistic. However, it does not protect ideas. Deliberate infringement can be considered piracy.


Although I am not interested in the topic of 'Law' per se, I found Dr Michael Scott's lecture quite eye-opening. It made me realise that as an indie developer, I must be able to protect my work. I guess this topic is yet to cross my mind because I have not been able to make a living from solo development (as of right now!).


The Value of Teamwork

'The Value of Teamwork' will be updated once the activity is complete.

 

Unit Placement (Grid System)

Enemy (Right side)

Figure 2: Enemy Placement Code (Visual Studio)


I started to think about unit placement and restrictions as soon as I began to develop the grid system. I knew the approach would have to be different between the player and enemy units because of how they functioned. So this week, I got to work programming that.


I began by programming enemy unit placement, which was relatively easy because I could determine where they would spawn. Moreover, they can not be moved or controlled by the player. To achieve this, I halved the grid's width by two within the 'randomWidthNo' integer, forcing the enemy units to spawn only on the right side of the grid (figure 2).


Player (Left side)

Figure 3: Player Placement Code (Visual Studio)


Restricting player units to the left side of the grid proved somewhat harder to achieve because the player is able to drag units anywhere they so desire. So to achieve this, I created a list and added every tile within the grid. Like before, I halved the list in two and changed the layer type of one-half of the list of tiles to 'playerLayer'. Therefore, restricting player units to tiles tagged with the layer 'playerLayer' (figure 3).


Testing & Bug Fixing

Testing and bug fixing often occurs when one is developing complex systems such as grids and enemy spawning. For instance, there was a bug when the player placed a unit on an enemy tile (right side). In this scenario, an enemy would attempt to spawn on the same tile occupied by the player's unit, which would throw up an error. This bug led me to create an 'isOccupied' boolean on every tile to prevent multiple units from being placed on a single tile.


Trello (22/07/22)

Figure 4: Trello (22/07/22)


This screengrab (figure 4) was taken on the first day of week nine. By then, I had completed the grid and enemy spawning tasks, so I prepared to get started on implementing the UI (which included multiple screens such as the main menu and settings) and gameplay phases. On the 18th of July, our supervisor suggested it was high time to bring in the assets and make the game look good! Hence operation 'Look Good'!


It was difficult to get work done this week, what with the heatwave, but I am glad to have finished my previous tasks. I also mentioned to the team that I would be away from the 23rd of July to the 10th of August. However, I am planning on bringing my work with me!


Scrum Master Feedback

Figure 5: Scrum Master Feedback (Discord)


I was again scrum master for this week's scrum meeting (the second time doing so). Unfortunately, we were a member short, but we decided it was best to have the meeting anyway. The meeting was just under an hour, and I wanted to prioritise what we achieved during the week, what we planned on doing and general health (although I made this section optional). I felt the meeting flowed well, with everyone having equal time to express what was on their mind (figure 5).


Comments


bottom of page