Lich scripting engine: Difference between revisions

From Elanthipedia
Jump to navigation Jump to search
No edit summary
 
(13 intermediate revisions by 7 users not shown)
Line 1: Line 1:
{{disambig2|Lich}}


== Understanding Lich ==
== Understanding Lich ==
Line 7: Line 8:


=== Note ===
=== Note ===
Many users utilize Lich it as simply a chat room for discussion and to get help, while others utilize the Lich-based software suite '''Dependency''' for all their scripting needs. '''Dependency''' is basically interchangeable with '''Lich''', but they are in fact two separate things. Please check out the [[Dependency]] page for more details regarding its use.
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 ==


Basic Lich instructions are found here[https://lichproject.org/download.html#win_storm_wiz_lich].
[https://github.com/rpherbig/dr-scripts/wiki/First-Time-Setup Lich install instructions are found here]


=== Solving RubyGems Error ===
== 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.


<code>
Sometimes when installing you can run across issues where a RubyGem error will pop up, for example:
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
</code>


== Lich Script Repository ==


https://elanthipedia.play.net/Lich_script_repository
<code>--- Lich: error: Could not find a valid gem 'rest-firebase' (~> 1.1.0) locally or in a repository</code>


== External Ruby Help ==
<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>


http://tryruby.org/levels/1/challenges/0


https://www.codecademy.com/learn/learn-ruby
'''To fix this error:'''

* Open up a cmd prompt (win+r cmd enter)
* Use the cd command to navigate to c:\ruby200\bin
* Run gem which rubygems to see which directory rubygems is installed in.

[[File:Example_rubygem_error.png]]

* Navigate to the directory listed above, and then into the rubygems -> ssl_certs folder.

[[File:Example_ruby_gem_loc.png]]

* Save this certificate 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 ==

== External Ruby Help ==

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

External Ruby Help

http://tryruby.org/levels/1/challenges/0

https://www.codecademy.com/learn/learn-ruby