Skip to content

Set of DFHack scripts specially designed to be used as spells

Notifications You must be signed in to change notification settings

Bltgn/DFHack_spells

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

<html><head><title>Scripts</title><meta content="text/html; charset=UTF-8" http-equiv="content-type"><style type="text/css">ul.lst-kix_v3mb2kz7f0lz-5{list-style-type:none}ul.lst-kix_cewwwushz2is-7{list-style-type:none}.lst-kix_mwohkyi5svwo-6>li:before{content:"\0025cf  "}ul.lst-kix_v3mb2kz7f0lz-6{list-style-type:none}ul.lst-kix_cewwwushz2is-6{list-style-type:none}.lst-kix_yrqpi8kjqo3r-8>li:before{content:"\0025a0  "}ul.lst-kix_v3mb2kz7f0lz-7{list-style-type:none}ul.lst-kix_v3mb2kz7f0lz-8{list-style-type:none}ul.lst-kix_cewwwushz2is-8{list-style-type:none}ul.lst-kix_v3mb2kz7f0lz-1{list-style-type:none}ul.lst-kix_cewwwushz2is-3{list-style-type:none}.lst-kix_v3mb2kz7f0lz-6>li:before{content:"\0025cf  "}ul.lst-kix_v3mb2kz7f0lz-2{list-style-type:none}ul.lst-kix_i77qy0azghyh-0{list-style-type:none}ul.lst-kix_cewwwushz2is-2{list-style-type:none}ul.lst-kix_v3mb2kz7f0lz-3{list-style-type:none}ul.lst-kix_cewwwushz2is-5{list-style-type:none}.lst-kix_mwohkyi5svwo-1>li:before{content:"\0025cb  "}.lst-kix_mwohkyi5svwo-8>li:before{content:"\0025a0  "}ul.lst-kix_v3mb2kz7f0lz-4{list-style-type:none}ul.lst-kix_cewwwushz2is-4{list-style-type:none}ul.lst-kix_i77qy0azghyh-3{list-style-type:none}ul.lst-kix_i77qy0azghyh-4{list-style-type:none}ul.lst-kix_i77qy0azghyh-1{list-style-type:none}ul.lst-kix_cewwwushz2is-1{list-style-type:none}ul.lst-kix_i77qy0azghyh-2{list-style-type:none}ul.lst-kix_cewwwushz2is-0{list-style-type:none}ul.lst-kix_i77qy0azghyh-7{list-style-type:none}.lst-kix_a9qpfeqht24t-4>li:before{content:"\0025cb  "}ul.lst-kix_i77qy0azghyh-8{list-style-type:none}ul.lst-kix_i77qy0azghyh-5{list-style-type:none}ul.lst-kix_i77qy0azghyh-6{list-style-type:none}.lst-kix_c2egun7wh79g-4>li:before{content:"\0025cb  "}.lst-kix_i77qy0azghyh-4>li:before{content:"\0025cb  "}.lst-kix_hy8jiwns1uv1-0>li:before{content:"\0025cf  "}.lst-kix_k6h3nc75xt7z-5>li:before{content:"\0025a0  "}.lst-kix_x3qx7s3ad3iy-1>li:before{content:"\0025cb  "}.lst-kix_byi60nyit4ll-6>li:before{content:"\0025cf  "}.lst-kix_ri0rcmcgjkcf-1>li:before{content:"\0025cb  "}.lst-kix_wikihn2hpqio-7>li:before{content:"\0025cb  "}.lst-kix_byi60nyit4ll-3>li:before{content:"\0025cf  "}.lst-kix_lcl8qtm8jjju-8>li:before{content:"\0025a0  "}.lst-kix_twh1unozuzb5-2>li:before{content:"\0025a0  "}.lst-kix_wikihn2hpqio-2>li:before{content:"\0025a0  "}.lst-kix_euwjsb1mdt29-7>li:before{content:"\0025cb  "}.lst-kix_umf8v1h3m5ky-3>li:before{content:"\0025cf  "}.lst-kix_yyby0z9wuudc-5>li:before{content:"\0025a0  "}.lst-kix_cewwwushz2is-7>li:before{content:"\0025cb  "}.lst-kix_hy8jiwns1uv1-8>li:before{content:"\0025a0  "}.lst-kix_yrqpi8kjqo3r-2>li:before{content:"\0025a0  "}ul.lst-kix_yyby0z9wuudc-0{list-style-type:none}ul.lst-kix_xucpetr9zrwv-8{list-style-type:none}ul.lst-kix_yyby0z9wuudc-2{list-style-type:none}ul.lst-kix_xucpetr9zrwv-7{list-style-type:none}ul.lst-kix_yyby0z9wuudc-1{list-style-type:none}ul.lst-kix_xucpetr9zrwv-6{list-style-type:none}.lst-kix_x3qx7s3ad3iy-6>li:before{content:"\0025cf  "}ul.lst-kix_xucpetr9zrwv-5{list-style-type:none}ul.lst-kix_xucpetr9zrwv-4{list-style-type:none}ul.lst-kix_xucpetr9zrwv-3{list-style-type:none}ul.lst-kix_xucpetr9zrwv-2{list-style-type:none}ul.lst-kix_xucpetr9zrwv-1{list-style-type:none}ul.lst-kix_xucpetr9zrwv-0{list-style-type:none}.lst-kix_xucpetr9zrwv-1>li:before{content:"\0025cb  "}.lst-kix_ri0rcmcgjkcf-0>li:before{content:"\0025cf  "}ul.lst-kix_yyby0z9wuudc-7{list-style-type:none}.lst-kix_lal6yxako6g-2>li:before{content:"\0025a0  "}ul.lst-kix_yyby0z9wuudc-8{list-style-type:none}ul.lst-kix_yyby0z9wuudc-5{list-style-type:none}ul.lst-kix_yyby0z9wuudc-6{list-style-type:none}ul.lst-kix_yyby0z9wuudc-3{list-style-type:none}ul.lst-kix_yyby0z9wuudc-4{list-style-type:none}.lst-kix_3us3o9vtiwhj-8>li:before{content:"\0025a0  "}ul.lst-kix_pvyimyezsrc1-7{list-style-type:none}ul.lst-kix_pvyimyezsrc1-8{list-style-type:none}ul.lst-kix_pvyimyezsrc1-5{list-style-type:none}ul.lst-kix_pvyimyezsrc1-6{list-style-type:none}.lst-kix_isrne8nmnm6z-4>li:before{content:"\0025cb  "}.lst-kix_fi7s2q5kurfs-8>li:before{content:"\0025a0  "}.lst-kix_fi7s2q5kurfs-7>li:before{content:"\0025cb  "}ul.lst-kix_pvyimyezsrc1-0{list-style-type:none}ul.lst-kix_pvyimyezsrc1-3{list-style-type:none}.lst-kix_cewwwushz2is-2>li:before{content:"\0025a0  "}ul.lst-kix_pvyimyezsrc1-4{list-style-type:none}.lst-kix_xtosirfq7xs2-7>li:before{content:"\0025cb  "}ul.lst-kix_pvyimyezsrc1-1{list-style-type:none}ul.lst-kix_pvyimyezsrc1-2{list-style-type:none}.lst-kix_yyby0z9wuudc-0>li:before{content:"\0025cf  "}.lst-kix_wikihn2hpqio-6>li:before{content:"\0025cf  "}ul.lst-kix_k6h3nc75xt7z-0{list-style-type:none}ul.lst-kix_k6h3nc75xt7z-1{list-style-type:none}ul.lst-kix_k6h3nc75xt7z-2{list-style-type:none}ul.lst-kix_k6h3nc75xt7z-3{list-style-type:none}ul.lst-kix_k6h3nc75xt7z-4{list-style-type:none}ul.lst-kix_k6h3nc75xt7z-5{list-style-type:none}ul.lst-kix_k6h3nc75xt7z-6{list-style-type:none}ul.lst-kix_k6h3nc75xt7z-7{list-style-type:none}.lst-kix_wikihn2hpqio-1>li:before{content:"\0025cb  "}ul.lst-kix_k6h3nc75xt7z-8{list-style-type:none}.lst-kix_lcl8qtm8jjju-6>li:before{content:"\0025cf  "}.lst-kix_xtosirfq7xs2-3>li:before{content:"\0025cf  "}.lst-kix_cewwwushz2is-8>li:before{content:"\0025a0  "}.lst-kix_k6h3nc75xt7z-4>li:before{content:"\0025cb  "}.lst-kix_2ew2pcckubyi-1>li:before{content:"\0025cb  "}.lst-kix_pvyimyezsrc1-2>li:before{content:"\0025a0  "}.lst-kix_umf8v1h3m5ky-6>li:before{content:"\0025cf  "}.lst-kix_k6h3nc75xt7z-2>li:before{content:"\0025a0  "}.lst-kix_pwsw16lsguc4-4>li:before{content:"\0025cb  "}.lst-kix_xtosirfq7xs2-0>li:before{content:"\0025cf  "}.lst-kix_cewwwushz2is-4>li:before{content:"\0025cb  "}.lst-kix_umf8v1h3m5ky-7>li:before{content:"\0025cb  "}ul.lst-kix_lcl8qtm8jjju-5{list-style-type:none}ul.lst-kix_lcl8qtm8jjju-6{list-style-type:none}ul.lst-kix_lcl8qtm8jjju-7{list-style-type:none}.lst-kix_yyby0z9wuudc-6>li:before{content:"\0025cf  "}ul.lst-kix_lcl8qtm8jjju-8{list-style-type:none}.lst-kix_k6h3nc75xt7z-8>li:before{content:"\0025a0  "}.lst-kix_c2egun7wh79g-5>li:before{content:"\0025a0  "}.lst-kix_twh1unozuzb5-0>li:before{content:"\0025cf  "}.lst-kix_umf8v1h3m5ky-8>li:before{content:"\0025a0  "}.lst-kix_pvyimyezsrc1-1>li:before{content:"\0025cb  "}.lst-kix_euwjsb1mdt29-8>li:before{content:"\0025a0  "}.lst-kix_euwjsb1mdt29-1>li:before{content:"\0025cb  "}.lst-kix_c2egun7wh79g-7>li:before{content:"\0025cb  "}.lst-kix_x3qx7s3ad3iy-4>li:before{content:"\0025cb  "}.lst-kix_2ew2pcckubyi-2>li:before{content:"\0025a0  "}.lst-kix_lal6yxako6g-1>li:before{content:"\0025cb  "}ul.lst-kix_lcl8qtm8jjju-4{list-style-type:none}.lst-kix_pwsw16lsguc4-5>li:before{content:"\0025a0  "}ul.lst-kix_yrqpi8kjqo3r-8{list-style-type:none}.lst-kix_euwjsb1mdt29-6>li:before{content:"\0025cf  "}ul.lst-kix_lcl8qtm8jjju-3{list-style-type:none}ul.lst-kix_yrqpi8kjqo3r-7{list-style-type:none}ul.lst-kix_lcl8qtm8jjju-2{list-style-type:none}ul.lst-kix_yrqpi8kjqo3r-6{list-style-type:none}ul.lst-kix_lcl8qtm8jjju-1{list-style-type:none}ul.lst-kix_lcl8qtm8jjju-0{list-style-type:none}ul.lst-kix_yrqpi8kjqo3r-1{list-style-type:none}ul.lst-kix_yrqpi8kjqo3r-0{list-style-type:none}.lst-kix_xucpetr9zrwv-8>li:before{content:"\0025a0  "}ul.lst-kix_yrqpi8kjqo3r-5{list-style-type:none}ul.lst-kix_yrqpi8kjqo3r-4{list-style-type:none}ul.lst-kix_yrqpi8kjqo3r-3{list-style-type:none}.lst-kix_x8phkr1tmy0f-5>li:before{content:"\0025a0  "}ul.lst-kix_yrqpi8kjqo3r-2{list-style-type:none}ul.lst-kix_2ew2pcckubyi-0{list-style-type:none}ul.lst-kix_2ew2pcckubyi-1{list-style-type:none}ul.lst-kix_2ew2pcckubyi-2{list-style-type:none}ul.lst-kix_2ew2pcckubyi-7{list-style-type:none}ul.lst-kix_2ew2pcckubyi-8{list-style-type:none}ul.lst-kix_2ew2pcckubyi-3{list-style-type:none}ul.lst-kix_2ew2pcckubyi-4{list-style-type:none}ul.lst-kix_2ew2pcckubyi-5{list-style-type:none}.lst-kix_mwohkyi5svwo-0>li:before{content:"\0025cf  "}ul.lst-kix_2ew2pcckubyi-6{list-style-type:none}ul.lst-kix_mwohkyi5svwo-1{list-style-type:none}.lst-kix_a9qpfeqht24t-1>li:before{content:"\0025cb  "}ul.lst-kix_mwohkyi5svwo-2{list-style-type:none}ul.lst-kix_mwohkyi5svwo-3{list-style-type:none}ul.lst-kix_mwohkyi5svwo-4{list-style-type:none}ul.lst-kix_mwohkyi5svwo-5{list-style-type:none}ul.lst-kix_v3mb2kz7f0lz-0{list-style-type:none}ul.lst-kix_mwohkyi5svwo-6{list-style-type:none}.lst-kix_hy8jiwns1uv1-3>li:before{content:"\0025cf  "}ul.lst-kix_mwohkyi5svwo-7{list-style-type:none}ul.lst-kix_mwohkyi5svwo-8{list-style-type:none}.lst-kix_ri0rcmcgjkcf-7>li:before{content:"\0025cb  "}.lst-kix_twh1unozuzb5-5>li:before{content:"\0025a0  "}.lst-kix_v3mb2kz7f0lz-2>li:before{content:"\0025a0  "}ul.lst-kix_mwohkyi5svwo-0{list-style-type:none}ul.lst-kix_hy8jiwns1uv1-3{list-style-type:none}ul.lst-kix_hy8jiwns1uv1-2{list-style-type:none}ul.lst-kix_hy8jiwns1uv1-1{list-style-type:none}.lst-kix_euwjsb1mdt29-3>li:before{content:"\0025cf  "}ul.lst-kix_hy8jiwns1uv1-0{list-style-type:none}ul.lst-kix_hy8jiwns1uv1-7{list-style-type:none}ul.lst-kix_hy8jiwns1uv1-6{list-style-type:none}ul.lst-kix_hy8jiwns1uv1-5{list-style-type:none}ul.lst-kix_hy8jiwns1uv1-4{list-style-type:none}.lst-kix_isrne8nmnm6z-5>li:before{content:"\0025a0  "}.lst-kix_x8phkr1tmy0f-2>li:before{content:"\0025a0  "}ul.lst-kix_hy8jiwns1uv1-8{list-style-type:none}.lst-kix_ri0rcmcgjkcf-8>li:before{content:"\0025a0  "}ul.lst-kix_isrne8nmnm6z-8{list-style-type:none}ul.lst-kix_jm28y2ae9kh6-0{list-style-type:none}.lst-kix_c2egun7wh79g-0>li:before{content:"\0025cf  "}ul.lst-kix_isrne8nmnm6z-6{list-style-type:none}ul.lst-kix_jm28y2ae9kh6-2{list-style-type:none}ul.lst-kix_isrne8nmnm6z-7{list-style-type:none}ul.lst-kix_jm28y2ae9kh6-1{list-style-type:none}.lst-kix_mwohkyi5svwo-4>li:before{content:"\0025cb  "}ul.lst-kix_jm28y2ae9kh6-8{list-style-type:none}.lst-kix_2ew2pcckubyi-0>li:before{content:"\0025cf  "}ul.lst-kix_jm28y2ae9kh6-7{list-style-type:none}.lst-kix_lal6yxako6g-7>li:before{content:"\0025cb  "}ul.lst-kix_jm28y2ae9kh6-4{list-style-type:none}ul.lst-kix_jm28y2ae9kh6-3{list-style-type:none}ul.lst-kix_jm28y2ae9kh6-6{list-style-type:none}ul.lst-kix_jm28y2ae9kh6-5{list-style-type:none}.lst-kix_pvyimyezsrc1-6>li:before{content:"\0025cf  "}.lst-kix_xtosirfq7xs2-4>li:before{content:"\0025cb  "}.lst-kix_i77qy0azghyh-6>li:before{content:"\0025cf  "}.lst-kix_x8phkr1tmy0f-3>li:before{content:"\0025cf  "}.lst-kix_x8phkr1tmy0f-1>li:before{content:"\0025cb  "}.lst-kix_lcl8qtm8jjju-4>li:before{content:"\0025cb  "}.lst-kix_jm28y2ae9kh6-2>li:before{content:"\0025a0  "}.lst-kix_i77qy0azghyh-3>li:before{content:"\0025cf  "}.lst-kix_a9qpfeqht24t-2>li:before{content:"\0025a0  "}.lst-kix_pvyimyezsrc1-7>li:before{content:"\0025cb  "}.lst-kix_mwohkyi5svwo-7>li:before{content:"\0025cb  "}.lst-kix_2ew2pcckubyi-3>li:before{content:"\0025cf  "}.lst-kix_yrqpi8kjqo3r-3>li:before{content:"\0025cf  "}.lst-kix_pwsw16lsguc4-8>li:before{content:"\0025a0  "}.lst-kix_cewwwushz2is-0>li:before{content:"\0025cf  "}.lst-kix_hy8jiwns1uv1-1>li:before{content:"\0025cb  "}.lst-kix_i77qy0azghyh-1>li:before{content:"\0025cb  "}.lst-kix_lal6yxako6g-0>li:before{content:"\0025cf  "}ul.lst-kix_ri0rcmcgjkcf-1{list-style-type:none}ul.lst-kix_ri0rcmcgjkcf-0{list-style-type:none}.lst-kix_v3mb2kz7f0lz-7>li:before{content:"\0025cb  "}ul.lst-kix_ri0rcmcgjkcf-5{list-style-type:none}ul.lst-kix_ri0rcmcgjkcf-4{list-style-type:none}ul.lst-kix_ri0rcmcgjkcf-3{list-style-type:none}ul.lst-kix_ri0rcmcgjkcf-2{list-style-type:none}ul.lst-kix_lal6yxako6g-2{list-style-type:none}ul.lst-kix_lal6yxako6g-1{list-style-type:none}ul.lst-kix_lal6yxako6g-4{list-style-type:none}ul.lst-kix_lal6yxako6g-3{list-style-type:none}ul.lst-kix_lal6yxako6g-6{list-style-type:none}.lst-kix_yyby0z9wuudc-4>li:before{content:"\0025cb  "}.lst-kix_fi7s2q5kurfs-3>li:before{content:"\0025cf  "}ul.lst-kix_a9qpfeqht24t-8{list-style-type:none}ul.lst-kix_lal6yxako6g-5{list-style-type:none}ul.lst-kix_a9qpfeqht24t-7{list-style-type:none}ul.lst-kix_lal6yxako6g-8{list-style-type:none}ul.lst-kix_a9qpfeqht24t-6{list-style-type:none}ul.lst-kix_lal6yxako6g-7{list-style-type:none}ul.lst-kix_a9qpfeqht24t-4{list-style-type:none}ul.lst-kix_a9qpfeqht24t-5{list-style-type:none}.lst-kix_3us3o9vtiwhj-5>li:before{content:"\0025a0  "}ul.lst-kix_a9qpfeqht24t-2{list-style-type:none}ul.lst-kix_a9qpfeqht24t-3{list-style-type:none}.lst-kix_byi60nyit4ll-4>li:before{content:"\0025cb  "}.lst-kix_c2egun7wh79g-8>li:before{content:"\0025a0  "}ul.lst-kix_a9qpfeqht24t-0{list-style-type:none}ul.lst-kix_a9qpfeqht24t-1{list-style-type:none}ul.lst-kix_ri0rcmcgjkcf-8{list-style-type:none}.lst-kix_ri0rcmcgjkcf-3>li:before{content:"\0025cf  "}.lst-kix_yrqpi8kjqo3r-4>li:before{content:"\0025cb  "}ul.lst-kix_ri0rcmcgjkcf-6{list-style-type:none}ul.lst-kix_ri0rcmcgjkcf-7{list-style-type:none}.lst-kix_x8phkr1tmy0f-8>li:before{content:"\0025a0  "}.lst-kix_wikihn2hpqio-4>li:before{content:"\0025cb  "}ul.lst-kix_3us3o9vtiwhj-4{list-style-type:none}ul.lst-kix_3us3o9vtiwhj-3{list-style-type:none}ul.lst-kix_3us3o9vtiwhj-6{list-style-type:none}ul.lst-kix_3us3o9vtiwhj-5{list-style-type:none}ul.lst-kix_3us3o9vtiwhj-0{list-style-type:none}.lst-kix_lal6yxako6g-3>li:before{content:"\0025cf  "}ul.lst-kix_3us3o9vtiwhj-2{list-style-type:none}ul.lst-kix_3us3o9vtiwhj-1{list-style-type:none}.lst-kix_x3qx7s3ad3iy-2>li:before{content:"\0025a0  "}.lst-kix_nywz94a1162p-4>li:before{content:"\0025cb  "}.lst-kix_2ew2pcckubyi-7>li:before{content:"\0025cb  "}.lst-kix_cewwwushz2is-3>li:before{content:"\0025cf  "}ul.lst-kix_umf8v1h3m5ky-7{list-style-type:none}.lst-kix_lcl8qtm8jjju-5>li:before{content:"\0025a0  "}ul.lst-kix_umf8v1h3m5ky-8{list-style-type:none}ul.lst-kix_umf8v1h3m5ky-3{list-style-type:none}ul.lst-kix_umf8v1h3m5ky-4{list-style-type:none}ul.lst-kix_umf8v1h3m5ky-5{list-style-type:none}ul.lst-kix_umf8v1h3m5ky-6{list-style-type:none}ul.lst-kix_umf8v1h3m5ky-0{list-style-type:none}ul.lst-kix_umf8v1h3m5ky-1{list-style-type:none}ul.lst-kix_umf8v1h3m5ky-2{list-style-type:none}.lst-kix_k6h3nc75xt7z-1>li:before{content:"\0025cb  "}.lst-kix_umf8v1h3m5ky-2>li:before{content:"\0025a0  "}ul.lst-kix_c2egun7wh79g-0{list-style-type:none}ul.lst-kix_c2egun7wh79g-1{list-style-type:none}.lst-kix_lcl8qtm8jjju-7>li:before{content:"\0025cb  "}ul.lst-kix_c2egun7wh79g-6{list-style-type:none}.lst-kix_euwjsb1mdt29-4>li:before{content:"\0025cb  "}ul.lst-kix_c2egun7wh79g-7{list-style-type:none}ul.lst-kix_c2egun7wh79g-8{list-style-type:none}ul.lst-kix_c2egun7wh79g-2{list-style-type:none}ul.lst-kix_c2egun7wh79g-3{list-style-type:none}ul.lst-kix_c2egun7wh79g-4{list-style-type:none}ul.lst-kix_c2egun7wh79g-5{list-style-type:none}.lst-kix_nywz94a1162p-0>li:before{content:"\0025cf  "}.lst-kix_x3qx7s3ad3iy-3>li:before{content:"\0025cf  "}.lst-kix_umf8v1h3m5ky-4>li:before{content:"\0025cb  "}ul.lst-kix_isrne8nmnm6z-2{list-style-type:none}ul.lst-kix_twh1unozuzb5-7{list-style-type:none}ul.lst-kix_isrne8nmnm6z-3{list-style-type:none}ul.lst-kix_twh1unozuzb5-8{list-style-type:none}ul.lst-kix_isrne8nmnm6z-4{list-style-type:none}ul.lst-kix_twh1unozuzb5-5{list-style-type:none}ul.lst-kix_isrne8nmnm6z-5{list-style-type:none}.lst-kix_fi7s2q5kurfs-6>li:before{content:"\0025cf  "}.lst-kix_2ew2pcckubyi-6>li:before{content:"\0025cf  "}ul.lst-kix_twh1unozuzb5-6{list-style-type:none}ul.lst-kix_twh1unozuzb5-3{list-style-type:none}ul.lst-kix_twh1unozuzb5-4{list-style-type:none}.lst-kix_yrqpi8kjqo3r-7>li:before{content:"\0025cb  "}ul.lst-kix_isrne8nmnm6z-0{list-style-type:none}ul.lst-kix_twh1unozuzb5-1{list-style-type:none}ul.lst-kix_isrne8nmnm6z-1{list-style-type:none}ul.lst-kix_twh1unozuzb5-2{list-style-type:none}.lst-kix_pvyimyezsrc1-4>li:before{content:"\0025cb  "}ul.lst-kix_twh1unozuzb5-0{list-style-type:none}.lst-kix_hy8jiwns1uv1-4>li:before{content:"\0025cb  "}.lst-kix_pvyimyezsrc1-8>li:before{content:"\0025a0  "}.lst-kix_c2egun7wh79g-6>li:before{content:"\0025cf  "}.lst-kix_euwjsb1mdt29-2>li:before{content:"\0025a0  "}.lst-kix_x8phkr1tmy0f-6>li:before{content:"\0025cf  "}.lst-kix_hy8jiwns1uv1-7>li:before{content:"\0025cb  "}ul.lst-kix_nywz94a1162p-8{list-style-type:none}ul.lst-kix_nywz94a1162p-7{list-style-type:none}ul.lst-kix_3us3o9vtiwhj-7{list-style-type:none}ul.lst-kix_nywz94a1162p-6{list-style-type:none}ul.lst-kix_3us3o9vtiwhj-8{list-style-type:none}ul.lst-kix_nywz94a1162p-5{list-style-type:none}.lst-kix_xucpetr9zrwv-0>li:before{content:"\0025cf  "}.lst-kix_ri0rcmcgjkcf-6>li:before{content:"\0025cf  "}.lst-kix_c2egun7wh79g-3>li:before{content:"\0025cf  "}.lst-kix_c2egun7wh79g-1>li:before{content:"\0025cb  "}.lst-kix_hy8jiwns1uv1-5>li:before{content:"\0025a0  "}.lst-kix_nywz94a1162p-6>li:before{content:"\0025cf  "}.lst-kix_x8phkr1tmy0f-0>li:before{content:"\0025cf  "}.lst-kix_pvyimyezsrc1-3>li:before{content:"\0025cf  "}ul.lst-kix_nywz94a1162p-2{list-style-type:none}ul.lst-kix_nywz94a1162p-1{list-style-type:none}ul.lst-kix_nywz94a1162p-4{list-style-type:none}ul.lst-kix_nywz94a1162p-3{list-style-type:none}.lst-kix_xtosirfq7xs2-6>li:before{content:"\0025cf  "}ul.lst-kix_nywz94a1162p-0{list-style-type:none}.lst-kix_isrne8nmnm6z-8>li:before{content:"\0025a0  "}.lst-kix_xtosirfq7xs2-8>li:before{content:"\0025a0  "}.lst-kix_v3mb2kz7f0lz-0>li:before{content:"\0025cf  "}.lst-kix_wikihn2hpqio-3>li:before{content:"\0025cf  "}.lst-kix_2ew2pcckubyi-8>li:before{content:"\0025a0  "}.lst-kix_xucpetr9zrwv-4>li:before{content:"\0025cb  "}.lst-kix_3us3o9vtiwhj-6>li:before{content:"\0025cf  "}.lst-kix_jm28y2ae9kh6-5>li:before{content:"\0025a0  "}.lst-kix_lal6yxako6g-8>li:before{content:"\0025a0  "}.lst-kix_isrne8nmnm6z-2>li:before{content:"\0025a0  "}.lst-kix_pvyimyezsrc1-5>li:before{content:"\0025a0  "}.lst-kix_i77qy0azghyh-7>li:before{content:"\0025cb  "}.lst-kix_euwjsb1mdt29-5>li:before{content:"\0025a0  "}.lst-kix_3us3o9vtiwhj-2>li:before{content:"\0025a0  "}.lst-kix_twh1unozuzb5-7>li:before{content:"\0025cb  "}.lst-kix_k6h3nc75xt7z-3>li:before{content:"\0025cf  "}.lst-kix_twh1unozuzb5-8>li:before{content:"\0025a0  "}.lst-kix_ri0rcmcgjkcf-5>li:before{content:"\0025a0  "}.lst-kix_mwohkyi5svwo-3>li:before{content:"\0025cf  "}.lst-kix_fi7s2q5kurfs-5>li:before{content:"\0025a0  "}.lst-kix_ri0rcmcgjkcf-4>li:before{content:"\0025cb  "}.lst-kix_x3qx7s3ad3iy-5>li:before{content:"\0025a0  "}.lst-kix_isrne8nmnm6z-6>li:before{content:"\0025cf  "}.lst-kix_3us3o9vtiwhj-3>li:before{content:"\0025cf  "}.lst-kix_fi7s2q5kurfs-4>li:before{content:"\0025cb  "}ul.lst-kix_byi60nyit4ll-0{list-style-type:none}.lst-kix_ri0rcmcgjkcf-2>li:before{content:"\0025a0  "}ul.lst-kix_byi60nyit4ll-2{list-style-type:none}ul.lst-kix_byi60nyit4ll-1{list-style-type:none}ul.lst-kix_byi60nyit4ll-4{list-style-type:none}ul.lst-kix_byi60nyit4ll-3{list-style-type:none}.lst-kix_fi7s2q5kurfs-1>li:before{content:"\0025cb  "}ul.lst-kix_byi60nyit4ll-6{list-style-type:none}ul.lst-kix_byi60nyit4ll-5{list-style-type:none}.lst-kix_mwohkyi5svwo-5>li:before{content:"\0025a0  "}ul.lst-kix_byi60nyit4ll-8{list-style-type:none}ul.lst-kix_byi60nyit4ll-7{list-style-type:none}.lst-kix_v3mb2kz7f0lz-8>li:before{content:"\0025a0  "}.lst-kix_isrne8nmnm6z-1>li:before{content:"\0025cb  "}.lst-kix_umf8v1h3m5ky-1>li:before{content:"\0025cb  "}.lst-kix_jm28y2ae9kh6-7>li:before{content:"\0025cb  "}.lst-kix_lal6yxako6g-4>li:before{content:"\0025cb  "}.lst-kix_nywz94a1162p-1>li:before{content:"\0025cb  "}.lst-kix_yyby0z9wuudc-8>li:before{content:"\0025a0  "}.lst-kix_xtosirfq7xs2-5>li:before{content:"\0025a0  "}.lst-kix_pwsw16lsguc4-0>li:before{content:"\0025cf  "}.lst-kix_fi7s2q5kurfs-0>li:before{content:"\0025cf  "}.lst-kix_euwjsb1mdt29-0>li:before{content:"\0025cf  "}.lst-kix_mwohkyi5svwo-2>li:before{content:"\0025a0  "}.lst-kix_pwsw16lsguc4-3>li:before{content:"\0025cf  "}.lst-kix_byi60nyit4ll-5>li:before{content:"\0025a0  "}.lst-kix_xucpetr9zrwv-5>li:before{content:"\0025a0  "}.lst-kix_jm28y2ae9kh6-0>li:before{content:"\0025cf  "}.lst-kix_yrqpi8kjqo3r-6>li:before{content:"\0025cf  "}.lst-kix_3us3o9vtiwhj-0>li:before{content:"\0025cf  "}.lst-kix_3us3o9vtiwhj-7>li:before{content:"\0025cb  "}.lst-kix_isrne8nmnm6z-7>li:before{content:"\0025cb  "}.lst-kix_xucpetr9zrwv-3>li:before{content:"\0025cf  "}.lst-kix_jm28y2ae9kh6-1>li:before{content:"\0025cb  "}ul.lst-kix_lal6yxako6g-0{list-style-type:none}.lst-kix_i77qy0azghyh-2>li:before{content:"\0025a0  "}.lst-kix_yyby0z9wuudc-2>li:before{content:"\0025a0  "}.lst-kix_pwsw16lsguc4-7>li:before{content:"\0025cb  "}.lst-kix_a9qpfeqht24t-3>li:before{content:"\0025cf  "}ul.lst-kix_euwjsb1mdt29-5{list-style-type:none}ul.lst-kix_euwjsb1mdt29-4{list-style-type:none}ul.lst-kix_euwjsb1mdt29-7{list-style-type:none}ul.lst-kix_euwjsb1mdt29-6{list-style-type:none}ul.lst-kix_pwsw16lsguc4-1{list-style-type:none}ul.lst-kix_euwjsb1mdt29-8{list-style-type:none}ul.lst-kix_pwsw16lsguc4-2{list-style-type:none}.lst-kix_jm28y2ae9kh6-8>li:before{content:"\0025a0  "}ul.lst-kix_pwsw16lsguc4-0{list-style-type:none}ul.lst-kix_pwsw16lsguc4-5{list-style-type:none}ul.lst-kix_pwsw16lsguc4-6{list-style-type:none}ul.lst-kix_pwsw16lsguc4-3{list-style-type:none}.lst-kix_x8phkr1tmy0f-4>li:before{content:"\0025cb  "}ul.lst-kix_pwsw16lsguc4-4{list-style-type:none}ul.lst-kix_euwjsb1mdt29-1{list-style-type:none}ul.lst-kix_euwjsb1mdt29-0{list-style-type:none}.lst-kix_k6h3nc75xt7z-0>li:before{content:"\0025cf  "}ul.lst-kix_euwjsb1mdt29-3{list-style-type:none}ul.lst-kix_pwsw16lsguc4-7{list-style-type:none}.lst-kix_xucpetr9zrwv-6>li:before{content:"\0025cf  "}ul.lst-kix_euwjsb1mdt29-2{list-style-type:none}ul.lst-kix_pwsw16lsguc4-8{list-style-type:none}.lst-kix_i77qy0azghyh-8>li:before{content:"\0025a0  "}.lst-kix_a9qpfeqht24t-5>li:before{content:"\0025a0  "}.lst-kix_cewwwushz2is-1>li:before{content:"\0025cb  "}.lst-kix_byi60nyit4ll-2>li:before{content:"\0025a0  "}.lst-kix_yrqpi8kjqo3r-5>li:before{content:"\0025a0  "}.lst-kix_twh1unozuzb5-6>li:before{content:"\0025cf  "}.lst-kix_yyby0z9wuudc-1>li:before{content:"\0025cb  "}.lst-kix_nywz94a1162p-2>li:before{content:"\0025a0  "}.lst-kix_x3qx7s3ad3iy-0>li:before{content:"\0025cf  "}.lst-kix_lcl8qtm8jjju-2>li:before{content:"\0025a0  "}.lst-kix_pwsw16lsguc4-1>li:before{content:"\0025cb  "}.lst-kix_cewwwushz2is-6>li:before{content:"\0025cf  "}.lst-kix_twh1unozuzb5-1>li:before{content:"\0025cb  "}.lst-kix_xucpetr9zrwv-2>li:before{content:"\0025a0  "}.lst-kix_yyby0z9wuudc-3>li:before{content:"\0025cf  "}.lst-kix_pwsw16lsguc4-2>li:before{content:"\0025a0  "}.lst-kix_isrne8nmnm6z-3>li:before{content:"\0025cf  "}.lst-kix_lal6yxako6g-5>li:before{content:"\0025a0  "}.lst-kix_v3mb2kz7f0lz-4>li:before{content:"\0025cb  "}.lst-kix_hy8jiwns1uv1-6>li:before{content:"\0025cf  "}.lst-kix_byi60nyit4ll-8>li:before{content:"\0025a0  "}.lst-kix_yyby0z9wuudc-7>li:before{content:"\0025cb  "}.lst-kix_lal6yxako6g-6>li:before{content:"\0025cf  "}.lst-kix_xtosirfq7xs2-2>li:before{content:"\0025a0  "}.lst-kix_wikihn2hpqio-0>li:before{content:"\0025cf  "}.lst-kix_hy8jiwns1uv1-2>li:before{content:"\0025a0  "}.lst-kix_lcl8qtm8jjju-3>li:before{content:"\0025cf  "}.lst-kix_x3qx7s3ad3iy-8>li:before{content:"\0025a0  "}.lst-kix_c2egun7wh79g-2>li:before{content:"\0025a0  "}.lst-kix_byi60nyit4ll-1>li:before{content:"\0025cb  "}.lst-kix_byi60nyit4ll-0>li:before{content:"\0025cf  "}.lst-kix_jm28y2ae9kh6-6>li:before{content:"\0025cf  "}.lst-kix_k6h3nc75xt7z-6>li:before{content:"\0025cf  "}.lst-kix_nywz94a1162p-7>li:before{content:"\0025cb  "}.lst-kix_xtosirfq7xs2-1>li:before{content:"\0025cb  "}.lst-kix_cewwwushz2is-5>li:before{content:"\0025a0  "}.lst-kix_x8phkr1tmy0f-7>li:before{content:"\0025cb  "}.lst-kix_pwsw16lsguc4-6>li:before{content:"\0025cf  "}.lst-kix_wikihn2hpqio-5>li:before{content:"\0025a0  "}.lst-kix_lcl8qtm8jjju-0>li:before{content:"\0025cf  "}.lst-kix_nywz94a1162p-5>li:before{content:"\0025a0  "}.lst-kix_jm28y2ae9kh6-4>li:before{content:"\0025cb  "}.lst-kix_2ew2pcckubyi-4>li:before{content:"\0025cb  "}.lst-kix_pvyimyezsrc1-0>li:before{content:"\0025cf  "}.lst-kix_wikihn2hpqio-8>li:before{content:"\0025a0  "}.lst-kix_umf8v1h3m5ky-0>li:before{content:"\0025cf  "}.lst-kix_twh1unozuzb5-4>li:before{content:"\0025cb  "}.lst-kix_3us3o9vtiwhj-4>li:before{content:"\0025cb  "}.lst-kix_jm28y2ae9kh6-3>li:before{content:"\0025cf  "}.lst-kix_a9qpfeqht24t-8>li:before{content:"\0025a0  "}.lst-kix_lcl8qtm8jjju-1>li:before{content:"\0025cb  "}ul.lst-kix_wikihn2hpqio-3{list-style-type:none}.lst-kix_yrqpi8kjqo3r-1>li:before{content:"\0025cb  "}ul.lst-kix_wikihn2hpqio-2{list-style-type:none}.lst-kix_x3qx7s3ad3iy-7>li:before{content:"\0025cb  "}ul.lst-kix_wikihn2hpqio-5{list-style-type:none}.lst-kix_a9qpfeqht24t-7>li:before{content:"\0025cb  "}ul.lst-kix_wikihn2hpqio-4{list-style-type:none}ul.lst-kix_x3qx7s3ad3iy-6{list-style-type:none}ul.lst-kix_x3qx7s3ad3iy-7{list-style-type:none}ul.lst-kix_x3qx7s3ad3iy-8{list-style-type:none}ul.lst-kix_wikihn2hpqio-1{list-style-type:none}ul.lst-kix_wikihn2hpqio-0{list-style-type:none}.lst-kix_xucpetr9zrwv-7>li:before{content:"\0025cb  "}ul.lst-kix_fi7s2q5kurfs-7{list-style-type:none}ul.lst-kix_fi7s2q5kurfs-8{list-style-type:none}.lst-kix_nywz94a1162p-8>li:before{content:"\0025a0  "}ul.lst-kix_wikihn2hpqio-7{list-style-type:none}ul.lst-kix_fi7s2q5kurfs-3{list-style-type:none}ul.lst-kix_wikihn2hpqio-6{list-style-type:none}ul.lst-kix_fi7s2q5kurfs-4{list-style-type:none}ul.lst-kix_fi7s2q5kurfs-5{list-style-type:none}ul.lst-kix_wikihn2hpqio-8{list-style-type:none}ul.lst-kix_fi7s2q5kurfs-6{list-style-type:none}.lst-kix_k6h3nc75xt7z-7>li:before{content:"\0025cb  "}ul.lst-kix_x3qx7s3ad3iy-3{list-style-type:none}ul.lst-kix_x3qx7s3ad3iy-2{list-style-type:none}.lst-kix_twh1unozuzb5-3>li:before{content:"\0025cf  "}ul.lst-kix_x3qx7s3ad3iy-5{list-style-type:none}ul.lst-kix_x3qx7s3ad3iy-4{list-style-type:none}ul.lst-kix_x3qx7s3ad3iy-1{list-style-type:none}ul.lst-kix_x3qx7s3ad3iy-0{list-style-type:none}.lst-kix_umf8v1h3m5ky-5>li:before{content:"\0025a0  "}.lst-kix_i77qy0azghyh-5>li:before{content:"\0025a0  "}.lst-kix_a9qpfeqht24t-0>li:before{content:"\0025cf  "}.lst-kix_byi60nyit4ll-7>li:before{content:"\0025cb  "}ul.lst-kix_fi7s2q5kurfs-2{list-style-type:none}.lst-kix_nywz94a1162p-3>li:before{content:"\0025cf  "}ul.lst-kix_fi7s2q5kurfs-1{list-style-type:none}ul.lst-kix_fi7s2q5kurfs-0{list-style-type:none}.lst-kix_2ew2pcckubyi-5>li:before{content:"\0025a0  "}.lst-kix_fi7s2q5kurfs-2>li:before{content:"\0025a0  "}.lst-kix_v3mb2kz7f0lz-1>li:before{content:"\0025cb  "}ul.lst-kix_x8phkr1tmy0f-6{list-style-type:none}ul.lst-kix_x8phkr1tmy0f-5{list-style-type:none}ul.lst-kix_x8phkr1tmy0f-8{list-style-type:none}ul.lst-kix_x8phkr1tmy0f-7{list-style-type:none}.lst-kix_a9qpfeqht24t-6>li:before{content:"\0025cf  "}.lst-kix_3us3o9vtiwhj-1>li:before{content:"\0025cb  "}ul.lst-kix_x8phkr1tmy0f-0{list-style-type:none}.lst-kix_i77qy0azghyh-0>li:before{content:"\0025cf  "}ul.lst-kix_x8phkr1tmy0f-2{list-style-type:none}ul.lst-kix_x8phkr1tmy0f-1{list-style-type:none}ul.lst-kix_x8phkr1tmy0f-4{list-style-type:none}.lst-kix_yrqpi8kjqo3r-0>li:before{content:"\0025cf  "}ul.lst-kix_x8phkr1tmy0f-3{list-style-type:none}ul.lst-kix_xtosirfq7xs2-0{list-style-type:none}.lst-kix_isrne8nmnm6z-0>li:before{content:"\0025cf  "}ul.lst-kix_xtosirfq7xs2-1{list-style-type:none}.lst-kix_v3mb2kz7f0lz-5>li:before{content:"\0025a0  "}ul.lst-kix_xtosirfq7xs2-2{list-style-type:none}ul.lst-kix_xtosirfq7xs2-3{list-style-type:none}ul.lst-kix_xtosirfq7xs2-4{list-style-type:none}ul.lst-kix_xtosirfq7xs2-5{list-style-type:none}ul.lst-kix_xtosirfq7xs2-6{list-style-type:none}ul.lst-kix_xtosirfq7xs2-7{list-style-type:none}.lst-kix_v3mb2kz7f0lz-3>li:before{content:"\0025cf  "}ul.lst-kix_xtosirfq7xs2-8{list-style-type:none}ol{margin:0;padding:0}.c8{padding-left:0pt;widows:2;orphans:2;direction:ltr;margin-left:36pt;page-break-after:avoid}.c16{padding-left:0pt;widows:2;orphans:2;direction:ltr;margin-left:216pt}.c6{padding-left:0pt;widows:2;orphans:2;direction:ltr;margin-left:144pt}.c2{padding-left:0pt;widows:2;orphans:2;direction:ltr;margin-left:180pt}.c10{widows:2;orphans:2;height:16pt;direction:ltr;page-break-after:avoid}.c3{padding-left:0pt;widows:2;orphans:2;direction:ltr;margin-left:108pt}.c5{padding-left:0pt;widows:2;orphans:2;direction:ltr;margin-left:72pt}.c9{padding-left:0pt;widows:2;orphans:2;direction:ltr;margin-left:36pt}.c12{widows:2;orphans:2;direction:ltr;margin-left:54pt}.c13{widows:2;orphans:2;direction:ltr;margin-left:36pt}.c11{widows:2;orphans:2;direction:ltr;margin-left:72pt}.c14{widows:2;orphans:2;height:11pt;direction:ltr}.c17{widows:2;orphans:2;direction:ltr;margin-left:18pt}.c15{widows:2;orphans:2;direction:ltr;page-break-after:avoid}.c22{max-width:583.2pt;background-color:#ffffff;padding:14.4pt 14.4pt 14.4pt 14.4pt}.c18{widows:2;orphans:2;direction:ltr}.c1{margin:0;padding:0}.c0{color:inherit;text-decoration:inherit}.c20{color:#000080;font-size:9pt}.c7{color:#1155cc;text-decoration:underline}.c4{font-family:"Arial"}.c21{height:11pt}.c19{line-height:1.15}.title{widows:2;padding-top:0pt;line-height:1.15;orphans:2;text-align:left;color:#000000;font-size:21pt;font-family:"Trebuchet MS";padding-bottom:0pt;page-break-after:avoid}.subtitle{widows:2;padding-top:0pt;line-height:1.15;orphans:2;text-align:left;color:#666666;font-style:italic;font-size:13pt;font-family:"Trebuchet MS";padding-bottom:10pt;page-break-after:avoid}li{color:#000000;font-size:11pt;font-family:"Arial"}p{color:#000000;font-size:11pt;margin:0;font-family:"Arial"}h1{widows:2;padding-top:10pt;line-height:1.15;orphans:2;text-align:left;color:#000000;font-size:16pt;font-family:"Trebuchet MS";padding-bottom:0pt;page-break-after:avoid}h2{widows:2;padding-top:10pt;line-height:1.15;orphans:2;text-align:left;color:#000000;font-size:13pt;font-family:"Trebuchet MS";font-weight:bold;padding-bottom:0pt;page-break-after:avoid}h3{widows:2;padding-top:8pt;line-height:1.15;orphans:2;text-align:left;color:#666666;font-size:12pt;font-family:"Trebuchet MS";font-weight:bold;padding-bottom:0pt;page-break-after:avoid}h4{widows:2;padding-top:8pt;line-height:1.15;orphans:2;text-align:left;color:#666666;font-size:11pt;text-decoration:underline;font-family:"Trebuchet MS";padding-bottom:0pt;page-break-after:avoid}h5{widows:2;padding-top:8pt;line-height:1.15;orphans:2;text-align:left;color:#666666;font-size:11pt;font-family:"Trebuchet MS";padding-bottom:0pt;page-break-after:avoid}h6{widows:2;padding-top:8pt;line-height:1.15;orphans:2;text-align:left;color:#666666;font-style:italic;font-size:11pt;font-family:"Trebuchet MS";padding-bottom:0pt;page-break-after:avoid}</style></head><body class="c22"><p class="c14"><span></span></p><p class="c17"><span class="c7 c4"><a class="c0" href="#h.9prnsohpcimk">wrapper - A wrapper script that allows for increased manipulation of targeting and applications of scripts</a></span></p><p class="c13"><span class="c7 c4"><a class="c0" href="#h.rklwf3k09b1e">Script Manipulation</a></span></p><p class="c12"><span class="c7 c4"><a class="c0" href="#h.dd5cpx1mc6uh">Script Specification</a></span></p><p class="c11"><span class="c7 c4"><a class="c0" href="#h.c5hkdi2e1t3q">script - name of script you would like to use, multiple scripts can be separated with commas</a></span></p><p class="c11"><span class="c7 c4"><a class="c0" href="#h.4a6ee6z87qau">args - list of arguments for specified scripts, use commas for arguments for separate scripts</a></span></p><p class="c11"><span class="c7 c4"><a class="c0" href="#h.ysz2awu2q2v0">value - get special value for script</a></span></p><p class="c12"><span class="c7 c4"><a class="c0" href="#h.98ht3zfjwcpe">Script Additions</a></span></p><p class="c11"><span class="c7 c4"><a class="c0" href="#h.gpta6hdgmhr">maxtargets - limits the number of targets that can be affected by script</a></span></p><p class="c11"><span class="c7 c4"><a class="c0" href="#h.p4t0p23eppfv">delay - time, in in-game ticks, that should pass before the script is run</a></span></p><p class="c11"><span class="c7 c4"><a class="c0" href="#h.3j7o2vhwaf3m">chain**** - number of times the entire process should be repeated</a></span></p><p class="c13"><span class="c7 c4"><a class="c0" href="#h.l07r4x54lopd">Targeting Conditions</a></span></p><p class="c12"><span class="c7 c4"><a class="c0" href="#h.crn3f1umftuf">Target Manipulation</a></span></p><p class="c11"><span class="c7 c4"><a class="c0" href="#h.yegz12n3wp0o">reflect** - checks for syndromes that cause a reflection effect</a></span></p><p class="c11"><span class="c7 c4"><a class="c0" href="#h.mbdkfq5r1spg">silence** - checks for syndromes that cause a silence effect</a></span></p><p class="c12"><span class="c7 c4"><a class="c0" href="#h.2n9vt453h8f6">Boolean Targets</a></span></p><p class="c11"><span class="c7 c4"><a class="c0" href="#h.hzx2v7gjnmrq">self** - whether to set the target of the spell as the caster</a></span></p><p class="c11"><span class="c7 c4"><a class="c0" href="#h.8p1j7zfc1gji">los***** - whether to require los from the target to nearby units</a></span></p><p class="c11"><span class="c7 c4"><a class="c0" href="#h.osvqlzma3kss">center - whether to include the target unit in the targetList</a></span></p><p class="c11"><span class="c7 c4"><a class="c0" href="#h.j86y7n6gzhr6">verbose***** - whether to specify why a unit was not targeted</a></span></p><p class="c12"><span class="c7 c4"><a class="c0" href="#h.uxiasssma2ng">Number Targets</a></span></p><p class="c11"><span class="c7 c4"><a class="c0" href="#h.rnrd4wpvl2j8">radius - will target all units within a box of specified dimensions</a></span></p><p class="c11"><span class="c7 c4"><a class="c0" href="#h.79g6jip4n6c">plan* - allows targeting in specific squares</a></span></p><p class="c11"><span class="c7 c4"><a class="c0" href="#h.b3nmc6a9ks2x">target** - allows configurable targeting criteria</a></span></p><p class="c11"><span class="c7 c4"><a class="c0" href="#h.twgyphfz7kz7">physical - checks a units physical attributes for targeting</a></span></p><p class="c11"><span class="c7 c4"><a class="c0" href="#h.vddlihi4c2vc">mental - checks a units mental attributes for targeting</a></span></p><p class="c11"><span class="c7 c4"><a class="c0" href="#h.9qcg1va7xpii">trait - checks a units traits for targeting</a></span></p><p class="c11"><span class="c7 c4"><a class="c0" href="#h.mr0by2sxzqmv">skill - checks a units skills for targeting</a></span></p><p class="c11"><span class="c7 c4"><a class="c0" href="#h.t2c3nsdbk3wp">age - checks a units age for targeting</a></span></p><p class="c11"><span class="c7 c4"><a class="c0" href="#h.d60qioat9zc6">speed - checks a units speed for targeting</a></span></p><p class="c12"><span class="c7 c4"><a class="c0" href="#h.xolj8k3w0f9e">Token Targets</a></span></p><p class="c11"><span class="c7 c4"><a class="c0" href="#h.tiihedv5mqup">entity - checks if unit is a member of specific entity</a></span></p><p class="c11"><span class="c7 c4"><a class="c0" href="#h.mxz2mb57sa5r">profession - checks if unit is a specific profession</a></span></p><p class="c11"><span class="c7 c4"><a class="c0" href="#h.bt0v06s2pyis">noble - checks if unit is a specific noble</a></span></p><p class="c11"><span class="c7 c4"><a class="c0" href="#h.rffp41monf3f">iclass - specifies immune creature classes</a></span></p><p class="c11"><span class="c7 c4"><a class="c0" href="#h.8vkuzgohf65">aclass - specifies required creature classes</a></span></p><p class="c11"><span class="c7 c4"><a class="c0" href="#h.o4ce01ykrfg0">icreature - specifies immune creatures</a></span></p><p class="c11"><span class="c7 c4"><a class="c0" href="#h.qh6ad71an5sm">acreature - specifies required creatures</a></span></p><p class="c11"><span class="c7 c4"><a class="c0" href="#h.8uk1hfciztiz">isyndrome - specifies immune syndrome classes</a></span></p><p class="c11"><span class="c7 c4"><a class="c0" href="#h.5ygwjlquai4x">asyndrome - specifies required syndrome tokens</a></span></p><p class="c11"><span class="c7 c4"><a class="c0" href="#h.o6mce1gl07qa">itoken*** - specifies immune tokens</a></span></p><p class="c11"><span class="c7 c4"><a class="c0" href="#h.z5jb84esvjzl">atoken*** - specifies required tokens</a></span></p><p class="c13"><span class="c7 c4"><a class="c0" href="#h.wqhjibaglt2s">Additional Features</a></span></p><p class="c11"><span class="c7 c4"><a class="c0" href="#h.fbx3r5idx5sm">counters - allows for creation, examination, and ultimately triggering based on counters. This will overwrite the normal behavior of a script and will only trigger if specified counters have been met.</a></span></p><p class="c17"><span class="c7 c4"><a class="c0" href="#h.jiee688cv2x">Scripts - These scripts can be run in command line but are intended to be used with autosyndrome and syndrometrigger</a></span></p><p class="c13"><span class="c7 c4"><a class="c0" href="#h.ojixkl64qle9">addsyndrome - adds a syndrome, from a specified inorganic, to a unit</a></span></p><p class="c13"><span class="c7 c4"><a class="c0" href="#h.cp2xfpw85421">changeattributes - will change a units physical or mental attributes</a></span></p><p class="c13"><span class="c7 c4"><a class="c0" href="#h.x1dpqau99qom">changebody - will change a units body parts temperatures (hopefully other things in the future)</a></span></p><p class="c13"><span class="c7 c4"><a class="c0" href="#h.hhgld6p1uoym">changeboolean - will change a series of true/false flags on a unit, currently not very useful</a></span></p><p class="c13"><span class="c7 c4"><a class="c0" href="#h.l62yadx94igy">changeskills - will change a units skill levels</a></span></p><p class="c13"><span class="c7 c4"><a class="c0" href="#h.5xcm0rc2vjfr">changetile - will change a tiles temperature or material</a></span></p><p class="c13"><span class="c7 c4"><a class="c0" href="#h.dpz1bfibvyi8">changetraits - will change a units trait values</a></span></p><p class="c13"><span class="c7 c4"><a class="c0" href="#h.5kex0pfglwdq">changevalues - will change a series of unit values (like stun, paralysis, hunger timer, etc&hellip;)</a></span></p><p class="c13"><span class="c7 c4"><a class="c0" href="#h.mccgbyyzrbyp">counters - a stand alone version of the counters feature included in the wrapper</a></span></p><p class="c13"><span class="c7 c4"><a class="c0" href="#h.whi9eu5pbobe">createitem - can create ammo, armor, and weapons that last a set time</a></span></p><p class="c13"><span class="c7 c4"><a class="c0" href="#h.iq6so9sgx39x">customweather - cause custom flows to be spawned on the map, simulating weather</a></span></p><p class="c13"><span class="c7 c4"><a class="c0" href="#h.ze7y80l3ahys">eruption - cause water or magma to be spawned in a certain area and height</a></span></p><p class="c13"><span class="c7 c4"><a class="c0" href="#h.ylt4gmb20fxo">imbueitem - &nbsp;change the material of a weapon, ammo, or armor for a set time</a></span></p><p class="c13"><span class="c7 c4"><a class="c0" href="#h.xs0wkf36zffh">projectile - create a projectile (boulder, ammo, or weapon), either from above moving downwards or from one point to another</a></span></p><p class="c13"><span class="c7 c4"><a class="c0" href="#h.sii4lhv5yrp5">propel - cause a unit to be propelled as a projectile with a certain velocity</a></span></p><p class="c13"><span class="c7 c4"><a class="c0" href="#h.5so3su4343n">spawnflow - cause a flow to be spawned with specific properties</a></span></p><p class="c13"><span class="c7 c4"><a class="c0" href="#h.uo5w6kxjpqed">teleport - moves a unit and/or item from one point to another, multiple locations accepted</a></span></p><p class="c17"><span class="c7 c4"><a class="c0" href="#h.6w9b8nlqlg74">INIT - all of these scripts need to be initialized in dfhack.init</a></span></p><p class="c13"><span class="c7 c4"><a class="c0" href="#h.dctsclm0r0mi">teleportbase - needed to use certain aspects of teleport.lua</a></span></p><p class="c13"><span class="c7 c4"><a class="c0" href="#h.hkogpcimj3mz">upgradebuilding - used to upgrade buildings from one to another, or to change them from one to another</a></span></p><p class="c13"><span class="c7 c4"><a class="c0" href="#h.9nmtjkon4ajk">upgradeitem - used to upgrade item from one to another, or to change them from one to another</a></span></p><p class="c17"><span class="c7 c4"><a class="c0" href="#h.4cijg3dufte2">NOTES</a></span></p><p class="c13"><span class="c7 c4"><a class="c0" href="#h.s9twvzd9r5ey">*</a></span></p><p class="c13"><span class="c7 c4"><a class="c0" href="#h.6m2kaf6rgloe">**</a></span></p><p class="c13"><span class="c7 c4"><a class="c0" href="#h.a3kxfer367qi">***</a></span></p><p class="c13"><span class="c7 c4"><a class="c0" href="#h.rh1ihxsgmejk">****</a></span></p><p class="c13"><span class="c7 c4"><a class="c0" href="#h.15jvqb4ub6ob">*****</a></span></p><p class="c13"><span class="c7 c4"><a class="c0" href="#h.4phaqm31333x">******</a></span></p><p class="c13"><span class="c7 c4"><a class="c0" href="#h.5h4z7bc2h1gd">*******</a></span></p><p class="c17"><span class="c7 c4"><a class="c0" href="#h.i5icn1kdn5gy">Examples</a></span></p><p class="c17"><span class="c7 c4"><a class="c0" href="#h.x43ggjw0lhvr">ATTRIBUTE_TOKENS:</a></span></p><p class="c17"><span class="c7 c4"><a class="c0" href="#h.cw5glqqre8r0">VALUE_TOKENS:</a></span></p><h1 class="c10"><a name="h.4dr64d1eff91"></a></h1><h1 class="c10"><a name="h.cll9aw861z3s"></a></h1><hr style="page-break-before:always;display:none;"><h1 class="c10"><a name="h.inept77iccxy"></a></h1><h1 class="c15"><a name="h.9prnsohpcimk"></a><span class="c4">wrapper - A wrapper script that allows for increased manipulation of targeting and applications of scripts</span></h1><h2 class="c15"><a name="h.rklwf3k09b1e"></a><span class="c4">Script Manipulation</span></h2><h3 class="c15"><a name="h.dd5cpx1mc6uh"></a><span class="c4">Script Specification</span></h3><ul class="c1 lst-kix_fi7s2q5kurfs-0 start"><li class="c8"><h4 style="display:inline"><a name="h.c5hkdi2e1t3q"></a><span class="c4">script - name of script you would like to use, multiple scripts can be separated with commas</span></h4></li></ul><ul class="c1 lst-kix_fi7s2q5kurfs-1 start"><li class="c5"><span>scriptname - name of script to be run</span></li></ul><ul class="c1 lst-kix_fi7s2q5kurfs-2 start"><li class="c3"><span>DEFAULT &lsquo;NONE&rsquo;</span></li><li class="c3"><span>EXAMPLE: script@changeattributes</span></li></ul><ul class="c1 lst-kix_fi7s2q5kurfs-0"><li class="c8"><h4 style="display:inline"><a name="h.4a6ee6z87qau"></a><span class="c4">args - list of arguments for specified scripts, use commas for arguments for separate scripts</span></h4></li></ul><ul class="c1 lst-kix_fi7s2q5kurfs-1"><li class="c5"><span>arguments - separated using &lsquo;;&rsquo;</span></li><li class="c5"><span>SPECIAL ARGUMENTS</span></li></ul><ul class="c1 lst-kix_fi7s2q5kurfs-2"><li class="c3"><span>!UNIT - replaces unit ID of targeted units</span></li><li class="c3"><span>!LOCATION - replaces unit location for targeted units</span></li><li class="c3"><span>!SELF</span><span class="c7"><a class="c0" href="#h.6m2kaf6rgloe">**</a></span><span>&nbsp;- replaces with casters ID</span></li><li class="c3"><span>!VALUE - replaces with specified value, see below</span></li></ul><ul class="c1 lst-kix_fi7s2q5kurfs-3 start"><li class="c6"><span>DEFAULT &lsquo;NONE&rsquo;</span></li><li class="c6"><span>EXAMPLE: args@STRENGTH;!UNIT;fixed;200</span></li></ul><ul class="c1 lst-kix_fi7s2q5kurfs-0"><li class="c8"><h4 style="display:inline"><a name="h.ysz2awu2q2v0"></a><span class="c4">value - get special value for script</span></h4></li></ul><ul class="c1 lst-kix_fi7s2q5kurfs-1"><li class="c5"><span>stacking - value increases depending on number of units in targetList</span></li><li class="c5"><span>destacking - value decreases depending on number of units in targetList</span></li></ul><ul class="c1 lst-kix_fi7s2q5kurfs-2"><li class="c3"><span>total - all units in targetList are counted</span></li><li class="c3"><span>allowed - only units that have passed all checks are included</span></li><li class="c3"><span>immune - only units that have failed a check are included</span></li></ul><ul class="c1 lst-kix_fi7s2q5kurfs-3"><li class="c6"><span>value - # that it should start out at</span></li></ul><ul class="c1 lst-kix_fi7s2q5kurfs-4 start"><li class="c2"><span>inc - # it should change for each stack</span></li></ul><ul class="c1 lst-kix_fi7s2q5kurfs-5 start"><li class="c16"><span>EQUATION: !VALUE = value +/- inc*#stacks</span></li><li class="c16"><span>DEFAULT &lsquo;NONE&rsquo;</span></li><li class="c16"><span>EXAMPLE: value@stacking;allowed;100;10</span></li></ul><ul class="c1 lst-kix_fi7s2q5kurfs-1"><li class="c5"><span>self</span><span class="c7"><a class="c0" href="#h.6m2kaf6rgloe">**</a></span><span>&nbsp;- takes a percent value of the casting unit </span></li><li class="c5"><span>target - takes a percent value of the target unit</span></li></ul><ul class="c1 lst-kix_fi7s2q5kurfs-2"><li class="c3"><span>specific_token - list of tokens can be found below</span></li></ul><ul class="c1 lst-kix_fi7s2q5kurfs-3"><li class="c6"><span>value - % of value to take</span></li></ul><ul class="c1 lst-kix_fi7s2q5kurfs-4"><li class="c2"><span>inc - # to adjust the value by</span></li></ul><ul class="c1 lst-kix_fi7s2q5kurfs-5"><li class="c16"><span>EQUATION: !VALUE = target.token*(value/100) + inc</span></li><li class="c16"><span>DEFAULT &lsquo;NONE&rsquo;</span></li><li class="c16"><span>EXAMPLE: value@target;strength;100;0</span></li></ul><h3 class="c15"><a name="h.98ht3zfjwcpe"></a><span class="c4">Script Additions</span></h3><ul class="c1 lst-kix_cewwwushz2is-0 start"><li class="c8"><h4 style="display:inline"><a name="h.gpta6hdgmhr"></a><span class="c4">maxtargets - limits the number of targets that can be affected by script</span></h4></li></ul><ul class="c1 lst-kix_cewwwushz2is-1 start"><li class="c5"><span># - number of randomly selected units from targetList to affect</span></li></ul><ul class="c1 lst-kix_cewwwushz2is-2 start"><li class="c3"><span>DEFAULT &lsquo;all&rsquo;</span></li><li class="c3"><span>EXAMPLE: maxtargets@10</span></li></ul><ul class="c1 lst-kix_cewwwushz2is-0"><li class="c8"><h4 style="display:inline"><a name="h.p4t0p23eppfv"></a><span class="c4">delay - time, in in-game ticks, that should pass before the script is run</span></h4></li></ul><ul class="c1 lst-kix_cewwwushz2is-1"><li class="c5"><span># - number of in-game ticks</span></li></ul><ul class="c1 lst-kix_cewwwushz2is-2"><li class="c3"><span>DEFAULT 0</span></li><li class="c3"><span>EXAMPLE: delay@1000</span></li></ul><ul class="c1 lst-kix_cewwwushz2is-0"><li class="c8"><h4 style="display:inline"><a name="h.3j7o2vhwaf3m"></a><span class="c4">chain</span><span class="c7 c4"><a class="c0" href="#h.rh1ihxsgmejk">****</a></span><span class="c4">&nbsp;- number of times the entire process should be repeated</span></h4></li></ul><ul class="c1 lst-kix_cewwwushz2is-1"><li class="c5"><span># - number of chains</span></li></ul><ul class="c1 lst-kix_cewwwushz2is-2"><li class="c3"><span>DEFAULT 0</span></li><li class="c3"><span>EXAMPLE: chain@3</span></li></ul><p class="c14"><span></span></p><h2 class="c15"><a name="h.l07r4x54lopd"></a><span class="c4">Targeting Conditions</span></h2><h3 class="c15"><a name="h.crn3f1umftuf"></a><span class="c4">Target Manipulation</span></h3><ul class="c1 lst-kix_umf8v1h3m5ky-0 start"><li class="c8"><h4 style="display:inline"><a name="h.yegz12n3wp0o"></a><span class="c4">reflect</span><span class="c7 c4"><a class="c0" href="#h.6m2kaf6rgloe">**</a></span><span class="c4">&nbsp;- checks for syndromes that cause a reflection effect</span></h4></li></ul><ul class="c1 lst-kix_umf8v1h3m5ky-1 start"><li class="c5"><span>SYNDROME_CLASS_TOKEN - any token from [SYN_CLASS:]</span></li></ul><ul class="c1 lst-kix_umf8v1h3m5ky-2 start"><li class="c3"><span>DEFAULT &lsquo;NONE&rsquo;</span></li><li class="c3"><span>EXAMPLE: reflect@REFLECT_FIRE</span></li></ul><ul class="c1 lst-kix_umf8v1h3m5ky-0"><li class="c8"><h4 style="display:inline"><a name="h.mbdkfq5r1spg"></a><span class="c4">silence</span><span class="c7 c4"><a class="c0" href="#h.6m2kaf6rgloe">**</a></span><span class="c4">&nbsp;- checks for syndromes that cause a silence effect</span></h4></li></ul><ul class="c1 lst-kix_umf8v1h3m5ky-1"><li class="c5"><span>SYNDROME_CLASS_TOKEN - any token from [SYN_CLASS:]</span></li></ul><ul class="c1 lst-kix_umf8v1h3m5ky-2"><li class="c3"><span>DEFAULT &lsquo;NONE&rsquo;</span></li><li class="c3"><span>EXAMPLE: silence@SILENCE_NATURE</span></li></ul><h3 class="c15"><a name="h.2n9vt453h8f6"></a><span class="c4">Boolean Targets</span></h3><ul class="c1 lst-kix_pvyimyezsrc1-0 start"><li class="c8"><h4 style="display:inline"><a name="h.hzx2v7gjnmrq"></a><span class="c4">self</span><span class="c7 c4"><a class="c0" href="#h.6m2kaf6rgloe">**</a></span><span class="c4">&nbsp;- whether to set the target of the spell as the caster</span></h4></li></ul><ul class="c1 lst-kix_pvyimyezsrc1-1 start"><li class="c5"><span>DEFAULT false</span></li></ul><ul class="c1 lst-kix_pvyimyezsrc1-0"><li class="c8"><h4 style="display:inline"><a name="h.8p1j7zfc1gji"></a><span class="c4">los</span><span class="c7 c4"><a class="c0" href="#h.15jvqb4ub6ob">*****</a></span><span class="c4">&nbsp;- whether to require los from the target to nearby units</span></h4></li></ul><ul class="c1 lst-kix_pvyimyezsrc1-1"><li class="c5"><span>DEFAULT false</span></li></ul><ul class="c1 lst-kix_pvyimyezsrc1-0"><li class="c8"><h4 style="display:inline"><a name="h.osvqlzma3kss"></a><span class="c4">center - whether to include the target unit in the targetList</span></h4></li></ul><ul class="c1 lst-kix_pvyimyezsrc1-1"><li class="c5"><span>DEFAULT true</span></li></ul><ul class="c1 lst-kix_pvyimyezsrc1-0"><li class="c8"><h4 style="display:inline"><a name="h.j86y7n6gzhr6"></a><span class="c4">verbose</span><span class="c7 c4"><a class="c0" href="#h.15jvqb4ub6ob">*****</a></span><span class="c4">&nbsp;- whether to specify why a unit was not targeted</span></h4></li></ul><ul class="c1 lst-kix_pvyimyezsrc1-1"><li class="c5"><span>DEFAULT false</span></li></ul><h3 class="c15"><a name="h.uxiasssma2ng"></a><span class="c4">Number Targets</span></h3><ul class="c1 lst-kix_nywz94a1162p-0 start"><li class="c8"><h4 style="display:inline"><a name="h.rnrd4wpvl2j8"></a><span class="c4">radius - will target all units within a box of specified dimensions</span></h4></li></ul><ul class="c1 lst-kix_nywz94a1162p-1 start"><li class="c5"><span>#/#/# - corresponding to X, Y, and Z directions</span></li></ul><ul class="c1 lst-kix_nywz94a1162p-2 start"><li class="c3"><span>DEFAULT -1/-1/-1</span></li><li class="c3"><span>EXAMPLE: radius@10/10/2</span></li></ul><ul class="c1 lst-kix_nywz94a1162p-0"><li class="c8"><h4 style="display:inline"><a name="h.79g6jip4n6c"></a><span class="c4">plan</span><span class="c7 c4"><a class="c0" href="#h.s9twvzd9r5ey">*</a></span><span class="c4">&nbsp;- allows targeting in specific squares</span></h4></li></ul><ul class="c1 lst-kix_nywz94a1162p-1"><li class="c5"><span>filename - filename of .txt file placed in hack/scripts</span></li></ul><ul class="c1 lst-kix_nywz94a1162p-2"><li class="c3"><span>DEFAULT &lsquo;NONE&rsquo;</span></li><li class="c3"><span>EXAMPLE: plan@5x5_X</span></li></ul><ul class="c1 lst-kix_nywz94a1162p-0"><li class="c8"><h4 style="display:inline"><a name="h.b3nmc6a9ks2x"></a><span class="c4">target</span><span class="c7 c4"><a class="c0" href="#h.6m2kaf6rgloe">**</a></span><span class="c4">&nbsp;- allows configurable targeting criteria</span></h4></li></ul><ul class="c1 lst-kix_nywz94a1162p-1"><li class="c5"><span>invasion - only units with the same invasion_id as the caster are targeted</span></li><li class="c5"><span>civ - only units with the same civ_id as the caster are targeted</span></li><li class="c5"><span>population - only units with the same pop_id as the caster are targeted</span></li><li class="c5"><span>race - only units with the same race_id as the caster are targeted</span></li><li class="c5"><span>sex - only units with the same sex_id as the caster are targeted</span></li><li class="c5"><span>caste - only units with the same race_id and caste_id as the caster are targeted</span></li><li class="c5"><span>all - all units are targeted</span></li></ul><ul class="c1 lst-kix_nywz94a1162p-2"><li class="c3"><span>DEFAULT &lsquo;all&rsquo;</span></li><li class="c3"><span>EXAMPLE: target@civ</span></li></ul><ul class="c1 lst-kix_nywz94a1162p-0"><li class="c8"><h4 style="display:inline"><a name="h.twgyphfz7kz7"></a><span class="c4">physical - checks a units physical attributes for targeting</span></h4></li></ul><ul class="c1 lst-kix_nywz94a1162p-1"><li class="c5"><span>min - unit must have a minimum attribute score to be targeted</span></li><li class="c5"><span>max - unit can not be targeted if the attribute score is higher than this value</span></li></ul><ul class="c1 lst-kix_nywz94a1162p-2"><li class="c3"><span>ATTRIBUTE_FLAG (i.e. STRENGTH, AGILITY, etc&hellip;)</span></li></ul><ul class="c1 lst-kix_nywz94a1162p-3 start"><li class="c6"><span># - corresponding to attribute value</span></li></ul><ul class="c1 lst-kix_nywz94a1162p-4 start"><li class="c2"><span>DEFAULT &lsquo;NONE&rsquo;</span></li><li class="c2"><span>EXAMPLE: physical@min;STRENGTH;2000</span></li></ul><ul class="c1 lst-kix_nywz94a1162p-1"><li class="c5"><span>greater</span><span class="c7"><a class="c0" href="#h.6m2kaf6rgloe">**</a></span><span>&nbsp;- unit needs to have a certain amount more than caster to be targeted</span></li><li class="c5"><span>less</span><span class="c7"><a class="c0" href="#h.6m2kaf6rgloe">**</a></span><span>&nbsp;- unit needs to have a certain amount less than caster to be targeted</span></li></ul><ul class="c1 lst-kix_nywz94a1162p-2"><li class="c3"><span>ATTRIBUTE_FLAG (i.e. STRENGTH, AGILITY, etc&hellip;)</span></li></ul><ul class="c1 lst-kix_nywz94a1162p-3"><li class="c6"><span># - factor above or below needed (e.g. greater;STRENGTH;2 means the target must have twice the strength as the caster)</span></li></ul><ul class="c1 lst-kix_nywz94a1162p-4"><li class="c2"><span>DEFAULT &lsquo;NONE&rsquo;</span></li><li class="c2"><span>EXAMPLE: physical@greater;STRENGTH;2</span></li></ul><ul class="c1 lst-kix_nywz94a1162p-0"><li class="c8"><h4 style="display:inline"><a name="h.vddlihi4c2vc"></a><span class="c4">mental - checks a units mental attributes for targeting</span></h4></li></ul><ul class="c1 lst-kix_nywz94a1162p-1"><li class="c5"><span>min - unit must have a minimum attribute score to be targeted</span></li><li class="c5"><span>max - unit can not be targeted if the attribute score is higher than this value</span></li></ul><ul class="c1 lst-kix_nywz94a1162p-2"><li class="c3"><span>ATTRIBUTE_FLAG (i.e. WILLPOWER, MEMORY, etc&hellip;)</span></li></ul><ul class="c1 lst-kix_nywz94a1162p-3"><li class="c6"><span># - corresponding to attribute value</span></li></ul><ul class="c1 lst-kix_nywz94a1162p-4"><li class="c2"><span>DEFAULT &lsquo;NONE&rsquo;</span></li><li class="c2"><span>EXAMPLE: mental@min;MEMORY;2000</span></li></ul><ul class="c1 lst-kix_nywz94a1162p-1"><li class="c5"><span>greater</span><span class="c7"><a class="c0" href="#h.6m2kaf6rgloe">**</a></span><span>&nbsp;- unit needs to have a certain amount more than caster to be targeted</span></li><li class="c5"><span>less</span><span class="c7"><a class="c0" href="#h.6m2kaf6rgloe">**</a></span><span>&nbsp;- unit needs to have a certain amount less than caster to be targeted</span></li></ul><ul class="c1 lst-kix_nywz94a1162p-2"><li class="c3"><span>ATTRIBUTE_FLAG (i.e. WILLPOWER, MEMORY, etc&hellip;)</span></li></ul><ul class="c1 lst-kix_nywz94a1162p-3"><li class="c6"><span># - factor above or below needed (e.g. greater;MEMORY;2 means the target must have twice the memory as the caster)</span></li></ul><ul class="c1 lst-kix_nywz94a1162p-4"><li class="c2"><span>DEFAULT &lsquo;NONE&rsquo;</span></li><li class="c2"><span>EXAMPLE: mental@greater;MEMORY;2</span></li></ul><ul class="c1 lst-kix_nywz94a1162p-0"><li class="c8"><h4 style="display:inline"><a name="h.9qcg1va7xpii"></a><span class="c4">trait - checks a units traits for targeting</span></h4></li></ul><ul class="c1 lst-kix_nywz94a1162p-1"><li class="c5"><span>min - unit must have a minimum trait score to be targeted</span></li><li class="c5"><span>max - unit can not be targeted if the trait score is higher than this value</span></li></ul><ul class="c1 lst-kix_nywz94a1162p-2"><li class="c3"><span>TRAIT_FLAG (i.e. ANGER, IMAGINATION, etc&hellip;)</span></li></ul><ul class="c1 lst-kix_nywz94a1162p-3"><li class="c6"><span># - corresponding to trait value</span></li></ul><ul class="c1 lst-kix_nywz94a1162p-4"><li class="c2"><span>DEFAULT &lsquo;NONE&rsquo;</span></li><li class="c2"><span>EXAMPLE: trait@min;ANGER;50</span></li></ul><ul class="c1 lst-kix_nywz94a1162p-1"><li class="c5"><span>greater</span><span class="c7"><a class="c0" href="#h.6m2kaf6rgloe">**</a></span><span>&nbsp;- unit needs to have a certain amount more than caster to be targeted</span></li><li class="c5"><span>less</span><span class="c7"><a class="c0" href="#h.6m2kaf6rgloe">**</a></span><span>&nbsp;- unit needs to have a certain amount less than caster to be targeted</span></li></ul><ul class="c1 lst-kix_nywz94a1162p-2"><li class="c3"><span>TRAIT_FLAG (i.e. ANGER, IMAGINATION, etc&hellip;)</span></li></ul><ul class="c1 lst-kix_nywz94a1162p-3"><li class="c6"><span># - factor above or below needed (e.g. greater;ANGER;2 means the target must have twice the anger as the caster)</span></li></ul><ul class="c1 lst-kix_nywz94a1162p-4"><li class="c2"><span>DEFAULT &lsquo;NONE&rsquo;</span></li><li class="c2"><span>EXAMPLE: trait@greater;ANGER;2</span></li></ul><ul class="c1 lst-kix_nywz94a1162p-0"><li class="c8"><h4 style="display:inline"><a name="h.mr0by2sxzqmv"></a><span class="c4">skill - checks a units skills for targeting</span></h4></li></ul><ul class="c1 lst-kix_nywz94a1162p-1"><li class="c5"><span>min - unit must have a minimum skill level to be targeted</span></li><li class="c5"><span>max - unit can not be targeted if the skill level is higher than this value</span></li></ul><ul class="c1 lst-kix_nywz94a1162p-2"><li class="c3"><span>SKILL_TOKEN (i.e. MINING, AXE, etc&hellip;)</span></li></ul><ul class="c1 lst-kix_nywz94a1162p-3"><li class="c6"><span># - corresponding to skill level</span></li></ul><ul class="c1 lst-kix_nywz94a1162p-4"><li class="c2"><span>DEFAULT &lsquo;NONE&rsquo;</span></li><li class="c2"><span>EXAMPLE: skill@min;MINING;15</span></li></ul><ul class="c1 lst-kix_nywz94a1162p-1"><li class="c5"><span>greater</span><span class="c7"><a class="c0" href="#h.6m2kaf6rgloe">**</a></span><span>&nbsp;- unit needs to have a certain amount more than caster to be targeted</span></li><li class="c5"><span>less</span><span class="c7"><a class="c0" href="#h.6m2kaf6rgloe">**</a></span><span>&nbsp;- unit needs to have a certain amount less than caster to be targeted</span></li></ul><ul class="c1 lst-kix_nywz94a1162p-2"><li class="c3"><span>SKILL_TOKEN (i.e. MINING, AXE, etc&hellip;)</span></li></ul><ul class="c1 lst-kix_nywz94a1162p-3"><li class="c6"><span># - factor above or below needed (e.g. greater;AXE;2 means the target must have twice the axe skill as the caster)</span></li></ul><ul class="c1 lst-kix_nywz94a1162p-4"><li class="c2"><span>DEFAULT &lsquo;NONE&rsquo;</span></li><li class="c2"><span>EXAMPLE: skill@greater;AXE;2</span></li></ul><ul class="c1 lst-kix_nywz94a1162p-0"><li class="c8"><h4 style="display:inline"><a name="h.t2c3nsdbk3wp"></a><span class="c4">age - checks a units age for targeting</span></h4></li></ul><ul class="c1 lst-kix_nywz94a1162p-1"><li class="c5"><span>min - unit needs to be a minimum age</span></li><li class="c5"><span>max - unit can not be older than the max age</span></li></ul><ul class="c1 lst-kix_nywz94a1162p-2"><li class="c3"><span># - age in dwarf years</span></li></ul><ul class="c1 lst-kix_nywz94a1162p-3"><li class="c6"><span>DEFAULT &lsquo;NONE&rsquo;</span></li><li class="c6"><span>EXAMPLE: age@min;50</span></li></ul><ul class="c1 lst-kix_nywz94a1162p-1"><li class="c5"><span>greater</span><span class="c7"><a class="c0" href="#h.6m2kaf6rgloe">**</a></span><span>&nbsp;- unit needs to be older than caster by a certain amount</span></li><li class="c5"><span>less</span><span class="c7"><a class="c0" href="#h.6m2kaf6rgloe">**</a></span><span>&nbsp;- unit needs to be younger than caster by a certain amount</span></li></ul><ul class="c1 lst-kix_nywz94a1162p-2"><li class="c3"><span># - factor above or below needed (e.g. greater;2 means the target must be twice as old as the caster)</span></li></ul><ul class="c1 lst-kix_nywz94a1162p-3"><li class="c6"><span>DEFAULT &lsquo;NONE&rsquo;</span></li><li class="c6"><span>EXAMPLE: age@greater;2</span></li></ul><ul class="c1 lst-kix_nywz94a1162p-0"><li class="c8"><h4 style="display:inline"><a name="h.d60qioat9zc6"></a><span class="c4">speed - checks a units speed for targeting</span></h4></li></ul><ul class="c1 lst-kix_nywz94a1162p-1"><li class="c5"><span>min - unit needs to have a minimum speed</span></li><li class="c5"><span>max - unit can not be faster than max speed</span></li></ul><ul class="c1 lst-kix_nywz94a1162p-2"><li class="c3"><span># - dwarf speed (calculated with dfhack.units.computeMovementSpeed())</span></li></ul><ul class="c1 lst-kix_nywz94a1162p-3"><li class="c6"><span>DEFAULT &lsquo;NONE&rsquo;</span></li><li class="c6"><span>EXAMPLE: speed@min;500</span></li></ul><ul class="c1 lst-kix_nywz94a1162p-1"><li class="c5"><span>greater</span><span class="c7"><a class="c0" href="#h.6m2kaf6rgloe">**</a></span><span>&nbsp;- unit needs to be faster than caster by a certain amount</span></li><li class="c5"><span>less</span><span class="c7"><a class="c0" href="#h.6m2kaf6rgloe">**</a></span><span>&nbsp;- unit needs to be slower than caster by a certain amount</span></li></ul><ul class="c1 lst-kix_nywz94a1162p-2"><li class="c3"><span># - factor above or below needed (e.g. greater;2 means the target must be twice as fast as the caster)</span></li></ul><ul class="c1 lst-kix_nywz94a1162p-3"><li class="c6"><span>DEFAULT &lsquo;NONE&rsquo;</span></li><li class="c6"><span>EXAMPLE: speed@greater;2</span></li></ul><p class="c14"><span></span></p><h3 class="c15"><a name="h.xolj8k3w0f9e"></a><span class="c4">Token Targets</span></h3><ul class="c1 lst-kix_2ew2pcckubyi-0 start"><li class="c8"><h4 style="display:inline"><a name="h.tiihedv5mqup"></a><span class="c4">entity - checks if unit is a member of specific entity</span></h4></li></ul><ul class="c1 lst-kix_2ew2pcckubyi-1 start"><li class="c5"><span>required - only targets units of this entity</span></li><li class="c5"><span>immune - never targets units of this entity</span></li></ul><ul class="c1 lst-kix_2ew2pcckubyi-2 start"><li class="c3"><span>ENTITY_TOKEN - any token from the [ENTITY:]</span></li></ul><ul class="c1 lst-kix_2ew2pcckubyi-3 start"><li class="c6"><span>DEFAULT &lsquo;NONE&rsquo;</span></li><li class="c6"><span>EXAMPLE: entity@required;MOUNTAIN</span></li></ul><ul class="c1 lst-kix_2ew2pcckubyi-0"><li class="c8"><h4 style="display:inline"><a name="h.mxz2mb57sa5r"></a><span class="c4">profession - checks if unit is a specific profession</span></h4></li></ul><ul class="c1 lst-kix_2ew2pcckubyi-1"><li class="c5"><span>required - only targets units of this profession</span></li><li class="c5"><span>immune - never targets units of this profession</span></li></ul><ul class="c1 lst-kix_2ew2pcckubyi-2"><li class="c3"><span>PROFESSION_TOKEN (i.e. MINER, HUNTER, etc&hellip;)</span></li></ul><ul class="c1 lst-kix_2ew2pcckubyi-3"><li class="c6"><span>DEFAULT &lsquo;NONE&rsquo;</span></li><li class="c6"><span>EXAMPLE: profession@required;HUNTER</span></li></ul><ul class="c1 lst-kix_2ew2pcckubyi-0"><li class="c8"><h4 style="display:inline"><a name="h.bt0v06s2pyis"></a><span class="c4">noble - checks if unit is a specific noble</span></h4></li></ul><ul class="c1 lst-kix_2ew2pcckubyi-1"><li class="c5"><span>required - only targets units that are this noble position</span></li><li class="c5"><span>immune - never targets units that are this noble position</span></li></ul><ul class="c1 lst-kix_2ew2pcckubyi-2"><li class="c3"><span>NOBLE_TOKEN - any token from [POSITION:]</span></li></ul><ul class="c1 lst-kix_2ew2pcckubyi-3"><li class="c6"><span>DEFAULT &lsquo;NONE&rsquo;</span></li><li class="c6"><span>EXAMPLE: noble@required;MONARCH</span></li></ul><ul class="c1 lst-kix_2ew2pcckubyi-0"><li class="c8"><h4 style="display:inline"><a name="h.rffp41monf3f"></a><span class="c4">iclass - specifies immune creature classes</span></h4></li><li class="c8"><h4 style="display:inline"><a name="h.8vkuzgohf65"></a><span class="c4">aclass - specifies required creature classes</span></h4></li></ul><ul class="c1 lst-kix_2ew2pcckubyi-1"><li class="c5"><span>CREATURE_CLASS_TOKEN - any token from [CREATURE_CLASS:]</span></li></ul><ul class="c1 lst-kix_2ew2pcckubyi-2"><li class="c3"><span>DEFAULT &lsquo;NONE&rsquo;</span></li><li class="c3"><span>EXAMPLE: iclass@GENERAL_POISON or aclass@GENERAL_POISON</span></li></ul><ul class="c1 lst-kix_2ew2pcckubyi-0"><li class="c8"><h4 style="display:inline"><a name="h.o4ce01ykrfg0"></a><span class="c4">icreature - specifies immune creatures</span></h4></li><li class="c8"><h4 style="display:inline"><a name="h.qh6ad71an5sm"></a><span class="c4">acreature - specifies required creatures</span></h4></li></ul><ul class="c1 lst-kix_2ew2pcckubyi-1"><li class="c5"><span>CREATURE_TOKEN - any token from [CREATURE:]</span></li></ul><ul class="c1 lst-kix_2ew2pcckubyi-2"><li class="c3"><span>CASTE_TOKEN - any token from [CASTE:]</span></li></ul><ul class="c1 lst-kix_2ew2pcckubyi-3"><li class="c6"><span>DEFAULT &lsquo;NONE&rsquo;</span></li><li class="c6"><span>EXAMPLE: icreature@DWARF;MALE or acreature@DWARF;MALE</span></li></ul><ul class="c1 lst-kix_2ew2pcckubyi-0"><li class="c8"><h4 style="display:inline"><a name="h.8uk1hfciztiz"></a><span class="c4">isyndrome - specifies immune syndrome classes</span></h4></li><li class="c8"><h4 style="display:inline"><a name="h.5ygwjlquai4x"></a><span class="c4">asyndrome - specifies required syndrome tokens</span></h4></li></ul><ul class="c1 lst-kix_2ew2pcckubyi-1"><li class="c5"><span>SYNDROME_CLASS_TOKEN - any token from [SYN_CLASS:]</span></li></ul><ul class="c1 lst-kix_2ew2pcckubyi-2"><li class="c3"><span>DEFAULT &lsquo;NONE&rsquo;</span></li><li class="c3"><span>EXAMPLE: isyndrome@BURNT or asyndrome@BURNT</span></li></ul><ul class="c1 lst-kix_2ew2pcckubyi-0"><li class="c8"><h4 style="display:inline"><a name="h.o6mce1gl07qa"></a><span class="c4">itoken</span><span class="c7 c4"><a class="c0" href="#h.a3kxfer367qi">***</a></span><span class="c4">&nbsp;- specifies immune tokens</span></h4></li><li class="c8"><h4 style="display:inline"><a name="h.z5jb84esvjzl"></a><span class="c4">atoken</span><span class="c7 c4"><a class="c0" href="#h.a3kxfer367qi">***</a></span><span class="c4">&nbsp;- specifies required tokens</span></h4></li></ul><ul class="c1 lst-kix_2ew2pcckubyi-1"><li class="c5"><span>TOKEN - a full list of valid tokens can be found in tokens.txt</span></li></ul><ul class="c1 lst-kix_2ew2pcckubyi-2"><li class="c3"><span>DEFAULT &lsquo;NONE&rsquo;</span></li><li class="c3"><span>EXAMPLE: itoken@AQUATIC or atoken@AQUATIC</span></li></ul><p class="c14"><span></span></p><h2 class="c15"><a name="h.wqhjibaglt2s"></a><span class="c4">Additional Features</span></h2><ul class="c1 lst-kix_mwohkyi5svwo-0 start"><li class="c8"><h4 style="display:inline"><a name="h.fbx3r5idx5sm"></a><span class="c4">counters - allows for creation, examination, and ultimately triggering based on counters. This will overwrite the normal behavior of a script and will only trigger if specified counters have been met.</span></h4></li></ul><ul class="c1 lst-kix_mwohkyi5svwo-1 start"><li class="c5"><span>COUNTER_TYPE - any string value, the counter will be saved as this type</span></li></ul><ul class="c1 lst-kix_mwohkyi5svwo-2 start"><li class="c3"><span># - amount for the counter to increase/decrease</span></li></ul><ul class="c1 lst-kix_mwohkyi5svwo-3 start"><li class="c6"><span>minimum - once the value of the counter has surpassed a certain amount, the counter will trigger the script. the counter is then reset to zero</span></li><li class="c6"><span>percentage - the script has a chance of triggering each time the counter is increased, with a 100% chance once it reaches a certain amount. the counter is reset to zero on triggering</span></li></ul><ul class="c1 lst-kix_mwohkyi5svwo-4 start"><li class="c2"><span># - level of triggering for the counter</span></li></ul><ul class="c1 lst-kix_mwohkyi5svwo-5 start"><li class="c16"><span>DEFAULT &lsquo;NONE&rsquo;</span></li><li class="c16"><span>EXAMPLE: counters@PRAY;1;minimum;100</span></li></ul><p class="c14"><span></span></p><p class="c14"><span></span></p><hr style="page-break-before:always;display:none;"><p class="c14"><span></span></p><h1 class="c15"><a name="h.jiee688cv2x"></a><span class="c4">Scripts - These scripts can be run in command line but are intended to be used with autosyndrome and syndrometrigger</span></h1><h2 class="c15"><a name="h.ojixkl64qle9"></a><span class="c4">addsyndrome - adds a syndrome, from a specified inorganic, to a unit</span></h2><ul class="c1 lst-kix_xucpetr9zrwv-0 start"><li class="c9"><span>INORGANIC - the ID of the inorganic where your syndrome is defined</span></li></ul><ul class="c1 lst-kix_xucpetr9zrwv-1 start"><li class="c5"><span>Any inorganic&rsquo;s ID</span></li></ul><ul class="c1 lst-kix_xucpetr9zrwv-0"><li class="c9"><span>ID # - the units id number</span></li></ul><ul class="c1 lst-kix_xucpetr9zrwv-1"><li class="c5"><span>\UNIT_ID - when triggering with a syndrome</span></li><li class="c5"><span>\WORKER_ID - when triggering with a reaction</span></li></ul><ul class="c1 lst-kix_xucpetr9zrwv-0"><li class="c9"><span>EXAMPLE: addsyndrome SYNDROME_STONE_PLAGUE \UNIT_ID</span></li></ul><h2 class="c15"><a name="h.cp2xfpw85421"></a><span class="c4">changeattributes - will change a units physical or mental attributes</span></h2><ul class="c1 lst-kix_3us3o9vtiwhj-0 start"><li class="c9"><span>type</span></li></ul><ul class="c1 lst-kix_3us3o9vtiwhj-1 start"><li class="c5"><span>mental - specifies that the change is to a mental attribute</span></li><li class="c5"><span>physical - specifies that the change is to a physical attribute</span></li></ul><ul class="c1 lst-kix_3us3o9vtiwhj-0"><li class="c9"><span>ATTRIBUTE_TOKEN - attribute to change, separate multiple tokens with &lsquo;+&rsquo;</span></li></ul><ul class="c1 lst-kix_3us3o9vtiwhj-1"><li class="c5"><span>valid tokens found </span><span class="c7"><a class="c0" href="#h.x43ggjw0lhvr">here</a></span></li></ul><ul class="c1 lst-kix_3us3o9vtiwhj-0"><li class="c9"><span>ID # - the units id number</span></li></ul><ul class="c1 lst-kix_3us3o9vtiwhj-1"><li class="c5"><span>\UNIT_ID - when triggering with a syndrome</span></li><li class="c5"><span>\WORKER_ID - when triggering with a reaction</span></li></ul><ul class="c1 lst-kix_3us3o9vtiwhj-0"><li class="c9"><span>change type - the type of change to make, separate multiple types with &lsquo;+&rsquo; (must have same number of types as attribute tokens)</span></li></ul><ul class="c1 lst-kix_3us3o9vtiwhj-1"><li class="c5"><span>percent - adjust the units attributes by a specified percent</span></li><li class="c5"><span>fixed - add a specific amount to the units attributes</span></li><li class="c5"><span>set - set the units attributes to the given strength</span></li></ul><ul class="c1 lst-kix_3us3o9vtiwhj-0"><li class="c9"><span>strength - the amount to change by, separate multiple strengths with &lsquo;+&rsquo; (must have same number of strengths as attribute tokens)</span></li></ul><ul class="c1 lst-kix_3us3o9vtiwhj-1"><li class="c5"><span>#</span></li></ul><ul class="c1 lst-kix_3us3o9vtiwhj-2 start"><li class="c3"><span>Equation for percent: value = value*(100+strength)/100</span></li><li class="c3"><span>Equation for fixed: value = value + strength</span></li><li class="c3"><span>Equation for set: value = strength</span></li></ul><ul class="c1 lst-kix_3us3o9vtiwhj-0"><li class="c9"><span>(OPTIONAL) duration - sets a specified length of time for the changes to last (in in-game &lsquo;ticks&rsquo;)</span></li></ul><ul class="c1 lst-kix_3us3o9vtiwhj-1"><li class="c5"><span>#</span></li><li class="c5"><span>DEFAULT: 0 - attribute changes will be permanent</span></li><li class="c5"><span>NOTE: Will set attributes back to previous value after effect wears off, this may interfere with other attribute changing syndromes.</span></li></ul><ul class="c1 lst-kix_3us3o9vtiwhj-0"><li class="c9"><span>EXAMPLE: changeattributes physical STRENGTH+ENDURANCE+AGILITY \UNIT_ID fixed+fixed+percent 500+500+-50 3600</span></li></ul><h2 class="c15"><a name="h.x1dpqau99qom"></a><span class="c4">changebody - will change a units body parts temperatures (hopefully other things in the future)</span></h2><ul class="c1 lst-kix_i77qy0azghyh-0 start"><li class="c9"><span>type</span></li></ul><ul class="c1 lst-kix_i77qy0azghyh-1 start"><li class="c5"><span>temperature - currently the only supported body change is to temperature</span></li></ul><ul class="c1 lst-kix_i77qy0azghyh-0"><li class="c9"><span>ID # - the units id number</span></li></ul><ul class="c1 lst-kix_i77qy0azghyh-1"><li class="c5"><span>\UNIT_ID - when triggering with a syndrome</span></li><li class="c5"><span>\WORKER_ID - when triggering with a reaction</span></li></ul><ul class="c1 lst-kix_i77qy0azghyh-0"><li class="c9"><span>body parts - the body party to select, separate multiple types with &lsquo;+&rsquo;</span></li></ul><ul class="c1 lst-kix_i77qy0azghyh-1"><li class="c5"><span>all - specifies all body parts</span></li><li class="c5"><span>token - specifies body part by token (i.e. [BP:HEAD:head:STP])</span></li><li class="c5"><span>category - specifies body part by category (i.e. [BP_CON:HAND])</span></li><li class="c5"><span>flags - specifies body part by flags (i.e. [THOUGHT]</span></li></ul><ul class="c1 lst-kix_i77qy0azghyh-2 start"><li class="c3"><span>part - specify the actual token/category/flag by concatenating with &lsquo;/&rsquo;</span></li></ul><ul class="c1 lst-kix_i77qy0azghyh-0"><li class="c9"><span>strength - the temperature to set the body parts at</span></li></ul><ul class="c1 lst-kix_i77qy0azghyh-1"><li class="c5"><span>SPECIAL TOKEN: fire - sets the unit body parts on fire</span></li><li class="c5"><span># - temperature (remember 10067 is standard body temperature)</span></li></ul><ul class="c1 lst-kix_i77qy0azghyh-0"><li class="c9"><span>(OPTIONAL) duration - sets a specified length of time for the changes to last (in in-game &lsquo;ticks&rsquo;)</span></li></ul><ul class="c1 lst-kix_i77qy0azghyh-1"><li class="c5"><span>#</span></li><li class="c5"><span>DEFAULT: 0 - temperature changes will be permanent</span></li><li class="c5"><span>NOTE: Will set temperature back to previous value after effect wears off, or puts out the fire on the affected body parts</span></li></ul><ul class="c1 lst-kix_i77qy0azghyh-0"><li class="c9"><span>EXAMPLE: changebody temperature \UNIT_ID category/HAND+category/FOOT fire</span></li></ul><h2 class="c15"><a name="h.hhgld6p1uoym"></a><span class="c4">changeboolean - will change a series of true/false flags on a unit, currently not very useful</span></h2><ul class="c1 lst-kix_v3mb2kz7f0lz-0 start"><li class="c9"><span>DO NOT USE - Causes crashes in the game when certain flags are toggled on and off, will investigate when time allows.</span></li></ul><h2 class="c15"><a name="h.l62yadx94igy"></a><span class="c4">changeskills - will change a units skill levels</span></h2><ul class="c1 lst-kix_xtosirfq7xs2-0 start"><li class="c9"><span>SKILL_TOKEN - skill to change, separate multiple tokens with &lsquo;+&rsquo;</span></li></ul><ul class="c1 lst-kix_xtosirfq7xs2-1 start"><li class="c5"><span>valid tokens found </span><span class="c7"><a class="c0" href="https://www.google.com/url?q=https%3A%2F%2Fdwarffortresswiki.org%2Findex.php%2FDF2012%3ASkill_token&amp;sa=D&amp;sntz=1&amp;usg=AFQjCNFkVcdl5euylWSMdR72M2EVrikILg">here</a></span></li></ul><ul class="c1 lst-kix_xtosirfq7xs2-0"><li class="c9"><span>ID # - the units id number</span></li></ul><ul class="c1 lst-kix_xtosirfq7xs2-1"><li class="c5"><span>\UNIT_ID - when triggering with a syndrome</span></li><li class="c5"><span>\WORKER_ID - when triggering with a reaction</span></li></ul><ul class="c1 lst-kix_xtosirfq7xs2-0"><li class="c9"><span>change type - the type of change to make, separate multiple types with &lsquo;+&rsquo; (must have same number of types as skill tokens)</span></li></ul><ul class="c1 lst-kix_xtosirfq7xs2-1"><li class="c5"><span>percent - adjust the units skills by a specified percent</span></li><li class="c5"><span>fixed - add a specific amount to the units skills</span></li><li class="c5"><span>set - set the units skills to the given strength</span></li></ul><ul class="c1 lst-kix_xtosirfq7xs2-0"><li class="c9"><span>strength - the amount to change by, separate multiple strengths with &lsquo;+&rsquo; (must have same number of strengths as skill tokens)</span></li></ul><ul class="c1 lst-kix_xtosirfq7xs2-1"><li class="c5"><span>#</span></li></ul><ul class="c1 lst-kix_xtosirfq7xs2-2 start"><li class="c3"><span>Equation for percent: value = value*(100+strength)/100</span></li><li class="c3"><span>Equation for fixed: value = value + strength</span></li><li class="c3"><span>Equation for set: value = strength</span></li></ul><ul class="c1 lst-kix_xtosirfq7xs2-0"><li class="c9"><span>(OPTIONAL) duration - sets a specified length of time for the changes to last (in in-game &lsquo;ticks&rsquo;)</span></li></ul><ul class="c1 lst-kix_xtosirfq7xs2-1"><li class="c5"><span>#</span></li><li class="c5"><span>DEFAULT: 0 - skill changes will be permanent</span></li><li class="c5"><span>NOTE: Will set skills back to previous value after effect wears off, any levels the unit makes during the change will be reverted..</span></li></ul><ul class="c1 lst-kix_xtosirfq7xs2-0"><li class="c9"><span>EXAMPLE: changeskills MINING \UNIT_ID set 0 3600</span></li></ul><h2 class="c15"><a name="h.5xcm0rc2vjfr"></a><span class="c4">changetile - will change a tiles temperature or material</span></h2><ul class="c1 lst-kix_x8phkr1tmy0f-0 start"><li class="c9"><span>style - how to perform the change, both styles have a different set of input arguments</span></li></ul><ul class="c1 lst-kix_x8phkr1tmy0f-1 start"><li class="c5"><span>plan - changes tiles based on a plan.txt file, similarly to how the </span><span class="c7"><a class="c0" href="#h.79g6jip4n6c">plan@</a></span><span>&nbsp;wrapper works</span></li></ul><ul class="c1 lst-kix_x8phkr1tmy0f-2 start"><li class="c3"><span>ID # - the units id number</span></li></ul><ul class="c1 lst-kix_x8phkr1tmy0f-3 start"><li class="c6"><span>\UNIT_ID - when triggering with a syndrome</span></li><li class="c6"><span>\WORKER_ID - when triggering with a reaction</span></li></ul><ul class="c1 lst-kix_x8phkr1tmy0f-2"><li class="c3"><span>filename - filename of .txt file placed in hack/scripts</span></li></ul><ul class="c1 lst-kix_x8phkr1tmy0f-3"><li class="c6"><span>Any file name without the .txt</span></li></ul><ul class="c1 lst-kix_x8phkr1tmy0f-2"><li class="c3"><span>change type - the type of change to perform</span></li></ul><ul class="c1 lst-kix_x8phkr1tmy0f-3"><li class="c6"><span>temperature - changes the temperature of the tile</span></li><li class="c6"><span>material - changes the material the tile is made out of, only works for inorganics, and doesn&rsquo;t work all the time</span></li></ul><ul class="c1 lst-kix_x8phkr1tmy0f-4 start"><li class="c2"><span>SPECIAL TOKEN: clear - clears all veins in area (based on blocks not tiles, only use if you are wanting to clear large amounts of veins)</span></li></ul><ul class="c1 lst-kix_x8phkr1tmy0f-2"><li class="c3"><span>change</span></li></ul><ul class="c1 lst-kix_x8phkr1tmy0f-3"><li class="c6"><span># - For use with a change type of &lsquo;temperature&rsquo; (remember 10067 is standard body temperature)</span></li><li class="c6"><span>INORGANIC_TOKEN - For use with a change type of &lsquo;material&rsquo;</span></li></ul><ul class="c1 lst-kix_x8phkr1tmy0f-2"><li class="c3"><span>(OPTIONAL) duration - sets a specified length of time for the changes to last (in in-game &lsquo;ticks&rsquo;)</span></li></ul><ul class="c1 lst-kix_x8phkr1tmy0f-3"><li class="c6"><span>#</span></li><li class="c6"><span>DEFAULT: 0 - material changes will be permanent, temperature changes will gradually return to normal using in game mechanics</span></li><li class="c6"><span>NOTE: Will set tile back to previous value after effect wears off, doesn&rsquo;t always work with a change type of &lsquo;material&rsquo;</span></li></ul><ul class="c1 lst-kix_x8phkr1tmy0f-2"><li class="c3"><span>EXAMPLE: changetile plan \UNIT_ID 5x5_X temperature 9600 100</span></li></ul><ul class="c1 lst-kix_x8phkr1tmy0f-1"><li class="c5"><span>location</span><span class="c7"><a class="c0" href="#h.4phaqm31333x">******</a></span><span>&nbsp;- changes specific locations tile</span></li></ul><ul class="c1 lst-kix_x8phkr1tmy0f-2"><li class="c3"><span>x/y/z - the location of the change</span></li><li class="c3"><span>change type - the type of change to perform</span></li></ul><ul class="c1 lst-kix_x8phkr1tmy0f-3"><li class="c6"><span>temperature - changes the temperature of the tile</span></li><li class="c6"><span>material - changes the material the tile is made out of, only works for inorganics, and doesn&rsquo;t work all the time</span></li></ul><ul class="c1 lst-kix_x8phkr1tmy0f-4"><li class="c2"><span>SPECIAL TOKEN: clear - clears all veins in area (based on blocks not tiles, only use if you are wanting to clear large amounts of veins)</span></li></ul><ul class="c1 lst-kix_x8phkr1tmy0f-2"><li class="c3"><span>change</span></li></ul><ul class="c1 lst-kix_x8phkr1tmy0f-3"><li class="c6"><span># - For use with a change type of &lsquo;temperature&rsquo; (remember 10067 is standard body temperature)</span></li><li class="c6"><span>INORGANIC_TOKEN - For use with a change type of &lsquo;material&rsquo;</span></li></ul><ul class="c1 lst-kix_x8phkr1tmy0f-2"><li class="c3"><span>(OPTIONAL) duration - sets a specified length of time for the changes to last (in in-game &lsquo;ticks&rsquo;)</span></li></ul><ul class="c1 lst-kix_x8phkr1tmy0f-3"><li class="c6"><span>#</span></li><li class="c6"><span>DEFAULT: 0 - temperature and material changes will be permanent</span></li><li class="c6"><span>NOTE: Will set tile back to previous value after effect wears off, doesn&rsquo;t always work with a change type of &lsquo;material&rsquo;, and the game will eventually set the temperature of a tile back to normal</span></li></ul><ul class="c1 lst-kix_x8phkr1tmy0f-2"><li class="c3"><span>EXAMPLES: changetile location 136/142/168 temperature 9600 100</span></li></ul><h2 class="c15"><a name="h.dpz1bfibvyi8"></a><span class="c4">changetraits - will change a units trait values</span></h2><ul class="c1 lst-kix_byi60nyit4ll-0 start"><li class="c9"><span>TRAIT_TOKEN - trait to change, separate multiple tokens with &lsquo;+&rsquo;</span></li></ul><ul class="c1 lst-kix_byi60nyit4ll-1 start"><li class="c5"><span>valid tokens found </span><span class="c7"><a class="c0" href="http://www.google.com/url?q=http%3A%2F%2Fdwarffortresswiki.org%2Findex.php%2FDF2012%3APersonality_trait&amp;sa=D&amp;sntz=1&amp;usg=AFQjCNGbJOznsgK6JqvnUQF9IzmNXJ6soA">here</a></span></li></ul><ul class="c1 lst-kix_byi60nyit4ll-0"><li class="c9"><span>ID # - the units id number</span></li></ul><ul class="c1 lst-kix_byi60nyit4ll-1"><li class="c5"><span>\UNIT_ID - when triggering with a syndrome</span></li><li class="c5"><span>\WORKER_ID - when triggering with a reaction</span></li></ul><ul class="c1 lst-kix_byi60nyit4ll-0"><li class="c9"><span>change type - the type of change to make, separate multiple types with &lsquo;+&rsquo; (must have same number of types as trait tokens)</span></li></ul><ul class="c1 lst-kix_byi60nyit4ll-1"><li class="c5"><span>percent - adjust the units traits by a specified percent</span></li><li class="c5"><span>fixed - add a specific amount to the units traits</span></li><li class="c5"><span>set - set the units traits to the given strength</span></li></ul><ul class="c1 lst-kix_byi60nyit4ll-0"><li class="c9"><span>strength - the amount to change by, separate multiple strengths with &lsquo;+&rsquo; (must have same number of strengths as skill tokens)</span></li></ul><ul class="c1 lst-kix_byi60nyit4ll-1"><li class="c5"><span>#</span></li></ul><ul class="c1 lst-kix_byi60nyit4ll-2 start"><li class="c3"><span>Equation for percent: value = value*(100+strength)/100</span></li><li class="c3"><span>Equation for fixed: value = value + strength</span></li><li class="c3"><span>Equation for set: value = strength</span></li></ul><ul class="c1 lst-kix_byi60nyit4ll-0"><li class="c9"><span>(OPTIONAL) duration - sets a specified length of time for the changes to last (in in-game &lsquo;ticks&rsquo;)</span></li></ul><ul class="c1 lst-kix_byi60nyit4ll-1"><li class="c5"><span>#</span></li><li class="c5"><span>DEFAULT: 0 - trait changes will be permanent</span></li><li class="c5"><span>NOTE: Will set traits back to previous value after effect wears off, any natural changes during the change will be reverted..</span></li></ul><ul class="c1 lst-kix_byi60nyit4ll-0"><li class="c9"><span>EXAMPLE: changetraits ANGER+EMOTIONALITY \UNIT_ID set+percent 100+-50 3600</span></li></ul><h2 class="c15"><a name="h.5kex0pfglwdq"></a><span class="c4">changevalues - will change a series of unit values (like stun, paralysis, hunger timer, etc&hellip;)</span></h2><ul class="c1 lst-kix_byi60nyit4ll-0"><li class="c9"><span>VALUE_TOKEN - value to change, separate multiple tokens with &lsquo;+&rsquo;</span></li></ul><ul class="c1 lst-kix_byi60nyit4ll-1"><li class="c5"><span>valid tokens found </span><span class="c7"><a class="c0" href="#h.cw5glqqre8r0">here</a></span></li></ul><ul class="c1 lst-kix_byi60nyit4ll-0"><li class="c9"><span>ID # - the units id number</span></li></ul><ul class="c1 lst-kix_byi60nyit4ll-1"><li class="c5"><span>\UNIT_ID - when triggering with a syndrome</span></li><li class="c5"><span>\WORKER_ID - when triggering with a reaction</span></li></ul><ul class="c1 lst-kix_byi60nyit4ll-0"><li class="c9"><span>change type - the type of change to make, separate multiple types with &lsquo;+&rsquo; (must have same number of types as trait tokens)</span></li></ul><ul class="c1 lst-kix_byi60nyit4ll-1"><li class="c5"><span>percent - adjust the units values by a specified percent</span></li><li class="c5"><span>fixed - add a specific amount to the units values</span></li><li class="c5"><span>set - set the units values to the given strength</span></li></ul><ul class="c1 lst-kix_byi60nyit4ll-0"><li class="c9"><span>strength - the amount to change by, separate multiple strengths with &lsquo;+&rsquo; (must have same number of strengths as skill tokens)</span></li></ul><ul class="c1 lst-kix_byi60nyit4ll-1"><li class="c5"><span>#</span></li></ul><ul class="c1 lst-kix_byi60nyit4ll-2"><li class="c3"><span>Equation for percent: value = value*(100+strength)/100</span></li><li class="c3"><span>Equation for fixed: value = value + strength</span></li><li class="c3"><span>Equation for set: value = strength</span></li></ul><ul class="c1 lst-kix_byi60nyit4ll-0"><li class="c9"><span>(OPTIONAL) duration - sets a specified length of time for the changes to last (in in-game &lsquo;ticks&rsquo;)</span></li></ul><ul class="c1 lst-kix_byi60nyit4ll-1"><li class="c5"><span>#</span></li><li class="c5"><span>DEFAULT: 0 - value changes will be permanent</span></li><li class="c5"><span>NOTE: Will set values back to previous value after effect wears off, any natural changes during the change will be reverted..</span></li></ul><ul class="c1 lst-kix_byi60nyit4ll-0"><li class="c9"><span>EXAMPLE: changevalues webbed+blood \UNIT_ID set+percent 1000+-20 3600</span></li></ul><h2 class="c15"><a name="h.mccgbyyzrbyp"></a><span class="c4">counters - a stand alone version of the counters feature included in the wrapper</span></h2><ul class="c1 lst-kix_yrqpi8kjqo3r-0 start"><li class="c9"><span>ID # - the units id number</span></li></ul><ul class="c1 lst-kix_yrqpi8kjqo3r-1 start"><li class="c5"><span>\UNIT_ID - when triggering with a syndrome</span></li><li class="c5"><span>\WORKER_ID - when triggering with a reaction</span></li></ul><ul class="c1 lst-kix_mwohkyi5svwo-0"><li class="c9"><span>COUNTER_TYPE - any string value, the counter will be saved as this type</span></li><li class="c9"><span>increment - amount for the counter to change</span></li></ul><ul class="c1 lst-kix_mwohkyi5svwo-1"><li class="c5"><span># - can be both positive and negative</span></li></ul><ul class="c1 lst-kix_mwohkyi5svwo-0"><li class="c9"><span>style - the way to check the counter</span></li></ul><ul class="c1 lst-kix_mwohkyi5svwo-1"><li class="c5"><span>minimum - once the value of the counter has surpassed a certain amount, the counter will trigger the script. the counter is then reset to zero</span></li><li class="c5"><span>percentage - the script has a chance of triggering each time the counter is increased, with a 100% chance once it reaches a certain amount. the counter is reset to zero on triggering</span></li></ul><ul class="c1 lst-kix_mwohkyi5svwo-0"><li class="c9"><span>cap - level of triggering for the counter</span></li></ul><ul class="c1 lst-kix_mwohkyi5svwo-1"><li class="c5"><span>#</span></li><li class="c5"><span>NOTE: Once it hits the cap (or is triggered earlier by percentage) the counter will reset to 0</span></li></ul><ul class="c1 lst-kix_mwohkyi5svwo-0"><li class="c9"><span>script and arguments - the script to trigger when the counter is reached</span></li></ul><ul class="c1 lst-kix_mwohkyi5svwo-1"><li class="c5"><span>In the form script@arg1;arg2;arg3</span></li><li class="c5"><span>SPECIAL TOKEN: !UNIT - replaces with the unit id specified in the counters script</span></li></ul><ul class="c1 lst-kix_mwohkyi5svwo-0"><li class="c9"><span>EXAMPLE: counters \UNIT_ID PRAY 1 minimum 100 changetraits@SELF_DISCIPLINE;!UNIT;fixed;10</span></li></ul><h2 class="c15"><a name="h.whi9eu5pbobe"></a><span class="c4">createitem - can create ammo, armor, and weapons that last a set time</span></h2><ul class="c1 lst-kix_yrqpi8kjqo3r-0"><li class="c9"><span>ID # - the units id number</span></li></ul><ul class="c1 lst-kix_yrqpi8kjqo3r-1"><li class="c5"><span>\UNIT_ID - when triggering with a syndrome</span></li><li class="c5"><span>\WORKER_ID - when triggering with a reaction</span></li></ul><ul class="c1 lst-kix_yrqpi8kjqo3r-0"><li class="c9"><span>ITEM/SUBTYPE - the type of item you wish to create</span></li></ul><ul class="c1 lst-kix_yrqpi8kjqo3r-1"><li class="c5"><span>WEAPON/WEAPON_SUBTYPE</span></li><li class="c5"><span>ARMOR/ARMOR_SUBTYPE</span></li><li class="c5"><span>HELM/HELM_SUBTYPE</span></li><li class="c5"><span>SHOES/SHOES_SUBTYPE</span></li><li class="c5"><span>SHIELD/SHIELD_SUBTYPE</span></li><li class="c5"><span>GLOVE/GLOVE_SUBTYPE</span></li><li class="c5"><span>PANTS/PANTS_SUBTYPE</span></li><li class="c5"><span>AMMO/AMMO_SUBTYPE</span></li></ul><ul class="c1 lst-kix_yrqpi8kjqo3r-0"><li class="c9"><span>INORGANIC_TOKEN - the material the item is made from</span></li></ul><ul class="c1 lst-kix_yrqpi8kjqo3r-1"><li class="c5"><span>Any inorganic token</span></li></ul><ul class="c1 lst-kix_yrqpi8kjqo3r-0"><li class="c9"><span>location - where to put the item (currently only on the ground, will add inventory capability)</span></li></ul><ul class="c1 lst-kix_yrqpi8kjqo3r-1"><li class="c5"><span>ground - will place on ground under unit</span></li></ul><ul class="c1 lst-kix_yrqpi8kjqo3r-0"><li class="c9"><span>(OPTIONAL) duration - sets a specified length of time for the item to exist (in in-game &lsquo;ticks&rsquo;)</span></li></ul><ul class="c1 lst-kix_yrqpi8kjqo3r-1"><li class="c5"><span>DEFAULT: 0 - item will last forever</span></li></ul><ul class="c1 lst-kix_yrqpi8kjqo3r-0"><li class="c9"><span>EXAMPLE: createitem \UNIT_ID WEAPON/ITEM_WEAPON_SOUL_KNIFE SOUL_ETHER ground 3600.</span></li></ul><h2 class="c15"><a name="h.iq6so9sgx39x"></a><span class="c4">customweather - cause custom flows to be spawned on the map, simulating weather</span></h2><ul class="c1 lst-kix_yyby0z9wuudc-0 start"><li class="c9"><span>type - the type of flow to spawn</span></li></ul><ul class="c1 lst-kix_yyby0z9wuudc-1 start"><li class="c5"><span>miasma</span></li><li class="c5"><span>mist</span></li><li class="c5"><span>mist2</span></li><li class="c5"><span>dust</span></li><li class="c5"><span>lavamist</span></li><li class="c5"><span>smoke</span></li><li class="c5"><span>dragonfire</span></li><li class="c5"><span>firebreath</span></li><li class="c5"><span>web</span></li><li class="c5"><span>undirectedgas</span></li><li class="c5"><span>undirectedvapor</span></li><li class="c5"><span>oceanwave</span></li><li class="c5"><span>seafoam</span></li></ul><ul class="c1 lst-kix_yyby0z9wuudc-0"><li class="c9"><span>number - the number of flows to spawn at each time step</span></li></ul><ul class="c1 lst-kix_yyby0z9wuudc-1"><li class="c5"><span>#</span></li><li class="c5"><span>NOTE: These will be randomized across the entire map</span></li></ul><ul class="c1 lst-kix_yyby0z9wuudc-0"><li class="c9"><span>size - the size of the flows to spawn</span></li></ul><ul class="c1 lst-kix_yyby0z9wuudc-1"><li class="c5"><span>#</span></li></ul><ul class="c1 lst-kix_yyby0z9wuudc-0"><li class="c9"><span>frequency - how often (in in-game ticks) to trigger the flows</span></li></ul><ul class="c1 lst-kix_yyby0z9wuudc-1"><li class="c5"><span>#</span></li><li class="c5"><span>NOTE: Setting this too small will have noticeable impact on your fps, I suggest &gt;500</span></li></ul><ul class="c1 lst-kix_yyby0z9wuudc-0"><li class="c9"><span>duration - how long for the weather to last</span></li></ul><ul class="c1 lst-kix_yyby0z9wuudc-1"><li class="c5"><span>#</span></li><li class="c5"><span>This means that the total number of flows that will be spawned is (duration/frequency)*number</span></li></ul><ul class="c1 lst-kix_yyby0z9wuudc-0"><li class="c9"><span>(OPTIONAL) INORGANIC_TOKEN - the inorganic the flow should be made from</span></li></ul><ul class="c1 lst-kix_yyby0z9wuudc-1"><li class="c5"><span>Any inorganic token</span></li><li class="c5"><span>NOTE: This only applies to some of the types of flows, you can&rsquo;t, for instance, make an IRON dragonfire</span></li></ul><ul class="c1 lst-kix_yyby0z9wuudc-0"><li class="c9"><span>EXAMPLE: customweather firebreath 50 25 1000 7200</span></li></ul><h2 class="c15"><a name="h.ze7y80l3ahys"></a><span class="c4">eruption - cause water or magma to be spawned in a certain area and height</span></h2><ul class="c1 lst-kix_hy8jiwns1uv1-0 start"><li class="c9"><span>type - what to spawn</span></li></ul><ul class="c1 lst-kix_hy8jiwns1uv1-1 start"><li class="c5"><span>water - spawns water</span></li><li class="c5"><span>magma - spawns magma</span></li></ul><ul class="c1 lst-kix_hy8jiwns1uv1-0"><li class="c9"><span>ID # - the units id number</span></li></ul><ul class="c1 lst-kix_hy8jiwns1uv1-1"><li class="c5"><span>\UNIT_ID - when triggering with a syndrome</span></li><li class="c5"><span>\WORKER_ID - when triggering with a reaction</span></li></ul><ul class="c1 lst-kix_hy8jiwns1uv1-0"><li class="c9"><span>radius - the x, y, and z extent for the liquid to be spawned</span></li></ul><ul class="c1 lst-kix_hy8jiwns1uv1-1"><li class="c5"><span>#/#/# - 0/0/0 corresponds to just the tile the unit is on, 10/0/0 would be 10 tiles in the x direction to either side of the unit</span></li></ul><ul class="c1 lst-kix_hy8jiwns1uv1-0"><li class="c9"><span>depth - the amount of liquid in the center tile (i.e. #/7)</span></li></ul><ul class="c1 lst-kix_hy8jiwns1uv1-1"><li class="c5"><span>#</span></li><li class="c5"><span>NOTE: The depth will fall off as you move away from the center of the spawn</span></li></ul><ul class="c1 lst-kix_hy8jiwns1uv1-0"><li class="c9"><span>EXAMPLE: eruption magma \UNIT_ID 5/5/5 7</span></li></ul><h2 class="c15"><a name="h.ylt4gmb20fxo"></a><span class="c4">imbueitem - &nbsp;change the material of a weapon, ammo, or armor for a set time</span></h2><ul class="c1 lst-kix_yrqpi8kjqo3r-0"><li class="c9"><span>ID # - the units id number</span></li></ul><ul class="c1 lst-kix_yrqpi8kjqo3r-1"><li class="c5"><span>\UNIT_ID - when triggering with a syndrome</span></li><li class="c5"><span>\WORKER_ID - when triggering with a reaction</span></li></ul><ul class="c1 lst-kix_yrqpi8kjqo3r-0"><li class="c9"><span>item - the type of item you wish to imbue</span></li></ul><ul class="c1 lst-kix_yrqpi8kjqo3r-1"><li class="c5"><span>weapon</span></li><li class="c5"><span>armor</span></li><li class="c5"><span>helm</span></li><li class="c5"><span>shoes</span></li><li class="c5"><span>shield</span></li><li class="c5"><span>glove</span></li><li class="c5"><span>pants</span></li><li class="c5"><span>ammo</span></li></ul><ul class="c1 lst-kix_yrqpi8kjqo3r-0"><li class="c9"><span>INORGANIC_TOKEN - the material to imbue the item</span></li></ul><ul class="c1 lst-kix_yrqpi8kjqo3r-1"><li class="c5"><span>Any inorganic token</span></li></ul><ul class="c1 lst-kix_yrqpi8kjqo3r-0"><li class="c9"><span>(OPTIONAL) duration - sets a specified length of time for the item to be imbued (in in-game &lsquo;ticks&rsquo;)</span></li></ul><ul class="c1 lst-kix_yrqpi8kjqo3r-1"><li class="c5 c19"><span>DEFAULT: 0 - imbuement will last forever</span></li></ul><ul class="c1 lst-kix_yrqpi8kjqo3r-0"><li class="c9"><span>EXAMPLE: imbueitem \UNIT_ID weapon MOONLIGHT 3600.</span></li></ul><h2 class="c15"><a name="h.xs0wkf36zffh"></a><span class="c4">projectile - create a projectile (boulder, ammo, or weapon), either from above moving downwards or from one point to another</span></h2><ul class="c1 lst-kix_x3qx7s3ad3iy-0 start"><li class="c9"><span>origin - how to determine the projectiles origin</span></li></ul><ul class="c1 lst-kix_x3qx7s3ad3iy-1 start"><li class="c5"><span>location</span><span class="c7"><a class="c0" href="#h.4phaqm31333x">*****</a></span><span>&nbsp;- base the origin on a specific location</span></li></ul><ul class="c1 lst-kix_x3qx7s3ad3iy-2 start"><li class="c3"><span>x/y/z - the x, y, and z coordinates of the target</span></li><li class="c3"><span>object - the object to create</span></li></ul><ul class="c1 lst-kix_x3qx7s3ad3iy-3 start"><li class="c6"><span>BOULDER - creates a boulder</span></li><li class="c6"><span>WEAPON/WEAPON_SUBTYPE - creates a specific weapon</span></li><li class="c6"><span>AMMO/AMMO_SUBTYPE - creates a specific ammo</span></li></ul><ul class="c1 lst-kix_x3qx7s3ad3iy-2"><li class="c3"><span>INORGANIC_TOKEN - what the projectile should be made from</span></li></ul><ul class="c1 lst-kix_x3qx7s3ad3iy-3"><li class="c6"><span>Any inorganic token</span></li></ul><ul class="c1 lst-kix_x3qx7s3ad3iy-2"><li class="c3"><span>firing type - how you want the projectile fired</span></li></ul><ul class="c1 lst-kix_x3qx7s3ad3iy-3"><li class="c6"><span>fall - drops from the air above the target location</span></li></ul><ul class="c1 lst-kix_x3qx7s3ad3iy-4 start"><li class="c2"><span>#/# - number of projectiles to fall/height from which they start</span></li><li class="c2"><span>EXAMPLE: projectile location 123/132/168 AMMO/ITEM_AMMO_BOLTS COPPER fall 1/10</span></li></ul><ul class="c1 lst-kix_x3qx7s3ad3iy-3"><li class="c6"><span>shoot</span><span class="c7"><a class="c0" href="#h.6m2kaf6rgloe">**</a></span><span>,</span><span class="c7"><a class="c0" href="#h.4phaqm31333x">******</a></span><span>&nbsp;- moves from origin to target location</span></li></ul><ul class="c1 lst-kix_x3qx7s3ad3iy-4"><li class="c2"><span>#/#/#/#/# - number of projectiles to shoot/velocity of projectiles/hit rate of projectiles/furthest distance to hit/minimum distance to hit</span></li><li class="c2"><span>x/y/z - the x, y, and z coordinates of the origin</span></li><li class="c2"><span>EXAMPLE: projectile location 123/132/168 WEAPON/ITEM_WEAPON_SPEAR STEEL shoot 1/20/50/10/1 133/132/168</span></li></ul><ul class="c1 lst-kix_x3qx7s3ad3iy-1"><li class="c5"><span>unit - base the origin on a specific unit</span></li></ul><ul class="c1 lst-kix_x3qx7s3ad3iy-2"><li class="c3"><span>ID # - the target units id number</span></li></ul><ul class="c1 lst-kix_x3qx7s3ad3iy-3"><li class="c6"><span>\UNIT_ID - when triggering with a syndrome</span></li><li class="c6"><span>\WORKER_ID - when triggering with a reaction</span></li></ul><ul class="c1 lst-kix_x3qx7s3ad3iy-2"><li class="c3"><span>object - the object to create</span></li></ul><ul class="c1 lst-kix_x3qx7s3ad3iy-3"><li class="c6"><span>BOULDER - creates a boulder</span></li><li class="c6"><span>WEAPON/WEAPON_SUBTYPE - creates a specific weapon</span></li><li class="c6"><span>AMMO/AMMO_SUBTYPE - creates a specific ammo</span></li></ul><ul class="c1 lst-kix_x3qx7s3ad3iy-2"><li class="c3"><span>INORGANIC_TOKEN - what the projectile should be made from</span></li></ul><ul class="c1 lst-kix_x3qx7s3ad3iy-3"><li class="c6"><span>Any inorganic token</span></li></ul><ul class="c1 lst-kix_x3qx7s3ad3iy-2"><li class="c3"><span>firing type - how you want the projectile fired</span></li></ul><ul class="c1 lst-kix_x3qx7s3ad3iy-3"><li class="c6"><span>fall - drops from the air above the target location</span></li></ul><ul class="c1 lst-kix_x3qx7s3ad3iy-4"><li class="c2"><span>#/# - number of projectiles to fall/height from which they start</span></li><li class="c2"><span>EXAMPLE: projectile location \UNIT_ID AMMO/ITEM_AMMO_BOLTS COPPER fall 1/10</span></li></ul><ul class="c1 lst-kix_x3qx7s3ad3iy-3"><li class="c6"><span>shoot</span><span class="c7"><a class="c0" href="#h.6m2kaf6rgloe">**</a></span><span>,</span><span class="c7"><a class="c0" href="#h.4phaqm31333x">******</a></span><span>&nbsp;- moves from origin to target location</span></li></ul><ul class="c1 lst-kix_x3qx7s3ad3iy-4"><li class="c2"><span>#/#/#/#/# - number of projectiles to shoot/velocity of projectiles/hit rate of projectiles/furthest distance to hit/minimum distance to hit</span></li><li class="c2"><span>ID # - the origin units id number</span></li><li class="c2"><span>EXAMPLE: projectile location \UNIT_ID WEAPON/ITEM_WEAPON_SPEAR STEEL shoot 1/20/50/10/1 488</span></li></ul><h2 class="c15"><a name="h.sii4lhv5yrp5"></a><span class="c4">propel - cause a unit to be propelled as a projectile with a certain velocity</span></h2><ul class="c1 lst-kix_a9qpfeqht24t-0 start"><li class="c9"><span>type - the method for computing units velocity</span></li></ul><ul class="c1 lst-kix_a9qpfeqht24t-1 start"><li class="c5"><span>random - throws the unit in a random direction</span></li><li class="c5"><span>fixed - throws the unit in a fixed direction</span></li><li class="c5"><span>relative</span><span class="c7"><a class="c0" href="#h.6m2kaf6rgloe">**</a></span><span>,</span><span class="c7"><a class="c0" href="#h.4phaqm31333x">******</a></span><span>&nbsp;- throws the unit in a direction relative to the origin unit</span></li></ul><ul class="c1 lst-kix_a9qpfeqht24t-0"><li class="c9"><span>ID # - the target units id number</span></li></ul><ul class="c1 lst-kix_a9qpfeqht24t-1"><li class="c5"><span>\UNIT_ID - when triggering with a syndrome</span></li><li class="c5"><span>\WORKER_ID - when triggering with a reaction</span></li></ul><ul class="c1 lst-kix_a9qpfeqht24t-0"><li class="c9"><span>strength - the force to propel the unit in x, y, and z</span></li></ul><ul class="c1 lst-kix_a9qpfeqht24t-1"><li class="c5"><span>#/#/#</span></li></ul><ul class="c1 lst-kix_a9qpfeqht24t-2 start"><li class="c3"><span>Equation for random = random[-1,1]*strength</span></li><li class="c3"><span>Equation for fixed = strength</span></li><li class="c3"><span>Equation for relative = strength*(targetpos - sourcepos)/abs(targetpos-sourcepos)</span></li></ul><ul class="c1 lst-kix_a9qpfeqht24t-0"><li class="c9"><span>(OPTIONAL) ID # - the origin units id number, required for the relative propel type</span></li><li class="c9"><span>EXAMPLE: propel random \UNIT_ID 50/50/0</span></li></ul><h2 class="c15"><a name="h.5so3su4343n"></a><span class="c4">spawnflow - cause a flow to be spawned with specific properties</span></h2><ul class="c1 lst-kix_lcl8qtm8jjju-0 start"><li class="c9"><span>type - the type of flow to spawn</span></li></ul><ul class="c1 lst-kix_lcl8qtm8jjju-1 start"><li class="c5"><span>miasma</span></li><li class="c5"><span>mist</span></li><li class="c5"><span>mist2</span></li><li class="c5"><span>dust</span></li><li class="c5"><span>lavamist</span></li><li class="c5"><span>smoke</span></li><li class="c5"><span>dragonfire</span></li><li class="c5"><span>firebreath</span></li><li class="c5"><span>web</span></li><li class="c5"><span>undirectedgas</span></li><li class="c5"><span>undirectedvapor</span></li><li class="c5"><span>oceanwave</span></li><li class="c5"><span>seafoam</span></li></ul><ul class="c1 lst-kix_lcl8qtm8jjju-0"><li class="c9"><span>ID # - the target units id number</span></li></ul><ul class="c1 lst-kix_lcl8qtm8jjju-1"><li class="c5"><span>\UNIT_ID - when triggering with a syndrome</span></li><li class="c5"><span>\WORKER_ID - when triggering with a reaction</span></li></ul><ul class="c1 lst-kix_lcl8qtm8jjju-0"><li class="c9"><span>radius - the distance around the target the flow is spawned randomly</span></li></ul><ul class="c1 lst-kix_lcl8qtm8jjju-1"><li class="c5"><span>#</span></li><li class="c5"><span>NOTE: To just spawn the flow on the unit itself set radius = 0</span></li></ul><ul class="c1 lst-kix_lcl8qtm8jjju-0"><li class="c9"><span>number - the number of flows to spawn</span></li></ul><ul class="c1 lst-kix_lcl8qtm8jjju-1"><li class="c5"><span>#</span></li><li class="c5"><span>NOTE: If radius =! 0 then each flow will be spawned in a random place in the radius</span></li></ul><ul class="c1 lst-kix_lcl8qtm8jjju-0"><li class="c9"><span>size - the size of each flow spawned</span></li></ul><ul class="c1 lst-kix_lcl8qtm8jjju-1"><li class="c5"><span>#</span></li></ul><ul class="c1 lst-kix_lcl8qtm8jjju-0"><li class="c9"><span>(OPTIONAL) INORGANIC_TOKEN - the inorganic the flow should be made from</span></li></ul><ul class="c1 lst-kix_lcl8qtm8jjju-1"><li class="c5"><span>Any inorganic token</span></li><li class="c5"><span>NOTE: This only applies to some of the types of flows, you can&rsquo;t, for instance, make an IRON dragonfire</span></li></ul><ul class="c1 lst-kix_lcl8qtm8jjju-0"><li class="c9"><span>EXAMPLES: spawnflow web \UNIT_ID 25 10 20 SPIDER_STEEL</span></li></ul><h2 class="c15"><a name="h.uo5w6kxjpqed"></a><span class="c4">teleport - moves a unit and/or item from one point to another, multiple locations accepted</span></h2><ul class="c1 lst-kix_pwsw16lsguc4-0 start"><li class="c9"><span>type - the type of thing to teleport</span></li></ul><ul class="c1 lst-kix_pwsw16lsguc4-1 start"><li class="c5"><span>unit - teleports all units in a radius (includes equiped items)</span></li><li class="c5"><span>item - teleports all items in a radius (does not include equiped items)</span></li><li class="c5"><span>both - teleports all units and items in a radius</span></li></ul><ul class="c1 lst-kix_pwsw16lsguc4-0"><li class="c9"><span>ID # - the target units id number</span></li></ul><ul class="c1 lst-kix_pwsw16lsguc4-1"><li class="c5"><span>\UNIT_ID - when triggering with a syndrome</span></li><li class="c5"><span>\WORKER_ID - when triggering with a reaction</span></li></ul><ul class="c1 lst-kix_pwsw16lsguc4-0"><li class="c9"><span>direction - where it teleports the items/units</span></li></ul><ul class="c1 lst-kix_pwsw16lsguc4-1"><li class="c5"><span>1</span><span class="c7"><a class="c0" href="#h.5h4z7bc2h1gd">*******</a></span><span>&nbsp;- teleports to the building TELEPORT_1</span></li><li class="c5"><span>2</span><span class="c7"><a class="c0" href="#h.5h4z7bc2h1gd">*******</a></span><span>&nbsp;- teleports to the building TELEPORT_2</span></li><li class="c5"><span>target - teleports to the target unit</span></li><li class="c5"><span>self</span><span class="c7"><a class="c0" href="#h.6m2kaf6rgloe">**</a></span><span>,</span><span class="c7"><a class="c0" href="#h.4phaqm31333x">******</a></span><span>&nbsp;- teleports to the origin unit</span></li><li class="c5"><span>idle - teleports to a random idle location on the map</span></li><li class="c5"><span>building - teleports to random buildings</span></li></ul><ul class="c1 lst-kix_pwsw16lsguc4-2 start"><li class="c3"><span>workshop - teleports to a random workshop</span></li><li class="c3"><span>furnace - teleports to a random furnace</span></li><li class="c3"><span>CUSTOM_BUILDING_TOKEN - teleports to a random specific building</span></li></ul><ul class="c1 lst-kix_pwsw16lsguc4-1"><li class="c5"><span>room - teleports to a random room on the map</span></li></ul><ul class="c1 lst-kix_pwsw16lsguc4-0"><li class="c9"><span>radius - teleports all items/units in a given radius, corresponding to x, y, and z</span></li></ul><ul class="c1 lst-kix_pwsw16lsguc4-1"><li class="c5"><span>#/#/#</span></li></ul><ul class="c1 lst-kix_pwsw16lsguc4-0"><li class="c9"><span>(OPTIONAL) ID # - the origin units id number, required for the relative propel type</span></li><li class="c9"><span>EXAMPLE: teleport unit \WORKER_ID 1 10/10/0</span></li></ul><p class="c14"><span></span></p><p class="c14"><span></span></p><p class="c14"><span></span></p><h1 class="c15"><a name="h.6w9b8nlqlg74"></a><span>INIT - all of these scripts need to be initialized in dfhack.init</span></h1><h2 class="c15"><a name="h.dctsclm0r0mi"></a><span>teleportbase - needed to use certain aspects of teleport.lua</span></h2><ul class="c1 lst-kix_k6h3nc75xt7z-0 start"><li class="c9"><span>Use with teleport.lua</span></li><li class="c9"><span>Requires two buildings named TELEPORT_1 and TELEPORT_2</span></li></ul><ul class="c1 lst-kix_k6h3nc75xt7z-1 start"><li class="c5"><span>Nothing else is required</span></li></ul><p class="c14"><span></span></p><h2 class="c15"><a name="h.hkogpcimj3mz"></a><span>upgradebuilding - used to upgrade buildings from one to another, or to change them from one to another</span></h2><ul class="c1 lst-kix_lal6yxako6g-0 start"><li class="c9"><span>Requires a reaction an inorganic and corresponding buildings</span></li><li class="c9"><span>REACTION OPTIONS:</span></li></ul><ul class="c1 lst-kix_lal6yxako6g-1 start"><li class="c5"><span>All reagents with [PRESERVE_REAGENT] will be added to the building materials of the upgraded building and can be reclaimed by destroying the upgraded building</span></li><li class="c5"><span>Reagents without the [PRESERVE_REAGENT] tag will be consumed and will not be able to be reclaimed</span></li><li class="c5"><span>The first product must be the inorganic with the syndrome attached to it</span></li><li class="c5"><span>Subsequent products will be created as normal</span></li><li class="c5 c21"><span></span></li></ul><ul class="c1 lst-kix_lal6yxako6g-0"><li class="c9"><span>EXAMPLE REACTION:</span></li></ul><ul class="c1 lst-kix_lal6yxako6g-1"><li class="c5"><span>[REACTION:LUA_HOOK_UPGRADE_BUILDING_EXAMPLE_1] &lt;- LUA_HOOK_UPGRADE_BUILDING is required</span></li></ul><ul class="c1 lst-kix_lal6yxako6g-2 start"><li class="c3"><span>[NAME:upgrade building]</span></li><li class="c3"><span>[BUILDING:TEST_BUILDING_1:NONE]</span></li><li class="c3"><span>[REAGENT:A:1:BOULDER:NONE:INORGANIC:NONE][PRESERVE_REAGENT]</span></li><li class="c3"><span>[REAGENT:B:1:BOULDER:NONE:INORGANIC:NONE][PRESERVE_REAGENT]</span></li><li class="c3"><span>[REAGENT:C:1500:COIN:NONE:INORGANIC:SILVER]</span></li><li class="c3"><span>[PRODUCT:100:0:BOULDER:NONE:INORGANIC:UPGRADE_BUILDING]</span></li></ul><ul class="c1 lst-kix_lal6yxako6g-0"><li class="c9"><span>INORGANIC OPTIONS:</span></li></ul><ul class="c1 lst-kix_lal6yxako6g-1"><li class="c5"><span>Inorganics must have a syndrome with two [SYN_CLASS:] tags</span></li><li class="c5"><span>Valid arguments for the first SYN_CLASS;</span></li></ul><ul class="c1 lst-kix_lal6yxako6g-2"><li class="c3"><span>here - this will change this particular building</span></li><li class="c3"><span>BUILDING_TOKEN - this will change a randomly selected building of the given token (e.g. TEST_BUILDING_1)</span></li></ul><ul class="c1 lst-kix_lal6yxako6g-1"><li class="c5"><span>Valid arguments for the second SYN_CLASS;</span></li></ul><ul class="c1 lst-kix_lal6yxako6g-2"><li class="c3"><span>upgrade - this will upgrade the building from the name to one higher (i.e. TEST_BUILDING_1 -&gt; TEST_BUILDING_2)</span></li><li class="c3"><span>downgrade - this will downgrade the building from the name to one lower (i.e. TEST_BUILDING_2 -&gt; TEST_BUILDING_1)</span></li><li class="c3"><span>BUILDING_TOKEN - this will change the building to a completely new token (i.e. TEST_BUILDING_1 -&gt; RESEARCH_BUILDING)</span></li></ul><ul class="c1 lst-kix_lal6yxako6g-0"><li class="c9"><span>EXAMPLE INORGANIC:</span></li></ul><ul class="c1 lst-kix_lal6yxako6g-1"><li class="c5"><span>[INORGANIC:UPGRADE_BUILDING]</span></li></ul><ul class="c1 lst-kix_lal6yxako6g-2"><li class="c3"><span>[USE_MATERIAL_TEMPLATE:STONE_VAPOR_TEMPLATE]</span></li><li class="c3"><span>[SPECIAL]</span></li><li class="c3"><span>[SYNDROME]</span></li></ul><ul class="c1 lst-kix_lal6yxako6g-3 start"><li class="c6"><span>[SYN_CLASS:here]</span></li><li class="c6"><span>[SYN_CLASS:upgrade]</span></li></ul><ul class="c1 lst-kix_lal6yxako6g-2"><li class="c3"><span>[MATERIAL_VALUE:0]</span></li></ul><ul class="c1 lst-kix_lal6yxako6g-0"><li class="c9"><span>BUILDING OPTIONS:</span></li></ul><ul class="c1 lst-kix_lal6yxako6g-1"><li class="c5"><span>Nothing special is required from buildings except when using the upgrade/downgrade option</span></li><li class="c5"><span>then the buildings you wish to change need to be named in the convention BLAH_BLAH_BLAH_1, BLAH_BLAH_BLAH_2, etc...</span></li></ul><ul class="c1 lst-kix_lal6yxako6g-0"><li class="c9"><span>EXAMPLE BUILDINGS:</span></li></ul><ul class="c1 lst-kix_lal6yxako6g-1"><li class="c5"><span>[BUILDING_WORKSHOP:TEST_BUILDING_1]</span></li></ul><ul class="c1 lst-kix_lal6yxako6g-2"><li class="c3"><span>[NAME:Soul Forge]</span></li><li class="c3"><span>[NAME_COLOR:7:0:1]</span></li><li class="c3"><span>[DIM:3:3]</span></li><li class="c3"><span>[WORK_LOCATION:1:1]</span></li><li class="c3"><span>[BLOCK:1:0]</span></li><li class="c3"><span>[TILE:0:1:207]</span></li><li class="c3"><span>[COLOR:0:1:0:7:0]</span></li><li class="c3"><span>[TILE:1:1:207]</span></li><li class="c3"><span>[COLOR:1:1:MAT]</span></li><li class="c3"><span>[BUILD_ITEM:1:NONE:NONE:NONE:NONE]</span></li><li class="c3"><span>[BUILDMAT]</span></li><li class="c3"><span>[WORTHLESS_STONE_ONLY]</span></li></ul><ul class="c1 lst-kix_lal6yxako6g-1"><li class="c5"><span>[BUILDING_WORKSHOP:TEST_BUILDING_2]</span></li></ul><ul class="c1 lst-kix_lal6yxako6g-2"><li class="c3"><span>[NAME:Upgraded Soul Forge]</span></li><li class="c3"><span>[NAME_COLOR:7:0:1]</span></li><li class="c3"><span>[DIM:3:3]</span></li><li class="c3"><span>[WORK_LOCATION:1:1]</span></li><li class="c3"><span>[BLOCK:1:0]</span></li><li class="c3"><span>[TILE:0:1:207]</span></li><li class="c3"><span>[COLOR:0:1:0:7:0]</span></li><li class="c3"><span>[TILE:1:1:207]</span></li><li class="c3"><span>[COLOR:1:1:MAT]</span></li></ul><ul class="c1 lst-kix_lal6yxako6g-0"><li class="c9"><span>RESTRICTIONS!</span></li></ul><ul class="c1 lst-kix_lal6yxako6g-1"><li class="c5"><span>Only upgrade between buildings of the same type (i.e. WORKSHOP-&gt;WORKSHOP)</span></li><li class="c5"><span>Only upgrade to buildings of the same size (i.e. 3x3 -&gt; 3x3)</span></li><li class="c5"><span>Only upgrade to buildings with the same center and work spot (I don&#39;t know if this is strictly necessary, haven&#39;t done much testing)</span></li><li class="c5"><span>Be careful about forbiden tiles in a building, the effect of changing these tiles without redefining the building is unknown</span></li></ul><p class="c14"><span></span></p><h2 class="c15"><a name="h.9nmtjkon4ajk"></a><span>upgradeitem - used to upgrade item from one to another, or to change them from one to another</span></h2><ul class="c1 lst-kix_isrne8nmnm6z-0 start"><li class="c9"><span>Requires a reaction an inorganic and corresponding items</span></li><li class="c9"><span>REACTION OPTIONS:</span></li></ul><ul class="c1 lst-kix_isrne8nmnm6z-1 start"><li class="c5"><span>All item reagents with [PRESERVE_REAGENT] will be flagged for upgrading</span></li><li class="c5"><span>Reagents without the [PRESERVE_REAGENT] tag will be consumed</span></li><li class="c5"><span>The first product must be the inorganic with the syndrome attached to it</span></li><li class="c5"><span>Subsequent products will be created as normal</span></li><li class="c5 c21"><span></span></li></ul><ul class="c1 lst-kix_isrne8nmnm6z-0"><li class="c9"><span>EXAMPLE REACTION:</span></li></ul><ul class="c1 lst-kix_isrne8nmnm6z-1"><li class="c5"><span>[REACTION:LUA_HOOK_UPGRADE_ITEM_EXAMPLE_1] &lt;- LUA_HOOK_UPGRADE_ITEM is required</span></li></ul><ul class="c1 lst-kix_isrne8nmnm6z-2 start"><li class="c3"><span>[NAME:upgrade armor]</span></li><li class="c3"><span>[BUILDING:UPGRADE_SMITH:NONE]</span></li><li class="c3"><span>[REAGENT:A:1:ARMOR:NONE:INORGANIC:NONE][PRESERVE_REAGENT]</span></li><li class="c3"><span>[REAGENT:C:1500:COIN:NONE:INORGANIC:SILVER]</span></li><li class="c3"><span>[PRODUCT:100:0:BOULDER:NONE:INORGANIC:UPGRADE_ITEM]</span></li></ul><ul class="c1 lst-kix_isrne8nmnm6z-0"><li class="c9"><span>INORGANIC OPTIONS:</span></li></ul><ul class="c1 lst-kix_isrne8nmnm6z-1"><li class="c5"><span>Inorganics must have a syndrome with two [SYN_CLASS:] tags</span></li><li class="c5"><span>Valid arguments for the first SYN_CLASS;</span></li></ul><ul class="c1 lst-kix_isrne8nmnm6z-2"><li class="c3"><span>this - this will change the items in the reaction</span></li><li class="c3"><span>all - this will change all items of the same type and subtype as the items in the reaction</span></li><li class="c3"><span>ITEM_TOKEN - this will change a randomly selected item of the given token (e.g. ITEM_ARMOR_TEST_1)</span></li></ul><ul class="c1 lst-kix_isrne8nmnm6z-1"><li class="c5"><span>Valid arguments for the second SYN_CLASS;</span></li></ul><ul class="c1 lst-kix_isrne8nmnm6z-2"><li class="c3"><span>upgrade - this will upgrade the item to one higher (i.e. ITEM_ARMOR_TEST_1 -&gt; ITEM_ARMOR_TEST_2)</span></li><li class="c3"><span>downgrade - this will downgrade the item to one lower (i.e. ITEM_ARMOR_TEST_2 -&gt; ITEM_ARMOR_TEST_1)</span></li><li class="c3"><span>ITEM_TOKEN - this will change the item to a completely new token (i.e. ITEM_ARMOR_TEST_1 -&gt; ITEM_ARMOR_ELF_ARMOR)</span></li></ul><ul class="c1 lst-kix_isrne8nmnm6z-0"><li class="c9"><span>EXAMPLE INORGANIC:</span></li></ul><ul class="c1 lst-kix_isrne8nmnm6z-1"><li class="c5"><span>[INORGANIC:UPGRADE_ITEM]</span></li></ul><ul class="c1 lst-kix_isrne8nmnm6z-2"><li class="c3"><span>[USE_MATERIAL_TEMPLATE:STONE_VAPOR_TEMPLATE]</span></li><li class="c3"><span>[SPECIAL]</span></li><li class="c3"><span>[SYNDROME]</span></li></ul><ul class="c1 lst-kix_isrne8nmnm6z-3 start"><li class="c6"><span>[SYN_CLASS:this]</span></li><li class="c6"><span>[SYN_CLASS:upgrade]</span></li></ul><ul class="c1 lst-kix_isrne8nmnm6z-2"><li class="c3"><span>[MATERIAL_VALUE:0]</span></li></ul><ul class="c1 lst-kix_isrne8nmnm6z-0"><li class="c9"><span>ITEM OPTIONS:</span></li></ul><ul class="c1 lst-kix_isrne8nmnm6z-1"><li class="c5"><span>Nothing special is required from items except when using the upgrade/downgrade option</span></li><li class="c5"><span>then the item you wish to change need to be named in the convention BLAH_BLAH_BLAH_1, BLAH_BLAH_BLAH_2, etc...</span></li></ul><ul class="c1 lst-kix_isrne8nmnm6z-0"><li class="c9"><span>EXAMPLE ITEMS:</span></li></ul><ul class="c1 lst-kix_isrne8nmnm6z-1"><li class="c5"><span>[ITEM_ARMOR:ITEM_ARMOR_TEST_1]</span></li></ul><ul class="c1 lst-kix_isrne8nmnm6z-2"><li class="c3"><span>[NAME:armor:armor]</span></li><li class="c3"><span>[PREPLURAL:suits of]</span></li><li class="c3"><span>[MATERIAL_PLACEHOLDER:leather]</span></li><li class="c3"><span>[ARMORLEVEL:1]</span></li><li class="c3"><span>[UBSTEP:1]</span></li><li class="c3"><span>[LBSTEP:1]</span></li><li class="c3"><span>[SHAPED]</span></li><li class="c3"><span>[LAYER:ARMOR]</span></li><li class="c3"><span>[COVERAGE:100]</span></li><li class="c3"><span>[LAYER_SIZE:20]</span></li><li class="c3"><span>[LAYER_PERMIT:49]</span></li><li class="c3"><span>[MATERIAL_SIZE:6]</span></li><li class="c3"><span>[LEATHER]</span></li><li class="c3"><span>[HARD]</span></li><li class="c3"><span>[BARRED]</span></li><li class="c3"><span>[SCALED]</span></li></ul><ul class="c1 lst-kix_isrne8nmnm6z-1"><li class="c5"><span>[ITEM_ARMOR:ITEM_ARMOR_TEST_2]</span></li></ul><ul class="c1 lst-kix_isrne8nmnm6z-2"><li class="c3"><span>[NAME:plated hide:plated hides]</span></li><li class="c3"><span>[ARMORLEVEL:3]</span></li><li class="c3"><span>[SHAPED]</span></li><li class="c3"><span>[LAYER:ARMOR]</span></li><li class="c3"><span>[COVERAGE:100]</span></li><li class="c3"><span>[LAYER_SIZE:25]</span></li><li class="c3"><span>[LEATHER]</span></li><li class="c3"><span>[LAYER_PERMIT:49]</span></li><li class="c3"><span>[MATERIAL_SIZE:9]</span></li><li class="c3"><span>[BARRED]</span></li><li class="c3"><span>[HARD]</span></li><li class="c3"><span>[METAL]</span></li></ul><ul class="c1 lst-kix_isrne8nmnm6z-0"><li class="c9"><span>RESTRICTIONS!</span></li></ul><ul class="c1 lst-kix_isrne8nmnm6z-1"><li class="c5"><span>Only upgrade between the same types (i.e. ARMOR -&gt; ARMOR), never upgrade to different types</span></li><li class="c5"><span>Can upgrade anything with a subtype (including toys, instruments, siegeammo, etc...)</span></li><li class="c5"><span>Will not downgrade if item is at _1 and will not upgrade if there is no higher _#</span></li></ul><hr style="page-break-before:always;display:none;"><p class="c14"><span></span></p><p class="c14"><span></span></p><p class="c14"><span></span></p><h1 class="c15"><a name="h.4cijg3dufte2"></a><span class="c4">NOTES</span></h1><h2 class="c15"><a name="h.s9twvzd9r5ey"></a><span class="c4">*</span></h2><p class="c18"><span>A sample file is included with these scripts. The sample file is named &lsquo;5x5_X.txt&rsquo;. 1&rsquo;s represent squares that should be targeted, 0&rsquo;s represent squares that should not be targeted, and the &lsquo;X&rsquo; is the target creature position. Note that use of the plan@ token will disable any radius@ values.</span></p><h2 class="c15"><a name="h.6m2kaf6rgloe"></a><span class="c4">**</span></h2><p class="c18"><span>All tokens marked with this require the accurate detection of the caster unit. There is currently a working method included with these scripts, but note that it is NOT 100% accurate. When lots of units are using interactions simultaneously the scripts can assign the wrong casting unit. Also worth noting is that your interaction MUST HAVE a [CDI:VERB:] included with it. Use of these tokens is done at your own risk, and with the understanding that they may not behave correctly all the time.</span></p><h2 class="c15"><a name="h.a3kxfer367qi"></a><span class="c4">***</span></h2><p class="c18"><span>A complete list of tokens is included in the file &lsquo;tokens.txt&rsquo;. Because there are over 100 tokens available for checking they have not been included in this document.</span></p><h2 class="c15"><a name="h.rh1ihxsgmejk"></a><span class="c4">****</span></h2><p class="c18"><span>Chain is an interesting feature, its current logic is as follows. It runs through the entire target checking feature and generates a targetList. This targetList is then used to trigger the required script on all the valid targets. Once that is done the chain counter increases by 1 and the process is repeated with a randomly selected target from the targetList used as the new center target and the previous center target is now the &ldquo;casting&rdquo; unit. As such, this requires you to use a radius@ or plan@ token so that the targetList has more than one unit (if it just has one unit it will continuously use the same unit).</span></p><h2 class="c15"><a name="h.15jvqb4ub6ob"></a><span class="c4">*****</span></h2><p class="c18"><span>These tokens are not yet implemented fully. DO NOT USE!</span></p><h2 class="c15"><a name="h.4phaqm31333x"></a><span class="c4">******</span></h2><p class="c18"><span>Meant for use with the wrapper script</span></p><h2 class="c15"><a name="h.5h4z7bc2h1gd"></a><span class="c4">*******</span></h2><p class="c18"><span>Needs teleportbase to work</span></p><h1 class="c15"><a name="h.i5icn1kdn5gy"></a><span class="c4">Examples</span></h1><p class="c14"><span></span></p><h1 class="c15"><a name="h.x43ggjw0lhvr"></a><span class="c4">ATTRIBUTE_TOKENS:</span></h1><ul class="c1 lst-kix_wikihn2hpqio-0 start"><li class="c9"><span>mental</span></li></ul><ul class="c1 lst-kix_wikihn2hpqio-1 start"><li class="c5"><span>ANALYTICAL_ABILITY</span></li><li class="c5"><span>FOCUS</span></li><li class="c5"><span>WILLPOWER</span></li><li class="c5"><span>CREATIVITY</span></li><li class="c5"><span>INTUITION</span></li><li class="c5"><span>PATIENCE</span></li><li class="c5"><span>MEMORY</span></li><li class="c5"><span>LINGUISTIC_ABILITY</span></li><li class="c5"><span>SPATIAL_SENSE</span></li><li class="c5"><span>MUSICALITY</span></li><li class="c5"><span>KINESTHETIC_SENSE</span></li><li class="c5"><span>EMPATHY</span></li><li class="c5"><span>SOCIAL_AWARENESS</span></li></ul><ul class="c1 lst-kix_wikihn2hpqio-0"><li class="c9"><span>physical</span></li></ul><ul class="c1 lst-kix_wikihn2hpqio-1"><li class="c5"><span>STRENGTH</span></li><li class="c5"><span>AGILITY</span></li><li class="c5"><span>TOUGHNESS</span></li><li class="c5"><span>ENDURANCE</span></li><li class="c5"><span>RECUPERATION</span></li><li class="c5"><span>DISEASE_RESISTANCE</span></li></ul><p class="c14"><span></span></p><h1 class="c15"><a name="h.cw5glqqre8r0"></a><span class="c4">VALUE_TOKENS:</span></h1><ul class="c1 lst-kix_jm28y2ae9kh6-0 start"><li class="c9"><span>webbed</span></li><li class="c9"><span>stunned</span></li><li class="c9"><span>winded</span></li><li class="c9"><span>unconscious</span></li><li class="c9"><span>pain</span></li><li class="c9"><span>nausea</span></li><li class="c9"><span>dizziness</span></li><li class="c9"><span>paralysis</span></li><li class="c9"><span>numbness</span></li><li class="c9"><span>fever</span></li><li class="c9"><span>exhaustion</span></li><li class="c9"><span>hunger</span></li><li class="c9"><span>thirst</span></li><li class="c9"><span>sleepiness</span></li><li class="c9"><span>blood</span></li><li class="c9"><span>infection</span></li></ul></body></html>

About

Set of DFHack scripts specially designed to be used as spells

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages