Forum rules - please read before posting.

Version 1.33 - Bugfix galore! (Update: Now 1.33a)

edited May 2014 in Official news
Edit: Many problems have surfaced with the 1.32/1.33 release that I'm sincerely hoping are fixed with 1.33a.
  • Added: Camera: Crossfade Action - use to crossfade from one Camera to another
  • Added: Engine: Check scene now allows both the current and previous scene numbers to be queried
  • Added: Cursor influence settings for GameCameraAnimated
  • Added: Ease In and Ease Out options for Camera: Switch and Object: Transform Actions
  • Added: Ability for GameCameras to use Default PlayerStart as reference for initial position
  • Added: Ability for Triggers to cancel pending Interactions if activated while walking towards a Hotspot
  • Added: "Absolute" setting for Menu and Element Size property - use to set sizes to exact pixels, regardless of resolution
  • Added: "CycleCursors" as an Input axis for "Choose Interaction Then Hotspot" mode
  • Fixed: Errors when compiling to iPhone (clear Options cache!)
  • Fixed: Asset-based ActionLists not always displaying "Check"-type Actions correctly
  • Fixed: Actions deleted in ActionList Editor window sometimes re-appearing when game is tested
  • Fixed: Errors with using Engine: Run ActionList in Asset-based ActionLists
  • Fixed: Characters not even moving in a straight line if no default NavMesh is present
  • Fixed: Menus blocking Hotspot cursor when locked off
  • Fixed: Changes in Menu states being reset after changing scene (properly, this time!)
  • Fixed: Using Menu Button clicks to simulate input axis not working continually
  • Fixed: Interaction buttons no longer working for Choose Interaction Then Hotspot mode
«1

