Skyline Changelog V0-9-7 BETA (Major Release)

Hello Friends,

After what seem’s like such a long time we have a host of new exciting features and important fixes, some of which we know many of you have been waiting for. Our lives have been turned upside down, the studio has been completely destroyed and rebuilt but now we are emerging from the smoke of life’s battle, like all combatants a little shell shocked but jubilant in our triumph over the darker times and appeasing the Skyline Goddess by creating this new offering of version 0.9.7. We hope you will join us in this celebration by the usual ritual of beta testing as much of the core has been changed and many new gremlins and other weee nasties many be lurking needing your help in location so we can cast our banishing spell over them.
Well to the matter of the changes, as to which there are many of.

Version V0.9.7 Release 9 (28/06/2016)

Well, this extra release has took some time, but it focuses on the end game exporter that many users have had problems with.

Anyway here is the changelog:

New:

  • New: Editor – Asset Manager: On the toolbar is a new icon for the Batch Rotate which is next to the
  • New: Editor – Asset Manager: The RMB context menu on the explorer tree view now contain “Convert > Batch Scale all meshes”
  • New: Editor – Asset Manager: The RMB context menu on the explorer tree view now contain “Convert > Batch Rotate all meshes”
  • New: _NORM or _norm in any case sensitivity will be recognised as a normal map on auto material convert.
  • New: _DISP or _disp in any case sensitivity will be recognised as a specular map on auto material convert.
  • New: (MAJOR) Now scripts will parse variables for resources on game export when passed through a function that uses a filename.
  • New: (MAJOR) All script resource functions can now pass variables.
  • New: End Game – (MAJOR) Modules are now parsed for resources when exporting an end game.

Updated:

  • Update: FBX Converter has been upgraded to the “Autodesk FBX SDK 2017.0.1″
  • Update: Editor lights when playing the game are hidden as they showed all the time before and reset back on stop.
  • Update: End Game can now reload assets on the fly from the archives of .pak or .ark in editor. This means games archived or not will look the identical.
  • Update: When converting textures to materials and auto selecting normals and specular maps, it is now more accurate.
  • Update: Playing and stopping the game print text has been updated to be less bold.

Fixed:

  • Fixed: Game Export: There was still an error regarding IBL being disabled in an end game and showing with IBL.
  • Fixed: Point light debug utilities no longer show in the player or end game.
  • Fixed: Action: SkyParticle: Double sided was not saved to action data string or loaded back.
  • Fixed: Lua command fpsSystem.setHasAmmo would crash if wrong entityID or actionID were provided.
  • Fixed: Lua command fpsSystem.playReloadSound would crash if wrong entityID or actionID were provided.
  • Fixed: Lua command fpsSystem.setWeapon would crash if wrong entityID or actionID were provided.
  • Fixed: Lua command fpsSystem.setKO would crash if wrong entityID or actionID were provided.
  • Fixed: Lua command fpsSystem.setPosition would crash if wrong entityID or actionID were provided.
  • Fixed: Lua command fpsSystem.setPositionString would crash if wrong entityID or actionID were provided.
  • Fixed: Lua command fpsSystem.damagePlayer would crash if wrong entityID or actionID were provided.
  • Fixed: Lua command fpsSystem.setAsPlayer would crash if wrong entityID or actionID were provided.
  • Fixed: When parsing a weapons file, the auto shoot sound was not included in collection.
  • Fixed: If a specular map with the name specular is used, it would have been placed in the normal map channel

Version V0.9.7 Release 8 (03/05/2016)

New patch release to cover any errors that were discovered after the last release.

New:

  • New: Module – Logic: If Then Value Event triggered – Same as the normal version but this requires and event to perform the operation. Ideal for time when you require accurate event outs.
  • New: Module – Logic: Coin Toss – Simple module to provide a trigger for Heads/Tails on an incoming event.
  • New: Auto update can now resume a download if it fails to download the first time. Useful for those with limited internet connection.
  • New: Auto updates now grab the location to download updates from the server rather than the software. This allows us too move server without breaking older versions of skyline

Updated:

  • Update: vSync not applied by default, it now works the the way it used to.

Fixed:

  • Fixed: Module: Random – event out now triggers on incoming event.
  • Fixed: Module: Random – sent its value twice which could cause issues with logic modules.
  • Fixed: Default Rigid Body flag now set back to 0.
  • Fixed: Collision with dynamic rigid body with SCC (fps player) and DCC (zombie) in the scene together. Fixes collisions with new fps
  • Fixed: Scene Loading crash fixed.
  • Fixed: Crash loading back text box


