Difference between revisions of "Gizmos Community Projects"

From Legends of Aria Admin and Modding Wiki
Jump to: navigation, search
(Spawner Object Commands)
(Gizmos Simple Spawner)
 
(108 intermediate revisions by the same user not shown)
Line 1: Line 1:
''this section is currently under construction''
+
== Gizmos Simple Spawner(legacy) ==
''last updated 12/08/2017
+
I would like to thank everybody who participated in this project. Gizmos Simple spawner is now in update mode. Only if the spawner is broken from a citadel studios update will there be new versions from me. Thanks and enjoy everybody.
== Simple Spawner ==
+
=== Current Version ===
The simple spawner system will allow you to get a custom spawning system up and running fast. My main scope of the project is to not only provide a easy tool to use, but to also be a learning tool for beginner scripters. I tried to comment most of my code to help find your way around it. For the experienced programmers I put in hooks for various things. I also included a minor scripting system to adjust the behavior of your spawned objects. Here is a list of features
+
{| class="wikitable"
 +
|-
 +
! Version !! Download ||Notes
 +
|-
 +
| 1.5 || [[Media:GizmosSimpleSpawnerV1.5.zip]] || Version 6.1b Added Trigger Events
 +
|-
 +
| 1.4.6 || [[Media:GizmosSimpleSpawnerV1.46.zip]] || Version 6.1 Beta Fixes.
 +
|-
 +
| 1.4.2 || [[Media:GizmosSimpleSpawnerV1.42.zip]] || Version 6.0 EXP Bug Fixes.
 +
|-
 +
| 1.4.1 || [[Media:GizmosSimpleSpawnerV1.41.zip]] || Fix for Version 6.0 EXP
 +
|-
 +
| 1.4 || [[Media:GizmosSimpleSpawnerV1.4.zip]] || patch notes included in file
 +
|-
 +
| 1.3 || [[Media:GizmosSimpleSpawnerV1.3.zip]] || patch notes included in file
 +
|-
 +
| 1.2 || [[Media:GizmosSimpleSpawnerV1.2.zip]] || patch notes included in file
 +
|-
 +
| 1.1 || [[Media:GizmosSimpleSpawnerV1.1.zip]] || patch notes included in file
 +
|-
 +
| 1.0 || [[Media:GizmosSimpleSpawnerV1.0.zip]] || patch notes included in file
 +
|-
 +
|}
  
=== Features ===
+
=== Introduction ===
 +
Gizmos Simple Spawner is a object you can place in your world in which will spawn given objects at a rate of your choosing. Simply it puts things in the world for you like monsters or harvest item, even a sword or some lemongrass. It does what it states.. it simply spawns stuff. There is another side to the Gizmos Simple Spawner system though.
 +
 
 +
Advanced Spawning is something of its own kinda beast. Not only can you spawn objects, but you can also modify those objects in many ways, such as its scale, or hue.. you can even use advanced things such as setting an object variable on the object. You can communicate with objects outside the spawner by using keywords and a simple scripting language that runs behind the scenes. You can force spawners to wait on other objects to get a varible or reach a certain sequence. Want to run a simple old school champion spawn from the days of old? You can do that too. But thats is not all.
 +
 
 +
The spawners have the ability to code there own templates based on the data you enter. So once you set up a spawner with data, or lots of data you want to reuse for other spawners. It is simple just create your spawner, edit the data and click a button and the template is created...
 +
 
 +
=== Installation ===
 +
# this mod was created so you didn't need any core edits other then the base_mobile.lua. This contains a wrapper function for when a monster dies, it communicates with the spawner system. if you haven't modified your base_mobile.lua, then dont worry about it. If you have, then you probably know what your doing, and can make the simple edit to add my code to your files.
 +
#  Place the contents of the /scripts folder into your Mods /scripts folder
 +
#  Place the contents of the /templates folder into your Mods /template folder
 +
#  your done!
 +
 
 +
 
 +
If you do not have a installed mod, then you need to create a folder in your mods directory, if
 +
you are new to this do the following
 +
 
 +
 
 +
create a new folder in your mods directory named MyMod. inside your MyMod directory you need to
 +
paste the contents of the /scripts and /templates folder. you can copy the guide.pdf and the
 +
