Search Unity

  1. Megacity Metro Demo now available. Download now.
    Dismiss Notice
  2. Unity support for visionOS is now available. Learn more in our blog post.
    Dismiss Notice

Adventure Creator - Make 3D adventure games (DEMO, VIDEO, WEBSITE)

Discussion in 'Assets and Asset Store' started by ChrisIceBox, Oct 9, 2013.

  1. propapandagames

    propapandagames

    Joined:
    Jan 1, 2013
    Posts:
    70
    This looks like a really nice asset and I'm considering a purchase for an ongoing project. Before I commit, I have a question about the use of Sorting Maps in a 2D game.

    From the tutorial I gather that the Sorting Map is strictly vertical, i.e. 1D? In other words, the character's scaling depends only on his position in the screen's y-coordinate?

    If that's the case, is there another built-in way to control a character's scaling? Perhaps vertex colors on the navmesh or simply a grey scale texture?
     
  2. ChrisIceBox

    ChrisIceBox

    Joined:
    Sep 16, 2013
    Posts:
    334
    Work-in-progress on the new node-based system for editing Cutscenes and ActionLists:

    [video=youtube_share;Z84V0lk7PJc]http://youtu.be/Z84V0lk7PJc

    A few features:
    • Actions as draggable nodes
    • "Wire/socket" system for easily connecting Actions
    • Zooming / panning
    • Marquee selection
    • Live feedback: the currently-active Action glows blue when running in-game
    Expect it in the upcoming 1.29 release. Note that it's intended to supplement the current Inspector view, not replace it.

    The Sorting Map affects characters according to it's normal plane: in the tutorial, it scales characters based on y-position because it's "looking down" the Y-axis. You can make it work with different axes by rotating it: in Top-Down mode, you it is intended to work in the Z-axis, for example.

    However, you can override the effects of a Sorting Map with the Character: Render action, which is used to lock any/all of a Character's sorting order, scale, and 2D facing direction.
     
  3. MaaS

    MaaS

    Joined:
    Mar 9, 2010
    Posts:
    51
    Impressive work as always!

    I tried to do something like that.. and although I didn't find too much info on editor node windows I got a simple conecting node err.. thing... :p (zooming code was so weird!)... I abandoned it anyway, and yours is soooo much better.. so

    THANKS! :)
     
  4. Wesley-Sales

    Wesley-Sales

    Joined:
    Aug 31, 2013
    Posts:
    26
    Great Chris, would be cool also a mini-window to better navigation between the actions.

    Like this:

    $0.jpg
     
  5. propapandagames

    propapandagames

    Joined:
    Jan 1, 2013
    Posts:
    70
    Sorry, I should have explained better what I'd like to achieve: I have a scene where the character can walk "into" the 2D background but also climb up a ladder in the foreground. With the Sorting Map setup shown in the tutorial, I assume these events would cause the character to be scaled down the same amount when they reach the same relative height in screen space.

    Is it possible to set up the Sorting Map in such a way that it can scale my character down when walking off into the distance and also scale him down a different amount when climbing up the ladder?
     
  6. ChrisIceBox

    ChrisIceBox

    Joined:
    Sep 16, 2013
    Posts:
    334
    Thanks for elaborating. I'd suggest using the Sorting Map for the "main" scaling (walking off into the distance), and locking the scaling in place when going up the ladder. However, it may be useful to be able to change the "active" SortingMap at runtime, as you can do with the NavMesh. I'll investigate if this is possible.
     
  7. propapandagames

    propapandagames

    Joined:
    Jan 1, 2013
    Posts:
    70
    I see. That sounds like a viable option.

    Failing that, I assume there's nothing stopping me from implementing a custom scaling method to use instead of the built-in Sorting Map?
     
  8. ChrisIceBox

    ChrisIceBox

    Joined:
    Sep 16, 2013
    Posts:
    334
    Of course - the sorting/scaling of Characters is handled by the FollowSortingMap script, which basically reads Sorting Map data and applies it to a Character based on position. A custom script could take different data and apply it to the Character in a similar way.

    Worth noting though: the upcoming 1.29 update, however (out this week) will provide the ability to change the active Sorting Map in-game.
     
  9. skylebones

    skylebones

    Joined:
    Nov 21, 2009
    Posts:
    106
    Oh wow! This is amazing. Excellent work and I can't wait to play some adventure games that come out of this.
     
  10. eagleeyez

    eagleeyez

    Joined:
    Mar 21, 2013
    Posts:
    406
    Please, please demos and tutorials always with audio.
     
  11. ChrisIceBox

    ChrisIceBox

    Joined:
    Sep 16, 2013
    Posts:
    334
    Version 1.29 is out! With it comes a new node-based Cutscene editor, Widescreen support, and many new features and fixes:

    • Added: Node-based ActionList Editor window - Actions can be re-arranged and connected via sockets
    • Added: Widescreen support - set your game's aspect ratio in the Settings Manager
    • Added: "Engine: Change scene setting" Action - replaces "Engine: Change NavMesh", use to change default settings
    • Added: New animation engine: Unity Sprites Complex - provides complete control over sprite-based Mecanim FSMs
    • Added: Option to retain a GameObject's ConstantID number when used as a prefab
    • Added: Option to manually set a GameObject's ConstantID number
    • Added: Music can now play across scenes - follow instructions in the Inspector for Sound objects
    • Added: New animation engine: Unity Sprites Complex - provides complete control over sprite-based Mecanim FSMs
    • Added: Ability to treat carriage returns in Play speech Action as separate speech lines - enable in the Speech Manager
    • Added: Ability to "click to complete" scrolling speech text before manually skipping it - find in the Speech Manager
    • Added: Ability to set per-Character speech text colour - enable in the Dialogue Line label Inspector
    • Added: Ability to disable automatic height-adjustment for Dialogue Line labels set to Manual size
    • Added: Ability to cancel Interaction menus by clicking off them for Choose Hotspot Then Interaction mode
    • Added: Field for optional "Walk" cursor in Cursor Manager
    • Added: Saved game "Time display" setting to Settings Manager - use to display date, date and time, or neither in save lists
    • Added: Ability to filter declared Inventory Items by name
    • Added: Option for FollowSortingMap script to affect child renderers
    • Added: Ability to set a separate directory for custom Actions within Actions Manager
    • Added: Ability to define "Unhandled" interactions for individual Inventory Items
    • Added: Ability to disable need to double-tap to interact with Hotspots when using Touch Screen input
    • Added: Ability to save and load visibility data of child GameObjects with Remember Visibility component
    • Added: Option to disable active Inventory cursor with a left-click - find in Settings Manager
    • Fixed: Actions can now "skip" to ones that precede them in the ActionList
    • Fixed: Changing an Action's type losing it's "After running" settings
    • Fixed: 3D Players with "Tank controls" will animate backwards when moving back (in Mecanim, Move float is reversed)
    • Fixed: Touch-screen devices taking the average position when multiple taps are detected
    • Fixed Player still moving after changing scene due to a Trigger
    • Fixed: Problems with playing lengthy Character walk and run footstep sounds
    • Fixed: Action running a new Cutscene after finishing, if it was set to "Run cutscene" but then changed to something else
    • Fixed: Player not moving if clicking on a Hotspot while in Choose Interaction Then Hotspot's "walk" mode
    • Fixed: Sprite-based Characters frame-flipping even if setting is not currently available
    • Fixed: Automatically-set ConstantID numbers being negative
    • Fixed: Interaction menus not always appearing in correct position
     
  12. vidi

    vidi

    Joined:
    Oct 14, 2012
    Posts:
    175
    WOW ! nice update :cool: Thank you !
     
  13. adventurefan

    adventurefan

    Joined:
    Jan 17, 2014
    Posts:
    230
    Great update! Thanks Chris.
     
  14. eagleeyez

    eagleeyez

    Joined:
    Mar 21, 2013
    Posts:
    406
    Thanks for the update
    Please, please demos and tutorials always with audio.
    I know you are very, very busy giving us this stuff but video tutorials are also very , very important and I would even be prepared to pay for the next major update when a 2.0 Update comes with even more goodies. This is for me most definatly worth investing in.
     
  15. ChrisIceBox

    ChrisIceBox

    Joined:
    Sep 16, 2013
    Posts:
    334
    A new "introduction" video, to replace the older videos on manager creation and setup:




    But more importantly, 1.30 is out! A big one, this time - the biggest features being skippable Cutscenes, animated cameras, Containers, and linking to PlayMaker Variables:

    Upgrade notes:
    • The ability to lock saving games has been moved from the Player: Constrain Action to Engine: Manage systems Action
    • Object: Animate actions - If you use any for BlendShapes on Mecanim objects, they will need to be rebuilt
    • Custom Actions that are not instantaneous must have a new function "Skip" that performs the final result of the Action
    • Skipping cutscenes: Non-Legacy animations are liable to continue playing once a Cutscene has ended - to combat this, end your Cutscene with an appropriate Idle or reset animation

    • Added: ActionLists are now skippable with the "EndCutscene" input (see Upgrade notes above)
    • Added: Categorised Actions - designed to cope better with increasing number of available Action types
    • Added: "Engine: Manage systems" Action - use to disable individual systems, such as Movement and Interaction
    • Added: Container prefab - store Inventory items in the scene, to be retrieved by the Player
    • Added: Container: Add or remove, Container: Check and Container: Open Actions
    • Added: New Menu "appear type" and Inventory Box types for handling Containers
    • Added: "Container" Menu to both Demo Menu Managers
    • Added: "Slot spacing" field for Menu Elements with multiple slots, eg. Inventory lists
    • Added: GameCameraAnimated - Can play an animation, or sync frame based on a Target's position on a Path
    • Added: "Camera: Split screen" Action - use to display two cameras at once, horizontally or vertically
    • Added: Option to vary GameCamera's Field Of View with it's target's distance from camera
    • Added: When using New Game Wizard, Demo Cursor and Menu Managers are copied and renamed, rather than referenced
    • Added: "Character: Switch portrait" Action - courtesy of Guran!
    • Added: Ability to sync a Variable's value with that of a PlayMaker GlobalVariable (PlayMaker required)
    • Added: Float variables
    • Added: Option to type in a formula in Variable: Set Action - also supports tokens e.g. "[var:2]" to use the value of Variable 2
    • Added: Options in Third Person Camera to reset spin and rotation when switching back to it
    • Added: For Point-And-Click or Drag games, Player: Constrain Action consolidates all four movement locks into one
    • Added: Option for multiple Player characters to share the same Inventory
    • Added: GetVariable function to RuntimeVariables.cs, to more easily access a Variable through script
    • Added: Warning messages if a Remember script is attached to a GameObject without the component it expects
    • Added: Ability to force the playing of an animation with Animate actions on Mecanim objects and Characters
    • Added: Various usability improvements to Input text boxes, including "click to select", text cursor and case differentiation
    • Added: Ability to set "use" icon for Inventory Items if cursor is set to change when over them in Context Sensitive-mode
    • Added: Separate "unhandled" ActionList field for Inventory combine interactions
    • Added: Unified GUI between Menu, Inventory and Variables Managers
    • Added: Ability to select Menu Elements for editing by clicking on them in Preview mode
    • Added: "Default Camera" to Scene Manager - references Default PlayerStart's "Camera on start" field when set
    • Added: "Auto-create" buttons to Scene cutscene fields in Scene Manager
    • Added: Speech lines without a Character are considered Narration lines, and can have translations and audio
    • Added: Ability to limit Menus of "Appear Type: When Speech Plays" to Character lines or Narration lines
    • Added: "Maximum distance" field to "Character: NPC follow" Action - NPCs will run to target if distance between is too large
    • Moved: Ability to lock saving games from Player: Constrain Action to Engine: Manage systems Action
    • Fixed: Various issues related to inventory selection in Choose Interaction Then Hotspot mode
    • Fixed: Errors with timed Conversations that include Options that return to the Conversation
    • Fixed: GameCameras disabling themselves even when the MainCamera prefab is not present in the scene
    • Fixed: Sending Kill message to an ActionList not removing it from the ActionList Manager
    • Fixed: Menus with no Transition type set not appearing instantly in the correct position
    • Fixed: GameEngine's system-side ActionList being viewable with ActionList Editor window
    • Fixed: Autosaving being cancelled if a Cutscene was not the last blocking Cutscene to run
    • Fixed: CollisionCubes not blocking "Point and Click" RayCasts when placed on the Default layer
    • Fixed: "Change for inventory?" setting in Cursor Manager not affecting cursor when hovering over Inventory items
    • Fixed: Various issues for Input text boxes, including not being able to use in pausing Menus
    • Fixed: ActionLists not displaying until Actions Manager was viewed when created with New Game Wizard
    • Fixed: Paths Inspector showing controls when attached to a Player or NPC
    • Fixed: Menu previewing not updating instantly when changing Window size or deleting Menu Elements
    • Fixed: Using the Engine: Play sound Action to play music causing the music to restart if the clip was already playing
    • Fixed: Drag and First Person modes no longer working for Touch Screen devices
    • Fixed: Asset-based ActionLists called with "Engine: Run ActionList" Action not being processed by Speech Manager
     
  16. eagleeyez

    eagleeyez

    Joined:
    Mar 21, 2013
    Posts:
    406
    Hi Chris,
    Wow, that’s a big update! Do you even sleep at all man? Are you Human? I am going to try all this now and now we even get to use PM Variables. Have you seen Bahvior Designer? That can use PM too. I was just thinking if combining these 3 assets AC, BD and PM and then see what I get.
    All the best from Chris and keep up your great work and videos. More with Mecanim would be nice.
     
  17. eagleeyez

    eagleeyez

    Joined:
    Mar 21, 2013
    Posts:
    406
    Hi Chris, I just cannot work out why when I make a Character with mecanim it only plays the animation once when I for example, walk, he walks in the direction once and then slides the rest. When I then go to the animation in the inspector it’s all greyed out. It’s most certainly something simple but I am doing something wrong.
     
  18. kindredgamer

    kindredgamer

    Joined:
    Jan 18, 2013
    Posts:
    25
    Hi Chris,

    After the new update, it appears the character:animate interaction no longer updates mecanim parameters. Standard values like speed still work but it just doesn't seem to affect anything else. Is this problem just me or is anyone having the same issue?
     
  19. adventurefan

    adventurefan

    Joined:
    Jan 17, 2014
    Posts:
    230
    Chris you are the most productive person on the face of the planet. :p

    Big thanks for the new variables stuff and the rest of this update.
     
  20. ChrisIceBox

    ChrisIceBox

    Joined:
    Sep 16, 2013
    Posts:
    334
    Seems there are indeed some issues related to animating with Mecanim! Thank you for the alert, this is a critical bug and I will get a fix out very shortly.

    EDIT: 1.30a is out. Only change made is the Mecanim fix - if your game uses Legacy animation it's safe to wait for the next update proper.
     
    Last edited: Apr 23, 2014
  21. eagleeyez

    eagleeyez

    Joined:
    Mar 21, 2013
    Posts:
    406
    Thanks Chris, I will wait, till mec is going again.
     
  22. eagleeyez

    eagleeyez

    Joined:
    Mar 21, 2013
    Posts:
    406
    Chris, the problemes mentioned before with mecanim was my entire fault, but you still have a probleme with speed. I cannot run anymore and please add jump and other stuff, then I could leave C# forever.
     
  23. kindredgamer

    kindredgamer

    Joined:
    Jan 18, 2013
    Posts:
    25
    Yep, this sorted it. Thanks a million Chris!
     
  24. kindredgamer

    kindredgamer

    Joined:
    Jan 18, 2013
    Posts:
    25
    Eagle, My speed/run settings appear to be fine. Have you set up "Run" in your input settings? Is your run animation looped within the animation file? Does your speed change upon hitting the "Run" input key? Are your speed settings correctly set up between both AC and mecanim? (I know it sounds pedantic, but you can miss the finer details). I dont understand why my setup would work and not yours, it may very well be something simple you have overlooked.
     
  25. eagleeyez

    eagleeyez

    Joined:
    Mar 21, 2013
    Posts:
    406
    I have to post this here as on the forum I still get

    • Body is 12177 characters too long.


    Hi There everyone.
    A tip on how to easily create your TTS text-to-speech files for AC.
    I use a program called Text aloud and have a few SAPI5 Voices installed from Ivona and Acapela in many languages. With text aloud I just mark the text I want and click on save to file. This file I save directly into my Unity project, Assets, (my AC folder example. CHRIS), Resources\Speech. This way I have my Audio Text2Speech already available in AC.

    Also this could be interesting and it worked very well. I found this too on the net and it is very simple but could be coded to be integrated into AC with just a few lines of code. Goto the last post on the following link and download the dll file. Put that into your system32 Folder or for windows 64bit put it into SysWow64 folder. Copy the script and create a new c# script from that. Then put it on a empty game object and hear what happens. On the first post you will find a more extensive script were you can call it to speak the text.

    Maybe Chris can do something with this, so that our Dialogues speak too.

    VoiceSpeaker dll for Windows 32 und 64bit. Und C# Unity Script. Goto last post to download and copy the script.
    http://forum.unity3d.com/threads/56038-Text-to-Speech-Dll-for-Win32/page3
     
  26. eagleeyez

    eagleeyez

    Joined:
    Mar 21, 2013
    Posts:
    406
    Thanks, I missed Run in the input settings
     
  27. kindredgamer

    kindredgamer

    Joined:
    Jan 18, 2013
    Posts:
    25
    Good thinking, but you need to tread carefully with text2speech content. I researched this topic because i wanted to voice a glados-esque character without having to pay another voice actor. A lot of the T2S sound samples are copyrighted and charge a hefty tag for commercial use, so keep an eye on the TOS section of whatever site you're using. Be especially on guard if the particular T2S site has no terms of use section.
     
  28. eagleeyez

    eagleeyez

    Joined:
    Mar 21, 2013
    Posts:
    406
    Yes, this is very true. If you did want to include TTS in your game to publish you would have to get in contact with the company first and they would work something out for you. I use TTS as a better reference, as to how the in-game interactions work as just using my voice for female and children gets a bit boring. The TTS voices give it more variety and feel so that when finished real people that will be narrating would also have a better game flow feel as to just seeing a heap of text. This is why its good to have lots of very nice friends that will help you out cheaply with voices.
     
  29. TheCreativeRoach

    TheCreativeRoach

    Joined:
    Dec 29, 2013
    Posts:
    9
    Every update this asset gets more and more awesome; I'm so glad I ended up using Unity and Adventure Creator instead of AGS.

    I've encountered two little problems (not bugs, actually; but they are a little bit annoying); the first one, if you click constantly in the exact same spot the player will start turning and walking like crazy; i think it would be nice (and not very hard) to implement something like:
    "when the player clicks to walk, check the distance between the destination point and the player, if it's lower than "x", the player won't move."

    The second one is about 2D-sprite games, whenever the player moves, it rotates instantly to face the direction he's moving to. For instance, if the player is looking right and you click to move to the left; the player instantly starts walking left, changing his direction abruptly; a nice addition would be the "turn before walking" option (I think AGS has it). So the player smoothly turns before walking.

    That's it! Thanks for your time... and sorry for my english!
     
  30. SterDee

    SterDee

    Joined:
    Apr 1, 2012
    Posts:
    51
    Hey, I'm looking at getting this but I'm wondering if it's possible to create FP 2D games with AC. Is there a workflow for it or is it just a matter of creating an "invisible" character in a 2D workflow?

    I looked through the tutorials/forum but I did not see it mentioned. FP 2D adventures are very popular on mobile so you maybe be leaving out functionality that could be attractive to a large segment of users.

    ETA: will try and join the forum and ask this question.
     
    Last edited: Apr 26, 2014
  31. ChrisIceBox

    ChrisIceBox

    Joined:
    Sep 16, 2013
    Posts:
    334
    I believe what you are asking is already possible. Basically, because it's not possible for all AC games to work at the same scale, there's a Destination accuracy slider in the Settings Manager. This acts as the "distance threshold" you suggest - try adjusting it and see if that helps.

    I was about to say this too is possible - but it seems this has stopped happening in the latest version! It certainly was intended that characters turn in 2D as they do in 3D - I will investigate, thanks for the alert.
     
  32. ChrisIceBox

    ChrisIceBox

    Joined:
    Sep 16, 2013
    Posts:
    334
    Version 1.31 is out!

    While I prefer to have larger updates spaced farther apart, 1.30 introduced a few errors so I thought it best to go on a bug hunt.

    Only a few new features of note, this time:

    Custom options
    This is the "true" reason for adding a Link parameter to Variables - now you can Link a Variable to Options Data. Essentially this means it's value will be stored in the PlayerPrefs along with the standard options, and not in save game files. PlayerPrefs are loaded whenever a game begins, meaning the values are save game-independent - if it's changed in one save game, it'll be felt by all. Additionally, the Slider, Cycle and Toggle menu elements have been upgraded to let you display/change a variable's value (whether it's Option Data or not), making it much easier to make custom menu switches etc.

    Drag and drop inventory items
    Nothing really needed to know about this - just check the box in the Settings Manager (so long as your game's settings support regular item selection, of course) and you'll be able to drag items onto themselves and Hotspots with a single mouse-click. You can also choose to examine an item by dropping it onto itself (Broken Age-style)

    Upgrade notes:
    • Options data may need to be cleared before scenes can be run - please click "Reset options data" in the Settings Manager
    • Added: Ability to link Variables to Options: this causes a Variable's value to be stored in PlayerPrefs, not saved game files
    • Added: Ability to link Variables to Cycle, Toggle and Slider Menu Elements
    • Added: Ability to manually define string array in Cycle Menu Element
    • Added: "Drag and drop" mode for Inventory Items - set in Settings Manger under "Inventory settings"
    • Added: A Player prefab is now no longer required for AC scenes to run
    • Added: New Movement method: None - useful for "storybook" games or those without a Player character
    • Added: Ability to display an icon/texture at the centre of a Hotspot - set in Settings Manager
    • Added: "Auto-create" buttons to remaining "Scene settings" fields in Scene Manager
    • Added: New Game Wizard now creates a Manager Package asset, to bulk-assign Managers in one go
    • Added: Initial Variable values are shown in Variables Manager list
    • Added: Option to set TextMesh labels automatically when using MenuLink script to link to Menu Elements
    • Added: "Pause until finish" with Camera: Switch now waits for an Animated GameCamera to complete its animation
    • Fixed: Object: Transform Action not performing absolute transformations when skipped
    • Fixed: ActionLists not looping properly
    • Fixed: Formulas with Variable tokens only working correctly for the first time
    • Fixed: Menu Labels of type "Dialogue Portrait" not displaying background texture in-game
    • Fixed: Player sprites sometimes having the incorrect sorting order after changing scenes
    • Fixed: Build issues with Windows Phone 8 devices
     
  33. SteveB

    SteveB

    Joined:
    Jan 17, 2009
    Posts:
    1,451
    Your addition of the Link Param for Vars just reminded me to ask you...have you or do you plan to make accessing variables a bit more direct? I recalled this conversation you had with skitt2501 back in Feb. where he asked:

    to which your advice was:

    Not a HUGE thing but then again accessing variables (correct me if I'm wrong) could be a tad more direct no?

    Great update either way man!!

    Cheers

    -Steven
     
  34. kyle_b

    kyle_b

    Joined:
    May 3, 2014
    Posts:
    13
    Hi, I'm new to AC i'd like to ask a couple of questions:
    1. I see there is the nice option to choose between point and click and direct controls but is there a way to let the players choose among keyboard or gamepad ?
    2. is it possible to setup a dialogue timer so that that player only has some seconds to choose between, for example, 4 possible answers? (a telltale walking dead - like feature)

    and... where is better to post questions? here or in the AC main website forum?
     
  35. cl-apps

    cl-apps

    Joined:
    Mar 16, 2013
    Posts:
    128
    I have just tried Menu > Save on iOS and it doesn't seem to save. The save listing appears to be created however when you tap Menu > Load it doesn't load.

    Saving and Loading works fine in the editor however.

    Hope you can help.
     
  36. ChrisIceBox

    ChrisIceBox

    Joined:
    Sep 16, 2013
    Posts:
    334
    By coincidence, I had a similar request recently - 1.32 will introduce some static functions to make things a lot easier, eg:

    RuntimeVariables.GetBooleanValue (int ID);

    and

    RuntimeVariables.SetBooleanValue (int ID, bool value);

    The difference between keyboard and gamepad is really down to what your Input manager looks like (the Unity one, from Edit -> Project Settings -> Input). Beneath the Movement method setting in the Settings Manager, you'll find Input method. Set it to Keyboard Or Controller, and you'll be good to go.

    For sure - the demo game shows this off in the opening cutscene. From the Conversation Inspector, just click "Is timed?" to make it visible for only a set time.

    Either's fine, I always reply to both.

    Adventure Creator automatically switches to XML saving when on iOS, as opposed to Binary when on anything else - including the editor. Could you post the contents of the save file? Also, we'll need to see what, if any, error logs are showing up. You should be able to display them in XCode under Organiser -> Console.
     
  37. SteveB

    SteveB

    Joined:
    Jan 17, 2009
    Posts:
    1,451
    No I know, I outlined that exact exchange you had with Skitt in my last question! :D

    ...but is there a plan to refine it...make it more 'direct access'?

    Thanks Chris!

    -Steven
     
  38. ChrisIceBox

    ChrisIceBox

    Joined:
    Sep 16, 2013
    Posts:
    334
    Well sure - if you use the GetVariable function (explained here) you can store the entire Variable class!
     
  39. SteveB

    SteveB

    Joined:
    Jan 17, 2009
    Posts:
    1,451
    Ah there it is...and Playmaker to boot!

    Perfect, danke Chris!

    -Steven
     
  40. RogueVapor

    RogueVapor

    Joined:
    Jan 27, 2013
    Posts:
    2
    I am trying to figure out how I could trigger Adventure Creator's text input to use without having to click a button. I need to be able to act on the text input character by character, while also having the menu timer running. While I own NGUI I would rather not have to integrate the two just for that functionality.

    I could also get away with using the enter key to act as a submit trigger, but I would rather be able to act on any update in the text input box.

    Any ideas?

    Thanks
     
  41. cl-apps

    cl-apps

    Joined:
    Mar 16, 2013
    Posts:
    128
    I just spotted an error when building for iOS which might explain the saving problem:

    Assets/AdventureCreator/Scripts/Save system/SaveSystem.cs(53,17): warning CS0162: Unreachable code detected
     
  42. ChrisIceBox

    ChrisIceBox

    Joined:
    Sep 16, 2013
    Posts:
    334
    The Timer element is only for timed conversations, but having the ability to link the "enter" keypress in an input box to a button element would be a useful feature. I'll see about including it soon.


    That's only a warning about my sloppy code, unfortunately, and unrelated.
     
  43. cl-apps

    cl-apps

    Joined:
    Mar 16, 2013
    Posts:
    128
    Ok here is the live console log from Xcode while saving (the first couple of lines) then loading that save:

    File written: /var/mobile/Applications/A001D0F0-364E-431D-8F33-2FEBA3BD6171/Documents/Castaway_4.save

    (Filename: /Applications/buildAgent/work/d3d49558e4d408f4/artifacts/iPhonePlayer-armv7Generated/UnityEngineDebug.cpp Line: 53)

    File Read: /var/mobile/Applications/A001D0F0-364E-431D-8F33-2FEBA3BD6171/Documents/Castaway_4.save

    (Filename: /Applications/buildAgent/work/d3d49558e4d408f4/artifacts/iPhonePlayer-armv7Generated/UnityEngineDebug.cpp Line: 53)

    ExecutionEngineException: Attempting to JIT compile method '(wrapper runtime-invoke) object:runtime_invoke_void__this___PlayerData (object,intptr,intptr,intptr)' while running with --aot-only.

    at System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x00000] in <filename unknown>:0
    Rethrow as TargetInvocationException: Exception has been thrown by the target of an invocation.
    at System.Reflection.MonoMethod.Invoke (System.Object obj, BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x00000] in <filename unknown>:0
    at System.Reflection.MethodBase.Invoke (System.Object obj, System.Object[] parameters) [0x00000] in <filename unknown>:0
    at System.Xml.Serialization.XmlSerializationReaderInterpreter.AddListValue (System.Xml.Serialization.TypeData listType, System.Object list, Int32 index, System.Object value, Boolean canCreateInstance) [0x00000] in <filename unknown>:0
    at System.Xml.Serialization.XmlSerializationReaderInterpreter.ReadListElement (System.Xml.Serialization.XmlTypeMapping typeMap, Boolean isNullable, System.Object list, Boolean canCreateInstance) [0x00000] in <filename unknown>:0
    at System.Xml.Serialization.XmlSerializationReaderInterpreter.ReadMembers (System.Xml.Serialization.ClassMap map, System.Object ob, Boolean isValueList, Boolean readByOrder) [0x00000] in <filename unknown>:0
    at System.Xml.Serialization.XmlSerializationReaderInterpreter.ReadClassInstanceMembers (System.Xml.Serialization.XmlTypeMapping typeMap, System.Object ob) [0x00000] in <filename unknown>:0
    at System.Xml.Serialization.XmlSerializationReaderInterpreter.ReadClassInstance (System.Xml.Serialization.XmlTypeMapping typeMap, Boolean isNullable, Boolean checkType) [0x00000] in <filename unknown>:0
    at System.Xml.Serialization.XmlSerializationReaderInterpreter.ReadObject (System.Xml.Serialization.XmlTypeMapping typeMap, Boolean isNullable, Boolean checkType) [0x00000] in <filename unknown>:0
    at System.Xml.Serialization.XmlSerializationReaderInterpreter.ReadRoot (System.Xml.Serialization.XmlTypeMapping rootMap) [0x00000] in <filename unknown>:0
    at System.Xml.Serialization.XmlSerializationReaderInterpreter.ReadRoot () [0x00000] in <filename unknown>:0
    at System.Xml.Serialization.XmlSerializer.Deserialize (System.Xml.Serialization.XmlSerializationReader reader) [0x00000] in <filename unknown>:0

    (Filename: Line: -1)

    Is the <filename unknown> bit normal? Either way saving and loading doesn't load back where I left off. I've checked I have constantID's on the cameras. Everything works in the editor but not on iOS.
     
  44. ChrisIceBox

    ChrisIceBox

    Joined:
    Sep 16, 2013
    Posts:
    334
    1.32 is out!

    Unity 2D mode
    Available as an alternative (and now the default) to the Top Down / World Space etc modes for 2D, this allows for a workflow more in line with what you expect a 2D adventure engine to be like in Unity.* The 2D system has always kind of zig-zagged in terms of "best workflow", but this way makes sense enough to justify another go-over.* Previous modes are still supported, but the 2D demo has been updated to this mode, which works with 2D physics/raycasting, and a new "Polygon Collider" pathfinding method, in which you define the NavMesh by manipulating a Polygon Collider 2D directly in the scene view.* Much easier than laying down Segments!

    Local Variables
    Listed in the Variables Manager underneath the Globals, these Variables only exist in the scene they're declared in, making them more suitable for logic that has no effect on the rest of the game (a door being opened, for example).* Should make it much easier to manage larger games, this way.

    Crafting system
    A little simplistic to begin with, but the basics are there: you define a "Recipe" in the Inventory Manager, which takes a bunch of Inventory ingredients to make a new one.* You need to make use of the new Crafting menu element, which is demonstrated in the Demo_MenuManager's Crafting Menu.* Just copy it to your own Menu Manager and turn it on when appropriate.* Recipes can also be set to require a specific "pattern" to work, Minecraft-style.

    And a whole much more besides:

    Upgrade notes:
    • The RuntimeVariables script has been renamed to GlobalVariables
    • Added: Local Variables - use Variables Manager to define scene-based Variables, compatible with Variable Actions
    • Added: True "Unity 2D" mode for 2D games - use to work entirely in the Unity 2D view; 2D Demo updated to show workflow
    • Added: Hotspot2D, Trigger2D, CollisionCube2D, NavMesh2D prefabs for Unity 2D-based games
    • Added: Polygon Collider pathfinding for "Unity 2D" games - construct a navigation "mesh" directly in the Editor
    • Added: Crafting system - combine multiple inventory items together make new ones
    • Added: Crafting to Inventory Manager - use to declare complex inventory combinations
    • Added: Crafting menu element - either use to place down ingredients, or display the output
    • Added: Inventory: Crafting Action - use to clear crafting ingredients or create the appropriate item
    • Added: Blue borders now appear in Menus when previewing Elements with multiple slots
    • Added: Ability to set initial quantity of Items that appear in Inventory on start
    • Added: Static functions for setting/getting variables
    • Added: "Turn before walking" option to Characters - found in Character Inspector's Movement settings
    • Added: Characters no longer need Rigidbodys or Colliders if collision, gravity or Triggers aren't involved - useful for mobile
    • Added: Keyboard pop-up when using Input boxes on iOS and Android devices
    • Added: Variable: Check Action now supports comparison between Variables
    • Added: Setting a string with the Variable: Set Action now supports replacement tokens
    • Added: Ability to link Enter key presses on an Input element to a Button element on the same Menu
    • Added: On and Off textures to Toggle menu elements
    • Fixed: Active Inventory item sometimes being incorrectly being de-selected
    • Fixed: Conversations ending prematurely if an unrelated ActionList ends as well
    • Fixed: Menus sometimes "flickering" before appearing for the first time
    • Fixed: Save game and scene-switching issues with Player-less games
    • Fixed: Changes in Menu states being reset after changing scene
    • Fixed: Hotspot labels not appearing over Container items
    • Fixed: Menus sometimes resizing inappropriately when adding new Elements
    • Fixed: 2D GameCameras not working with Orthographic perspective
    • Fixed: Character: Animate action's "Add directional suffix?" not working for Mecanim
    • Fixed: Issues with building to Windows Phone 8
    • Fixed: Active cursor effects playing if hovering an Inventory item of a Hotspot with a valid but disabled Interaction
    • Fixed: Display issues with Input box Menu elements
    • Fixed: Sound effects continuing to play after a saved game in the same scene was loaded
    • Fixed: Player being able to "double-click to run" even when "Always Walk" was set in Player: Constrain Action
    • Fixed: ActionList resetting if Actions were pasted into it and no further changes were made
    • Fixed: Text appearing beneath Button background textures
    • Fixed: Speech being skipped if the mouse button was held down continuously from activating the ActionList
    • Fixed: Player not always re-appearing after game was restarted


    I haven't seen any of those errors before. I do know that iOS works for some, so it seems specific to your system. A similar problem has been described here, but Adventure Creator doesn't use any code that caused that problem to occur, so I'm confused to say the least. The 1.32 update removes a few unnecessary includes when it comes to iOS, so see if that improves it at all.
     
  45. cl-apps

    cl-apps

    Joined:
    Mar 16, 2013
    Posts:
    128
    Thanks for another amazing update! I'll give it a go and see if saving works any better on iOS.
     
  46. cl-apps

    cl-apps

    Joined:
    Mar 16, 2013
    Posts:
    128
    Just tried the latest version of Adventure Creator on Windows for iOS and have a bigger problem now than when I started.

    I have created a blank new project. Switched to iOS platform.

    Imported the Adventure creator asset and created a new game using the wizard.

    I open out the Game editor and just get a stream of Red errors, the contents of which read:

    XmlException: Text node cannot appear in this state. Line 1, position 1.
    Mono.Xml2.XmlTextReader.ReadText (Boolean notWhitespace)
    Mono.Xml2.XmlTextReader.ReadContent ()
    Mono.Xml2.XmlTextReader.Read ()
    System.Xml.XmlTextReader.Read ()
    System.Xml.XmlReader.MoveToContent ()
    Mono.GeneratedSerializers.Literal.GeneratedReader.ReadRoot_OptionsData ()
    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)
    Rethrow as TargetInvocationException: Exception has been thrown by the target of an invocation.
    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:232)
    System.Reflection.MethodBase.Invoke (System.Object obj, System.Object[] parameters) (at /Users/builduser/buildslave/monoAndRuntimeClassLibs/build/mcs/class/corlib/System.Reflection/MethodBase.cs:115)
    System.Xml.Serialization.XmlSerializer.Deserialize (System.Xml.Serialization.XmlSerializationReader reader)

    None of this happens on the desktop platform and Adventure creator works quite happily. Working in iOS has gone completely wild since the update.

    Any ideas what is happening?
     
  47. cl-apps

    cl-apps

    Joined:
    Mar 16, 2013
    Posts:
    128
    OK I sorted out the big error above which turned out to be a wonky Project Setting file. Deleted them, Unity reimported everything and the project worked again.

    Now I have two more errors working in iOS platform mode:

    NullReferenceException: Object reference not set to an instance of an object
    GlobalVariables.UpdateSelf () (at Assets/AdventureCreator/Scripts/Variables/GlobalVariables.cs:44)
    GlobalVariables.Awake () (at Assets/AdventureCreator/Scripts/Variables/GlobalVariables.cs:26)
    UnityEngine.Object:Instantiate(Object)
    KickStarter:Awake() (at Assets/AdventureCreator/Scripts/Game engine/KickStarter.cs:129)


    and

    NullReferenceException: Object reference not set to an instance of an object
    AC.MenuSlider.RecalculateSize () (at Assets/AdventureCreator/Scripts/Menu/Menu classes/MenuSlider.cs:194)
    AC.Menu.PositionElements () (at Assets/AdventureCreator/Scripts/Menu/Menu classes/Menu.cs:610)
    AC.Menu.Recalculate () (at Assets/AdventureCreator/Scripts/Menu/Menu classes/Menu.cs:529)
    AC.Menu.Copy (AC.Menu _menu) (at Assets/AdventureCreator/Scripts/Menu/Menu classes/Menu.cs:244)
    PlayerMenus.Awake () (at Assets/AdventureCreator/Scripts/Controls/PlayerMenus.cs:69)
    UnityEngine.Object:Instantiate(Object)


    Both these errors only appear on the iOS platform. AC works perfectly on the desktop platform.

    Really frustrating getting these error just by switching platforms... Any clue as to what is going wrong?

    Adventure Creator 1.32
     
  48. TonyLi

    TonyLi

    Joined:
    Apr 10, 2012
    Posts:
    12,670
  49. ChrisIceBox

    ChrisIceBox

    Joined:
    Sep 16, 2013
    Posts:
    334
    Apologies for those that were getting errors like cl-apps with the latest update. 1.33 should fix the issue:

    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

    • 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
     
  50. TheDevGuy

    TheDevGuy

    Joined:
    Mar 3, 2014
    Posts:
    78
    Is it possible that this kit comes with some sort of primitive RPG elements such as health and ai?