Difference between revisions of "LS2:Module SDK"
From ismods.com: dedicated to promoting white hat, EULA-compliant Inner Space and LavishScript mods
(Created page with "The LS2Module SDK is the official development kit for LavishScript 2. The LS2Module SDK can be used to: * Create Modules in C++ * Compile [...") |
(→Concepts in Module development) |
||
(6 intermediate revisions by one user not shown) | |||
Line 15: | Line 15: | ||
*** ls2il.exe - A standalone LavishScript 2.0 assembler and execution environment | *** ls2il.exe - A standalone LavishScript 2.0 assembler and execution environment | ||
** include | ** include | ||
− | *** [[LS2CodeBoxEnvironment.h]] - | + | *** [[LS2CodeBoxEnvironment.h]] - describes many of the core interfaces and other classes for use by a Module |
− | *** [[LS2CodeBoxValue.h]] | + | *** [[LS2CodeBoxValue.h]] - describes [[LS2CodeBoxValue]] and each of its standard descendants |
*** [[ls2module.h]] - '''#include this file''', it will include the rest | *** [[ls2module.h]] - '''#include this file''', it will include the rest | ||
− | *** [[LS2StandardEnvironment.h]] | + | *** [[LS2StandardEnvironment.h]] - describes many of the core interfaces and other classes and macros for use by a Module, including [[ILS2StandardEnvironment]] which is used extensively |
*** [[LS2String.h]] - Implements the [[ILS2String]] interface as LS2String and the [[ILS2String8]] interface as LS2String8 | *** [[LS2String.h]] - Implements the [[ILS2String]] interface as LS2String and the [[ILS2String8]] interface as LS2String8 | ||
** lib | ** lib | ||
Line 25: | Line 25: | ||
** samples | ** samples | ||
*** [[LS2M-Foo]] - A sample [[LS2:Module|Module]] that exposes a custom [[LS2:Type|Type]] | *** [[LS2M-Foo]] - A sample [[LS2:Module|Module]] that exposes a custom [[LS2:Type|Type]] | ||
+ | |||
+ | == Concepts in Module development == | ||
+ | * [[LS2Module:Reference counting|Reference counting]] and [[LS2SmartRef]] | ||
+ | * [[LS2Module:Exception handling|Exception handling]] and [[LS2Exception]] | ||
+ | * [[LS2Module:Building data types|Building data types]] | ||
+ | ** [[LS2Module:Building an Enum|Building an Enum]] | ||
+ | * [[LS2Module:Building a LavishScript 2 Module from ISXDK|Building a LavishScript 2 Module from ISXDK]] | ||
== See Also == | == See Also == | ||
Line 30: | Line 37: | ||
[[Category:LavishScript 2|LavishScript 2]] | [[Category:LavishScript 2|LavishScript 2]] | ||
+ | [[Category:LS2Module SDK]] |
Latest revision as of 12:40, 1 December 2012
The LS2Module SDK is the official development kit for LavishScript 2.
The LS2Module SDK can be used to:
- Create Modules in C++
- Compile Scripts written in C# with ls2csc
- Execute LS2IL programs with ls2il.exe
Download LS2Module SDK
- The LS2Module SDK is currently distributed via this post on the forums
Directory structure
- LS2Module/sdk1
- bin
- ls2csc.exe - The C# to LS2IL compiler
- ls2il.exe - A standalone LavishScript 2.0 assembler and execution environment
- include
- LS2CodeBoxEnvironment.h - describes many of the core interfaces and other classes for use by a Module
- LS2CodeBoxValue.h - describes LS2CodeBoxValue and each of its standard descendants
- ls2module.h - #include this file, it will include the rest
- LS2StandardEnvironment.h - describes many of the core interfaces and other classes and macros for use by a Module, including ILS2StandardEnvironment which is used extensively
- LS2String.h - Implements the ILS2String interface as LS2String and the ILS2String8 interface as LS2String8
- lib
- vs10
- ls2module.lib - link to this library
- vs10
- samples
- bin
Concepts in Module development
- Reference counting and LS2SmartRef
- Exception handling and LS2Exception
- Building data types
- Building a LavishScript 2 Module from ISXDK