Comments

  • Cool! I think I can make good use of the crossfade and the easing options especially, thanks.

    Nice to hear you got around to working on your own game! Hope you can keep doing so, we'll be curious to see what you make :)

    Unfortunately I did run into some problems during the upgrade. After re-assigning all the settings managers I clicked refresh list on the actions tab to load in the crossfade action. Then I got this error:

    Instance of ActionCameraCrossfade couldn't be created. The the script class needs to derive from ScriptableObject.
    UnityEngine.ScriptableObject:CreateInstance(String)
    AC.ActionsManager:RefreshList() (at Assets/AdventureCreator/Scripts/Managers/ActionsManager.cs:162)
    AC.ActionsManager:ShowGUI() (at Assets/AdventureCreator/Scripts/Managers/ActionsManager.cs:95)
    AdventureCreator:OnGUI() (at Assets/AdventureCreator/Scripts/Managers/Editor/AdventureCreator.cs:157)
    UnityEditor.DockArea:OnGUI()

    and subsequently

    NullReferenceException: Object reference not set to an instance of an object
    AC.ActionsManager.RefreshList () (at Assets/AdventureCreator/Scripts/Managers/ActionsManager.cs:163)
    AC.ActionsManager.ShowGUI () (at Assets/AdventureCreator/Scripts/Managers/ActionsManager.cs:95)
    AdventureCreator.OnGUI () (at Assets/AdventureCreator/Scripts/Managers/Editor/AdventureCreator.cs:157)
    System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) (at /Users/builduser/buildslave/monoAndRuntimeClassLibs/build/mcs/class/corlib/System.Reflection/MonoMethod.cs:222)

    Which left my actions list with only two actions in it: Object:Animate and Camera:Switch. The other actions are still in the scripts/actions folder but refreshing the list does not add them back in :\

  • Can't reproduce, works just fine for me.  The class does derive from ScriptableObject!  Also: "The the script"? Did you copy/paste that directly or edit the console log?  Screenshots are always preferable.

    Anyone else seeing this error?
  • For me action list works fine, the only issue was renaming the globalvariables script then all seems to work well.
    Tx for this very quick update (I cannot test the 1.32 lol).
  • Weird! I just tried upgrading again (I had rolled back to my pre-1.33 backup) and this time no error.

    The only thing I did differently this time was to first fix the error in one of my custom scripts that referred to PlayerMenus (had to change to AC.PlayerMenus; you changed that didn't you?), and then I assigned the managers and hit refresh and the camerashake script showed up fine, no apocalypse.

    Sorry for the heart-attack!

    And yeah I copied the errors directly from the console log, so I guess it did say The the...
  • Something goes wrong all the time whenever there is an upgrade. I had to install and uninstall the package 3 times to get it to work. I Checked GlobalVariables and they were renamed, I changed the code on one script but i am still getting errors and i've lost all managers and I had to re assign them. I suspect there is something escaping you @ChrisIceBox about the upgrades.

    Assets/Scripts/ChangeColor.cs(66,100): error CS1061: Type `GlobalVariables' does not contain a definition for `GetVarValue' and no extension method `GetVarValue' of type `GlobalVariables' could be found (are you missing a using directive or an assembly reference?)

    is coming from this line

    if(GameObject.FindWithTag (Tags.persistentEngine).GetComponent <GlobalVariables>().GetVarValue (2) == "1"){
               
    audio.Play ();
                
           }
  • I can't be responsible for custom code breaking on update, which is why it's very important to back your projects up before each update.  The changing of script names was unfortunate but necessary.  I had wrongly assumed that Unity was able to spot renamed scripts and make the change automatically, and for that I apologise.

    The reading of variables was changed in 1.32, as was stated in the notes.  You can follow this tutorial to update your custom script.
  • edited May 2014
    Thanks man @ChrisIceBox, I am not blaming, I am just pointing out problems. I like this product and want to support it and make the best use of it. This code was suggested by you. I must have not read the update in this on 1.32. I will follow tutorial.

    I love the work you do :)

    This is what i now get
    Assets/Scripts/ChangeColor.cs(66,92): error CS0176: Static member `GlobalVariables.GetIntegerValue(int)' cannot be accessed with an instance reference, qualify it with a type name instead

    using this

    private int idvar=2;

    if(GameObject.FindWithTag (Tags.persistentEngine).GetComponent <GlobalVariables>().GetIntegerValue (idvar) == "1"){
                audio.Play ();
               
            }

  • Crossfading! YES!!! Thanks Chris :)
  • I could be wrong, I'm not sure, but try putting AC. in front of the troublesome declaration, like:

    if(GameObject.FindWithTag (Tags.persistentEngine).GetComponent <AC.GlobalVariables>().GetIntegerValue (idvar) == "1"){

    Outside of AC scripts you need to preface each component (or whatever you want to call it) that has to do with AC in that way, otherwise the compiler doesn't understand what you're talking about ;)
  • edited May 2014
    "PLEASE NOTE:
    The RuntimeVariables script has been renamed to GlobalVariables.  If Unity does not rename this script automatically when updating, please do so manually, and ensure that it is attached to the PersistentEngine prefab"

    Can somebody please explain exactly which files to change, where they are and how to attach it to the PersistantEngine prefab?

    I'm lost :/

    EDIT: I've now done it but the hotspots aren't lighting up anymore. The cursor changes but there's no hotspot wording.
  • edited May 2014
    Version 1.33a is out - please update!

    It should fix the two main problems with the current release, namely total shutdown when in iPhone mode, and the GlobalVariables script name change.

    I've reverted GlobalVariables back to RuntimeVariables, and written a new GlobalVariables script to handle the static variables.  The update should fix things automatically, UNLESS you didn't previously rename the script after updating to 1.32 or 1.33.

    Please bear with me on this one.  I'm very sorry for the trouble this release has caused, and I right now my only concern is that things are working as they should be.

    @TayannaStudios: Please update again.  If your problem with the Hotspot persists, check your Menu Manager is loaded properly - otherwise create a new discussion in the Technical forum.
  • I hate to be the bearer of bad news, but I think this fix made things a bit worse.

    First off, it looks like the RuntimeVariables script was not automatically renamed to RuntimeVariables, so upon importing, we have two GlovalVariable.cs scripts. This causes one of them to not be imported, as Unity sees them as duplicates.

    After fixing that (renaming the RuntimeVariables script to RuntimeVariables.cs) there appear to be several scripts which still refer to the previous GlobalVariables.cs script (now called RuntimeVariables.cs).

    I got errors in the Options.cs (line 37), ActionEndGame.cs (line 62), and AdvGame.cs (line 89) scripts in which I needed to replace the term "GlobalVariables" with "RuntimeVariables" several places. This fixed those problems.

    However upon running the game, I still get the error: PersistentEngine has no GlobalVariables component attached.
    UnityEngine.Debug:LogError(Object)
    KickStarter:Awake() (at Assets/AdventureCreator/Scripts/Game engine/KickStarter.cs:153)

    presumably because now the RuntimeVariables component is attached. This doesn't appear to affect the game, but the error still pops up. 

    Hope this helps!
  • Thanks @skitt2501, but this just makes me more confused.  The scripts you mention are exactly as you've corrected them to be on my end.  I tested and re-tested and have no idea why the change wouldn't be on your end as well.  Did Unity not include those scripts in the import window?

    Try removing the Adventure Creator folder completely and then re-importing.  So long as the data specific to your game is outside of that folder, you should be fine to do so.
  • edited May 2014
    And 1.33b is on the way.  Please ignore 1.33a - lord knows what updating a AND b would do..

    @skitt2501: If you follow the steps I gave to you, you shouldn't need the b) update.  It simply places the GlobalVariables script into the Static folder, to avoid duplication - just move it there after a successful import and you'll be up to date.
  • edited May 2014
    1.33b is out.  It *should* set everything straight, however be aware that if you do get an error when upgrading (and this is a general tip), you can get around this by:

    1) Making sure any custom assets are outside of the AdventureCreator folder
    2) Deleting the entire AdventureCreator folder
    3) Re-importing the updated package

  • Alright, giving that a try! Any reason why I can't just import 1.33b and be done with it?
  • To be honest, the unpredictability of the way Unity handles updates means I don't know what will happen in your case.  Delete and re-import completely, I'd recommend.
  • Done, seems to work well! I'll let you know if any more issues pop up, but in the meantime thank you so much for all your quick work!
  • @hedgefield AC didn't work :(
  • I think I noticed a problem with the camera splitscreen action. It worked fine before (version 1.32), but now one of the cameras is distorted. It's like the scale of the image is squashed to half the screensize. Objects appear wider than they are high.

    I couldn't find a way to avoid or fix this yet. The Camera settings are unchanged compared to the previous version where it worked fine.
    Also it's always the additional camera (not the main camera) that is distorted like this.
Sign In or Register to comment.

Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

Welcome to the official forum for Adventure Creator.