Version V0.9.7 Release 7 (24/04/2016)

Hi Friends, Its been a long time in getting it to you but we are happy to present new Skyline Update 0.9.7.7.
This update has many module editor improvements and loads of new modules to make the visual mechanics system fully usable.

New:

  • New: Auto save feature. Includes saving open graph
  • New: Gui: Simple Hud adjusted to work with Simple Hud Graph
  • New: Action – Game Interaction. This action provides params for use with the activate mechanics.
  • New: Module Editor: Single Contextual save button instead of saves’ for scenegraph and save for micrograph.
  • New: Memory Manager: When resources are loaded, they are added to gpu ram and we have seen large memory usage. This a problem with smaller memory cards as it can run out and when this occurs there is a performance drop. Now Skyline manages memory more efficiently and you only pay for what is currently being used in the view. Once the asset is not needed its memory is freed.
  • New: Module – Sensor: Directional Distance sensing with debug lines. Check the distance with in a set range.
  • New: Module – Math: Threshold inside, returns a min/max value if it exists inside the range
  • New: Module – Math: Threshold outside, returns a min/max value if it exists outside the range
  • New: Module – Math: Linear Interpolation, returns a min/max out value from a min/max input range
  • New: Module – FPS: Camera with interchangeable weapon mesh.
  • New: Module – SCC: Move
  • New: Module – SCC: Turn
  • New: Module – SCC: Turn Yaw
  • New: Module – SCC: Strafe
  • New: Module – SCC: Jump
  • New: Module – SCC: Gravity
  • New: Module – SCC: Mouse Yaw – turn the object by the mouse x delta.
  • New: Module – SCC: Key Converter for SCC Move 1-0 input
  • New: Module – Weapons Manager: WM Ammo gets data from the weapons editor
  • New: Module – Weapons Manager: WM Mesh gets data from the weapons editor
  • New: Module – Weapons Manager: WM Sound gets data from the weapons editor
  • New: Module – Weapons Manager: WM Effect gets data from the weapons editor
  • New: Module – Weapon: Ammo Manager – handles the ammo mechanic
  • New: Module – Weapon: Shoot – handles the shooting mechanic
  • New: Module – Weapons Editor (WE): Get Weapon data from key
  • New: Module – Weapons Editor (WE): Get animation params.
  • New: Module – Weapons Editor (WE): Get power params.
  • New: Module – Weapons Editor (WE): Get audio params.
  • New: Module – Weapons Editor (WE): Get Ammo params.
  • New: Module – Weapons Editor (WE): Get FX params.
  • New: Module – Entity: Attach TagPoint – attaches entity to any module tagPoint (FPS Camera weapon FX Tagpoint)
  • New: Module – Camera: Get Position
  • New: Module – Camera: Get Rotation
  • New: Module – Particle: Translation – all movement plus can be attached to a provided node tag name
  • New: Module – Variable: V3 Offset – simple offset module for Vector 3
  • New: Module – Variable: Text Body – For larger strings such as for messages.
  • New: Module – Variables: Vector2
  • New: Module – Variables: Add String X2
  • New: Module – Conversion: Convert two values in a single vector 2
  • New: Module – Game: Mouse Wrap – traps the mouse to the screen
  • New: Module – Game: Health System- manage add/sub health and callbacks from damage action
  • New: Module – Merge: Merge/Split EVENT. One module for the place of 2. merge inputs and send out on all connections.
  • New: Module – Merge: Merge/Split VALUE. One module for the place of 2. merge inputs and send out on all connections.
  • New: Module – Switch: Multi IO event on/off switch
  • New: Module – Event – Resize
  • New: Module – Event – Send Remote, send an event and value to the receiving module with id key.
  • New: Module – Event – Receive Remote, receives and sends out incoming value and event with the matching key
  • New: Module – GUI: set fullscreen
  • New: Module – GUI: Load – load and display a Gui file.
  • New: Module – GUI: percentage scale XY
  • New: Module – GUI: Load Image – load image into a gui cell
  • New: Module – GUI: SHow/Hide Gui: as it said on the box.
  • New: Resource Collection: Skyline will now parse and store files used in the dynamic properties.

