Yingyang005

Sorcerer tycoon

Jul 11th, 2026 (edited)
26
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 11.27 KB | None | 0 0
  1. -- Sorcerer Tycoon - Ultimate Farm Script
  2. local OrionLib = loadstring(game:HttpGet(('https://raw.githubusercontent.com/shlexware/Orion/main/source')))()
  3. local Window = OrionLib:MakeWindow({
  4. Name = "⚡ Sorcerer Tycoon - Ultimate Farm",
  5. HidePremium = false,
  6. SaveConfig = true,
  7. ConfigFolder = "SorcererTycoonConfig",
  8. IntroEnabled = true,
  9. IntroText = "SORCERER TYCOON",
  10. IntroIcon = "rbxassetid://4483345998"
  11. })
  12.  
  13. local Players = game:GetService("Players")
  14. local player = Players.LocalPlayer
  15. local char = player.Character or player.CharacterAdded:Wait()
  16. local hum = char:WaitForChild("Humanoid")
  17. local root = char:WaitForChild("HumanoidRootPart")
  18. local rs = game:GetService("RunSystem")
  19. local vu = game:GetService("VirtualUser")
  20. local tween = game:GetService("TweenService")
  21.  
  22. -- Variables
  23. local skillRemote = game:GetService("ReplicatedStorage").Assets.Remotes.Skills.SKill
  24. local isFarming = false
  25. local isBossFarming = false
  26. local isCollecting = false
  27. local selectedBoss = "Lac"
  28. local bossLocations = {
  29. Lac = workspace.Map.Boss.Lac,
  30. Metro = workspace.Map.Boss.Metro,
  31. Shibuya = workspace.Map.Boss.Shibuya,
  32. WorldBoss = workspace.Map.Boss.WorldBoss
  33. }
  34.  
  35. -- Fonctions de téléportation
  36. local function teleportTo(position)
  37. if root and position then
  38. root.CFrame = CFrame.new(position)
  39. wait(0.1)
  40. end
  41. end
  42.  
  43. local function getNearestBoss(bossType)
  44. local bossFolder = bossLocations[bossType]
  45. if not bossFolder then return nil end
  46.  
  47. local bosses = bossFolder:FindFirstChild("Bosses")
  48. if not bosses then return nil end
  49.  
  50. local nearest = nil
  51. local nearestDist = math.huge
  52.  
  53. for _, obj in pairs(bosses:GetChildren()) do
  54. if obj:IsA("Model") and obj:FindFirstChild("Humanoid") then
  55. local hum = obj:FindFirstChild("Humanoid")
  56. if hum and hum.Health > 0 then
  57. local dist = (root.Position - obj:GetPivot().Position).Magnitude
  58. if dist < nearestDist then
  59. nearest = obj
  60. nearestDist = dist
  61. end
  62. end
  63. end
  64. end
  65.  
  66. return nearest
  67. end
  68.  
  69. local function getDrops(bossType)
  70. local bossFolder = bossLocations[bossType]
  71. if not bossFolder then return {} end
  72.  
  73. local drops = bossFolder:FindFirstChild("Drops")
  74. if not drops then return {} end
  75.  
  76. local dropList = {}
  77. for _, obj in pairs(drops:GetChildren()) do
  78. if obj:IsA("Part") or obj:IsA("Model") then
  79. table.insert(dropList, obj)
  80. end
  81. end
  82.  
  83. return dropList
  84. end
  85.  
  86. -- Fonction Skill Spam
  87. local function useSkill()
  88. local args = {
  89. [1] = "Hanami",
  90. [2] = "Thorn Barrage",
  91. }
  92.  
  93. local success, err = pcall(function()
  94. skillRemote:FireServer(unpack(args))
  95. end)
  96.  
  97. return success
  98. end
  99.  
  100. -- Fonction Farm Boss
  101. local function farmBoss(bossType)
  102. if isBossFarming then return end
  103. isBossFarming = true
  104.  
  105. while isBossFarming do
  106. local boss = getNearestBoss(bossType)
  107.  
  108. if boss then
  109. local bossPos = boss:GetPivot().Position
  110. teleportTo(bossPos + Vector3.new(0, 0, 5))
  111.  
  112. -- Spam le skill
  113. for i = 1, 10 do
  114. if not isBossFarming then break end
  115. useSkill()
  116. wait(0.2)
  117. end
  118.  
  119. -- Vérifie si le boss est mort
  120. local bossHum = boss:FindFirstChild("Humanoid")
  121. if bossHum and bossHum.Health <= 0 then
  122. wait(1)
  123. -- Collecte les drops
  124. if isCollecting then
  125. local drops = getDrops(bossType)
  126. for _, drop in pairs(drops) do
  127. if drop and drop.Parent then
  128. teleportTo(drop.Position)
  129. wait(0.3)
  130. end
  131. end
  132. end
  133. end
  134. else
  135. -- Si pas de boss, attend
  136. wait(2)
  137. end
  138.  
  139. wait(0.5)
  140. end
  141. end
  142.  
  143. -- Fonction Collecte Automatique
  144. local function autoCollect()
  145. while isCollecting do
  146. for bossType, _ in pairs(bossLocations) do
  147. local drops = getDrops(bossType)
  148. for _, drop in pairs(drops) do
  149. if drop and drop.Parent then
  150. local dropPos = drop:IsA("Model") and drop:GetPivot().Position or drop.Position
  151. teleportTo(dropPos)
  152. wait(0.3)
  153. end
  154. end
  155. end
  156. wait(2)
  157. end
  158. end
  159.  
  160. -- Fonction Anti AFK
  161. local function antiAFK()
  162. vu:CaptureController()
  163. vu:ClickButton1(Vector2.new(0, 0))
  164. end
  165.  
  166. -- Création des onglets
  167. local MainTab = Window:MakeTab({
  168. Name = "⚔️ Farm",
  169. Icon = "rbxassetid://4483345998",
  170. PremiumOnly = false
  171. })
  172.  
  173. local BossTab = Window:MakeTab({
  174. Name = "👑 Boss",
  175. Icon = "rbxassetid://4483345998",
  176. PremiumOnly = false
  177. })
  178.  
  179. local CollectTab = Window:MakeTab({
  180. Name = "💰 Collecte",
  181. Icon = "rbxassetid://4483345998",
  182. PremiumOnly = false
  183. })
  184.  
  185. local SettingsTab = Window:MakeTab({
  186. Name = "⚙️ Paramètres",
  187. Icon = "rbxassetid://4483345998",
  188. PremiumOnly = false
  189. })
  190.  
  191. -- Onglet Farm
  192. MainTab:AddSection({
  193. Name = "Skill Spam"
  194. })
  195.  
  196. MainTab:AddToggle({
  197. Name = "Auto Skill Spam",
  198. Default = false,
  199. Callback = function(Value)
  200. isFarming = Value
  201. if Value then
  202. spawn(function()
  203. while isFarming do
  204. useSkill()
  205. wait(0.5)
  206. end
  207. end)
  208. end
  209. end
  210. })
  211.  
  212. MainTab:AddButton({
  213. Name = "🔫 Use Skill Now",
  214. Callback = function()
  215. useSkill()
  216. end
  217. })
  218.  
  219. MainTab:AddSection({
  220. Name = "Farm Général"
  221. })
  222.  
  223. MainTab:AddToggle({
  224. Name = "Anti AFK",
  225. Default = true,
  226. Callback = function(Value)
  227. if Value then
  228. spawn(function()
  229. while Value do
  230. antiAFK()
  231. wait(60)
  232. end
  233. end)
  234. end
  235. end
  236. })
  237.  
  238. -- Onglet Boss
  239. BossTab:AddSection({
  240. Name = "Sélection du Boss"
  241. })
  242.  
  243. BossTab:AddDropdown({
  244. Name = "Choisir le boss",
  245. Default = "Lac",
  246. Options = {"Lac", "Metro", "Shibuya", "WorldBoss"},
  247. Callback = function(Value)
  248. selectedBoss = Value
  249. end
  250. })
  251.  
  252. BossTab:AddToggle({
  253. Name = "Auto Farm Boss",
  254. Default = false,
  255. Callback = function(Value)
  256. isBossFarming = Value
  257. if Value then
  258. spawn(function()
  259. farmBoss(selectedBoss)
  260. end)
  261. end
  262. end
  263. })
  264.  
  265. BossTab:AddButton({
  266. Name = "📍 Téléporter au boss",
  267. Callback = function()
  268. local boss = getNearestBoss(selectedBoss)
  269. if boss then
  270. teleportTo(boss:GetPivot().Position + Vector3.new(0, 0, 5))
  271. else
  272. OrionLib:MakeNotification({
  273. Name = "Erreur",
  274. Content = "Aucun boss trouvé !",
  275. Image = "rbxassetid://4483345998",
  276. Time = 3
  277. })
  278. end
  279. end
  280. })
  281.  
  282. BossTab:AddButton({
  283. Name = "💀 One Shot Boss",
  284. Callback = function()
  285. local boss = getNearestBoss(selectedBoss)
  286. if boss then
  287. local bossPos = boss:GetPivot().Position
  288. teleportTo(bossPos + Vector3.new(0, 0, 3))
  289.  
  290. for i = 1, 20 do
  291. useSkill()
  292. wait(0.1)
  293. end
  294.  
  295. OrionLib:MakeNotification({
  296. Name = "Succès",
  297. Content = "Boss attaqué !",
  298. Image = "rbxassetid://4483345998",
  299. Time = 2
  300. })
  301. end
  302. end
  303. })
  304.  
  305. -- Onglet Collecte
  306. CollectTab:AddSection({
  307. Name = "Collecte Automatique"
  308. })
  309.  
  310. CollectTab:AddToggle({
  311. Name = "Auto Collecte Drops",
  312. Default = false,
  313. Callback = function(Value)
  314. isCollecting = Value
  315. if Value then
  316. spawn(autoCollect)
  317. end
  318. end
  319. })
  320.  
  321. CollectTab:AddButton({
  322. Name = "📍 Collecter tous les drops",
  323. Callback = function()
  324. for bossType, _ in pairs(bossLocations) do
  325. local drops = getDrops(bossType)
  326. for _, drop in pairs(drops) do
  327. if drop and drop.Parent then
  328. local dropPos = drop:IsA("Model") and drop:GetPivot().Position or drop.Position
  329. teleportTo(dropPos)
  330. wait(0.3)
  331. end
  332. end
  333. end
  334.  
  335. OrionLib:MakeNotification({
  336. Name = "Succès",
  337. Content = "Tous les drops collectés !",
  338. Image = "rbxassetid://4483345998",
  339. Time = 2
  340. })
  341. end
  342. })
  343.  
  344. CollectTab:AddSection({
  345. Name = "Drops Disponibles"
  346. })
  347.  
  348. CollectTab:AddButton({
  349. Name = "🔄 Scanner les drops",
  350. Callback = function()
  351. local totalDrops = 0
  352. for bossType, _ in pairs(bossLocations) do
  353. local drops = getDrops(bossType)
  354. totalDrops = totalDrops + #drops
  355. end
  356.  
  357. OrionLib:MakeNotification({
  358. Name = "Scan Terminé",
  359. Content = totalDrops .. " drops trouvés !",
  360. Image = "rbxassetid://4483345998",
  361. Time = 3
  362. })
  363. end
  364. })
  365.  
  366. -- Onglet Paramètres
  367. SettingsTab:AddSection({
  368. Name = "Paramètres Généraux"
  369. })
  370.  
  371. SettingsTab:AddSlider({
  372. Name = "Vitesse de marche",
  373. Min = 16,
  374. Max = 120,
  375. Default = 50,
  376. Color = Color3.fromRGB(255, 255, 255),
  377. Increment = 1,
  378. Callback = function(Value)
  379. hum.WalkSpeed = Value
  380. end
  381. })
  382.  
  383. SettingsTab:AddSlider({
  384. Name = "Force de saut",
  385. Min = 50,
  386. Max = 200,
  387. Default = 100,
  388. Color = Color3.fromRGB(255, 255, 255),
  389. Increment = 1,
  390. Callback = function(Value)
  391. hum.JumpPower = Value
  392. end
  393. })
  394.  
  395. SettingsTab:AddToggle({
  396. Name = "No Clip (Traverser les murs)",
  397. Default = false,
  398. Callback = function(Value)
  399. if Value then
  400. spawn(function()
  401. while Value do
  402. for _, part in pairs(char:GetChildren()) do
  403. if part:IsA("BasePart") then
  404. part.CanCollide = false
  405. end
  406. end
  407. wait(1)
  408. end
  409. end)
  410. end
  411. end
  412. })
  413.  
  414. SettingsTab:AddSection({
  415. Name = "Informations"
  416. })
  417.  
  418. SettingsTab:AddLabel("Développé par : VotreNom")
  419. SettingsTab:AddLabel("Version : 1.0")
  420. SettingsTab:AddLabel("Jeu : Sorcerer Tycoon")
  421.  
  422. -- Gestion du personnage
  423. player.CharacterAdded:Connect(function(newChar)
  424. char = newChar
  425. hum = char:WaitForChild("Humanoid")
  426. root = char:WaitForChild("HumanoidRootPart")
  427. end)
  428.  
  429. -- Notifications de démarrage
  430. OrionLib:MakeNotification({
  431. Name = "Script Chargé",
  432. Content = "Sorcerer Tycoon Farm est prêt !",
  433. Image = "rbxassetid://4483345998",
  434. Time = 5
  435. })
  436.  
  437. -- Initialisation
  438. print("✅ Sorcerer Tycoon Ultimate Farm chargé !")
  439. print("📌 Utilise l'interface pour configurer le farm")
  440.  
Advertisement
Add Comment
Please, Sign In to add comment