here's the macros for solo race chat room
Code: Select all
automacro mapALDEBARAN {
   map aldebaran
   
   exclusive 1
   run-once 1
   call gobacktoALDE_GLD
}
macro gobacktoALDE_GLD {
   :start
   [
   do move alde_gld 183 204
   ]
   if ($.map != "turbo_room") goto start
      goto end
   :end
   call releaseTRACKS
   release mapALDEBARAN   
   release mapTURBO_ROOM
}
automacro mapTURBO_ROOM {
   map turbo_room
   ##### ==========================================##### select chat room here [start]
   #room solo - 0, normal 4 bot - 1, normal 16 bot - 2, normal 8 bot - 3   
   #expert 4 bot - 4, expert 8 bot - 5, expert 16 bot - 6  
   set Xroom 0
   ##### ==========================================##### select chat room here [end]
      
   set race 0    
   exclusive 1
   run-once 1
   call movetoCHATROOM
}
macro chatroomCHOICE {
   if ($Xroom == "") goto nothing
   if ($Xroom ~ 0 .. 3) goto moveLEFT
   if ($Xroom ~ 4 .. 6) goto moveRIGHT
   log === error chat room choice ===   
   stop
   
   :nothing
   log === please put your choice ===
   stop
   
   :moveLEFT
   $Xmove = 80 130
   goto end
   
   :moveRIGHT
   if ($Xroom == 4) goto expert4
   if ($Xroom == 5) goto expert8
   if ($Xroom == 6) goto expert16
   log === error expert room choice ===
   stop
   
   :expert4
   $Xroom = 0
   goto nextROOM
   
   :expert8
   $Xroom = 1
   goto nextROOM
   
   :expert16
   $Xroom = 2
   goto nextROOM
   
   :nextROOM
   $Xmove = 120 130
   goto end
   
   :end
   
}
macro movetoCHATROOM {
   
   [
   call chatroomCHOICE
   do move $Xmove
   ]
   do charselect
   $relogCHAT = 1
 
}
automacro getinCHATROOM {
   hook in_game
   map turbo_room
 
   var relogCHAT == 1
   
   delay 5
   exclusive 1
   run-once 1
   call getinNOW
}
macro getinNOW {
   log === chat room number: $Xroom ===
   do chat join $Xroom
   pause 1
   do chat info
   
   $relogCHAT = 0
   call releaseTRACKS
   release getinCHATROOM
}
#========================================================= in TURBO ROOM
macro releaseTRACKS {
   [
   release FINISH
   release RACEdecoy
   log === all tracks released ===
   ] 
}
 
#================== other rooms
#======================================================== timer set [start]
macro moveNOW {
   :start
   [
   do move $ENDportal
   ]   
   pause 2
   if ($.pos != "$ENDportal") goto start
}
macro moveNOW2 {
   :start
   do move $ENDportal
   pause 2
   if ($.pos != "$ENDportal") goto start
}
#================== first room
macro moveONE1 {
   do move $move1
   pause 0.5
}
macro moveONE2 {
   do move $move1
   pause 1
}
macro moveONE3 {
   do move $move1
   pause 1.7
}
#======================================================== timer set [end]
#================== LOG BRIDGE route
macro BRIDGEroute {
[
log === tengah ===
]
$move1 = 73 364
call moveONE2
$move1 = 84 364
call moveONE2
$move1 = 84 361
call moveONE1
$move1 = 90 361
call moveONE1
$move1 = 91 362
call moveONE1
$move1 = 91 366
call moveONE1
$move1 = 103 366
call moveONE2
$move1 = 103 367
call moveONE1
$move1 = 109 367
call moveONE1
$move1 = 109 363
call moveONE2
$move1 = 116 363
call moveONE2
$move1 = 116 362
call moveONE1
$move1 = 130 362
call moveONE2
$move1 = 130 365
call moveONE1
$move1 = 147 365
call moveONE3
$move1 = 147 366
call moveONE1
$move1 = 151 366
call moveONE1
$move1 = 151 365
call moveONE1
$move1 = 156 365
call moveONE2
$move1 = 156 367 
call moveONE1
$move1 = 168 367
call moveONE3
$move1 = 168 363
call moveONE1
}
#========================================================= RACE NOW
automacro FINISH {
   location turbo_n_1 384 161
    
   exclusive 1
   run-once 1
   call {
   
      [
      log ========================
      log ========================
      log === congratulations! ===
      log ========================
      log ========================
      ]
     
      release mapTURBO_ROOM
   
      }
   }   