Fixed:

  • Fixed: Export game Working.
  • Fixed: No IBL will run in player and in end game.
  • Fixed: Basic ambient works in player and end game.
  • Fixed: Base required asset for particles and shaders have been ujpdate for end game and player (*.pak)
  • Fixed: Module Editor: Crash when opening or New’ing a scene with an open micro graph
  • Fixed: modules: mui Slider – this now can be saved with the graph.
  • Fixed: modules: SetPos can now be set by object tag
  • Fixed: modules: switch string IN; doesn’t send zero data causing crashes in some modules.
  • Fixed: modules: Variable Join string; now accepts and process vector 2,3 and 4 types.
  • Fixed: Module serializer failed to store values from vector2, now works as expected
  • Fixed: Module serializer failed to store values from vector4, now works as expected
  • Fixed: GUI Editor crash and stability issues when in play the game made and trying to edit the gui.
  • Fixed: GUI Resize crash when resizing and not playing the game.
  • Fixed: GUI Editor crash when saving more than 3 open rcss tabs.
  • Fixed: Action – 2D audio: Enable not working game side, now can be turned on/off dynamically.
  • Fixed: Action – 3D audio: Enable not working game side, now can be turned on/off dynamically.
  • Fixed: Lua – entity.getLastHitID(); No check where an object existed.
  • Fixed: Collision detection: ray casts to the unknown could have caused a crash in certain circumstances.
  • Fixed: Lua – entity.getPosition(0); caused a crash . Invalid IDs should now be stable.
  • Fixed: Lua entity: many catches

Updated:

  • Update: Micro Scripts now open with some bare code to save you time on new scripts.
  • Update: Weapons Editor: Had a overhaul to bring into line with the new modules
  • Update: Weapons Editor: removed currently unused params.
  • Update: SCC now defaults to query flag 2
  • Update: PlayerController now defaults to query flag 2
  • Update: Default scene was back to front now saved with correct starting orientation.
  • Update: AutoSave save micro graph for you.
  • Update: Module Editor: Tool bar and menu has been adjusted.
  • Update: Module Editor: Nag box on changing to another graph if current graph has been edited but not saved.
  • Update: Module System: Speed increased for huge graphs due to not needing to iterate all modules for certain event calls.
  • Update: Module – Entity Rotate: rotates correctly without flipping upside down.
  • Update: Module – Entity SetPos: can now be connected to any value type.
  • Update: Module – Entity SetOrientation: can now be connected to any value type.
  • Update: Module – Event Timer: can now be set to either looping or not.
  • Update: Module – Event Timer: Events are passed through for convenience.
  • Update: Module – EVENT Send Value: now can pass Text.
  • Update: Module – Audio 2D: now works as expected
  • Update: Module – Audio 2D: can now dynamically change file name
  • Update: Module – Audio 2D: Events are passed through to save the need for daisy chaining.
  • Update: Module – Add String: Now accepts Value types.
  • Update: Module – Add String: Added extra inputs, now has 8 instead of 4
  • Update: Module – String Selector: send an event when selection has changed.
  • Update: Module – Logic IF Condition: can now accept and process BOOL from other modules.
  • Update: Lua Game.doDamage(…) optionally can send the owner ID to the object being attacked game.doDamage(prayID, phx, phy, phz, damage, power, obj);
  • Update: Lua Snippets – added simple SCC code block.
  • Update: Lua Snippets – fixed character category.
  • Update: Actions – Rigid Body: collision flags default to 1|0 so that characters with SCC can collide with RB when more than one is in the scene.

Version V0.9.7 Release 6 (14/12/2015)

This release focuses on a couple new features for creating paths in lua and making any entity except the Empty Node type.
Some fixes to the Qt Editor Plugin stuff as well.

New:

  • New: Paths can now be created in the lua script for dynamic usage.

New: Lua:

  • New: Entity Library:
    • New: entity.followPath( entityID, Pathname, Speed, (opt) useRoll). — | useRoll defaults to 1
  • New: Path Library
    • New: path.createPath(“pathName”)
    • New: path.removePath(“pathName”)
    • New: id = path.addNode(“pathName”, x, y, z)
    • New: path.deleteNode(“pathName”, id )
    • New: path.insertNode(“pathName”, id , x ,y, z)

Fixed:

  • Fixed: Qt Editor: If you set a text to a table cell that did not exist, then it would crash
  • Fixed: Qt Editor: If you set an icon to a table cell that did not exist, then it would crash
  • Fixed: Qt Editor: If you set selected table item that did not exist, then it would crash
  • Fixed: Qt Editor: If you got the selected item from a table item that did not exist, then it would crash.
  • Fixed: Qt Editor: the closeEditor command for closing the main window was crashing.