install.txt, it wont hurt anything.
 +
 
 +
now that you have the mod installed, you need to edit your clusterconfig.xml. Now scroll down
 +
and find <Mod Name="" /> edit it to look like this..
 +
 
 +
<Mod Name="MyMod"/>
 +
 
 +
 
 +
=== Scripting Reference ===
 +
==== Object Targeting Commands ====
 
{| class="wikitable"
 
{| class="wikitable"
 
|-
 
|-
! Feature !! Description
+
! Commands!! Argument!! Description
 +
|-
 +
| ''The following commands can be found in gizmos_simple_spawner.lua file.<br> You can find them in the CheckingCommands(data) function''
 +
|-
 +
| SendMessage()|| <Message>||This sends a message to the OBJECT you wish to send a message too.
 +
|-
 +
| SetHue()|| <hue>||This will apply the OBJECT:SetHue(<hue>) function to the OBJECT
 +
|-
 +
| Talk()|| <Message>||Gives the NPC a overhead message
 +
|-
 +
| SetScale()|| <int>||This sets the targets scale.x,scale.y,scale.z to <int>
 
|-
 
|-
| Normal Spawning || This spawner supports normal items, mobiles, and harvestable items.
+
| SetObjVar()|| <objvar>:<value>||this will set the <objvar> of the target to <value>
 
|-
 
|-
| Sequential Spawning || This spawner allows you to create a sequence in which monsters spawn. You can create waves or stages of a spawner.
+
| DelObjVar()|| <objvar>||this deletes an <objvar> from the target.+
 
|-
 
|-
| Customizing Loot Drops || With this you can create loot of your choice on a monster that spawns, it will also allow you to choose the frequency in which it drops, and choice of quantity.
+
| RotateBy()|| <x,y,z>||rotates the x,y,z by the values in degrees.
 
|-
 
|-
| Active Spawn Monitoring || You will be able to keep track of every thing spawned from a list so you do not have to run around and find it.
+
| SetLocation()|| <x,y,z>||moves the target to the x,y,z values for the location.
 
|-
 
|-
| Search Features || You will be able to query the map/region your in and find all the spawners that match a variety of query choices.
+
| PlayEffect()|| <effectname>||plays the <effectname> on the target
 
|-
 
|-
| Configuration Options || You will be able to change many things such as frequency of how many monsters spawn, how close and far away they can spawn, how many total can spawn, plus more.
+
| StopEffect()|| <effectname>|| stops the <effectname> on the target
 
|-
 
|-
| Scriptable Objects || With this upon spawning something, it will read the options you set and adjust the object accordingly.. such as, adding str, agi or any other stat to a monster to whatever value you want. You can send messages to other objects.
+
| PlaySound()|| <soundname>|| plays the <soundname> at the targets location
 +
|-
 +
[https://www.legendsofaria.com/lN2rwhz4jSVambqesEBZ/index.php/Gizmos_Community_Projects [Back to Top<nowiki>]</nowiki>]
 
|}
 
|}
  
=== Latest Version 1.3===
+
==== Spawned Object Commands ====
''version 1.3 was released on 12/08/2017''
+
 
 
{| class="wikitable"
 
{| class="wikitable"
 
|-
 
|-
! Video!! Description
+
! Commands!! Syntax!! Description
 +
|-
 +
| ''The following commands can be found in gizmos_simple_spawner.lua file.<br> You can find them in the HandleChanges(mob,spawn_template)  function''
 +
|-
 +
| hue|| @hue:<value>|| this will set the hue of the spawned object.
 +
|-
 +
| scale|| @scale:<value>|| this will set the scale of the spawned object.
 +
|-
 +
| str|| @str:<value>||this will set the  of the spawned object.
 +
|-
 +
| agi|| @agi:<value>||this will set the  of the spawned object.
 +
|-
 +
| int|| @int:<value>||this will set the  of the spawned object.
 +
|-
 +
| con|| @con:<value>||this will set the  of the spawned object.
 +
|-
 +
| wis|| @wis:<value>||this will set the  of the spawned object.
 +
|-
 +
| will|| @will:<value>||this will set the  of the spawned object.
 +
|-
 +
| name|| @name:<value>||this will set the  of the spawned object.
 +
|-
 +
| title|| @title:<value>||this will set the  of the spawned object.
 +
|-
 +
| team|| @team:<value>||this will set the  of the spawned object..
 
|-
 
|-
| [https://youtu.be/ZJbO-JOnZcU Update Information] || This video covers the topics for the 1.3 release.
+
| location|| @location:<x>,<y>,<z>||this will spawn the object at x,y,z location.
 
|-
 
|-
| [https://youtu.be/kCz7QGNMzu4 Normal Spawning] || This video shows how to create a normal spawn.
+
| rotate|| @rotate:<x>,<y>,<z>||this will rotate some objects by x,y,z rotation.
 
|-
 
|-
| [https://youtu.be/YtoJiZrA9SU Loot Changes] || This video goes over the loot system updates.
+
| setobjvar|| @setobjvar:<objvarname>,<objvarvalue>||this will add an objvar to the spawning object
 
|-
 
|-
| [https://youtu.be/nmA_pCeSHOA Sequential Spawning] || This video goes over the loot system updates.
+
| effect|| @effect:<value>||this will set the  of the spawned object.
 +
|-
 +
| sound|| @sound:<value>||this will set the  of the spawned object.
 +
|-
 +
| body|| @body:<value>||this will set the  of the spawned object..
 +
|-
 +
| invuln|| @invuln:<true>/<false>||this will set the mob spawned to be invulnerable.
 +
|-
 +
| facing|| @facing:<value>||this will set the  of the spawned object.
 +
|-
 +
| health|| @health:<value>||this will set the  of the spawned object..
 +
|-
 +
| stamina|| @stamina:<value>||this will set the  of the spawned object.
 +
|-
 +
| mana|| @mana:<value>||this will set the  of the spawned object.
 
|-
 
|-
 
|}
 
|}
 +
[https://www.legendsofaria.com/lN2rwhz4jSVambqesEBZ/index.php/Gizmos_Community_Projects [Back to Top<nowiki>]</nowiki>]
  
=== Testing Version 1.4===
+
==== OBJECTLIST Commands ====
''version 1.4 currently has no release date..''
+
OBJECTLIST gives you the ability to make a list of objects. Then with the RANDOM,ALL you will be able to send a message to a RANDOM object on the list, or ALL of the objects on the list.
''version 1.4 is in early stages..''
 
''last wiki edit: 12/11/2017''
 
 
{| class="wikitable"
 
{| class="wikitable"
 
|-
 
|-
! Video!! Description
+
! Example Syntax!! What it means
 
|-
 
|-
| [https://youtu.be/RxAjafVoUcI Version 1.4 Preview 1] || This video covers some of the newer features for the 1.4 release.
+
| ''The following commands can be found in gizmos_simple_spawner.lua file.<br> You can find them in the HandleChanges(mob,spawn_template)  function''
 
|-
 
|-
 +
| OBJECTLIST@RANDOM@objectid1,objectid2,objectid3@SendMessage()@<message>||this will randomly pick from objectid1,objectid2,objectid3 and will send the message <message> to the randomly picked object
 +
|-
 +
| OBJECTLIST@ALL@objectid1,objectid2,objectid3@SendMessage()@<message>||this will send all of objectid1,objectid2,objectid3 the message <message>
 +
|-
 +
[https://www.legendsofaria.com/lN2rwhz4jSVambqesEBZ/index.php/Gizmos_Community_Projects [Back to Top<nowiki>]</nowiki>]
 
|}
 
|}
  
=== Tutorials ===
+
FUNCTIONS
 
{| class="wikitable"
 
{| class="wikitable"
 
|-
 
|-
! Video!! Diffaculty!! Description
+
! Function Name!! Syntax!! Description
 
|-
 
|-
| [https://www.youtube.com/watch?v=mwk0MXIjPf4&feature=youtu.be What is a sequential spawner?] || Beginner || This video covers the idea of what a sequential spawner is and what it can do.
+
| ''The following commands can be found in gizmos_simple_spawner.lua file.<br> You can find them in the HandleChanges(mob,spawn_template)  function''
 
|-
 
|-
| [https://youtu.be/OmeOcef4aJA Where/How to create a command] || Advanced || This video will show you how and where to put or add your lua code to extend the spawner to your servers needs.
+
| SendMessage()||@SendMessage()@<message>||this will send the <message> to the object
 
|-
 
|-
 +
| SetHue||@SetHue()@<value>||this will set the objects hue to <value>
 +
|-
 +
[https://www.legendsofaria.com/lN2rwhz4jSVambqesEBZ/index.php/Gizmos_Community_Projects [Back to Top<nowiki>]</nowiki>]
 
|}
 
|}
  
=== Spawner Object Commands ===
+
==== WAITFOR Commands ====
 
{| class="wikitable"
 
{| class="wikitable"
 
|-
 
|-
! Category!! Format
+
! Commands!! Syntax!! Description
 +
|-
 +
| ''The following commands can be found in gizmos_simple_spawner.lua file.<br> You can find them in the HandleChanges(mob,spawn_template)  function''
 +
|-
 +
| GetObjVar()|| WAITFOR@OBJECT@<objectid>@GetObjVar()@<objvarname>@<condition>@<value>|| the spawner will wait at this sequence, until an objvar meets a condition.
 
|-
 
|-
| [https://www.legendsofaria.com/lN2rwhz4jSVambqesEBZ/index.php/Spawned_Object_Commands Spawned Object Commands] || These are the commands you want to use on a individual spawn object, in which the spawner is placing in the world.  
+
| HasObjVar()|| WAITFOR@OBJECT@<objectid>@HasObjVar()@<objvarname>|| the spawner will wait at this sequence, until the object has the objvar.
 
|-
 
|-
| [https://youtu.be/OmeOcef4aJA Object Targeting Commands] || These are the commands you want to use to adjust aspects of objects not related to the simple spawner.
+
| HasModule()|| WAITFOR@OBJECT@<objectid>@HasModule()@<modulename>|| the spawner will wait at this sequence, until the object has the module <modulename>.
 
|-
 
|-
 
|}
 
|}
 +
[https://www.legendsofaria.com/lN2rwhz4jSVambqesEBZ/index.php/Gizmos_Community_Projects [Back to Top<nowiki>]</nowiki>]
  
== Simple Merchant ==
+
==== MISC Commands ====
 +
{| class="wikitable"
 +
|-
 +
! Commands!! Syntax!! Description
 +
|-
 +
| ''The following commands can be found in gizmos_simple_spawner.lua file.<br> You can find them in the HandleChanges(mob,spawn_template)  function''
 +
|-
 +
| GOTO|| GOTO@<sequence>|| this will start the sequence off at the sequence provided by <sequence>
 +
|}
 +
[https://www.legendsofaria.com/lN2rwhz4jSVambqesEBZ/index.php/Gizmos_Community_Projects [Back to Top<nowiki>]</nowiki>]
 +
 
 +
== Gizmos Simple Merchant ==
 +
=== Current Version ===
 +
{| class="wikitable"
 +
|-
 +
! Version !! Download ||Notes
 +
|-
 +
| 1.12|| [[Media:GizmosSimpleMerchantV1.12.zip]] || Fix for Version 6.0 EXP
 +
|-
 +
| 1.11 || [[Media:GizmosSimpleMerchantV1.11.zip]] || patch notes included in file
 +
|-| 1.1 || [[Media:GizmosSimpleMerchantV1.1.zip]] || patch notes included in file
 +
|-
 +
| 1.0 || [[Media:GizmosSimpleMerchantV1.0.zip]] || patch notes included in file
 +
|-
 +
|}
  
== Item Properties ==
+
== GizmoMod ==
 +
this download contains all my systems in one full sweep. There is some random experimental systems in place. this is a summary of about 9 months of development. I feel its a good starting point or has many good examples to learn from. Anyways, enjoy everybody.
 +
 
 +
this package contains
 +
* gizmos simple spawner
 +
* gizmos quest system
 +
* gizmos merchant system
 +
* gizmos region system
 +
* gizmos loot (item properties)
 +
* other weird items
 +
 
 +
{| class="wikitable"
 +
|-
 +
! Version !! Download ||Notes
 +
|-
 +
| 1.0 || [[Media:GizmoMod.zip]] || contains all my mods in one package
 +
|}

Latest revision as of 14:17, 29 May 2018

Gizmos Simple Spawner(legacy)

I would like to thank everybody who participated in this project. Gizmos Simple spawner is now in update mode. Only if the spawner is broken from a citadel studios update will there be new versions from me. Thanks and enjoy everybody.

Current Version

Version Download Notes
1.5 Media:GizmosSimpleSpawnerV1.5.zip Version 6.1b Added Trigger Events
1.4.6 Media:GizmosSimpleSpawnerV1.46.zip Version 6.1 Beta Fixes.
1.4.2 Media:GizmosSimpleSpawnerV1.42.zip Version 6.0 EXP Bug Fixes.
1.4.1 Media:GizmosSimpleSpawnerV1.41.zip Fix for Version 6.0 EXP
1.4 Media:GizmosSimpleSpawnerV1.4.zip patch notes included in file
1.3 Media:GizmosSimpleSpawnerV1.3.zip patch notes included in file
1.2 Media:GizmosSimpleSpawnerV1.2.zip patch notes included in file
1.1 Media:GizmosSimpleSpawnerV1.1.zip patch notes included in file
1.0 Media:GizmosSimpleSpawnerV1.0.zip patch notes included in file

Introduction

Gizmos Simple Spawner is a object you can place in your world in which will spawn given objects at a rate of your choosing. Simply it puts things in the world for you like monsters or harvest item, even a sword or some lemongrass. It does what it states.. it simply spawns stuff. There is another side to the Gizmos Simple Spawner system though.

Advanced Spawning is something of its own kinda beast. Not only can you spawn objects, but you can also modify those objects in many ways, such as its scale, or hue.. you can even use advanced things such as setting an object variable on the object. You can communicate with objects outside the spawner by using keywords and a simple scripting language that runs behind the scenes. You can force spawners to wait on other objects to get a varible or reach a certain sequence. Want to run a simple old school champion spawn from the days of old? You can do that too. But thats is not all.

The spawners have the ability to code there own templates based on the data you enter. So once you set up a spawner with data, or lots of data you want to reuse for other spawners. It is simple just create your spawner, edit the data and click a button and the template is created...

Installation

  1. this mod was created so you didn't need any core edits other then the base_mobile.lua. This contains a wrapper function for when a monster dies, it communicates with the spawner system. if you haven't modified your base_mobile.lua, then dont worry about it. If you have, then you probably know what your doing, and can make the simple edit to add my code to your files.
  2. Place the contents of the /scripts folder into your Mods /scripts folder
  3. Place the contents of the /templates folder into your Mods /template folder
  4. your done!


If you do not have a installed mod, then you need to create a folder in your mods directory, if you are new to this do the following


create a new folder in your mods directory named MyMod. inside your MyMod directory you need to paste the contents of the /scripts and /templates folder. you can copy the guide.pdf and the install.txt, it wont hurt anything.

now that you have the mod installed, you need to edit your clusterconfig.xml. Now scroll down and find <Mod Name="" /> edit it to look like this..

<Mod Name="MyMod"/>


Scripting Reference

Object Targeting Commands

[Back to Top]
Commands Argument Description
The following commands can be found in gizmos_simple_spawner.lua file.
You can find them in the CheckingCommands(data) function
SendMessage() <Message> This sends a message to the OBJECT you wish to send a message too.
SetHue() <hue> This will apply the OBJECT:SetHue(<hue>) function to the OBJECT
Talk() <Message> Gives the NPC a overhead message
SetScale() <int> This sets the targets scale.x,scale.y,scale.z to <int>
SetObjVar() <objvar>:<value> this will set the <objvar> of the target to <value>
DelObjVar() <objvar> this deletes an <objvar> from the target.+
RotateBy() <x,y,z> rotates the x,y,z by the values in degrees.
SetLocation() <x,y,z> moves the target to the x,y,z values for the location.
PlayEffect() <effectname> plays the <effectname> on the target
StopEffect() <effectname> stops the <effectname> on the target
PlaySound() <soundname> plays the <soundname> at the targets location

Spawned Object Commands

Commands Syntax Description
The following commands can be found in gizmos_simple_spawner.lua file.
You can find them in the HandleChanges(mob,spawn_template) function
hue @hue:<value> this will set the hue of the spawned object.
scale @scale:<value> this will set the scale of the spawned object.
str @str:<value> this will set the of the spawned object.
agi @agi:<value> this will set the of the spawned object.
int @int:<value> this will set the of the spawned object.
con @con:<value> this will set the of the spawned object.
wis @wis:<value> this will set the of the spawned object.
will @will:<value> this will set the of the spawned object.
name @name:<value> this will set the of the spawned object.
title @title:<value> this will set the of the spawned object.
team @team:<value> this will set the of the spawned object..
location @location:<x>,<y>,<z> this will spawn the object at x,y,z location.
rotate @rotate:<x>,<y>,<z> this will rotate some objects by x,y,z rotation.
setobjvar @setobjvar:<objvarname>,<objvarvalue> this will add an objvar to the spawning object
effect @effect:<value> this will set the of the spawned object.
sound @sound:<value> this will set the of the spawned object.
body @body:<value> this will set the of the spawned object..
invuln @invuln:<true>/<false> this will set the mob spawned to be invulnerable.
facing @facing:<value> this will set the of the spawned object.
health @health:<value> this will set the of the spawned object..
stamina @stamina:<value> this will set the of the spawned object.
mana @mana:<value> this will set the of the spawned object.

[Back to Top]

OBJECTLIST Commands

OBJECTLIST gives you the ability to make a list of objects. Then with the RANDOM,ALL you will be able to send a message to a RANDOM object on the list, or ALL of the objects on the list.

[Back to Top]
Example Syntax What it means
The following commands can be found in gizmos_simple_spawner.lua file.
You can find them in the HandleChanges(mob,spawn_template) function
OBJECTLIST@RANDOM@objectid1,objectid2,objectid3@SendMessage()@<message> this will randomly pick from objectid1,objectid2,objectid3 and will send the message <message> to the randomly picked object
OBJECTLIST@ALL@objectid1,objectid2,objectid3@SendMessage()@<message> this will send all of objectid1,objectid2,objectid3 the message <message>

FUNCTIONS

[Back to Top]
Function Name Syntax Description
The following commands can be found in gizmos_simple_spawner.lua file.
You can find them in the HandleChanges(mob,spawn_template) function
SendMessage() @SendMessage()@<message> this will send the <message> to the object
SetHue @SetHue()@<value> this will set the objects hue to <value>

WAITFOR Commands

Commands Syntax Description
The following commands can be found in gizmos_simple_spawner.lua file.
You can find them in the HandleChanges(mob,spawn_template) function
GetObjVar() WAITFOR@OBJECT@<objectid>@GetObjVar()@<objvarname>@<condition>@<value> the spawner will wait at this sequence, until an objvar meets a condition.
HasObjVar() WAITFOR@OBJECT@<objectid>@HasObjVar()@<objvarname> the spawner will wait at this sequence, until the object has the objvar.
HasModule() WAITFOR@OBJECT@<objectid>@HasModule()@<modulename> the spawner will wait at this sequence, until the object has the module <modulename>.

[Back to Top]

MISC Commands

Commands Syntax Description
The following commands can be found in gizmos_simple_spawner.lua file.
You can find them in the HandleChanges(mob,spawn_template) function
GOTO GOTO@<sequence> this will start the sequence off at the sequence provided by <sequence>

[Back to Top]

Gizmos Simple Merchant

Current Version

Version Download Notes
1.12 Media:GizmosSimpleMerchantV1.12.zip Fix for Version 6.0 EXP
1.11 Media:GizmosSimpleMerchantV1.11.zip patch notes included in file
1.0 Media:GizmosSimpleMerchantV1.0.zip patch notes included in file

GizmoMod

this download contains all my systems in one full sweep. There is some random experimental systems in place. this is a summary of about 9 months of development. I feel its a good starting point or has many good examples to learn from. Anyways, enjoy everybody.

this package contains

  • gizmos simple spawner
  • gizmos quest system
  • gizmos merchant system
  • gizmos region system
  • gizmos loot (item properties)
  • other weird items
Version Download Notes
1.0 Media:GizmoMod.zip contains all my mods in one package