Lich scripting engine: Difference between revisions
(Added link to script repository page and a couple of links for ruby tutorials.) |
RANGERMAHTRA (talk | contribs) No edit summary |
||
(5 intermediate revisions by 4 users not shown) | |||
Line 8: | Line 8: | ||
=== Note === |
=== Note === |
||
Many users utilize Lich as simply a game-wide chat room for discussion and to get help, while others utilize the Lich-based software suite ''' |
Many users utilize Lich as simply a game-wide chat room for discussion and to get help, while others utilize the Lich-based software suite '''DR-Scripts''' for all their scripting needs. '''DR-Scripts''' is basically interchangeable with '''Lich''', but they are in fact two separate things. Please check out the [[Dr-scripts]] page for more details regarding its use. |
||
== Setting Up == |
== Setting Up == |
||
[https://github.com/rpherbig/dr-scripts/wiki/First-Time-Setup Lich install instructions are found here] |
|||
=== Solving RubyGems Error === |
|||
Sometimes when installing you can run across issues where a RubyGem error will pop up, for example: |
|||
<code>--- Lich: error: Could not find a valid gem 'rest-firebase' (~> 1.1.0) locally or in a repository</code> |
|||
<code>Unable to download data from https://rubygems.org/ - SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed</code> |
|||
'''To fix this error:''' |
|||
* Open up a cmd prompt (WIN_KEY + R, type <code>cmd</code>, press enter) |
|||
* Type <code> cd c:\ruby200\bin</code> to navigate to c:\ruby200\bin |
|||
* Run <code> gem which rubygems</code> to see which directory rubygems is installed in. |
|||
=== Example, your location may vary! === |
|||
[[File:Example_rubygem_error.png]] |
|||
* Navigate to the correct directory, and then into the rubygems\ssl_certs folder. |
|||
'''EXAMPLE:''' <code> C:\YourCorrectPath\rubygems\ssl </code> |
|||
[[File:Example_ruby_gem_loc.png]] |
|||
* Obtain the certificate file GlobalSignRootCA.pem [https://raw.githubusercontent.com/rubygems/rubygems/master/lib/rubygems/ssl_certs/index.rubygems.org/GlobalSignRootCA.pem](right click->save as) to the ssl_certs folder you located above. '''Make sure it's saved as a .pem file, not a .txt file.''' |
|||
* Run Lich. |
|||
== Scripting Example == |
== Scripting Example == |
Latest revision as of 21:36, 14 May 2022
- There are other pages that use the name "Lich." Follow the link for more details.
Understanding Lich
Welcome to Lich! The Lich Engine (Lich) is a Ruby-based scripting engine which was originally designed for the Simutronic’s Game Gemstone. The foundation of Lich is such that it provides a means to automate the gameplay through use of scripts written in the Ruby programming language. Lich is not a Front End (FE), it is a scripting engine that hooks into an FE and communicates through it with the Simutronic’s servers. Currently, the most widely used FE’s for DR with Lich are Wizard, Storm Front, Genie, Profanity, and Frostbite. Some work right out of the box while others require a bit of tweaking, but all have been used successfully for a long time. The base Lich install supports the use of the go2 command, which works just like Genies’ goto. Mapping is supported by the narost script. Narost loads a Ruby-based window that provides a point and click map for traversing around Elanthia. Narost was named after Gemstone’s original mapper, Tsoran (it’s his name backward). Go2 and the narost map database are updated frequently.
This is the foundation of Lich. You can write scripts in Ruby, and place them in the Lich/scripts folder and access them in-game using the semicolon command. Let’s say you write a simple script that removed all your armor and you named it removearmor.lic. You would then use the command “;removearmor” in-game to invoke that script and run it. As you can see, this is very similar to how Genie or SF scripts work with the comma and period invoking. You have access to making all your own scripts by converting SF/Genie scripts to Ruby, etc.
Note
Many users utilize Lich as simply a game-wide chat room for discussion and to get help, while others utilize the Lich-based software suite DR-Scripts for all their scripting needs. DR-Scripts is basically interchangeable with Lich, but they are in fact two separate things. Please check out the Dr-scripts page for more details regarding its use.
Setting Up
Lich install instructions are found here
Scripting Example
In the basic script below, once every 10 seconds we check if the spell Regenerate is up, if it isn't, we recast it.
loop do
if DRSpells.active_spells['Regenerate'].to_i <=0
stop_script('magic') if Script.running?('magic')
fput('prep regen')
waitcastrt?
fput('cast')
end
pause 10
end
Lich Script Repository
https://elanthipedia.play.net/Lich_script_repository