Version V0.9.7 Release 5 (01/12/2015)

New:

  • New: Visual Module: Entity: Get Orientation
  • New: Visual Module: Entity: Set Orientation
  • New: Visual Module: Entity: Get Forward
  • New: Visual Module: Entity: Get Right
  • New: Visual Module: Entity: Get Up
  • New: Visual Module: Physics: Raycast to Position
  • New: Visual Module: Physics: Raycast by Direction
  • New: Visual Module: SCC: Key Convert – converts key events to 0-1 move input.
  • New: Visual Module: SCC: Move
  • New: Visual Module: SCC: Strafe
  • New: Visual Module: SCC: Jump
  • New: Visual Module: SCC: Turn
  • New: Visual Module: SCC: Turn Yaw
  • New: Visual Module: SCC: Gravity – characters gravity only. Can stick to ceilings,walls!
  • New: Visual Module: SCC: Movement – single movement module
  • New: Visual Module: Switch Value: Value in can be switched between 4 outputs .
  • New: Scene Editing: Multi select and Rotation using the Gizmo. This is a fast and accurate system which can handle many entities.
  • New: Scene Editing: Multi select and Scaling using the Gizmo.

New: Lua:

  • New: GUI
    • New: gui.setAttribute(bodyID, elementID, param, value)
    • New: string = gui.getAttribute(bodyID, elementID, param)

    • New: string = gui.getProperty(bodyID, elementID, param)
  • New: Qt
    • New: qt.setSelectionMode(editorName, objectName, 1);
    • New: qt.getSelectionMode(editorName, objectName);
    • New: array = qt.getSelectedItems(editorName, objectName);
    • New: itemCount = qt.getListItemCount(editorName, objectName);
    • New: qt.setTreeSelectedItem(editorName, objectName, id, selected (int));
    • New: isSelected = qt.getTreeSelectedItem(editorName, objectName, id);
    • New: qt.setListSelectedItem(editorName, objectName, id, selected (int));
    • New: isSelected = qt.getListSelectedItem(editorName, objectName, id);
    • New: qt.setTableSelectedItem(editorName, objectName, row, column, selected (int));
    • New: isSelected = qt.getTableSelectedItem(editorName, objectName, row, column);
    • New: qt.deselectAllItems(editorName, objectName);

Updated:

  • Updated: Went to fix changing fonts dynamically, but they already work.
  • Updated: Modules – Entity Rotator now can take an object tag as well as an ID
  • Updated: Modules – Delete: Upgraded the module to take both an int and Tag string as inputs to delete from.
  • Updated: Modules – Delete: Renamed objID to Object
  • Updated: Modules – Text Module – fixed the need to press return before seeing the changed text. The value will be sent as soon as the text module loses focus.
  • Updated: Mesh Merging: When merging, all models will be turned into statics until we can create a blend of the animated and non-animated systems
  • Updated: Script Editor: Whitened the background
  • Updated: Script Editor: Changed the string red colour to a darker red.
  • Updated: Tech Demos
  • Updated: Templates
  • Updated: Uber Shader Core

Fixed:

  • Fixed: Entity System: There was an error in the deletion routine which caused a bit of a hiccup on some load backs
  • Fixed: Uber Shader: Ambient works with spot lights correctly.
  • Fixed: Uber Shader: Specular is multiplies by light brightness and fades as light is reduced.
  • Fixed: Uber Shader: Ambient works with point and directional lights correctly.
  • Fixed: Preset Upgrading, when loading an old preset or scene file, the materials would mess up
  • Fixed: Module System: Vector4 did not work on load back
  • Fixed: Module System: Vector2 did not work on load back
  • Fixed: qt.closeEditor() was broken again internally from a strange bug.


Version V0.9.7 Release 4 (18/11/2015)

New update for the 4th release of V0.9.7 of skyline.
Here are the new features and bug fixes:

New:

  • New: Module – Math: Linear Interpolation. For scaling an input value to output a max/min value based upon a min/max range
  • New: Module – Mui: Mui is a new library of ui modules for in game development. Button, sliders etc for real time control of game values providing instant feedback.
  • New: Module – Mui: Vertical Slider for instant value changes, great for prototyping.

Updated:

  • Updated: the character.setAdvancedCollision() will work on the Player Controller action too.

