initial
This commit is contained in:
19
Reference/EGOTech/piercer/yolol/approach_pid_basic.yolol
Normal file
19
Reference/EGOTech/piercer/yolol/approach_pid_basic.yolol
Normal file
@@ -0,0 +1,19 @@
|
||||
s=13 m=1000 ib=5 t=20 g=0.200 p=0 i=0 x=ib+s u=0
|
||||
if:Ap*(:M<m)then:Range=1 goto3+:insideSafeZone end goto1
|
||||
Kp=0.056 Ki=0.001 Kd=5.4 h=0.50 l=1-h p=:M-s goto5 //NSZ
|
||||
Kp=0.080 Ki=0.001 Kd=5.8 h=0.50 l=1-h p=:M-s goto5 //SZ
|
||||
e=:M-s d=(p-e)*Kd*h+d*l i+=e*Ki*(:M<x) o=Kp*e+i f=u/t u+=u<t p=e
|
||||
z/=:Ap*(:M<m)*(d*d>g+e*e>1) :fcuforward=o*f :fcubackward=(d-i)*f goto5
|
||||
if(d*d>g+e*e>1)==0then:Ap=0end :fcuforward=0 :fcubackward=0 goto1
|
||||
|
||||
//Improved PID - Approximated Profiled Motion PID - VER 1.1
|
||||
// by: Darkyshadow
|
||||
// github.com/GameName-Darkyshadow/Starbase
|
||||
// tips by in game mail are not necessary but appreciated
|
||||
// Tuning Parameters explained on Github with Manual
|
||||
|
||||
//Large Ship Example Tunings
|
||||
//Kp=0.056 Ki=0.001 Kd=5.4 h=0.50 //t=20 //Super Conservative
|
||||
//Kp=0.080 Ki=0.001 Kd=5.8 h=0.50 //t=20 //Conservative
|
||||
//Medium Ship Example Tunings
|
||||
//Kp=0.090 Ki=0.001 Kd=5.8 h=0.98 //t=10 //Medium Aggressive
|
||||
@@ -0,0 +1,20 @@
|
||||
if:AutoPilot<1 and :Nav<1theng=0 f=0 goto1end ap=:AutoPilot
|
||||
r=20 pt=15 yt=15 ep=1.05 ed=5000 et=5000 t=:Turtle :Cruise=0
|
||||
ifg>0then:Avoidance=1else:Avoidance=0end
|
||||
xD=:wx-:ex yD=:wy-:ey zD=:wz-:ez Dt=sqrt(xD^2+yD^2+zD^2)
|
||||
iff<1thenx0=:ex y0=:ey z0=:ez Do=Dt f=1 r=0end
|
||||
da=sqrt((:ex-x0)^2+(:ey-y0)^2+(:ez-z0)^2) d0=d1 d1=Dt v1=d0-d1
|
||||
dx=(Do-da)*ep+ed ifDt>dx or :cas>0thens=1 :cas=0end
|
||||
ifs>0then:FCUForward=0 ifabs v1<15thenf=0 g=0 s=0 goto1endend
|
||||
e=10^6 ds=e*sqrt((:fx-:ex)^2+(:fy-:ey)^2+(:fz-:ez)^2) Dd=ds/Dt
|
||||
xs=:ex+Dd*xD/e ys=:ey+Dd*yD/e zs=:ez+Dd*zD/e vr=xs-:fx vs=ys-:fy
|
||||
vt=zs-:fz vj=:gx-:ex vk=:gy-:ey vl=:gz-:ez va=:fx-:ex vb=:fy-:ey
|
||||
vc=:fz-:ez vx=vk*vc-vb*vl vy=-(vj*vc-va*vl) vz=vj*vb+va*vk
|
||||
pj=vr*vj+vs*vk+vt*vl px=vr*vx+vs*vy+vz*vt a=pj>-r b=px>-r c=pj<-r
|
||||
n="\n" :dd=Do-da+n+Dt+n+v1+"\npj:"+pj+" px:"+px+" r:"+r+" g:"+g d=pj>r
|
||||
ifDt<et then:AutoPilot=0 :FCUForward=0end ifg>0thengoto1end h=pj<r
|
||||
ifa*h*b*(px<r)theng=ap :FCUForward=t*ap :Nav=0 goto1end j=px>r k=px<-r
|
||||
ifc then:FcuRotationalPitch=pt end ifd then:FcuRotationalPitch=-pt end
|
||||
ifj then:FcuRotationalYaw=yt end
|
||||
ifk then:FcuRotationalYaw=-yt end goto1
|
||||
// Original by fixerid
|
||||
@@ -0,0 +1,3 @@
|
||||
n="\n" :target=n+n+"X: "+:wx+n+"Y: "+:wy+n+"Z: "+:wz
|
||||
if:load_ap<1thengoto1end
|
||||
:wx=:nx :wy=:ny :wz=:nz :load_ap=0 goto1
|
||||
@@ -0,0 +1,13 @@
|
||||
a="origin_" b=a+"north" c=a+"south" d=a+"east" :kt=b goto2
|
||||
a+="west" e=160000 f=8*e g=f*3/13 h=2*e i=h*13/19 j=f*3/19 k=h*13/3
|
||||
l=1000000 m=l-:ke m*=m n=l-:kf n*=n o=l-:kg o*=o :kt=c
|
||||
p=q r=s t=u
|
||||
v=l-:ke v*=v w=l-:kf w*=w x=l-:kg x*=x :kt=d
|
||||
:ex=(m+v)/f+y/g-z/j :ey=v/h-m/i+(y+z)/k :ez=(y+z-m-v)/e
|
||||
y=l-:ke y*=y q=l-:kf q*=q s=l-:kg s*=s :kt=a
|
||||
:fx=(n+w)/f+p/g-aa/j :fy=w/h-n/i+(p+aa)/k :fz=(p+aa-n-w)/e
|
||||
z=l-:ke z*=z aa=l-:kf aa*=aa u=l-:kg u*=u :kt=b
|
||||
:gx=(o+x)/f+r/g-t/j :gy=x/h-o/i+(r+t)/k :gz=(r+t-o-x)/e goto3
|
||||
|
||||
// based on ISAN v2.5 by Collective
|
||||
// Compass by Firestar99
|
||||
@@ -0,0 +1,2 @@
|
||||
a=:au+:ad ifa<1thengoto1end :alarmOn=1 :alarm=1
|
||||
if:alarmOn thengoto2end :alarm=0 goto1
|
||||
@@ -0,0 +1,4 @@
|
||||
a=100 if:av<1thengoto1end :guide=1
|
||||
f=:FcuForward b=:ru+:rm+:rd :FcuForward*=b==0 z/=b==0 goto1+:av
|
||||
b=4*:rd-2*:ru+:rm c=a*(b>0-b<0) :FUD=c :au=c>0 :ad=c<0 z/=:av*b goto3
|
||||
:FcuForward=f :FUD=0 :au=0 :ad=0 goto1
|
||||
@@ -0,0 +1,2 @@
|
||||
a=:au+:ad ifa<1thengoto1end
|
||||
b=:au+:ad ifb>0thengoto2end :cas=1 :lav++ :tav++ goto1
|
||||
@@ -0,0 +1,2 @@
|
||||
n="\n" a="Lifetime:"+n b="Trip:"+n
|
||||
if:av_res>0then:tav=0end :Avoids=n+a+:lav+n+n+b+:tav goto2
|
||||
@@ -0,0 +1 @@
|
||||
a=10000 :rd=:gd*((:r8+:r9+:r0+:c7+:c8+:c9+:c0+:l8+:l9+:l0)<a) goto1
|
||||
@@ -0,0 +1,2 @@
|
||||
k=1000 a=(12+:range)*k c=:distance*:range b=:r4+:r5+:r6+:r7
|
||||
:rm=:gd*((b+:c3+:c4+:c5+:c6+:l4+:l5+:l6+:l7+c)<a) goto1
|
||||
@@ -0,0 +1 @@
|
||||
k=1000 a=8*k :ru=:gd*((:r1+:r2+:r3+:c1+:c2+:l1+:l2+:l3)<a) goto1
|
||||
@@ -0,0 +1 @@
|
||||
if:av*((:dcr+:dcp)!=0)then:avoidance=0 :nav=0 :autopilot=0end goto1
|
||||
@@ -0,0 +1 @@
|
||||
:BackupRods=(:BackupRods+:brs)*(:BackupRods>=0)-:BackupRods>:mbr goto1
|
||||
@@ -0,0 +1,4 @@
|
||||
n="\n" a="h" b="m" c="s" k="km" e="\n\nDistance:\n" p=300000
|
||||
s=t%60 m=(t-s)%3600/60 h=(t-m*60-s)/3600 d=:sp*t/1000
|
||||
:WithBackup=h+a+m+b+(s-s%1)+c+e+d+k f=:Fuel :bcw=19
|
||||
t=(:Fuel+:BackUpRods*p)/((f-:Fuel)/4) goto2
|
||||
@@ -0,0 +1 @@
|
||||
if:fcubackward==100then:cruise=10end goto1
|
||||
@@ -0,0 +1 @@
|
||||
:GenRate=:MinEPS*:Min_EPS+(10000-:Battery)/50 goto1
|
||||
4
Reference/EGOTech/piercer/yolol/fuel_time_advanced.yolol
Normal file
4
Reference/EGOTech/piercer/yolol/fuel_time_advanced.yolol
Normal file
@@ -0,0 +1,4 @@
|
||||
n="\n" a="h" b="m" c="s" k="km" e="\n\nDistance:\n"
|
||||
s=t%60 m=(t-s)%3600/60 h=(t-m*60-s)/3600 d=:sp*t/1000
|
||||
:FuelTime=n+h+a+m+b+(s-s%1)+c+e+d+k f=:Fuel :fcw=19
|
||||
t=:Fuel/((f-:Fuel)/4) goto2
|
||||
1
Reference/EGOTech/piercer/yolol/isan_reset_basic.yolol
Normal file
1
Reference/EGOTech/piercer/yolol/isan_reset_basic.yolol
Normal file
@@ -0,0 +1 @@
|
||||
if:isan_reset then:_="" :isan_reset=0end goto1
|
||||
6
Reference/EGOTech/piercer/yolol/lasers_auto_basic.yolol
Normal file
6
Reference/EGOTech/piercer/yolol/lasers_auto_basic.yolol
Normal file
@@ -0,0 +1,6 @@
|
||||
x=1.68 y=-1.68 r=57.296 dd=13 s=20 m=999
|
||||
if:lasers<1thena=1 goto2end rd=:Distance d=rd+x
|
||||
ifrd<1 or rd>m thend=dd+x end c=y/d*r ifc>s thenc=s end goto5+:dms
|
||||
goto2 // manual
|
||||
:dp=c goto2 // fixed
|
||||
:rot=1 ifa>0then:dp=c a=0end goto2 // auto
|
||||
2
Reference/EGOTech/piercer/yolol/lasers_basic.yolol
Normal file
2
Reference/EGOTech/piercer/yolol/lasers_basic.yolol
Normal file
@@ -0,0 +1,2 @@
|
||||
if:lasers<1then:lsr1=0 :lsr2=0 :dp=0 goto1end :lsr1=1 :lsr2=1-:leco
|
||||
goto1
|
||||
@@ -0,0 +1,3 @@
|
||||
a=0.5 b=-15 c=20 d=-1
|
||||
:dp+=:dps*a*(:dms==d) if:dp<b then:dp=b elseif:dp>c then:dp=c endend
|
||||
goto2
|
||||
@@ -0,0 +1,2 @@
|
||||
a=0.5*(:dms>0) if:lasers*:rot thengoto2end :dr=0 goto1
|
||||
if:dcr==:dr then:dp+=a :dr+=90end if:dr>180then:dp+=a :dr=0end goto1
|
||||
@@ -0,0 +1 @@
|
||||
:lasers*=:fuel>2000 goto1
|
||||
@@ -0,0 +1,4 @@
|
||||
n="\n" q=n+n s=1728 k=" stks"+q o=" Ore" c=" Crystal" d="Scanning..."
|
||||
i=0 r=q if:scr<1then:scan=q+"SCANNER OFF" goto2end :scn=1 r+=d t=q
|
||||
ifi<:sr then:ix=i a=:vl/s/100*100 b=:mt-c-o t+=b+n+a+k i++ goto3end
|
||||
ift!=q thenr=t end :scan=r goto2
|
||||
@@ -0,0 +1 @@
|
||||
:MinEPS=(:MinEPS+:mes)*(:MinEPS>=0)-:MinEPS>100 goto1
|
||||
4
Reference/EGOTech/piercer/yolol/mine_basic.yolol
Normal file
4
Reference/EGOTech/piercer/yolol/mine_basic.yolol
Normal file
@@ -0,0 +1,4 @@
|
||||
pd=13 e=3 x=pd+e k=999
|
||||
if:mine<1thenn=0 goto2end if:Distance>k then:mine=0end l=n+3 gotol
|
||||
:Approach=1 :scr=1 n=1
|
||||
rd=:Distance d=rd+e ifd<1 or rd>x thengoto2end :lasers=1 :mine=0 goto2
|
||||
5
Reference/EGOTech/piercer/yolol/odometer_basic.yolol
Normal file
5
Reference/EGOTech/piercer/yolol/odometer_basic.yolol
Normal file
@@ -0,0 +1,5 @@
|
||||
n="\n" k=1000 u="km" t="Trip:"+n
|
||||
if:odo_res>0then:odometer=n+"Reseting..." :odo_t=0end
|
||||
s=:sp :odo_l+=s/k :odo_t+=s/k
|
||||
if:Odometer==""thengoto1end :Odometer=n+:odo_l+u+n+n+t+:odo_t+u+n
|
||||
goto1
|
||||
4
Reference/EGOTech/piercer/yolol/prop_time_advanced.yolol
Normal file
4
Reference/EGOTech/piercer/yolol/prop_time_advanced.yolol
Normal file
@@ -0,0 +1,4 @@
|
||||
n="\n" a="h" b="m" c="s" k="km" e="\n\nDistance:\n" t=0
|
||||
s=t%60 m=(t-s)%3600/60 h=(t-m*60-s)/3600 d=:sp*t/1000
|
||||
:PropTime=n+h+a+m+b+(s-s%1)+c+e+d+k p=:Propellant :pcw=19
|
||||
t=:Propellant/((p-:Propellant)/4) goto2
|
||||
@@ -0,0 +1 @@
|
||||
:sense=(:sense+:sss)*(:sense>=0)-:sense>100 goto1
|
||||
2
Reference/EGOTech/piercer/yolol/sloth_basic.yolol
Normal file
2
Reference/EGOTech/piercer/yolol/sloth_basic.yolol
Normal file
@@ -0,0 +1,2 @@
|
||||
if:sloth<1then:sense1=100 :sense2=-100 goto1end
|
||||
:sense1=:sensitivity :sense2=-:sensitivity goto1
|
||||
12
Reference/EGOTech/piercer/yolol/timer_advanced.yolol
Normal file
12
Reference/EGOTech/piercer/yolol/timer_advanced.yolol
Normal file
@@ -0,0 +1,12 @@
|
||||
n="\n" q="y" j="w" k="d" l="h" o="m"
|
||||
u="s" g="Reseting..." a=60 b=a*a c=b*24 e=c*7 f=c*365 x=1000
|
||||
if:t_res>0then:ts=0 z=n+n+g end :Timer=z
|
||||
t=:ts s=t%a t-=s m=t%b/a t-=m*a h=t%c/b t-=h*b d=t%e/c t-=d*c w=t%f/e
|
||||
t-=w*e y=t/f z=n ify>0thenz+=y+q end r=w%1 d+=r*7 ifd>6thenw++ d-=7end
|
||||
ifw>0thenz+=w/x*x+j end v=d%1 ifv==0.999thend+=0.001end // rounding
|
||||
ifd>0thenz+=d+k+n elsez+=n end z+=h+l+m+o+s+u+n+n :ts++ goto3
|
||||
|
||||
// Outputs:
|
||||
// :Timer - Global for text panel
|
||||
// Inputs:
|
||||
// :ts - store timer in seconds, put in memory chip or device
|
||||
1
Reference/EGOTech/piercer/yolol/total_fuel_basic.yolol
Normal file
1
Reference/EGOTech/piercer/yolol/total_fuel_basic.yolol
Normal file
@@ -0,0 +1 @@
|
||||
:fuel=:f1+:f2+:f3+:f4+:f5+:f6+:f7+:f8+:f9+:f10+:f11+:f12 goto1
|
||||
@@ -0,0 +1,2 @@
|
||||
s=3 if:Ping<1thengoto1end i=0 :ponder=1 :idBlink=1
|
||||
ifi<s*5theni+=1 goto2end :Ping=0 :idBlink=0 :ponder=0 goto1
|
||||
1
Reference/EGOTech/piercer/yolol/turtle_basic.yolol
Normal file
1
Reference/EGOTech/piercer/yolol/turtle_basic.yolol
Normal file
@@ -0,0 +1 @@
|
||||
if:Turtle<100then:Turtle=:TurtleRate end goto1
|
||||
@@ -0,0 +1 @@
|
||||
:TurtleRate=(:TurtleRate+:trs)*(:TurtleRate>=0)-:TurtleRate>100 goto1
|
||||
@@ -0,0 +1,2 @@
|
||||
k=1000 a=(2+:range)*k c=:distance*:range
|
||||
:w9=:gd*((:c2+:c4+c)<a) :w0=:gd*((:c1+:c3+c)<a) goto1
|
||||
@@ -0,0 +1,2 @@
|
||||
k=1000 a=(3+:range)*k c=:distance*:range
|
||||
:wa=:gd*((:c6+:c9+:c0+c)<a) :wb=:gd*((:c5+:c7+:c8+c)<a) goto1
|
||||
@@ -0,0 +1,2 @@
|
||||
k=1000 a=2*k b=4*k
|
||||
:w6=:gd*((:l2+:l5)<a) :w5=:gd*((:l1+:l3+:l4+:l7)<b) goto2
|
||||
@@ -0,0 +1,2 @@
|
||||
k=1000 a=2*k b=3*k
|
||||
:w8=:gd*((:l8+:l0)<a) :w7=:gd*((:l6+:l7+:l9)<b) goto2
|
||||
@@ -0,0 +1,2 @@
|
||||
k=1000 a=2*k b=4*k
|
||||
:w1=:gd*((:r2+:r5)<a) :w2=:gd*((:r1+:r3+:r4+:r7)<b) goto2
|
||||
@@ -0,0 +1,2 @@
|
||||
k=1000 a=2*k b=3*k
|
||||
:w3=:gd*((:r8+:r0)<a) :w4=:gd*((:r6+:r7+:r9)<b) goto2
|
||||
Reference in New Issue
Block a user