Packs are stk files containing LUA scripts that are loaded at runtime by your game. They are completely cross-platform
The packs can be used for free while running in ShiVa Editor, so feel free to download and try them.
|All the plugins are now compiled for Windows, Mac and Linux. You can use them with ShiVa Editor 2.0 on the platform of your choice.|
I have programmed a lot of games during the past years and I've aquired a nice experience with ShiVa. Each time I have a new game to do, there are things that are similar to the previous games I did, some identical features, some identical problems too...
That's why I've decided to create these packs that can be included to a game to not have to reinvent the wheel each time I have a new game to do. Each pack is independent. It does a single task, but it does it well. With these packs, you (and I) will save a lot of time and by using packs your code will become much more readable, also more maintainable.
Packs are the easiest and most effective way to add new features to your game.
What I call a 'pack' is a .stk file. This kind of file is not only used to hold the ShiVa game that will be executed, but can also contain independent resources. The pack can be loaded at runtime by the game in order to use the resources it contains.
The main objective of the packs provided here is to allow games to embed complex behaviours with very simple implementation. A pack can provide features that are very difficult to develop but thank to these packs you'll get the thing with only a few lines of code. The development time you save is just huge.
The use of these packages is very simple: place the .stk file in your project directory, load it and use it.
To facilitate the loading step of these packs, you will find below a file named JPPackLoader allowing you to load these packages with a single line of code.
At publish time, you just have to add the packs into the "Additional files" section of the Authoring Tool.
Packs can contain any kind of ShiVa resources (AIModels, textures, models, ...). However, most packs you'll find below contain only AIModels. Just like plugins, packages can create new script APIs, so what differences are there with plugins?
The packs have two disadvantages: the completion is not available for their APIs (Ctrl+Space shortcut not available and no LUA colorisation) and they only work with LUA projects (no C++ compilation). This last point is actually an advantage against the plugins because it allows the pack to be compatible with all platforms because there is no need to recompiled it, which also means that the packages are already compatible with platforms that have not been released yet!
Another advantage for the packs, their very small size. Let's compare the pack JPTweener to the Tweener plugin (available in the officiel ShiVa 3D Store): they both provide the same functionalities but JPTweener is only 25KB while the plugin is 4.5MB!
In fact the lack of completion and API colorization is not a problem because there's a workaround. For each pack available on this site, a "LUA extension" is prodided which is a "small plugin" that will provide you the completion and colorization, and you will use it only while in ShiVa Editor, it won't be exported. The combination of packs and their small plugin is the best possible solution because it offers the advantages of each of them without having the disadvantages.