automacro BLOODYMINE@race9 {
   location turbo_n_1 307 52, turbo_n_1 307 46, turbo_n_1 307 40
  
   timeout 2
   call MINEroute
}
macro MINEroute {
   $ENDportal = 371 47
   #$ENDportal = 371 43 ## turbo_e_8
   call moveNOW
}
automacro INVISIBLEMAZE@race8 {
   location turbo_n_1 167 55
  
   timeout 2
   call INVISIBLEroute
}
macro INVISIBLEroute {
   $ENDportal = 232 14
   call moveNOW
}
automacro SMALLCAVE@race7 {
   location turbo_n_1 5 91
  
   timeout 2
   call CAVEroute
}
macro CAVEroute {
   $ENDportal = 92 19
   #$ENDportal = 93 19 ## turbo_e_8
   call moveNOW
}
automacro SNAKEDICE@race6 {
   location turbo_n_1 268 275
  
   timeout 5
   call SNAKEroute
}
macro SNAKEroute {
   $ENDportal = 389 275
   call moveNOW2
}
automacro SNAILCOURSE@race5 {
   location turbo_n_1 185 230 190 225
  
   timeout 5 
   
   call SNAILroute
}
macro SNAILroute {
   do move 185 230
   pause 0.5
   
   $ENDportal = 249 200
   call moveNOW2
}
## FLASHER MAZE ada 2 jalur...kanan dan kiri
automacro FLASHERswitchBtoA {
   #start position (114 190)
   location turbo_n_1 112 192 116 188
  
   timeout 5
   delay 3
   call FLASHERroute
}
automacro FLASHERswitchAtoB {
   #start position (12 267)
   location turbo_n_1 10 268 14 265
  
   timeout 5
   delay 3
   call FLASHERrouteb
}
automacro FLASHERMAZE@race4 {
   #start position (42 197)
   location turbo_n_1 86 220, turbo_n_1 76 227 
  
   timeout 2
   call FLASHERroute
}
macro FLASHERroute {
   #start position (86 220)
   $ENDportal = 12 267
   call moveNOW2
}
automacro FLASHERMAZE@race4b {
   #start position (42 197)
   location turbo_n_1 42 197, turbo_n_1 46 254
  
   timeout 5
   call FLASHERrouteb
}
macro FLASHERrouteb {
   #start position (42 197)
   $ENDportal = 114 190  
   call moveNOW2
}
automacro CURSEDDESERT@race3 {
   location turbo_n_1 312 370 320 360
  
   timeout 2
   call CURSEDroute
}
macro CURSEDroute {
   $ENDportal = 385 364
   call moveNOW
}
automacro CUBEHILLS@race2 {
   location turbo_n_1 247 364, turbo_n_1 210 369, turbo_n_1 210 361, turbo_n_1 210 354, turbo_n_1 218 360, turbo_n_1 216 378, turbo_n_1 223 361, turbo_n_1 243 342
   #location turbo_n_1 210 369 225 361 
     
   timeout 2
   #run-once 1
   call HILLSroute
}
macro HILLSroute {
   do move 258 364
   
   #$ENDportal = 258 364
   #call moveNOW2
   
   #release CUBEHILLS@race2
}
automacro LOGBRIDGE@race1 {
   location turbo_n_1 59 364
   
   var race == 1
   timeout 5
   ## macronya cek atas cuy..! 
   call BRIDGEroute
}
automacro raceFAIL {
   location turbo_n_8 300 162, turbo_n_8 299 161
   var race == 1
   timeout 5
   
   call {
   
   log === your bot is not moved to race course properly ===
   
   do relog
   
   }
}
automacro GMstart {
   console /\[GM\] Master#n1: Mulai ! Ayo lari secepat - cepatnya !!/
   
   call startNOWGM   
   
}
   
macro startNOWGM {
   
   [
   $race = 1
   ]
}
   
automacro RACEdecoy {
   console /\[GM\] Master#n1: - 5 -/
   
   run-once 1
   
   call {
   
      do c [GM] Master#n1: Mulai ! Ayo lari secepat - cepatnya !!
     
      }
   }
Use google translator if you want know its meaning.

