RoZoSho

RoZoSho was a school project about experiencing work in a triple A development company. Everybody worked in fairly large teams (for school standards) and each team worked on their own level. Halfway through the project people got shuffled around and I ended up working on a completely different level.

The second team I was part of I worked on Camera Detection, Metal Detectors and indications that the player has collected all parts necessary to proceed.

The trailer was made by Ronan Claes.

Challenges:

We made this game in a fairly large team, at least larger than I’ve ever worked in. We also got switched from one level to another about halfway through and had to work with the things the group before us prepared.

Another challenge was working with the provided framework and not being allowed to use tags to prevent conflicts from happening with other teams.


Specifications:

The game was made in Unity and was written in C#.


Other Team Members:

  • Stefan (Team lead, Dev)
  • Pim (Dev Lead)
  • Ronan (Dev)
  • Pim (Artist)
  • Tamara (Artist)
  • Arhan (Artist)
  • Luke (Artist)
private bool PlayerHitByRay()
        {
            Vector3 targetDirection = transform.position - m_Player.transform.position;

            RaycastHit hit;

            Physics.Raycast(transform.position, -targetDirection, out hit, m_Range);

            for (int i = 0; i < m_Pillars.Count; i++)
            {
                if (hit.transform != m_Pillars[i].transform)
                {
                    m_PlayerDetected = true;
                }

                else
                {
                    m_PlayerDetected = false;
                }
            }

            return m_PlayerDetected;
        }

        public override void TriggerStay()
        {
            if(PlayerHitByRay() && m_HasSpawnedEnemies == false)
            {;
                m_EnemySpawner.ActivateAlarm();
                m_HasSpawnedEnemies = true;
                m_Player.GetComponent<FactionType>().m_FactionType = m_FactionForPlayer;
                m_LockedDoor.SetLock(false);
            }
        }
    }
private void Start()
        {
            m_SpawnedEnemies = false;
            m_LPM = FindObjectOfType<LocalPickUpManager>();
        }

        private void CheckForMetal()
        {
            if(m_LPM.GetNumberOfPickUps() >= 1)
            {
                m_EnemySpawner.ActivateAlarm();
            }
        }

        public override void TriggerEnter()
        {
            if(m_SpawnedEnemies == false)
            {
                CheckForMetal();
                m_SpawnedEnemies = true;
            }
            m_Player.GetComponent<FactionType>().m_FactionType = m_FactionForPlayer;

        }