Fixed:

  • Fixed: Entity System: There was a problem if you added lights after deleting entities causing instability.
  • Fixed: Entity System: There was a problem if you added cameras after deleting entities causing instability.
  • Fixed: Tranlation Utility: If you used the position to edit multiple entities at once, then it would not save correctly.

Version V0.9.7 Release 3 (16/11/2015)

New:

  • New: Action – 3D Audio now fades out correctly when out of audible range.
  • New: Action – SCC: You can now use the Advanced Collisions to move up elevators or get knocked out the way by doors
  • New: Action – Player Controller: You can now use the Advanced Collisions to move up elevators or get knocked out the way by doors
  • New: Uber Shader: Materials using alpha will work on the water correctly
  • New: Uber Shader: Materials using alpha will work on the trees correctly
  • New: Module – Get Distance: this will output the distance between two objects. Objects can be either: tag , ID or vector 3 position

New: Lua:

  • New: Sound
    • New: distanceAttenuation : sound.distanceAttenuation( soundID, minDistance, maxDistance, minimum, maximum); — add to an update() to give an spawned sound distance attenuation.


  • New: SkyMath
    • New: Linear Interperlation for scaling an input value to out a max/min value based upon a min/max range eg. scaledValue = skyMath.linearInterp(inputValue, scaleRangeMin, scaleRangeMax, minOut, maxOut ); “


  • New: Entity Library
    • New: entity.getDistanceToVector(obj,x,y,z)


  • New: Controller library
    • New: controller.setAdvancedCollision(obj, state (1 or 0))


  • New: Character library
    • New: controller.setAdvancedCollision(obj, state (1 or 0))

Fixed:

  • Fixed: Action – Entity follow path. Action can now be turned off and previous path position will be reset.
  • Fixed: editor camera restores far clip after playing with camera entity.
  • Fixed: Spline paths were crashing when loading another scene or creating a new scene
  • Fixed: Spline paths were crashing when you deleted them after a load back
  • Fixed: Projects: GUI workspaces would not load the textures for the GUI’s
  • Fixed: Spline Paths nodes were visible in the Player
  • Fixed: Action: Sky Particle: If loading a scene while running the game, the effect would not run
  • Fixed: Skyline Player: The first particle is play would never show.
  • Fixed: End Game: The first particle would never show.


Version V0.9.7 Release 2 (6/11/2015)


New: OSVR Integration

Our game engine is now fully supporting of the open source library OSVR(Open Source Virtual Reality) and using the new HDK(Hacker Dev Kit), you can view and play your games in an immersive world through the headset. Skyline can start rendering in VR the moment you change the Camera Entity Property “Camera VR” to true. The view will turn into a splitscreen and if you have a HDK and OSVR server up and running, then your head orientation will automatically apply on top of the current orientation you are seeing.

  • New: OSVR Integration – Create immersive games using many forms of input.
  • New: Camera Entity: New property available for setting VR rendering. “Camera VR = true, false”

There are many features missing and is a barebones installation but it works quite well.
Things that are not working in VR:

  • Post Processing – This is due to being a single viewport the entire time.
  • Headset tracking orientation Reset button. For now use the “osvr_reset_yaw.exe” application in the OSVR Download
    This means that your headset might be a certain number of degrees out from the direction you are looking.

As always, we will be updating the feature set over time to make it the best possible.

Here are the other new changes, updates and fixes:

New:

  • New: Path Editor: When adding nodes, instead of clicking on the scene, you can now use the SpaceBar
  • New: Path Editor: Upgraded the path lines to be thicker and more visible.
  • New: Path Editor: Node Banking, This is to roll a mesh or camera around the path by a certain degrees and smoothly blend to the next nodes roll value.
  • New: Path Editor: Node Banking Speed: Control how fast the mesh or camera will bank around a node.
  • New: Action: Path Follow – Entity: This is a new action designed to make an entity follow a path around while looking down the track. Using the new path node banking, you can make cool flying creatures with semi realistic flight characteristics.

New: Lua:

  • New: Particle Library
    • New: particle.setRenderOrder(hndl, order);
  • New: Game library
    • New: game.setSceneSpeed( speed ); — Value of 1 is normal. Higher is faster. Use this value to change the speed the engine works, great for bullet time effects as particles, animations and movements slow down.

Updated:

  • Updated: Camera: When Changing active camera in run time, the same camera would be the one to start on next play instead of resetting to the last set camera in the editor.

