Giter Club home page Giter Club logo

aterriblekingdom's Introduction

A Terrible Kingdom (Scripting for Timeline)

Kingdom

Description

This project remixes the A Mighty Kingdom assets into a classic RTS game, to provide 3 examples of Scripting the Timeline in creative ways. The project goes together with the presentation Scripting for Timeline.

The whole demo is about Timeline, but a simple RTS game has been built to provide context to the Timelines. A semi-complex Cinemachine solution is also in the scene, made of two different FreeLook rigs, using GroupTarget and a dummy object to allow moving the camera with keys. The demo also uses Post-Processing Stack v1 and Navigation.

Documentation

Usage instructions

Use the scene Environment. Once in play, an object on the root (DemoHelper) will listen to key presses, to launch the 3 Timelines or gameplay:

  • Pressing 0: reveals some units on the battle field, to briefly demo the gameplay
  • Pressing 1: plays the Flashback Timeline
  • Pressing 2: plays the Storm Timeline (interactive in the central part)
  • Pressing 3: plays the Platoons Timeline

Video

You can watch the talk associated with this project here:
Bridging Gameplay and Storytelling in a RTS game (Unite Austin)

Software Requirements

Required: Unity 2017.2, or later version

Hardware Requirements

Required: Any computer (Win or Mac)

Owner and Responsible Devs

Owners: Ciro Continisio ([email protected])

Major Change Log

  • 02 Dec: Created repository

aterriblekingdom's People

Contributors

ccontinisio avatar ciro-unity avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

aterriblekingdom's Issues

Won't work not in 2018.2, nor in 2018.3

2018.2.14f1

  1. Open the project, see a lot of error related to TextMeshPro conflicts. Remove TextMeshPro in PackageManager, so only one copy of the plugin is left.
  2. Press Play, see a bunch of new NullReferenceException
    NullReferenceException: Object reference not set to an instance of an object
    CameraManager.Start () (at Assets/Scripts/Managers/CameraManager.cs:22)
    NullReferenceException: Object reference not set to an instance of an object
    UIManager.Start () (at Assets/Scripts/Managers/UIManager.cs:17)

2018.3.0b9
Same thing, just with even more package-related errors.

Custom gizmo doesn't trigger update of PlayableAssets (like AICommandClip)

Hey Ciro,

first of all, thanks a lot for the great examples in this repo. They are spot on for what I am building and the code is really easy to follow. Great work!

I am working on custom timeline playables and stumbled over one issue that I couldn't resolve. I coded a playable that is very similar to your example with the AICommands to move characters in the scene providing a target position and relying on Navmesh in play mode. For preview in edit mode, I use a custom editor that shows a gizmo to manipulate a target position, just like your example code:
https://github.com/UnityTechnologies/ATerribleKingdom/blob/master/Assets/Scripts/CustomTimelineTracks/AICommand/Editor/AICommandInspector.cs

Now, if I manipulate the target coordinates in the inspector (not using the gizmo) the clip object automatically updates and I see how the character changes position in the scene view. However, if I use the gizmo in the scene view to change the target, the playable does not update automatically. I see the coordinates change in the inspector but the character in the scene view does not follow. In other words, CreatePlayable in AICommandClip is not called if I use the gizmo with OnSceneGUI. It is only called through OnInspectorGUI()

As I am new to timeline and its graph architecture, I don't really understand how to trigger the graph from OnSceneGUI to reinvoke CreatePlayable. Hope my explanations are not too confusing. Any help is highly appreciated.

Best,
Raphi

project does has warnings with Unity 2018.2

I tried to use this project with Unity 2018.2 & was getting various warnings.

The referenced script on this Behaviour (Game Object 'CharacterName') is missing!

The referenced script on this Behaviour (Game Object 'PressSpacebar') is missing!

The project does play & pressing 0, 1, 2 ,3 plays out actions & changes the camera,

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.