- download and install moonc compiler
./moonc panorama.moon
- use the workshop version on forum
- use the workshop version on forum
- the workshop version may be outdated (due to @Shir0ha being
lazy afDEAD), please use the prebuilt version or build one yourself
- use the prebuilt version or build one yourself
- use the prebuilt version or build one yourself
- released on forum
- use the prebuilt version or build one yourself
- released on forum
- tbh this cheat, especially the lua ffi api is the worst I've ever seen
- a lot of things didn't work lmao and I had to implement some ghetto workarounds
- crashes when return certain objects (for instance the function $.Msg) FOR NO REASON, like it's not even an issue with my code, I just called UIEngine[113] (RunScript) AND AFTER 1 SECOND (YES IT'S NOT INSTANT CRASH) THE CHEAT WILL FUCK ITSELF UP
- congrats for being the first cheat that can't properly support panorama lib
- use the prebuilt version or build one yourself
- luv8 currently only provides compatibility with ev0lve, primordial, pandora, legendware, memesense and fatality, if you wish to use it on other cheats feel free to add more to the compatibility layer and/or contribute code by pr. Contributions are welcomed.
panorama.loadstring(js_code: string[, panel: string]) : function
compiles the given Javascript code inside the v8::Context of the specified panel and returns a function handle for calling the compiled code
panorama.open([panel: string]) : table (V8PersistentProxy)
opens a handle to the v8 global object of the v8::Context of the specified panel and returns a V8PersistentProxy
panorama.RunScript(js_code: string[, panel: ffi::void*[, xml_context: string]]) : ffi::int
executes the given Javascript code with CUIEngine::RunScript()
panorama.GetPanel(panel: string[, fallback: string]): ffi::void* (UIPanel)
returns a pointer to the given panel name, raises error upon failure
- @dhdjSYS
- reverse engineering
- implemented panel array traverse & get target panel
- implemented data conversion from lua to v8js
- implemented data conversion from v8js to lua
- implemented function argument conversion from lua to v8js
- implemented v8js function call (includes calling v8js member functions of an object with parent)
- implemented compatibility layer
- implemented safe_error
- implemented try catch
- implemented
panorama.loadstring()
,panorama.open()
,panorama.RunScript()
,panorama.GetPanel()
- fixed random bugs and created more of them
- @Shir0ha
- initiated & named the project
- reverse engineering
- initial implementation of V8ProxyValue (which eventually was rewritten to V8PersistentProxy)
- implemented globalizeReference
- implemented HandleScope
- implemented Script\Compile (recreated
CUIEngine::RunScript
in lua) - implemented
V8Local
,V8MaybeLocal
,V8Value
in lua - rewritten & formated the code in moonscript
- created at least 1 bug in each and every feature and fixed some of them
- ev0lve
- the development of this library was 99% done on ev0lve.xyz
- primordial
- public testing of this library happened on primordial.dev