Fixed:

  • Fixed: Script Editor: Snippet manager had an incorrect particle.setEmitting(hnd, toggle)
  • Fixed: When Attaching an object, unless you called detach manually, you could not attach again.
  • Fixed: Visual Modules crash when saving scene script to micrograph, catch added.
  • Fixed: Terrain load crash after saving new scene – required added to resources. This has been made part of the scene save.
  • Fixed: Deleting multi selected objects caused crash.
  • Fixed: Duplicating multi selected objects caused object to move to incorrect positions.
  • Fixed: Visual Modules – when editing a micrograph and press play the game the open micrograph in the graph editor would change and show the scene graph.
  • Fixed: Lua Anim Library: anim.playAnimation() with an animation that does not exist would result in a crash.
  • Fixed: Game Export: Vegeation Billboards images were not being exported
  • Fixed: Game Export: Spline path nodes were showing in the end game
  • Fixed: Game Export: Water Plane textures were not being grabbed.
  • Fixed: Game Export: Icon Replacement did not work in 64bit

Ask for help on the forums for any problems :)

Thanks again :)

Version V0.9.7 Release 1 (27/10/2015)


Porting Notes

There are a few things to port if you want to use the new features of skyline

  • Porting notes body text if any……

As mentioned above there have been a lot of core changes and as such this will show up new bugs and the Skyline Goddess still needs your help in locating and reporting these back to her humble servants. lol no seriously we need your bugs and how to replicate them so that we can get this release rock solid.

New: Visual Modules

This version of skyline proudly boasts the new Visual Modules system. This new editor and tools enables our users with zero coding knowledge to be able to create dynamic scenes and games, not only is it not Scripting! its a fast and error free method with only a small learning curve. Once you understand the flow of the graph then it is possible for you to create almost anything by wiring a few blocks ( modules ) together. The system has been designed from the ground up to be a visual tools and as such all wires and modules are color coded for easy overview.

Blog post for this subject: Link to Vidsual Modules Blog Article

New: Bake Meshes

A new feature to skyline for level designers is the nake to mesh feature. This is a move in the right direction towards full modular level editing by enabling you to select many meshes and bake these down to one mesh which is easier to manage, ie rotate scale etc. This has no performance advantage but is purely a convenience feature.

New: 64 bit version

Skyline now has the long awaited 64bit version enabling you to use all of your ram when designing your games, great for open worlds. Also 64bit brings a small performance boost over the 32bit version. No longer will you have your terrains kill any scene saves, just ensure your system has enough ram ;)

New: JSON

Skylines Lua has a new feature in the shape of the JSOM library which will read a file into a lua table.

New: Entity scene count

In the old version of Skyline many of you who have played with dynamic spawned objects may have come across a scene object limit. This has now been removed and you can keep spawning objects all day.

Here is the rest of the changelog:

