· 5 years ago · Sep 04, 2020, 05:10 PM
1
2function ExecuteMainModule()
3 local Material = loadstring(game:HttpGet("https://raw.githubusercontent.com/Kinlei/MaterialLua/master/Module.lua"))()
4 local HttpService = game:GetService("HttpService")
5 if isfolder("x.Spy") then
6 else
7 makefolder("x.Spy")
8 end
9 local ads = {
10 "x.Spy is the #1 cheat utility for Risxe of Nations!.",
11 "Remember lads, subscribe to youaremyproperty.",
12 "breaking news: irishman 'youaremyproperty' hacks ron!1!!!",
13 "See that? Only x.Spy is capable of that!",
14 "Hyperant is adding nukes and is censoring it.",
15 "Join the x.Spy discorvcd: pnYJtSV",
16 "Hyperant is a gaynicvigger."
17 }
18 local settings = {
19 Theme = "Dark",
20 Style = 1
21 }
22 local defConfig = {
23 ESP = false,
24 ESPColorR = 255,
25 ESPColorB = 255,
26 ESPColorG = 255,
27 JWatch = false,
28 RWatch = false,
29 MineThr = 1
30 }
31 print(settings["Theme"])
32 if isfile("x.Spy/xspysettings.json") then
33 settings = HttpService:JSONDecode(readfile("x.Spy/xspysettings.json"))
34 else
35 writefile("x.Spy/xspysettings.json","{}")
36 end
37 if settings["Theme"] == true then
38 themeGet = "Light"
39 else
40 themeGet = "Dark"
41 end
42 function newESPInstance(a1,a2,a3,a4,a5)
43 -- Gui to Lua
44-- Version: 3
45
46-- Instances:
47
48local XSPYWINNING = Instance.new("BillboardGui")
49local Type = Instance.new("TextLabel")
50local Health = Instance.new("TextLabel")
51local Ent = Instance.new("TextLabel")
52local Train = Instance.new("TextLabel")
53
54--Properties:
55
56XSPYWINNING.Name = "XSPYWINNING"
57XSPYWINNING.Parent = a1
58XSPYWINNING.ZIndexBehavior = Enum.ZIndexBehavior.Sibling
59XSPYWINNING.Active = true
60XSPYWINNING.AlwaysOnTop = true
61XSPYWINNING.LightInfluence = 1
62XSPYWINNING.MaxDistance = 20
63XSPYWINNING.Size = UDim2.new(0, 75, 0, 40)
64
65Type.Name = "Type"
66Type.Parent = XSPYWINNING
67Type.BackgroundColor3 = Color3.new(1, 1, 1)
68Type.BackgroundTransparency = 1
69Type.BorderSizePixel = 0
70Type.Size = UDim2.new(0.5, 0, 0, 20)
71Type.Font = Enum.Font.GothamBlack
72Type.Text = a2
73Type.TextColor3 = Color3.fromRGB(defConfig["ESPColorR"],defConfig["ESPColorG"],defConfig["ESPColorB"])
74Type.TextSize = 12
75Type.TextWrapped = true
76Type.TextScaled = true
77Type.TextXAlignment = Enum.TextXAlignment.Left
78
79Health.Name = "Health"
80Health.Parent = XSPYWINNING
81Health.BackgroundColor3 = Color3.new(1, 1, 1)
82Health.BackgroundTransparency = 1
83Health.BorderSizePixel = 0
84Health.Position = UDim2.new(0.5, 0, 0, 0)
85Health.Size = UDim2.new(0.5, 0, 0, 20)
86Health.Font = Enum.Font.Gotham
87Health.Text = a3
88Health.TextColor3 = Color3.fromRGB(defConfig["ESPColorR"],defConfig["ESPColorG"],defConfig["ESPColorB"])
89Health.TextSize = 12
90Health.TextWrapped = true
91Health.TextXAlignment = Enum.TextXAlignment.Right
92
93Ent.Name = "Ent"
94Ent.Parent = XSPYWINNING
95Ent.BackgroundColor3 = Color3.new(1, 1, 1)
96Ent.BackgroundTransparency = 1
97Ent.BorderSizePixel = 0
98Ent.Position = UDim2.new(0, 0, 0.5, 0)
99Ent.Size = UDim2.new(0.5, 0, 0, 20)
100Ent.Font = Enum.Font.Gotham
101Ent.Text = a4
102Ent.TextColor3 = Color3.fromRGB(defConfig["ESPColorR"],defConfig["ESPColorG"],defConfig["ESPColorB"])
103Ent.TextSize = 12
104Ent.TextWrapped = true
105Ent.TextXAlignment = Enum.TextXAlignment.Left
106
107Train.Name = "Train"
108Train.Parent = XSPYWINNING
109Train.BackgroundColor3 = Color3.new(1, 1, 1)
110Train.BackgroundTransparency = 1
111Train.BorderSizePixel = 0
112Train.Position = UDim2.new(0.5, 0, 0.5, 0)
113Train.Size = UDim2.new(0.5, 0, 0, 20)
114Train.Font = Enum.Font.Gotham
115Train.Text = a5
116Train.TextColor3 = Color3.fromRGB(defConfig["ESPColorR"],defConfig["ESPColorG"],defConfig["ESPColorB"])
117Train.TextSize = 12
118Train.TextWrapped = true
119Train.TextXAlignment = Enum.TextXAlignment.Right
120 end
121 workspace.Units.ChildAdded:connect(function(v)
122 if defConfig["ESP"] then
123 wait(0.5)
124 newESPInstance(v,v.Type.Value,math.floor(v.Current.Value),math.floor(v.Current.Entrenchment.Value),math.floor(v.Current.Training.Value))
125 end
126 end)
127 local UI = Material.Load({
128 Title = "x.Spy 2.0 Beta",
129 Style = settings["Style"],
130 SizeX = 600,
131 SizeY = 400,
132 Theme = themeGet
133 })
134
135 local Page1 = UI.New({
136 Title = "Legit"
137 })
138 local Page2 = UI.New({
139 Title = "Rage"
140 })
141 local Page3 = UI.New({
142 Title = "Settings"
143 })
144 local Page4 = UI.New({
145 Title = "Skin Changer"
146 })
147 if isfile("x.Spy/extension.lua") then
148 local thisExt = readfile("x.Spy/extension.lua")
149 local ExtPage = UI.New({
150 Title = "Extension"
151 })
152 extArray = {}
153 extUI = {}
154 extArray.Countries = workspace.Countries:GetChildren()
155 extArray.CountryData = workspace.CountryData:GetChildren()
156 function extUI:Button(arg)
157 ExtPage.Button(arg)
158 end
159 function extUI:Notify(txt)
160 UI.Banner({
161 Text = txt
162 })
163 end
164 loadstring(thisExt)()
165 end
166
167 if isfile("x.Spy/xspyconfig.json") then
168 defConfig = HttpService:JSONDecode(readfile("x.Spy/xspyconfig.json"))
169 else
170 UI.Banner({
171 Text = "No config file, creating new."
172 })
173 writefile("x.Spy/xspyconfig.json","{}")
174 end
175 --Legit
176 Page1.Toggle({
177 Text = "UnitESP",
178 Enabled = defConfig["ESP"],
179 Callback = function(value)
180 defConfig["ESP"] = value
181 if value == true then
182 for i,v in pairs(workspace.Units:GetChildren()) do
183 newESPInstance(v,v.Type.Value,math.floor(v.Current.Value),math.floor(v.Current.Entrenchment.Value),math.floor(v.Current.Training.Value))
184 end
185
186 else
187 for i,v in pairs(workspace.Units:GetChildren()) do
188 if v:FindFirstChild("XSPYWINNING") then
189 v["XSPYWINNING"]:Destroy()
190 end
191 end
192 end
193 end
194 })
195 Page1.Slider({
196 Text = "ESP Color R",
197 Callback = function(value)
198 defConfig["ESPColorR"] = value
199 end,
200 Min = 1,
201 Max = 255,
202 Def = 255
203 })
204 Page1.Slider({
205 Text = "ESP Color G",
206 Callback = function(value)
207 defConfig["ESPColorG"] = value
208 end,
209 Min = 1,
210 Max = 255,
211 Def = 255
212 })
213 Page1.Slider({
214 Text = "ESP Color B",
215 Callback = function(value)
216 defConfig["ESPColorB"] = value
217 end,
218 Min = 1,
219 Max = 255,
220 Def = 255
221 })
222 Page1.Button({
223 Text = "Country Lookup",
224 Callback = function()
225 local xSpy2Country = Instance.new("ScreenGui")
226 local Country = Instance.new("Frame")
227 local TextLabel = Instance.new("TextLabel")
228 local Search = Instance.new("TextBox")
229 local SearchFor = Instance.new("TextButton")
230 local Flag = Instance.new("ImageLabel")
231 local AT = Instance.new("TextLabel")
232 local EX = Instance.new("TextLabel")
233 local IN = Instance.new("TextLabel")
234 local MA = Instance.new("TextLabel")
235 local MC = Instance.new("TextLabel")
236 local MI = Instance.new("TextLabel")
237 local MP = Instance.new("TextLabel")
238 local Name = Instance.new("TextLabel")
239 local PP = Instance.new("TextLabel")
240 local PR = Instance.new("TextLabel")
241 local RA = Instance.new("TextLabel")
242 local RP = Instance.new("TextLabel")
243 local Stability = Instance.new("TextLabel")
244 local TextLabel_2 = Instance.new("TextLabel")
245 local WE = Instance.new("TextLabel")
246 local Close = Instance.new("TextButton")
247 xSpy2Country.Name = "xSpy2Country"
248 xSpy2Country.Parent = game.CoreGui
249 xSpy2Country.ZIndexBehavior = Enum.ZIndexBehavior.Sibling
250
251 Country.Name = "Country"
252 Country.Parent = xSpy2Country
253 Country.Active = true
254 Country.BackgroundColor3 = Color3.new(0.113725, 0.113725, 0.113725)
255 Country.BorderSizePixel = 0
256 Country.Position = UDim2.new(0.173999995, 0, 0, 100)
257 Country.Size = UDim2.new(0, 425, 0, 331)
258
259 TextLabel.Parent = Country
260 TextLabel.BackgroundColor3 = Color3.new(0.0627451, 0.643137, 1)
261 TextLabel.BorderSizePixel = 0
262 TextLabel.Size = UDim2.new(0, 425, 0, 8)
263 TextLabel.Font = Enum.Font.SourceSans
264 TextLabel.Text = ""
265 TextLabel.TextColor3 = Color3.new(0.0627451, 0.643137, 1)
266 TextLabel.TextSize = 14
267
268 Search.Name = "Search"
269 Search.Parent = Country
270 Search.BackgroundColor3 = Color3.new(0.0627451, 0.643137, 1)
271 Search.BorderSizePixel = 0
272 Search.Position = UDim2.new(0.0194174759, 0, 0.0923566893, 0)
273 Search.Size = UDim2.new(0, 200, 0, 27)
274 Search.ClearTextOnFocus = false
275 Search.Font = Enum.Font.Gotham
276 Search.PlaceholderText = "please cApItAlIZe countries, shortened names are allowed"
277 Search.Text = ""
278 Search.TextColor3 = Color3.new(1, 1, 1)
279 Search.TextScaled = true
280 Search.TextSize = 14
281 Search.TextWrapped = true
282
283 SearchFor.Name = "SearchFor"
284 SearchFor.Parent = Country
285 SearchFor.BackgroundColor3 = Color3.new(0.0627451, 0.643137, 1)
286 SearchFor.BorderSizePixel = 0
287 SearchFor.Position = UDim2.new(0.524271846, 0, 0.0923566893, 0)
288 SearchFor.Size = UDim2.new(0, 93, 0, 27)
289 SearchFor.Font = Enum.Font.Gotham
290 SearchFor.Text = "Search"
291 SearchFor.TextColor3 = Color3.new(1, 1, 1)
292 SearchFor.TextSize = 14
293
294 Flag.Name = "Flag"
295 Flag.Parent = Country
296 Flag.BackgroundColor3 = Color3.new(0, 0, 0)
297 Flag.BorderColor3 = Color3.new(0, 0, 0)
298 Flag.BorderSizePixel = 5
299 Flag.Position = UDim2.new(0.0364077687, 0, 0.22292994, 0)
300 Flag.Size = UDim2.new(0, 147, 0, 80)
301
302 AT.Name = "AT"
303 AT.Parent = Country
304 AT.BackgroundColor3 = Color3.new(1, 1, 1)
305 AT.BackgroundTransparency = 1
306 AT.BorderSizePixel = 0
307 AT.Position = UDim2.new(0.0194174759, 0, 0.729299366, 0)
308 AT.Size = UDim2.new(0, 314, 0, 11)
309 AT.Font = Enum.Font.Gotham
310 AT.Text = "Amount in Treasury:"
311 AT.TextColor3 = Color3.new(1, 1, 1)
312 AT.TextScaled = true
313 AT.TextSize = 14
314 AT.TextWrapped = true
315 AT.TextXAlignment = Enum.TextXAlignment.Left
316
317 EX.Name = "EX"
318 EX.Parent = Country
319 EX.BackgroundColor3 = Color3.new(1, 1, 1)
320 EX.BackgroundTransparency = 1
321 EX.BorderSizePixel = 0
322 EX.Position = UDim2.new(0.0194174759, 0, 0.598726094, 0)
323 EX.Size = UDim2.new(0, 154, 0, 11)
324 EX.Font = Enum.Font.Gotham
325 EX.Text = "Expenses:"
326 EX.TextColor3 = Color3.new(1, 1, 1)
327 EX.TextScaled = true
328 EX.TextSize = 14
329 EX.TextWrapped = true
330 EX.TextXAlignment = Enum.TextXAlignment.Left
331
332 IN.Name = "IN"
333 IN.Parent = Country
334 IN.BackgroundColor3 = Color3.new(1, 1, 1)
335 IN.BackgroundTransparency = 1
336 IN.BorderSizePixel = 0
337 IN.Position = UDim2.new(0.0194174759, 0, 0.563694239, 0)
338 IN.Size = UDim2.new(0, 154, 0, 11)
339 IN.Font = Enum.Font.Gotham
340 IN.Text = "Income:"
341 IN.TextColor3 = Color3.new(1, 1, 1)
342 IN.TextScaled = true
343 IN.TextSize = 14
344 IN.TextWrapped = true
345 IN.TextXAlignment = Enum.TextXAlignment.Left
346
347 MA.Name = "MA"
348 MA.Parent = Country
349 MA.BackgroundColor3 = Color3.new(1, 1, 1)
350 MA.BackgroundTransparency = 1
351 MA.BorderSizePixel = 0
352 MA.Position = UDim2.new(0.424757272, 0, 0.312101901, 0)
353 MA.Size = UDim2.new(0, 222, 0, 11)
354 MA.Font = Enum.Font.Gotham
355 MA.Text = "Manpower Available:"
356 MA.TextColor3 = Color3.new(1, 1, 1)
357 MA.TextScaled = true
358 MA.TextSize = 14
359 MA.TextWrapped = true
360 MA.TextXAlignment = Enum.TextXAlignment.Left
361
362 MC.Name = "MC"
363 MC.Parent = Country
364 MC.BackgroundColor3 = Color3.new(1, 1, 1)
365 MC.BackgroundTransparency = 1
366 MC.BorderSizePixel = 0
367 MC.Position = UDim2.new(0.424757272, 0, 0.382165611, 0)
368 MC.Size = UDim2.new(0, 222, 0, 11)
369 MC.Font = Enum.Font.Gotham
370 MC.Text = "Manpower Capacity:"
371 MC.TextColor3 = Color3.new(1, 1, 1)
372 MC.TextScaled = true
373 MC.TextSize = 14
374 MC.TextWrapped = true
375 MC.TextXAlignment = Enum.TextXAlignment.Left
376
377 MI.Name = "MI"
378 MI.Parent = Country
379 MI.BackgroundColor3 = Color3.new(1, 1, 1)
380 MI.BackgroundTransparency = 1
381 MI.BorderSizePixel = 0
382 MI.Position = UDim2.new(0.424757272, 0, 0.347133756, 0)
383 MI.Size = UDim2.new(0, 222, 0, 11)
384 MI.Font = Enum.Font.Gotham
385 MI.Text = "Manpower Increase:"
386 MI.TextColor3 = Color3.new(1, 1, 1)
387 MI.TextScaled = true
388 MI.TextSize = 14
389 MI.TextWrapped = true
390 MI.TextXAlignment = Enum.TextXAlignment.Left
391
392 MP.Name = "MP"
393 MP.Parent = Country
394 MP.BackgroundColor3 = Color3.new(1, 1, 1)
395 MP.BackgroundTransparency = 1
396 MP.BorderSizePixel = 0
397 MP.Position = UDim2.new(0.424757272, 0, 0.528662443, 0)
398 MP.Size = UDim2.new(0, 150, 0, 11)
399 MP.Font = Enum.Font.Gotham
400 MP.Text = "Military Power: "
401 MP.TextColor3 = Color3.new(1, 1, 1)
402 MP.TextScaled = true
403 MP.TextSize = 14
404 MP.TextWrapped = true
405 MP.TextXAlignment = Enum.TextXAlignment.Left
406
407 Name.Name = "Name"
408 Name.Parent = Country
409 Name.BackgroundColor3 = Color3.new(1, 1, 1)
410 Name.BackgroundTransparency = 1
411 Name.BorderSizePixel = 0
412 Name.Position = UDim2.new(0.424757272, 0, 0.22292994, 0)
413 Name.Size = UDim2.new(0, 112, 0, 17)
414 Name.Font = Enum.Font.GothamBold
415 Name.Text = "Name"
416 Name.TextColor3 = Color3.new(1, 1, 1)
417 Name.TextScaled = true
418 Name.TextSize = 14
419 Name.TextWrapped = true
420 Name.TextXAlignment = Enum.TextXAlignment.Left
421
422 PP.Name = "PP"
423 PP.Parent = Country
424 PP.BackgroundColor3 = Color3.new(1, 1, 1)
425 PP.BackgroundTransparency = 1
426 PP.BorderSizePixel = 0
427 PP.Position = UDim2.new(0.424757272, 0, 0.598726094, 0)
428 PP.Size = UDim2.new(0, 150, 0, 11)
429 PP.Font = Enum.Font.Gotham
430 PP.Text = "Political Points"
431 PP.TextColor3 = Color3.new(1, 1, 1)
432 PP.TextScaled = true
433 PP.TextSize = 14
434 PP.TextWrapped = true
435 PP.TextXAlignment = Enum.TextXAlignment.Left
436
437 PR.Name = "PR"
438 PR.Parent = Country
439 PR.BackgroundColor3 = Color3.new(1, 1, 1)
440 PR.BackgroundTransparency = 1
441 PR.BorderSizePixel = 0
442 PR.Position = UDim2.new(0.0194174759, 0, 0.633757949, 0)
443 PR.Size = UDim2.new(0, 154, 0, 11)
444 PR.Font = Enum.Font.Gotham
445 PR.Text = "Profit:"
446 PR.TextColor3 = Color3.new(1, 1, 1)
447 PR.TextScaled = true
448 PR.TextSize = 14
449 PR.TextWrapped = true
450 PR.TextXAlignment = Enum.TextXAlignment.Left
451
452 RA.Name = "RA"
453 RA.Parent = Country
454 RA.BackgroundColor3 = Color3.new(1, 1, 1)
455 RA.BackgroundTransparency = 1
456 RA.BorderSizePixel = 0
457 RA.Position = UDim2.new(0.0194174647, 0, 0.528662443, 0)
458 RA.Size = UDim2.new(0, 112, 0, 11)
459 RA.Font = Enum.Font.Gotham
460 RA.Text = "Ranking"
461 RA.TextColor3 = Color3.new(1, 1, 1)
462 RA.TextScaled = true
463 RA.TextSize = 14
464 RA.TextWrapped = true
465 RA.TextXAlignment = Enum.TextXAlignment.Left
466
467 RP.Name = "RP"
468 RP.Parent = Country
469 RP.BackgroundColor3 = Color3.new(1, 1, 1)
470 RP.BackgroundTransparency = 1
471 RP.BorderSizePixel = 0
472 RP.Position = UDim2.new(0.424757272, 0, 0.563694239, 0)
473 RP.Size = UDim2.new(0, 150, 0, 11)
474 RP.Font = Enum.Font.Gotham
475 RP.Text = "Research Points"
476 RP.TextColor3 = Color3.new(1, 1, 1)
477 RP.TextScaled = true
478 RP.TextSize = 14
479 RP.TextWrapped = true
480 RP.TextXAlignment = Enum.TextXAlignment.Left
481
482 Stability.Name = "Stability"
483 Stability.Parent = Country
484 Stability.BackgroundColor3 = Color3.new(1, 1, 1)
485 Stability.BackgroundTransparency = 1
486 Stability.BorderSizePixel = 0
487 Stability.Position = UDim2.new(0.424757272, 0, 0.277070075, 0)
488 Stability.Size = UDim2.new(0, 236, 0, 11)
489 Stability.Font = Enum.Font.Gotham
490 Stability.Text = "Stability: "
491 Stability.TextColor3 = Color3.new(1, 1, 1)
492 Stability.TextScaled = true
493 Stability.TextSize = 14
494 Stability.TextWrapped = true
495 Stability.TextXAlignment = Enum.TextXAlignment.Left
496
497 TextLabel_2.Parent = Country
498 TextLabel_2.BackgroundColor3 = Color3.new(1, 1, 1)
499 TextLabel_2.BackgroundTransparency = 1
500 TextLabel_2.BorderSizePixel = 0
501 TextLabel_2.Position = UDim2.new(0.0194174759, 0, 0.0221294276, 0)
502 TextLabel_2.Size = UDim2.new(0, 397, 0, 17)
503 TextLabel_2.Font = Enum.Font.GothamSemibold
504 TextLabel_2.Text = "Gives you statistics of the country you input, including stability."
505 TextLabel_2.TextColor3 = Color3.new(1, 1, 1)
506 TextLabel_2.TextScaled = true
507 TextLabel_2.TextSize = 14
508 TextLabel_2.TextWrapped = true
509 TextLabel_2.TextXAlignment = Enum.TextXAlignment.Left
510
511 WE.Name = "WE"
512 WE.Parent = Country
513 WE.BackgroundColor3 = Color3.new(1, 1, 1)
514 WE.BackgroundTransparency = 1
515 WE.BorderSizePixel = 0
516 WE.Position = UDim2.new(0.424757272, 0, 0.633757949, 0)
517 WE.Size = UDim2.new(0, 150, 0, 11)
518 WE.Font = Enum.Font.Gotham
519 WE.Text = "War Exhaustion:"
520 WE.TextColor3 = Color3.new(1, 1, 1)
521 WE.TextScaled = true
522 WE.TextSize = 14
523 WE.TextWrapped = true
524 WE.TextXAlignment = Enum.TextXAlignment.Left
525
526 Close.Name = "Close"
527 Close.Parent = Country
528 Close.BackgroundColor3 = Color3.new(0.0627451, 0.643137, 1)
529 Close.BorderSizePixel = 0
530 Close.Position = UDim2.new(0.0183894616, 0, 0.926193535, 0)
531 Close.Size = UDim2.new(0, 119, 0, 17)
532 Close.Font = Enum.Font.Gotham
533 Close.Text = "Close"
534 Close.TextColor3 = Color3.new(1, 1, 1)
535 Close.TextSize = 14
536
537 -- Scripts:
538
539 local function GHPEGKB_fake_script() -- Country.LocalScript
540 local script = Instance.new('LocalScript', Country)
541
542 script.Parent.Draggable = true
543 end
544 coroutine.wrap(GHPEGKB_fake_script)()
545 local function YGFESE_fake_script() -- Close.LocalScript
546 local script = Instance.new('LocalScript', Close)
547
548 script.Parent.MouseButton1Click:Connect(function()
549 script.Parent.Parent.Parent:Destroy()
550 end)
551 end
552 coroutine.wrap(YGFESE_fake_script)()
553
554 country = workspace.Countries
555 countryData = workspace.CountryData
556 function getCountryFromPartial(a1)
557 for i,v in pairs(countryData:GetChildren()) do
558 a = string.match(v.Name,a1)
559 if a then
560 return v.Name;
561 end
562 end
563 end
564 function getPlayerFromCountry(a1)
565 return country[countryData[a1].Leader.Value]
566 end
567 SearchFor.MouseButton1Click:connect(function()
568 thisCountry = getCountryFromPartial(Search.Text)
569 print(thisCountry)
570 Stability.Text = "Stability: "..countryData[thisCountry].Data.Stability.Value.."%"
571 Name.Text = thisCountry
572 MA.Text = "Manpower Available: "..countryData[thisCountry].Manpower.Value.X
573 MI.Text = "Manpower Increase: "..countryData[thisCountry].Manpower.Value.Y
574 MC.Text = "Manpower Capacity: "..countryData[thisCountry].Manpower.Value.Z
575 RA.Text = "Ranking: #"..countryData[thisCountry].Ranking.Value
576 if countryData[thisCountry].Ranking.Value>3 then
577 Flag.BorderColor3 = Color3.new(229/255, 233/255, 235/255)
578 end
579 if countryData[thisCountry].Ranking.Value<4 then
580 Flag.BorderColor3 = Color3.new(235/255, 182/255, 4/255)
581 end
582 if countryData[thisCountry].Ranking.Value>19 then
583 Flag.BorderColor3 = Color3.new(39/255, 39/255, 39/255)
584 end
585 Flag.Image = game.ReplicatedStorage.Assets.Flag[thisCountry].Texture
586 income = require(workspace.FunctionDump.ValueCalc.CountryRevenue)
587 expend = require(workspace.FunctionDump.ValueCalc.CountryExpenses)
588 IN.Text = "Income: $"..income(thisCountry)
589 EX.Text = "Expenses: $"..expend(thisCountry)
590 PR.Text = "Profit: $"..income(thisCountry)-expend(thisCountry)
591 MP.Text = "Military Power: "..countryData[thisCountry].Power.Military.Value
592 PP.Text = "Political Power: "..countryData[thisCountry].Power.Political.Value
593 RP.Text = "Research Points: "..countryData[thisCountry].Power.Research.Value
594 WE.Text = "War Exhaustion: "..countryData[thisCountry].Power.WarExhaustion.Value
595 AT.Text = "Amount in Treasury: $"..countryData[thisCountry].Economy.Balance.Value
596 end)
597
598 end
599 })
600 Page1.Toggle({
601 Text = "JustificationWatch",
602 Callback = function(value)
603 defConfig["JWatch"] = value
604 end,
605 Enabled = defConfig["JWatch"]
606 })
607 Page1.Toggle({
608 Text = "RebelWatch",
609 Callback = function(value)
610 defConfig["RWatch"] = value
611 end,
612 Enabled = defConfig["RWatch"]
613 })
614 function addToClientNews(txt,col)
615 local l__MainFrame__4 = game.Players.LocalPlayer.PlayerGui.GameGui.MainFrame
616 local v712 = l__MainFrame__4.TopBar.Date.Sample:Clone();
617 v712.Text = txt;
618 v712.Visible = true;
619 v712.TextColor3 = col;
620 v712.Parent = l__MainFrame__4.TopBar.Ticker;
621 v712.Size = UDim2.new(0, v712.TextBounds.X + 75, 1, 0);
622 local v713 = l__MainFrame__4.TopBar.Ticker.AbsoluteSize.X;
623 wait(1);
624 local v714 = l__MainFrame__4.TopBar.Ticker:GetChildren();
625 if #v714 - 1 > 0 then
626 v713 = math.clamp(v714[#v714 - 1].Position.X.Offset + v714[#v714 - 1].Size.X.Offset, l__MainFrame__4.TopBar.Ticker.AbsoluteSize.X, math.huge);
627 end;
628 v712.Position = UDim2.new(0, v713, 0, 0);
629 local v715 = game:GetService("TweenService"):Create(v712, TweenInfo.new((v712.Position.X.Offset + v712.Size.X.Offset) / 100, Enum.EasingStyle.Linear), {
630 Position = UDim2.new(0, -v712.Size.X.Offset, 0, 0)
631 });
632 v715:Play();
633 v715.Completed:Connect(function()
634 v712:Destroy();
635 end);
636 end
637
638 for i,v in pairs(workspace.Countries:GetChildren()) do
639 for i2,v2 in pairs(v.CB:GetChildren()) do
640 v2.ChildAdded:connect(function(item)
641 if defConfig["JWatch"] == true then
642 addToClientNews("[x.Spy] "..v.Country.Value.." has justified on "..item.Name.." ("..v2.Name..")",Color3.new(255/255,100/255,100/255))
643 end
644 end)
645 end
646 v.DiploActions.ChildAdded:connect(function(itema)
647 if itema.Value.Z == 365 then
648 if defConfig["RWatch"] == true then
649 addToClientNews("[x.Spy]"..v.Country.Value.." has started funding "..itema.Name.."'s rebels!",Color3.new(255/255,100/255,100/255))
650 end
651 else
652 if defConfig["JWatch"] == true then
653 addToClientNews("[x.Spy]"..v.Country.Value.." is justifying on "..itema.Name,Color3.new(255/255,100/255,100/255))
654 end
655 end
656 end)
657 end
658 function GetLocalCities()
659 local b = {}
660 for i,v in pairs(workspace.Baseplate.Cities[game.Workspace.Countries[game.Players.LocalPlayer.Name].Country.Value]:GetChildren()) do
661 if not v:FindFirstChild("Occupied Tag") then table.insert(b, v) end
662 end
663 return b
664 end
665 local SelectedResource = "Tungsten"
666 Page1.Button({
667 Text = "Build Mines on Resource Cities",
668 Callback = function()
669 a = GetLocalCities()
670 for i,v in pairs(a) do
671 if v.Resources:FindFirstChild(SelectedResource).Value > 0 then
672 workspace.GameManager.CreateBuilding:FireServer({v}, "Mines")
673 print("Queued mines in " .. v.Name)
674 end
675 end
676 end
677 })
678 Page1.Dropdown({
679 Text = "Select Resource",
680 Callback = function(value)
681 SelectedResource = value
682 end,
683 Options = {"Aluminum","Chromium","Copper","Diamond","Gold","Iron","Oil","Phosphate","Titanium","Tungsten","Uranium"}
684 })
685
686
687 --Rage
688 Page2.Button({
689 Text = "RequestBot: Send Puppet Request to all countries",
690 Callback = function()
691 for i,v in pairs(workspace.CountryData:GetChildren()) do
692 if not string.match(v.Leader.Value, "AI") and not string.match(v.Name, game.Players.LocalPlayer.Name) then
693 workspace.GameManager.ManageAlliance:FireServer(v.Name,"SendRequest","PuppetRequest")
694 end
695 for i,v in pairs(game.Players.LocalPlayer.PlayerGui.GameGui.MainFrame:GetChildren()) do
696 if v.Name == "AlertSample" then
697 v:Destroy()
698 end
699 end
700 end
701 end
702 })
703 Page2.Button({
704 Text = "RequestBot: Send Alliance Request to all countries",
705 Callback = function()
706 for i,v in pairs(workspace.CountryData:GetChildren()) do
707 if not string.match(v.Leader.Value, "AI") and not string.match(v.Name, game.Players.LocalPlayer.Name) then
708 workspace.GameManager.ManageAlliance:FireServer(v.Name,"SendRequest")
709 end
710 for i,v in pairs(game.Players.LocalPlayer.PlayerGui.GameGui.MainFrame:GetChildren()) do
711 if v.Name == "AlertSample" then
712 v:Destroy()
713 end
714 end
715 end
716 end
717 })
718 Page2.Toggle({
719 Text = "Advertise x.Spy",
720 Callback = function(value)
721
722 if value == true then
723 _G.Addinga = true
724 else
725 _G.Addinga = false
726 end
727 end
728 })
729 Page2.Button({
730 Text = "Lag server",
731 Callback = function()
732 while wait() do
733 local args = {
734 [1] = workspace.Units:GetChildren(),
735 [2] = {
736 [1] = Vector3.new(math.random(0,99999),math.random(0,99999),math.random(0,99999))
737 }
738 }
739
740 workspace.GameManager.MoveUnit:FireServer(unpack(args))
741 end
742 end
743 })
744 Page2.Button({
745 Text = "Spam News Ticker",
746 Callback = function()
747 for i,v in pairs(workspace.Countries:GetChildren()) do
748 workspace.CountryManager.ReleaseCountry:FireServer(v.Country.Value)
749 end
750 wait(5)
751 for i,v in pairs(game.Players.LocalPlayer.PlayerGui.GameGui.MainFrame:GetChildren()) do
752 if v.Name == "AlertSample" then
753 v:Destroy()
754 end
755 end
756 end
757 })
758 Page2.Button({
759 Text = "Clear all alerts",
760 Callback = function()
761 for i,v in pairs(game.Players.LocalPlayer.PlayerGui.GameGui.MainFrame:GetChildren()) do
762 if v.Name == "AlertSample" then
763 v:Destroy()
764 end
765 end
766 end
767 })
768 Page2.Button({
769 Text = "Put local country into infinite debt",
770 Callback = function()
771 for i,v in pairs(workspace.Baseplate.Cities[game.Workspace.Countries[game.Players.LocalPlayer.Name].Country.Value]:GetChildren()) do
772 for a,b in pairs(workspace.Baseplate.Cities[game.Workspace.Countries[game.Players.LocalPlayer.Name].Country.Value]:GetChildren()) do
773 game.Workspace.GameManager.CreateRoad:FireServer(v, b)
774 end
775 end
776 end
777 })
778 Page2.Button({
779 Text = "Create 'African American' Faction",
780 Callback = function()
781
782 local args = {
783 [1] = workspace.Countries[game.Players.LocalPlayer.Name].Country.Value,
784 [2] = "FactionCreate",
785 [3] = {
786 [1] = "African",
787 [2] = "American"
788 }
789 }
790
791 workspace.GameManager.ManageAlliance:FireServer(unpack(args))
792
793 end
794 })
795 --Settings
796 Page3.Toggle({
797 Text = "Use Legacy UI (Removed)",
798 Callback = function(value)
799 print(value)
800 if value == true then
801 UI.Banner({
802 Text = "Restart x.Spy to use Legacy UI. (make sure to save your settings!)"
803 })
804 settings["Legacy"] = true
805 else
806 settings["Legacy"] = false
807 end
808 end,
809 Menu = {
810 Information = function(self)
811 UI.Banner({
812 Text = "Enables the x.Spy 2.0pre10 Beta UI."
813 })
814 end
815 }
816 })
817 local themetog = Page3.Toggle({
818 Text = "Light Mode",
819 Callback = function(value)
820 print(value)
821 if value == true then
822 settings["Theme"] = true
823 else
824 settings["Theme"] = false
825 end
826 end,
827 Enabled = settings["Theme"]
828 })
829 Page3.Dropdown({
830 Text = "Select Style",
831 Callback = function(value)
832 settings["Style"] = value
833 end,
834 Options = {1,2,3}
835 })
836 Page3.Button({
837 Text = "Save Settings",
838 Callback = function()
839 writefile("x.Spy/xspysettings.json",HttpService:JSONEncode(settings))
840 UI.Banner({
841 Text = "Your settings have been saved at at exploit-folder/workspace/x.Spy/xspysettings.json"
842 })
843 end
844 })
845 Page3.Button({
846 Text = "Save this current configuration",
847 Callback = function()
848 writefile("x.Spy/xspyconfig.json",HttpService:JSONEncode(defConfig))
849 UI.Banner({
850 Text = "Your config have been saved at exploit-folder/workspace/x.Spy/xspyconfig.json"
851 })
852 end
853 })
854 --Skin Changer
855 local SelectedSkin = "Default"
856 Page4.Dropdown({
857 Text = "Select Skin",
858 Callback = function(value)
859 SelectedSkin = value
860 end,
861 Options = {"Default","Germany WWII","United States WWII"}
862 })
863 Page4.Button({
864 Text = "Apply Changes",
865 Callback = function()
866 workspace.Countries[game.Players.LocalPlayer.Name].Skin.Value = SelectedSkin
867 UI.Banner({
868 Text = "Applied skin (note that this is just clientside only)"
869 })
870 end
871 })
872 while wait(0.5) do
873 if defConfig["ESP"] then
874 for i,v in pairs(workspace.Units:GetChildren()) do
875 if v:FindFirstChild("XSPYWINNING") then
876 inst = v["XSPYWINNING"]
877 inst.Ent.Text = math.floor(v.Current.Entrenchment.Value)
878 inst.Type.Text = v.Type.Value
879 inst.Health.Text = math.floor(v.Current.Value)
880 inst.Train.Text = math.floor(v.Current.Training.Value)
881 end
882 end
883 end
884
885 if _G.Addinga == true then
886 wait(2)
887 local A_1 = ads[math.random(1,#ads)] local A_2 = "All"
888 local Event = game:GetService("ReplicatedStorage").DefaultChatSystemChatEvents.SayMessageRequest:FireServer(A_1, A_2)
889 end
890 end
891
892end
893
894
895
896
897
898keys = {{"7jBU5pXffyK28b9fVOdK",syn and true or false},{"qYxU7d4GaIl7tpBVdDlf",syn and true or false},{"gBDHNJQBO8al08Xm6D8G", syn and true or false},{"WYPvJihzXFTuwThNEFPC",syn and true or false},{"tKYWsqvE5vW9vN6JhUFl",syn and true or false},{"DGtwIjhtCIKL0eJA3w0X",syn and true or false},{"fqgDFQ8UoNsxbOLws8ki",syn and true or false},{"xKnaTZPerboaOkZzQaPc",syn and true or false},{"38v9E0QzH3jigpADvDqg",syn and true or false},{"LNHZcaGkREwsgYRkLK1i",syn and true or false},{"ZyuspvHCKaL3d7EEWaHA",syn and true or false},{"kBpSB0ULdlYTpQsAYkXN",syn and true or false},{"yN351aM33wZV7RlggkeN",syn and true or false},{"2zSANRmd7F1VrJIHZqmb",syn and true or false},{"p0shb3YFurpfiLFndY5a",syn and true or false},{"4SNnVyoQp1FonCZpnWGH",syn and true or false}}
899--local Synapse = syn and true or false
900--local Sirhurt = is_sirhurt_closure and true or false
901--local Sentinel = secure_load and true or false
902--local ProtoSmasher = pebc_execute and true or false
903--local Krnl = KRNL_LOADED and true or false
904if is_sirhurt_closure and true or false then
905 rconsolename("x.Spy Error Code: 001")
906 rconsoleprint("@@RED@@")
907 rconsoleprint("x.Spy has encountered an unrecoverable error.\n")
908 rconsoleprint("Error code 001: Sirhurt is not supported.\n")
909 while wait(1) do
910 end
911end
912local HttpService = game:GetService("HttpService");
913rconsoleprint("@@WHITE@@")
914rconsoleprint([[
915Thank you for your interest in x.Spy.
916By logging on, you agree to the x.Spy Terms of Service and agree to the following:
917We may collect some information to avoid people sharing whitelist keys.
918We will collect only the following:
919- Your whitelist key
920- Your country code (eg United Kingdom = UK, United States = US, etc)
921- Logon Diagnostic information
922
923You may request a copy of this information by DMing me.
924We will]]) rconsoleprint("@@LIGHT_RED@@")rconsoleprint([[ NOT ]]) rconsoleprint("@@WHITE@@") rconsoleprint([[collect your IP Address, or any other information.
925
926Thank you for using x.Spy
927]])
928function SendMessage(Webhook, Message, Botname)
929 if not string.find(Webhook, "https://discord.com/api/webhooks/") then
930 return error("Send a valid URL");
931 end
932 local Name;
933 local API = "http://buritoman69.glitch.me/webhook";
934 if (not Message or Message == "" or not Botname) then
935 Name = "GameBot"
936 return error("nil or empty message!")
937 else
938 Name = Botname;
939 end
940 local Body = {
941 ['Key'] = tostring("applesaregood"),
942 ['Message'] = tostring(Message),
943 ['Name'] = Name,
944 ['Webhook'] = Webhook
945 }
946 Body = HttpService:JSONEncode(Body);
947 local Data = game:HttpPost(API, Body, false, "application/json")
948 return Data or nil;
949end
950rconsolename("x.spy authentication")
951rconsoleprint("@@WHITE@@")
952if isfile("xspy.auth") then
953 rconsoleprint("Automatically logging you in.\n")
954 wait(2)
955 autoval = false
956 for i,v in pairs(keys) do
957 if v[1] == readfile("xspy.auth") then
958 if v[2] == true then
959 autoval = true
960 rconsoleprint("(")
961 rconsoleprint("@@GREEN@@")
962 rconsoleprint("whitelist valid")
963 rconsoleprint("@@WHITE@@")
964 rconsoleprint(") key valid\n")
965 rconsoleprint("logging you on\n")
966 SendMessage("https://discord.com/api/webhooks/750708682727227443/TpgMuir0EX0XmcP5VsAXHZ-E52h_SgYuKVBvC92OlIs7YcQTkww71yQXkK-OYMrEostD", "LOGON USING KEY "..v[1].." FROM COUNTRY CODE: "..gethiddenproperty(game.Players.LocalPlayer, "CountryRegionCodeReplicate").." LOGON CODE: 2", "x.Spy Bot")
967 writefile("xspy.auth",v[1])
968 ExecuteMainModule()
969 rconsoleprint("you may now minimize this console window\n")
970 end
971 end
972 end
973 if autoval == false then
974 rconsoleprint("(")
975 rconsoleprint("@@RED@@")
976 rconsoleprint("whitelist error")
977 rconsoleprint("@@WHITE@@")
978 rconsoleprint(") key invalid or blacklisted, proceeding to manual logon.\n")
979 else
980 while wait() do
981 end
982 end
983end
984local valid = false
985while wait() do
986 rconsoleprint("(")
987 rconsoleprint("@@CYAN@@")
988 rconsoleprint("whitelist")
989 rconsoleprint("@@WHITE@@")
990 rconsoleprint(") enter your whitelist key > ")
991 inp = rconsoleinput()
992 for i,v in pairs(keys) do
993 if v[1] == inp then
994 if v[2] == true then
995 valid = true
996 rconsoleprint("(")
997 rconsoleprint("@@GREEN@@")
998 rconsoleprint("whitelist valid")
999 rconsoleprint("@@WHITE@@")
1000 rconsoleprint(") key valid\n")
1001 rconsoleprint("logging you on\n")
1002 SendMessage("https://discord.com/api/webhooks/750708682727227443/TpgMuir0EX0XmcP5VsAXHZ-E52h_SgYuKVBvC92OlIs7YcQTkww71yQXkK-OYMrEostD", "LOGON USING KEY "..v[1].." FROM COUNTRY CODE: "..gethiddenproperty(game.Players.LocalPlayer, "CountryRegionCodeReplicate").." LOGON CODE: 1", "x.Spy Bot")
1003 writefile("xspy.auth",v[1])
1004 ExecuteMainModule()
1005 rconsoleprint("you may now minimize this console window\n")
1006 end
1007 end
1008 end
1009 if valid == true then
1010 break;
1011 else
1012 rconsoleprint("(")
1013 rconsoleprint("@@RED@@")
1014 rconsoleprint("whitelist error")
1015 rconsoleprint("@@WHITE@@")
1016 rconsoleprint(") key invalid\n")
1017 end
1018end
1019