Giter VIP home page Giter VIP logo

captain-cook's Introduction

๐Ÿดโ€โ˜ ๏ธ Captain-Cook ๐Ÿณ

Captain-Cook is a Unity-based game developed as a university project by a team of students. The challenge in this game is to cook the meals required to survive the evil crew of pirates that have captured you. You can also navigate the ship with realistic physics which depend on the wind speed and direction.

๐ŸŒŠ PHYSICS

๐Ÿšข Navigation Physics

The ship is pushed forward by the wind and the player can control its rotation with realistic inertia.

๐Ÿ›ข๏ธ Floating Physics

Objects on the ocean float realistically, like barrels and even the ship with all its parts. The objects follow the waves pattern.

๐Ÿ’จ Particles System

Accurate particles system on different areas of the game like the smoke on the grill or on the attacked ship.

๐Ÿ— Cooking Physics

Food items are categorized in cookable and non-cookable, with the cookable items being cooked/burnt based on the time they are placed on the grill. Some items can also be cut in new forms, that could help the player create the recipes.

๐Ÿƒ Player Movement Physics

The player can move around, jump and interact with different objects. The player can also pick up and drop items.

๐ŸŽจ GRAPHICS

๐ŸŒŠ Waves

Generated waves mesh using Octave technique, with a random speed, height, scale. The mesh is generated at runtime, with user selected parameters for width, height and cell size. The mesh is moving like real waves, using the octaves.

๐ŸŒŠ Ocean Shader

The shader for the ocean incorporates many effects that make the ocean look realistic. It uses two water colors, fresnel effect that makes the water appear different based on perspective, moving normals and foam where objects are floating.

๐Ÿ–๏ธ Sand Shader

The sand shader creates a realistic sand texture for the bottom of the ocean. It uses two colors, which are blended to create a good effect.

๐ŸŒค๏ธ Different Weather and Sky

We have three levels, each with a different sky, the last one also containing a realistic fog effect, which is changing during the level at random times. The sun is creating realistic shadows for all the objects, mainly on HIGH graphics settings.

๐ŸŒŸ Post-Processing Effects

The post-processing improved the general quality of the game, by adding relevant effects like blur, bloom, brightness, saturation which are connected with the weather.

๐Ÿค– ARTIFICIAL INTELLIGENCE

๐ŸŸ Boid Flocking AI

The Boid Flocking AI is used to simulate the group behavior of entities, in our case fish. It follows three base rules:

  1. Separation: The fish avoid each other.
  2. Alignment: The fish try to match the velocity and direction of the fish in their group.
  3. Cohesion: The fish try to match the center of mass of the fish in their group.

๐Ÿดโ€โ˜ ๏ธ Pirate Ships AI

Other pirate ships can be seen navigating towards the target enemy ship. When they reach the destination, sound and particle effects of a battle are played. The ships avoid obstacles, like the main ship or rocks. This is done using the NavMesh component.

๐Ÿง Clients NPCs

Each time a recipe is generated, a client NPC will be spawned behind the last client in the queue. The NPCs are waiting for their recipe to be finished. When they receive their cooked recipe, they enter a new state and exit the queue, walking back. In that moment, the other clients will move forward in the queue. This is done using NavMeshAgent and Animator.

๐Ÿš€ Getting Started

To get started with Captain-Cook:

  1. Clone the repository:
    git clone https://github.com/wood11nho/Captain-Cook.git
  2. Open the project in Unity.
  3. Navigate to the Main Menu scene and hit play to start the game.

๐Ÿ“œ License

This project is licensed under the MIT License.

captain-cook's People

Contributors

ella2222 avatar iulitaalpetri avatar radugheo avatar valentinvale avatar wood11nho avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.