2021. Happy new yeah.

While still working on perfecting my Interaction Project, a little framework to easily create interaction between objects based on a easy to manage flag system, I am running into old problems when creating a WebGL Build for the current mini-game.

  1. The script at (localhost:x) embroid1.framework.js.gz was loaded, even if its MIME-Typ („application/gzip“) is no valid MIME-Type for JavaScript
  2. Uncaught SyntaxError: illegal character U+001F embroid1.framework.js.gz:1
  3. Uncaught ReferenceError: unityFramework is not defined onload http://localhost:x/Build/embroid1.loader.js:1

I had this before. I solved it. But it was quite a long time ago last year.

I will find the solution again and then post it here.

Also hopefully more posts about my Interaction Project this month and some cc0 textures / materials I made with the Substance Suite, with which I have fallen in love.

The flag of Interaction – more about the FlagSystem of Interaction Project

To speed up the whole flag system handling, I wrote a custom inspector for the ActionableObject class.

The flags for the Actionable Object can easily be created/deleted in the custom inspector. Also the initial status can be set.

Important is here that by creating/deleting Flags for that ActionableObject they automatically get registered in the Flag System Manager.

With this other ActionableObjects as well every other Object that uses the flag system can access the flags in their Actions.

Every AO or any object that wants to use Flags need a FlagDependency List.

A custom property drawer for it handles everything inside it, so there is no need for any calls to the class which the FlagDependency List is part of.

But how to keep track of all the flags of all objects ? Here comes the „Add Flag Dependency“ Button into play. This button opens a menu that has a list of all available flags for all Objects that have registered flags.

So much for that now.

[InterAction Project] Quest Nodes and FlagDependentObstacles

After hardening the whole system and capseling it into its own project, I can move on with other needed functionalites for it. Ah yes, also I versioned it with git, since my ultimate goal is it, to publish InterAction System on GitHub.

I needed for my adventure game the Quest Nodes and obstacles. The Quest Nodes (you could also call them location triggers) were allready in places, but not using the Flag System.

A QuestNode is a box collider set to a trigger, that, for now plays a sound and shows a message, optionally depending on flag settings.

A FlagDependent Obstacle is basicly the same, but instead of triggern it blocks passage depending on flags.

More about Actionable Objects. ( InterAction Project Series )

Let’s have a look how this little system I am doing enables the player to open and close this power block door, as a simple example.

The orange door you see in the scene view in the picture above has a component called ActionableObject. If the layer „ActionableObjects“ exists, a GameObject with this component on it will be set to this layer. This is needed because the raytracing of the EyeModule only hits on objects in this layer. (If the layer does not exist, errors will be thrown, but there is a convient editor menu where you can create all needed layers without having to add them manually.)

„More about Actionable Objects. ( InterAction Project Series )“ weiterlesen

New : My (hopefully) weekly Unity3D news and thoughts

Dear diary. Hmm. No. But : I try to do a weekly series of, well, news and thoughts about, around and for Unity3D and stuff for it.

Unity 2020.1 is out. A lot of neat new features. Like editing Prefabs inside a level. Heres a two minute video from them showing some of(f) the new things.

Now let me talk a bit about some assets I recommend or at least use them myself or will use them myself.

„New : My (hopefully) weekly Unity3D news and thoughts“ weiterlesen

Rigging or Scripting – that is here the question.

My character is holding a flashlight.

My character is holding a flashlight. But I also have two animations in the animation controller running. One for the idle animation or walking in one layer, and one for the hand actions in another layer, seperated by a layer mask.

„Rigging or Scripting – that is here the question.“ weiterlesen

The ActionableObjects and the User Input

When the player has focused an object that, or, on that an action can be performed, a menu with the action options is shown. (see last entries)

Overview of the flow of user input to actionable objects

In the character controller, which handles the player input, the event functions in the scene controller for these two actions are registered to event delegates in the character controller.

„The ActionableObjects and the User Input“ weiterlesen

Being seen is half the battle – a (very simple) Quest-System for Unity (#3)

This is the system now that makes it possible for the Actionable Object to track if its seen or not seen. Now it can give the Game System (ControllerGameScene in this case) all the actions or informations that the game system needs to present the player choices or possible actions. This will be done via a UI menu or hotkeys.

See the things in the world. A (very basic) Object identifier and interaction system for Unity (work in progress #1)

The player, or anything with the ability to „see“, needs a way to recoginze objects. But only those objects that can be interacted with are actually interesting.

Those objects I call „ActionableObjects„. If the player is looking at one, the ActionableObject gets informed about this. It also gets notified if the viewer (player) stops looking at it.

To accomplish this, a viewer (player) has an Eye Module.

„See the things in the world. A (very basic) Object identifier and interaction system for Unity (work in progress #1)“ weiterlesen

A (very basic) Quest/Environment System for Unity (ongoing) #1

Questnodes

Questnodes are the trigger elements. They work closly together with the Game Scene Controller. After being triggerd once, a Questnode deactivates itself, if multipleTriggering is not set to true. If it is set to true, the Questnode will trigger again if the player leaves and enteres the trigger collider again.

„A (very basic) Quest/Environment System for Unity (ongoing) #1“ weiterlesen