New:

  • New: A message is now shown if you attempt to save a script while the game is playing as this is not possible.
  • New: Editor Plugins: Use of other sub editors like message boxes or other dialogs can now be used.
  • New: Editor Plugins: Each sub editor will send commands to the base editor lua script file for use of shared variables.
  • New: Editor Plugins: Using the commands, you can set the focus of a widget
  • New: Dynamic Properties: Float types can now use arguments like this –[[Prop|float#-10.5,10.5,0.01]] which is “#minimum,maximum,singleStep”. Leave no argument to use defaults (–[[Prop|float]])
  • New: Dynamic Properties: Int types can now use arguments like this –[[Prop|int#-10,10,1]] which is “#minimum,maximum,singleStep”. Leave no argument to use defaults (–[[Prop|int]])
  • New: Main Menu: Tools > Normals menu, you can now invert all normals on the selected entity.
  • New: Main Menu: Tools > Normals menu, you can now invert the X axis normal on the selected entity.
  • New: Main Menu: Tools > Normals menu, you can now invert the Y axis normal on the selected entity.
  • New: Main Menu: Tools > Normals menu, you can now invert the Z axis normal on the selected entity.
  • New: Material Editor: Under the Alpha properties is a new box for mesh side mat props. You can now choose double sided on any material. Alpha or not
  • New: Loading Scene: If there are missing meshes, there was a lot of boxes to press ok in. Now the error list is shown at the end of the scene load if errors occurred.
  • New: Core: We have now added a 4th version number which can represent patches and make auto updates easier without shifting version.
  • New: Action: Weapon – Shoot is now upgraded with new properties.
  • New: Asset Manager: Batch Scale will reload all the meshes in the folder after conversion

New Lua:

  • Controller Library
    • dccID = controller.getBodyID( objID )
  • Sky library
    • New: sky.getDir_GameAssets() – This will return the Assets folder of the compiled and ran game.
    • New: sky.getDir_GameRoot() – This will return the Root of the compiled game folder. Great for mods or save files
  • Action library
    • New: action.addToEntity(objID,”PLAYER”, “AI Sensor”); now available for scripted object.
  • Qt library
    • New: qt.openEditor(editorname, subEditorName, (opt)state) — open a sub editor ui file, message box, other dialog. Optional arg of 1 for exec() and 0 for show()
    • New: qt.closeEditor(editorname, subEditorName) — close an opened sub editor
    • New: qt.setMinimumValue(editorname, objectname, minValue) — this will set a qspinbox and qdoublespinbox minimum value
    • New: qt.setMaximumValue(editorname, objectname, maxValue) — this will set a qspinbox and qdoublespinbox maximumvalue
    • New: qt.setFocus(editorname, objectname)
    • New: function onKeyDown(keyID) now can be used for each editor
    • New: function onKeyUp(keyID) now can be used for each editor
    • New: function onMouseDown(buttonID) now can be used for each editor
    • New: function onMouseUp(buttonID) now can be used for each editor Combination scripts use an editor plugin script plus an external script added to the object
    • New: game mechanic: Combination script – Animal AI
    • New: game mechanic: Combination script – Barbarian script
    • New: game mechanic: Combination script – Character Player – Melee
    • New: game mechanic: Combination script – Character Player – Shooter
    • New: game mechanic: Combination script -Mechanic – Activate Message
    • New: game mechanic: Combination script – NPC Melee
    • New: game mechanic: Combination script – NPC Melee Dummy
    • New: game mechanic: Combination script – NPC Shooter
    • New: game mechanic: Combination script – NPC Zombie
  • Anim library
    • New: animTable = anim.getCurrentAnims( entityID );
  • Editor Library
      editor.addScript(objID,”filename”) – adds an external script to the object, Editor side scripting only.
  • Game Library
      game.getHealth(objID) returns the targets health if is has an attached damage action.
      Game.setWeapon(objID,”weaponKey”) sets the current players weapon from the weapon database

Updated:

  • Updated: All Exe’s have dropped by 14mb in size. Which for the “Skyline Game.exe” standalone is a good thing :P
  • Updated: qt.setText() will now work on the QPushButton and QToolButton
  • Updated: qt.setChecked() will now work on the QPushButton and QToolButton if they accept a checkstate
  • Updated: The FBX converter has been updated as some frames were missing out of some animations due to optimizations.
  • Updated: Compile Game – The new material system is working in the resource collection meaning end games will grab the materials now :)
  • Updated: Weapons action now shows all available weapons when added.
  • Updated: Weapon shoot action now has a third person shooting mode where the character will aim towards the screen center.
  • Updated: Weapon shoot action has been upgraded to include third person tracer fire.
  • Updated: Lua Command: camera.setActiveCamera(-1) will now take a -1 and deactivate all the cameras and reactivate the editor camera.
  • Updated: Added Stability to loading cubemaps, frame textures and 3D textures
  • Updated: Navmesh: The agents will now stop and wait for the character controller before moving on to ensure the character is always with the agent. You cannot go to fast though as there is still a problem matching speed between agent and SCC/DCC
  • Updated: Unused menus have been removed until we need them to stop it looking like they are broken.
  • Updated: Editing – Multi-select delete update
  • Updated: Activator – Activate License return before variable
  • Updated: Activator -Online activator – no more re-registering the same id twice
  • Updated: Styling – Fixed slider heights in Win10
  • Updated: Styling – new project icon
  • Updated: Ogres core binaries upgraded to bring into line with 64bit
  • Updated: Game exporter updated
  • Updated: Skyline settings ini separated from system ini enabling user custom option files in end game.
  • Updated: New system Installers.

Fixed:

  • Fixed: Reload scene entity crash
  • Fixed: Licenses message box removed
  • Fixed: qt.setPixmap() did not do anything, now you can set the Qlabel pixmap dynamically.
  • Fixed: Uber Shader: We have changed the lighting pass from a “scene_blend add” to “scene_blend replace” to stop whiting out on overlapping surfaces.
  • Fixed: anim mapper opened on duplication, now stopped from open until button open pressed
  • Fixed: stopped script editor opening when duplication object
  • Fixed: Assimp Converter: Massive improvements on mesh conversion as we found that a 32 bit array was used for a 16bit index set.
  • Fixed: Compiled Game: Spawned Presets did not have functioning scripts for any events like onClick, onMouseDown, onKeyDown
  • Fixed: Physics.removeBody(objID, bodyID) was not working due to a recent change from a few versions back.
  • Fixed: AI Sensor: The Enable Visibility stopped working after 1 play the game as the internal raycast was deleted onStop()
  • Fixed: Base Entity tag name can now be correctly set with entity.setTag(int objID, string tagName) it is now correctly registered into the system
  • Fixed: Action: UI – 3D Label – This was crashing the scene on load if the enabled flag was set to false when saved. (MAJOR)
  • Fixed: If you had a skybox material referencing missing textures, then it would have crashed, now it will load the ones that work and set the material error texture to the broken ones.
  • Fixed: Navmesh: None of the agents applied to the scene would work at all.
  • Fixed: Animation: When the animate button was pressed the character would not animate
  • Fixed: Animation: Sometimes the character anims would do nothing and basically pose when dragged into the scene
  • Fixed: Animation Mapper: When “Not Used” was set and the map name called in lua may have crashed due to these commands
    • Fixed: Lua animation: anim.setAnimationEnabled() potentially would have crashed if “” was passed through.
    • Fixed: Lua animation: anim.setAnimationLength() potentially would have crashed if “” was passed through.
    • Fixed: Lua animation: anim.setAnimationLooped() potentially would have crashed if “” was passed through.
    • Fixed: Lua animation: anim.setAnimationTime() potentially would have crashed if “” was passed through.
    • Fixed: Lua animation: anim.setAnimationWeight() potentially would have crashed if “” was passed through.
    • Fixed: Lua animation: anim.setAnimationSpeedMul() potentially would have crashed if “” was passed through.
    • Fixed: Lua animation: anim.getAnimationEnabled() potentially would have crashed if “” was passed through.
    • Fixed: Lua animation: anim.getAnimationName() potentially would have crashed if “” was passed through.
    • Fixed: Lua animation: anim.getAnimationLength() potentially would have crashed if “” was passed through.
    • Fixed: Lua animation: anim.getAnimationLooped() potentially would have crashed if “” was passed through.
    • Fixed: Lua animation: anim.getAnimationTime() potentially would have crashed if “” was passed through.
    • Fixed: Lua animation: anim.getAnimationWeight() potentially would have crashed if “” was passed through.
    • Fixed: Lua animation: anim.getAnimationSpeedMul() potentially would have crashed if “” was passed through.
    • Fixed: Lua animation: anim.setBlendMaskEntry() potentially would have crashed if “” was passed through.
    • Fixed: Lua animation: anim.getBlendMaskEntry() potentially would have crashed if “” was passed through.
  • Fixed: When stopping all animations, if there was a duff animation, the rest were not reset
  • Fixed: When animating all the enabled animations, if there was a duff animation, then all the other animations would not be reset which you may have encountered if you called playanimation with a non existent animation and then you attempted to play an existing animation.
  • Fixed: When animating all the enabled animations, if there was a duff animation, then all the other animations would not be reset which you may have encountered if you called playanimation with a non existent animation and then you attempted to play an existing animation
  • Fixed: Spline path: when loading back, the path sometimes bent strangely causes the path to not act the same.
  • Fixed: Editor Plugins: If you used qt.closeEditor() to close a sub editor, it did not work due to silly mistake.
  • Fixed: Asset Manager: When you convert diffuse to material and the texture has a space but not a duplicate resource, the space would break the conversion
  • Fixed: Action: UI – 3D Label – if you entered a blank text value for caption. Skyline would crash.
  • Fixed: Asset Manager: If renaming a single material. If the texture was the same name as the material, it would be renamed to the new material name aswell.
  • Fixed: Asset Manager: If you pressed F2 after renaming a material, it would crash

We hope you enjoy the new features as much as we do and look forward to them maturing over the next few updates to make Skyline a toolset to be reckoned with. Stay tuned to the forums for new updates and please don’t for get to show your workflow when reporting bugs as this will help us find and neutralize the bugs quicker.

Happy Skylining :)
Your friendly neighborhood dev team :D

One response on “Skyline Changelog V0-9-7