Thanks, Allar! Good luck with your new project!
Who just carries around $250.000 worth of files on a portable hardrive without any backups.. The bug is stupid, but this guy is a moron.
Michael Allar here. Thanks a bunch for posting this, I really appreciate it. I'm also the guy who wrote that Confessions article that was posted here on 80.lvl as well.
The SkookumScript Unreal Engine 4 Plugin – 3.1.1703 Beta is here and it’s got a bunch of great new features added that integrate SkookumScript with UE4 even more smoothly than before. SkookumScript has been used to develop games such as Sleeping Dogs, Sleeping Dogs: Definitive Edition, and Triad Wars.
SkookumScript is a text-based programming language for creating performance-critical, real-time gameplay. It comes with a powerful tool suite and command console that radically changes your workflow in any stage of development. This is done by allowing you to run code snippets to query and manipulate any UE4 game as it runs on a desktop, console or mobile. This includes projects that aren’t coded in SkookumScript. Read more about it here.
Updates to SkookumScript
Coroutines are at the core of SkookumScript and extremely important for time-based flow control, and the update makes it even easier to use them in conjunction with Unreal blueprints.
Auto-exposed blueprint classes and blueprint variables can be used just like with any other SkookumScript class or data member. All engine-class properties for class Actor are data member variables now.
- Raw data member annotation allows native access to Blueprint variables, as well as other variables stored in engine objects (such as Actor or World objects). For example, if you create a Blueprint variable named Wing Color, it is automatically declared for you in SkookumScript as @wing_color and you can read it and assign to it as you would to any other SkookumScript variable
- SkookumScriptGenerator now generates &raw data members for UObject properties (and no longer exports setters and getters)
- auto-generation of a SkookumScript class for each Blueprint in a project: the plugin generates an overlay Project-Generated with raw data member information for each Blueprint class. For example, if you create a Blueprint named Hero, a SkookumScript class Hero will be instantly created, ready for you to add your Hero-specific methods and coroutines
- when you rename a Blueprint, its corresponding SkookumScript class is automatically renamed; when you delete a Blueprint, its corresponding SkookumScript class is automatically deleted
- SkookumScript methods and coroutines are now exposed to Blueprint event graphs via &blueprintannotation. By placing a &blueprint annotation in front of the parameter declaration of the method or coroutine you want to expose, you now have full control over which functions and events you want to have available for placement in a Blueprint event graph
- exposed SkookumScript methods and coroutines now appear with fully qualified names in the Blueprint event graph
- Blueprint-exposed methods and coroutines can be placed in any SkookumScript class you wish (well, any class related to the class of your Blueprint, such as a super class, the Blueprint class itself, or classes that derive from it). In previous releases this was only available for UE4 engine classes.
- coroutines can now be exposed to Blueprint event graphs. When a function node is executed in your graph, its associated coroutine is started. (The old way of method and coroutine invocation via the SkookumScript component has been removed)
- SkookumScript IDE button in the level editor that brings up the SkookumScript IDE (and launches and connects or reconnects runtime to the IDE as needed)
- SkookumScript button on the Blueprint editor toolbar (UE4.9 and up) that detects the currently selected node and instructs IDE to browse to it if a SkookumScript-equivalent method or coroutine exists
- faster launch
- on-demand SkookumScript compiled binary reloading when changes are made to Blueprints that affect the SkookumScript class hierarchy
- enhanced support for UE4 integers of all sizes (signed and unsigned)
- more concise code. The following have been renamed:
- GameplayStatics to GameLib
- KismetSystemLibrary to SystemLib
- KismetGuidLibrary to GuidLib
- KismetMaterialLibrary to MaterialLib
- KismetStringLibrary to StringLib
- VisualLoggerKismetLibrary to LogLib
- HeadMountedDisplayFunctionLibrary to VRLib
- support for FVector_NetQuantize and FVector_NetQuantizeNormal
- fixes for stepwise debugging
- cleaned-up expression highlighting for guides, breakpoints and stepwise debugging
- breakpoints are now retained in the IDE after a recompilation
- IDE reports the number of data members in the status line
- Apple tvOS support at SkookumScript-level
- support for Unreal Engine 4.9.2 and 4.10.0 Preview 2
- many more fixes and enhancements