Jump to content

Welcome to Gaming On Steroids Forums
Register now to gain access to all of our features. Once registered and logged in, you will be able to create topics, post replies to existing threads, give reputation to your fellow members, get your own private messenger, post status updates, manage your profile and so much more. This message will be removed once you have signed in.
Login to Account Create an Account

Highest Reputation Content

#69338 [Free] Deftsu's Auto Carry : Reborn v0.58

Posted by Deftsu on 11 June 2016 - 02:46 PM



Insert Thread Design Here !



  • Fast Kiting Algorithm
  • 5 Different Modes (Combo, Harass, LaneClear, LastHit, Freeze)
  • Strong and Solid Coded
  • Dev-Friendly (Includes Events..)
  • Supports Almost all AutoAttack Resets
  • Doesn't Break Chanelling Spells
  • Supports Almost All Possible Damage Bonuses on LastHit
  • Most Perfect LastHit with Damage/Health Prediction
  • Friendly and Configurable
  • Attacks Wards/Pets/Barrels
  • Hold Position Depending on Distance between Mouse Position and Hero
  • Melee Settings
  • Range Drawings
  • Perfect Damage Calculation/Health Prediction
  • Support Mode (Spoil of War..)
  • Attack Turrets/Inhibitors/Nexus
  • Nice Logic Behind Getting Targets in Different Modes
  • Configurable WindUp + Farm Delays
  • Highest DPS Possible
  • AutoAttack Canceling that is not affected by Humanizer (Fast-Kite Option)
  • Strong Target Selector


  • Add Items Usage
  • Add Plugins for ADC's




  • 290

#17121 Noddy | ADC Main

Posted by Noddy on 28 August 2015 - 06:02 PM


  • 142

#72361 [Free] Challenger Evade v0.22

Posted by Deftsu on 28 July 2016 - 11:00 AM



Challenger Evade was under development for almost 2 months and now is the day of the release (RELEASE THE KRAKEN!).
Since alpha release, Challenger Evade supports almost all skillshots (if not all :P) so let's get into more details..


-Evades as smooth as possible, no matter how much skillshots are fired at you, click for more info..
-Will find optimal path for multiple skillshots (prioritizing : last evade position > orbwalker direction)
-Works well with the orbwalker/normal clicks, everything will work smooth without any jittering, click for more info..
-Fully Customizable settings for each enemy skillshot
-Fully Customizable settings for evade methods
-Simple and Clean menu, easy to configure
-Supports FOW Dodging (there is an option to turn off this feature)
-Dodge only dangerous option (this is useful when using combo mode, so it's on space by default, will dodge only dangerous skillshots instead of every skillshot fired at you)
-Ally Shielding
-Customizable danger levels for both evade methods and skillshots.
-Almost perfect algorithm over choosing evade method (knows exactly when it needs to move, dash etc..)
-Supports Drawings for all different types and special spells (planning to rewrite current linear, circular drawings..)
-Block spells (configurable) and AutoAttacks when evading
-Special Feature : Double Click to remove skillshot, works only for Gragas Q and Lux E for now, useful when the enemy is dead or the projectile is blocking your path, click for more info..
-Basic pathfinding and optimized wall calculations
-Collision support for windwall, minions and heroes
-Ignore Above HP% option
-Special evasion system for kalista
-FOW Dodge for some circular spells
-Prevention from AA cancelling option

SkillShot Types

Challenger Evade support the dodge of all current skillshot types including :
-Arc (ex: Diana Q)
-Ring (ex: Veigar E inside and outside the ring)

Evading Methods

Challenger Evade Dodge with different methods including:
-Walking (including movement speed buffs, includes Ghost)
-Blinks (includes flash)
-Invulnerable spells (includes Zhonya)
-Shields (including teammates)
-AttackJump (Ekko E Attack)

Special Spells

while working on it, i recorded some special spells/spell types so here comes the fun part.. :D

Ahri Q (acceleration and backward orb follows ahri..)


Ashe W (x9 skillshots)

Darius E (cone, nothing special)

Diana Q (arc, nothing special)

Malzahar Q (same as zyra Q, perpendicular to cast direction)

Syndra E (orbs..)

Taric E (following taric + ally with his buff)

TwistedFate Q (threeway..)

Velkoz Q (perpendicular :D)

Zed Q/E (From object which is shadows in this case, same as Orianna Spells, Ekko R..)

Ziggs Q (triple bounce)




-ignore/DodgeOnlyDangerous when Banshee/Olaf R Active option
-Avoid Traps/Shrooms (Jinx E, Cait W, Teemo R...)
-Spam Feretorix to add GetPath(my current path)/CalculatePath(calculate path from a to b and return points)




Kortatu/Honda7 for open source evade (learned a lot from it :D)
evitaerCi for teaching/helping in different steps, this guy definitely deserve a cookie! :godbless:
Everyone that helped me on fixing/improving minor things ( Inspired , Zwei.....)
Noddy for op Challenged Evade banner PogChamp

  • 131

#77752 [CS:R] Challenger Series : Reborn v0.31 [Added : Camille]

Posted by Deftsu on 03 September 2016 - 02:41 PM

Insert Thread Design Here !




  • Multi Champions Support
  • Multi Prediction Support
  • Multi Orbwalker Support
  • Built-in Activator
  • Built-in Humanizer
  • Built-in Skin Changer (Works every patch)
  • Always Up To Date
  • Advanced Logics and Algorithms for different champions
  • Smart Spell Rotation
  • Awesome Drawings


Supported Champions:


  • Aatrox
  • Ahri
  • Akali
  • Alistar
  • Amumu
  • Ashe
  • Azir
  • Blitzcrank
  • Brand
  • Camille
  • Draven
  • Jayce
  • Katarina
  • Lee Sin
  • Master Yi
  • Vayne
  • Xerath


  • 82

#10980 CloudAIO v16[IAC] v5.4 *FINAL* I Will no longer...

Posted by Cloud on 01 August 2015 - 03:26 AM

v5.4 Final [Read update]

Supported champions


Middle Lane


Attack Damage Carry (ADC)





Top Lane






Tutorial: Please open spoiler.







Download With Gnar Ult: https://github.com/C...r/CloudAIO1.lua

lel.lua (Required for Gnar ult) https://github.com/C.../master/lel.lua



Error IAC() fix: Delete myIAC = IAC() at the top of the file(s)

Update: *FINAL* I will no longer be updating this script. It is simply not "HQ" and I would rather spend time making something useful for GoS rather then crappy scripts. Scripts that will be released in the future will be very "HQ" and i might ressurect this thread at anytime. Yes you may still use this script Kappa.





leeched drawings by: Deftsu big thanks!


Bug report layout:

Did you use the download and follow my tutorial?:
Did or are you using twgank with it?(wont work)
Screenshot(if possible):
Bug(short description):

Anything not in this layout will not be answered (Jks it will but make it easy for me please)

Upvote: You know the green arrow thing helps drive me.

  • 69

#14781 D3ftlandAIO v3.5 a lot of incoming updates !!

Posted by Deftsu on 17 August 2015 - 06:12 PM


A Special Thanks to Cat for the banner :wub:

You can download the whole zip folder from here : https://github.com/D...hive/master.zip

Please download that folder or Download this lib since you need it : https://raw.githubus...mon/DeftLib.lua


Utility Scripts




-Singed Q Exploit


Supported Champions








































Credits to ilovesona for Interrupter, Inspired for inspiring me =) , Feretorix for GoS obviously =) , Inferno for MEC




  • 61

#53885 [Last Update - 7.2] Krystra Mid Series [Multi Champion Support ] [ Multi Pred...

Posted by Krystra on 02 February 2016 - 09:55 PM




  • 47

#14969 TheWelder AIO - NO SIMPLE SCRIPTS INCLUDED - 15 HQ Champion Script ! [ANN...

Posted by TheWelder on 18 August 2015 - 10:52 PM




-COMBO Configs


-IAC support


-Support Inspired V16







Skills/Smite Support for jungler's











1-Place the downloaded files inside COMMON Folder.

2-Add require('twaio') inside testscript1.lua

  • 45

#12491 The future plans for GoS improvement.

Posted by Feretorix on 07 August 2015 - 01:06 PM

Since i am going on vacation and we're going to be on a standby for 7 days without me exporting new API functions. I want to make things clear to you guys where we are headed to and what is going to happen with the tool in the future.

First we will continue with the API (when i come back):

OnCreateObject, OnUpdateObject?, OnDeleteObject, GetCursorPos, GetWaypoints, OnProcessPacket, SCRIPTS_PATH, COMMON_PATH, FileExists, DownloadFile, DrawLines, GetKillsCount, GetDeathsCount, GetAssistsCount, GetCSCount, F7DodgingBool, GetGameTimer, GetGameMap, and much more i have forgotten to mention.
The approach i have taken with OnLoop and OnObjectLoop was not the best one and is FPS consuming for slower computers, including the need of calling functions like GetMaxHP or any other. We will be moving on OnCreateObject, where the object will have members like object.maxHealth to save resources. (I really need to confirm on this first, else it will be still useless)
Second we will continue with the Loader, the moment when we will escape from ALPHA and become BETA:
Add language support for the Loader & Tool In-Game. Add the ability to install scripts with 1 click from the site, and a scriptlist in the Loader itself (like is in some competitors right now)
Third we will concentrate again on LUA Common libraries and script menu proper implementation and language support:
With the hope of the API exports we will be able to make libs like HealthPrediction, CustomEvade, CustomPrediction, SpellsDmgLib, SpellTypes, WallLibs, OrbwalkingLibs and much more of the kind. But the most important would be the MenuLib which with my help, it will be stickied to the F7 menu in a new TAB, will have the same color scheme design like the F7 menu (with submenus), but the listing approach should be like this: done by Krystian ! With my help, we will have LUA menu with different language support and settings saving.
Not the last thing (but last in this thread for the moment) would be a script database, which will be connected to GoS and people with 1 click will be able to install scripts which want to use. In game GoS will detect which champion they're playing and after they're spawned in base, asked which champion script want to load. The need of installing different libraries should be eliminated, as everything will be coming built in GoS.
What the average user is left at the end:
-Lightweight Loader
-One click install custom scripts from a DB (if it's not already embedded into GoS)
-Embedded professional scripts (which are godly and commonly used)
-Prompted at champion spawn which scripts to load (if more than 1 available) (this will be an option)
-Loader in user native language
-In-Game menu settings in native language

  • 45

#1371 Riven Configs - Best Combo

Posted by Oneesan on 10 June 2015 - 09:03 PM



- Coppy script and pates in files Gameonstreoroids.ini 
( Start -> %appdata% ->Folder Gameonstroids ) 



Don't foget click rep_up.png

  • 44

#122823 GoS for LoL External [New Feature: Choosing scripts In-Game without the need...

Posted by Feretorix on 13 August 2017 - 02:33 PM

This feature was requested and rather needed, since we forced people to inject into 3rd party programs in order to hide GoS EXT even further. This had the drawback of having Loader.exe closed during gameplay and being unable to choose/select the desired scripts after each game.

Now when you disable scripts engine by pressing [F6] key on your keyboard, you will be welcomed by the new small menu which is a scripts selector. This is how it looks like:


With best regards, Feretorix.
  • 43

#6732 Complete GoS LUA API [Alpha Version 0.1.8]

Posted by Feretorix on 16 July 2015 - 09:13 PM

Changelog 20.10.2015
Sorry for the delay on the Loader update i've promised, it's been 5 days and i got it on hold, but here we go with something else which is also neat!
-Added new great event OnProcessSpellComplete, which is exactly the same as the OnProcessSpell, with the only difference that it gets triggered (by the game engine itself) exactly after the real "windup" animation of an attack or spell. (huge credits to finndev)
Here is an image in action, calling dance emote, and moving towards cursor:
Here is some code how it's achieved:
if Object == GetMyHero() then --we check if it's us
CastEmote(EMOTE_DANCE); --force emote cast after Q finished
MoveToXYZ(GetMousePos()); --force move to cursor to cancel dance emote
Some other news are that we have:
--which does the same thing as OnLoop, but soon the old "OnLoop" will get deprecated and later deleted.
--which should be used for heavy calculations and hundreds of calls to GotBuff functions, etc without losing any performance (causing FPS lag)
New SCRIPT_PATH and COMMON_PATH constants.
Changelog 15.10.2015
With the new update for Patch 5.20 and old 5.19, i've updated both dll's with the following changes:
-Added new API CastEmote(emoteID) which returns a boolean with success/failure (but how can it possibly fail?) (Credits to finndev @ UC Forums)
Current emote ID's:
-Added new API IsChatOpened() which returns a boolean, to check if your chat is open, good for libs.
-Added new API IsGameOnTop() which returns a boolean, to check if your game window is currently on top.
-Added Lua.IO.Library support (file manipulation functions) (fixed it's loading)
(Credits for events to Inspired!)
-Added new OnDraw(myHero) event which is the same as OnLoop (which will become deprecated soon™)
-Added new OnTick(myHero) event which is safe to use it to make heavy calculations without draining FPS too much.
Code example:
local myDrawID = OnDraw(function(myHero)
--if DeleteOnDraw(myDrawID) then
-- PrintChat("Draw was removed!")
-- PrintChat("Draw was NOT removed!")
local myTickID1 = OnTick(function(myHero)
PrintChat(string.format("PassedTicks1 = %d", GetTickCount()))
local myTickID2 = OnTick(function(myHero)
PrintChat(string.format("PassedTicks2 = %d", GetTickCount()))
local myTickID3 = OnTick(function(myHero)
PrintChat(string.format("PassedTicks3 = %d", GetTickCount()))
local myTickID4 = OnTick(function(myHero)
PrintChat(string.format("PassedTicks4 = %d", GetTickCount()))
--if DeleteOnTick(myTickID) then
-- PrintChat("Tick was removed!")
-- PrintChat("Tick was NOT removed!")
Changelog 28.09.2015
-Added new API GetGameTimer(); returns a float value with the game time used for buffs.
-Added new API GetBuffData(myHero,"buffname"); returns struct with the following values: (credits to can1357 @ UC Forums)
retval.Type = a value from 0 to 31 containing specifying the buff type.
retval.Name = returning a string with the buffname
retval.Count = returning how much the buff is stacked (Ryze passive, Annie passive)
retval.Stacks = returns a value for a rare amount of buffs in the game which have huge stack values (Example is Nasus Q)
retval.StartTime = returns a value with the time the buff started depending on the GetGameTimer.
retval.ExpireTime = returns a value when the buff will expire depending on the GetGameTimer.
-Added new API GetBuffType(myHero,ID); returns the buff type for the specified ID
-Added new API GetBuffStacks(myHero,ID); returns the buff stacks for the specified ID
-Added new API GetBuffStartTime(myHero,ID); returns a float with the buff start time for the specified ID
-Added new API GetBuffExpireTime(myHero,ID); returns a float with the buff end time for the specified ID
-Added new API GetBuffTypeList(); returns a structure with the constant buff types as follows:
    Ret.Internal = 0,
    Ret.Aura = 1,
    Ret.CombatEnchancer = 2,
    Ret.CombatDehancer = 3,
    Ret.SpellShield = 4,
    Ret.Stun = 5,
    Ret.Invisibility = 6,
    Ret.Silence = 7,
    Ret.Taunt = 8,
    Ret.Polymorph = 9,
    Ret.Slow = 10,
    Ret.Snare = 11,
    Ret.Damage = 12,
    Ret.Heal = 13,
    Ret.Haste = 14,
    Ret.SpellImmunity = 15,
    Ret.PhysicalImmunity = 16,
    Ret.Invulnerability = 17,
    Ret.Sleep = 18,
    Ret.NearSight = 19,
    Ret.Frenzy = 20,
    Ret.Fear = 21,
    Ret.Charm = 22,
    Ret.Poison = 23,
    Ret.Suppression = 24,
    Ret.Blind = 25,
    Ret.Counter = 26,
    Ret.Shred = 27,
    Ret.Flee = 28,
    Ret.Knockup = 29,
    Ret.Knockback = 30,
    Ret.Disarm = 31,
-Added new API GetBuffTypeToString(BuffTypeInt); returns a string with the bufftypename depending on the ID provided.
-Updated OnRemoveBuff(Object,buffProc) where buffProc has the following members:
-Updated OnUpdateBuff(Object,buffProc) where buffProc has the following members:
buffProc.Type = a value from 0 to 31 containing specifying the buff type.
buffProc.Name = returning a string with the buffname
buffProc.Count = returning how much the buff is stacked (Ryze passive, Annie passive)
buffProc.Stacks = returns a value for a rare amount of buffs in the game which have huge stack values (Example is Nasus Q)
buffProc.StartTime = returns a value with the time the buff started depending on the GetGameTimer.
buffProc.ExpireTime = returns a value when the buff will expire depending on the GetGameTimer.
Some random LUA example:
--PrintChat(string.format("<font color='#00ff00'>CreatedObject = %s</font>",buffProc.Name));
PrintChat(string.format("<font color='#00ff00'>Updated:</font> BuffName: [%s] BuffType: [%d] BuffCount: [%d] BuffStacks: [%f] StartTime: [%f] ExpireTime: [%f]",buffProc.Name,buffProc.Type,buffProc.Count,buffProc.Stacks,buffProc.StartTime,buffProc.ExpireTime));
buffdatas = GetBuffData(myHero,"recall");
DrawText(string.format("[RECALL_BUFF INFO]", buffdatas.Type),12,0,20,0xff00ff00);
DrawText(string.format("Type = %d", buffdatas.Type),12,0,30,0xff00ff00);
DrawText(string.format("Name = %s", buffdatas.Name),12,0,40,0xff00ff00);
DrawText(string.format("Count = %d", buffdatas.Count),12,0,50,0xff00ff00);
DrawText(string.format("Stacks = %f", buffdatas.Stacks),12,0,60,0xff00ff00);
DrawText(string.format("StartTime = %f", buffdatas.StartTime),12,0,70,0xff00ff00);
DrawText(string.format("ExpireTime = %f", buffdatas.ExpireTime),12,0,80,0xff00ff00);
DrawText(string.format("[GameTime] = %f", GetGameTimer()),12,0,90,0xff00ff00);
bufftypelist = GetBuffTypeList();
if buffdatas.Type == bufftypelist.Aura then
DrawText("Buff is considered as aura",12,0,100,0xffffffff);
DrawText(string.format("GetBuffTypeToString = [%s]", GetBuffTypeToString(buffdatas.Type)),12,0,110,0xffffff00);
buffdatas2 = GetBuffData(myHero,"nasusqstacks");
DrawText(string.format("[NASUS(Q)BUFF INFO]", buffdatas2.Type),12,200,20,0xff00ff00);
DrawText(string.format("Type = %d", buffdatas2.Type),12,200,30,0xff00ff00);
DrawText(string.format("Name = %s", buffdatas2.Name),12,200,40,0xff00ff00);
DrawText(string.format("Count = %d", buffdatas2.Count),12,200,50,0xff00ff00);
DrawText(string.format("Stacks = %f", buffdatas2.Stacks),12,200,60,0xff00ff00);
DrawText(string.format("StartTime = %f", buffdatas2.StartTime),12,200,70,0xff00ff00);
DrawText(string.format("ExpireTime = %f", buffdatas2.ExpireTime),12,200,80,0xff00ff00);
DrawText(string.format("[GameTime] = %f", GetGameTimer()),12,200,90,0xff00ff00);
DrawText(string.format("GetBuffTypeToString = [%s]", GetBuffTypeToString(buffdatas2.Type)),12,200,110,0xffffff00);
Changelog 20.09.2015
-Added new API GetItemID(myHero,SLOT_1); returns a value bigger than 0 with the ITEMID number if any is found.
-Added new API GetItemStack(myHero,SLOT_1); returns value bigger than 0 if item is found, bigger than 1 for any item stacked on that slot (multiple potions in one slot)
-Added new API GetItemAmmo(myHero,SLOT_1); returns value bigger than 0 if the current item has any ammo (Crystalline Flask)
Added inventory slot constants:
Some example code:
local capspress = KeyIsDown(0x14); --Caps Lock key
if capspress then
local itemid = GetItemID(myHero,ITEM_1);
local itemammo = GetItemAmmo(myHero,ITEM_1);
local itemstack = GetItemStack(myHero,ITEM_1);
PrintChat(string.format("itemID in Slot 1 is = %d", itemid));
PrintChat(string.format("AMMO! in Slot 1 is = %d", itemammo));
PrintChat(string.format("STACK in Slot 1 is = %d", itemstack));
Changelog 15.09.2015
-Added new API: DrawLine(x1,y1,x2,y2,width,color);
Example code:
mymouse = WorldToScreen(1,GetMousePos());
myposition = WorldToScreen(1,GetOrigin(myHero));
if mymouse.flag and myposition.flag then
Changelog 08.09.2015
-Added new event "OnWndMsg"
-Added new API "GetCursorPos"
-Added new API "GetResolution"
Example script below:
PrintChat(string.format("msg = %d | wParam = %d", msg, wParam))
reso = GetResolution();
curp = GetCursorPos();
DrawText(string.format("     RES[X] = %d | RES[Y] = %d", reso.x, reso.y),30,curp.x,curp.y,ARGB(255,255,255,255));
DrawText(string.format("    MOUSE[X] = %d | MOUSE[Y] = %d", curp.x, curp.y),30,curp.x,curp.y+30,ARGB(255,255,255,255));
Changelog 01.09.2015
-Added new OnProcessWaypoint event!
-Added new GetMapID.
-Added new GetBaseAttackSpeed.
-Fixed prediction large waypoints mismatch position.
-Fixed DrawTextSmall ")" symbol support.
Example script below:
mapID = GetMapID(); --get mapID once ....
baseAS = GetBaseAttackSpeed(GetMyHero()); --get once baseAS to avoid causing FPS lag...
if Object == GetMyHero() then
if waypointProc.index == 1 then
place = waypointProc.position;
if waypointProc.index == 2 then
place2 = waypointProc.position;
if place ~= nil then
if place2 ~= nil then
if mapID == CRYSTAL_SCAR then
DrawText("Map is: CRYSTAL_SCAR",12,10,10,ARGB(255,0,255,0));
elseif mapID == TWISTED_TREELINE then
DrawText("Map is: TWISTED_TREELINE",12,10,10,ARGB(255,0,255,0));
elseif mapID == SUMMONERS_RIFT then
DrawText("Map is: SUMMONERS_RIFT",12,10,10,ARGB(255,0,255,0));
elseif mapID == HOWLING_ABYSS then
DrawText("Map is: HOWLING_ABYSS",12,10,10,ARGB(255,0,255,0));
DrawText(string.format("Map is unknown with ID: %d",mapID),12,10,10,ARGB(255,0,255,0));
if baseAS ~= nil then
DrawText(string.format("My BaseAttackSpeed is: %f",baseAS),12,10,20,ARGB(255,0,255,0));
Changelog 25.08.2015
-Added 4 new functions (events).
-Fixed GetObjectBaseName to properly read names longer than 15 bytes.
Example code with the latest events:
PrintChat(string.format("<font color='#00ff00'>Champion [%s] Updated: [%s] Stacks: [%d]</font>",GetObjectName(Object),BuffName,Stacks));
PrintChat(string.format("<font color='#ff0000'>Champion [%s] Removed: [%s]</font>",GetObjectName(Object),BuffName));
OnCreateObj(function(Object) --Object is a pointer to the object created by the game just now.
PrintChat(string.format("<font color='#00ff00'>CreatedObject = %s</font>",GetObjectBaseName(Object)));
--NetworkID for newly created objects is always 0, just save the object pointer instead
OnDeleteObj(function(Object) --Object is a pointer to the object deleted by the game just now.
--if GetNetworkID(Object) > 0 then --this line could be used to track objects only with NETID
PrintChat(string.format("<font color='#ff0000'>DeletedObject = %s</font>",GetObjectBaseName(Object)));
--end --this line is used only if we're closing the GetNetworkID check
Changelog 23.08.2015
-Added new function IsTargetable(Object); returns a boolean (true) if you can attack the target, and false if you can't (for example Vladimir currently is using his blood pool)
-Improved IsImmune(Object); now checks only for immortality buffs like Trynda, Kayle, Zilean, Poppy ultimates & more. For additional checks use IsTargetable (Vlad Pool, Fizz Trickster, Yi AlphaStrike, Kogmaw SupriseDeath, Karthus DeathBuff ... etc)
Changelog 06.08.2015
Added new function LevelSpell(spellid); --returns a boolean true/false if success or failure
Added new function CastSkillShot3(spellid,startpos,endpos); --could be used for Viktor[E] or Rumble[R] and any other spell which requires two positions.
local tabpress = KeyIsDown(9); --TAB key
if tabpress then
lvlp = LevelSpell(_Q);
if lvlp == true then
MessageBox(0,"LVLUP Q SUCCESS!","Nice!",0);
MessageBox(0,"LVLUP Q FAILURE!","Bad!",0);
local shiftpress = KeyIsDown(0x10); --Shift Key
if shiftpress then
CastSkillShot3(_E,myorigin,mymouse); --cast victor [E] from ourself to our mouse pos
Changelog 03.08.2015
Added new event: OnDrawMinimap(function() which could be used to draw over everything, not only minimap, but it's not recommended to use.
Added WorldToMinimap(position) .... returns X,Y
local myHero = GetMyHero();
local myorigin = GetOrigin(myHero);
minipos = WorldToMinimap(myorigin);
Changelog 31.07.2015
Added new function "ARGB(255,255,255,255)" used in other drawing funcs to fix color bugs with values bigger than 7FFFFFFF.
Added possibility to use directly a "vector" instead of "vector.x","vector.y","vector.z"
local origin = GetOrigin(myHero);
local mymouse = GetMousePos();
local shiftpress = KeyIsDown(0x10); --Shift Key
if shiftpress then
CastSkillShot(_Q,mymouse); --start charging Xerath Q
local tabpress = KeyIsDown(9); --TAB key
if tabpress then
CastSkillShot2(_Q,mymouse); --release charged Xerath Q
local capspress = KeyIsDown(0x14); --Caps Lock key
if capspress then
local myscreenpos = WorldToScreen(1,origin);
if myscreenpos.flag then
FillRect(myscreenpos.x-200,myscreenpos.y-200,100,100,ARGB(220,0,0xff,100)); --you can use both int and hex
DrawDmgOverHpBar(myHero,GetCurrentHP(myHero),220,60,ARGB(255,255,255,255)); --full white color
DrawText("New ARGB!",24,myscreenpos.x,myscreenpos.y,ARGB(255,0,255,0)); --full green color
DrawTextSmall("hEllO wOrLd!",myscreenpos.x,myscreenpos.y-20,ARGB(0xff,0,0xff,0)); --full green color again (in hex)
DrawCircle(origin,300,0,0,0xffffffff); --white with direct origin table
DrawCircle(origin.x,origin.y,origin.z,350,0,0,0xffff0000); --red with separate origin table
DrawCircle(origin,400,0,0,ARGB(0xff,0,0xff,0)); --green with direct origin table
DrawCircle(origin.x,origin.y,origin.z,450,0,0,ARGB(0xff,0,0,0xff)); --blue with separate origin table
Changelog 28.07.2015
Added support for classes thanks to  Inspired!
-- define class Point
class "Point" -- {
  function Point:__init(x, y, z) -- this constructor gets called when we create a new Point(x,y,z)
    local pos = GetOrigin(x) or type(x) ~= "number" and x or nil -- check if the input is a position or an object instead of x,y,z coordinates
    self.x = pos and pos.x or x -- set x
    self.y = pos and pos.y or y -- set y
    self.z = pos and pos.z or z -- set z
-- }
-- create some points
local p1 = Point(myHero) -- create a new point of myHero coordinates
local p2 = Point(GetMousePos()) -- create a new point of mouse coordinates
local p3 = Point(100,10,100) -- create a new point with defined coordinates
-- print distances between the three points in chat
PrintChat(GetDistance(p1, p2)) 
PrintChat(GetDistance(p2, p3))
PrintChat(GetDistance(p1, p3))
Changelog 27.07.2015
OnProcessRecall detects recalling in FOW!
PrintChat("text"); --prints a text on the lol chat
CastSpell(_R); --selfcast a spell (like Katar R, Kata W, Potions, and much more - self targetable)
CastSkillShot2(_Q,mymouse.x,mymouse.y,mymouse.z); --release already charged Xerath Q
--GamingOnSteroids.com lua API file (with some basic examples)
--available constants by GoS
Spell slots used by "CastTargetSpell", "CastSkillShot" and more ...:
Spellstates returned by "CanUseSpell":
ObjectTypes returned by "GetObjectType" (the engine might have more, but they're not declared in GoS):
OnProcessRecall(function(Object,recallProc) --Object is a pointer to the player which is recalling; recallProc is a struct with additional info
--recallProc.name = the name of the recall spell
--recallProc.isStart = returns a boolean = true if the player just started recalling
--recallProc.isFinish = returns a boolean = true if the player successfully recalled to spawn
-- if both (isStart == false and isFinish == false) then it means that recall got canceled/interrupted
--recallProc.passedTime = returns an integer with the passed time since the start of the recall
--recallProc.totalTime  = returns an integer with the total expected time for the recall spell
if recallProc.isStart == true then
PrintChat(string.format("Currently %s <font color='#ffffff'>STARTED</font> %s for total time %d", GetObjectName(Object), recallProc.name, recallProc.totalTime))
elseif recallProc.isFinish == true then
PrintChat(string.format("Currently %s <font color='#00aaff'>FINISHED</font> Recall to the base for passed time %d", GetObjectName(Object), recallProc.passedTime))
PrintChat(string.format("Currently %s <font color='#ffaa00'>FAILED</font> to Recall to the base for passed time %d", GetObjectName(Object), recallProc.passedTime))
OnProcessSpell(function(Object,spellProc) --Object is a pointer to the caster of the spell; spellProc is a struct with some spell datas
--spellProc.name = the name of the current spell cast (including autoattacks and such)
--spellProc.windUpTime = number holding the value of the required animation time for an attack to complete
--spellProc.animationTime = number holding the full animation time of an attack or spell (always greater than windUpTime)
--spellProc.castSpeed = proportional to "GetAttackSpeed(myHero);", returns the speed value of the casted spell or attack.
--spellProc.startPos.y = returns a VECTOR holding the starting position of the spell cast (often the same as GetOrigin(Object))
--spellProc.endPos.y = returns a VECTOR holding the ending position of the spell cast (often the same as GetOrigin(Object))
--spellProc.target = returns a pointer to a target if there is any (for example Ryze Q is skillshot without target, but his W does have target)
if myher0 == Object then
OnObjectLoop(function(Object,myHero) --Object is a pointer to the current object, ObjectLoopEvent is looping trough all objects each frame.
local Obj_Type = GetObjectType(Object);
if Obj_Type == Obj_AI_Hero then
if IsObjectAlive(Object) then
local HPBARPOS = GetHPBarPos(Object); --returns X/Y integer values holding the hpbar position of the object
if HPBARPOS.x > 0 then
if HPBARPOS.y > 0 then
DrawText("Champ HpBarPosition is Here!",12,HPBARPOS.x,HPBARPOS.y,0xffffff00);
global_ticks = 0; --global variable with system ticks later used for potion drinking ...
OnLoop(function(myHero) --myHero is pointer to our champion; AfterObjectLoopEvent itself is happening every game frame.
myher0 = myHero;
local Obj_Type = GetObjectType(myHero); --returns string holding the name of the object type (champion, minion, turret, etc)
local Obj_BaseName = GetObjectBaseName(myHero); --returns a string holding the basename, often used when GetObjectName is empty or incorrect
local deadflag = IsDead(myHero); --returns a boolean, true if dead, false if alive
local team = GetTeam(myHero); --returns an int, holding the team (100;200 or 300 for jungle team)
local origin = GetOrigin(myHero); --returns a xyz VECTOR of the specific object in the world; in this case "origin.x" "origin.y" and "origin.z"
local currhp = GetCurrentHP(myHero); --returns the current health of the object
local maxhp = GetMaxHP(myHero);  --returns the maximum health of the object
local junglecampbool = IsCampusUp(myHero);  --this can't be used with myHero object, instead only for a jungle camp, will return true if it's UP
local currmana = GetCurrentMana(myHero);  --returns the current mana/energy of the champion (should be 0 for Katarina, Vladimir, etc)
local maxmana = GetMaxMana(myHero); --returns the maximum mana/energy of the champion
local magicshield = GetMagicShield(myHero); --returns the value of the magic damage shield applied to the champion (probably by Morgana E)
local dmgshield = GetDmgShield(myHero);  --returns the standart shield value a champion has (like Riven E; Lux W; and much more)
local champname = GetObjectName(myHero);  --returns a string with the champion name (for example Ryze, Annie etc)
local cdr = GetCDR(myHero);  --returns the cooldown reduction of the champion
local apf = GetArmorPenFlat(myHero);  --returns the flat armor penetration value of the champion (probably by runes or blrutalizer item)
local mpf = GetMagicPenFlat(myHero);  --returns the same thing as above, but for flat magic penetration
local app = GetArmorPenPercent(myHero);  --returns the percentage of armor penetration
local mpp = GetMagicPenPercent(myHero);  --returns the percentage of magic penetration
local bonusdmg = GetBonusDmg(myHero); --returns the bonus AD damage by items/runes/buffs etc
local bonusap = GetBonusAP(myHero); --returns the bonus AP damage by items/runes/buffs etc
local lifesteal = GetLifeSteal(myHero); --returns the lifesteal percentage of a champion
local spellvamp = GetSpellVamp(myHero); --returns the spellvamp percentage of a champion
local attspd = GetAttackSpeed(myHero); --returns the attack speed percentage of a champion
local basedmg = GetBaseDamage(myHero); --returns the base champion attack damage (works for minions and others too)
local crit = GetCritChance(myHero); --returns the critical strike percentage of a champion
local armor = GetArmor(myHero); --returns the total armor of an object
local magicres = GetMagicResist(myHero);  --returns the magic resist of an object
local hpregen = GetHPRegen(myHero);  --returns the health regeneration ratio of an object
local mpregen = GetMPRegen(myHero);  --returns the mana/energy regeneration of an object
local movespd = GetMoveSpeed(myHero);  --returns the move speed of an object
local range = GetRange(myHero); --returns the attack range of an object
local buffcnt = GotBuff(myHero,"OdinRecall"); --returns how much stacks we have of a specific buff; returns 0 if we don't have the buff
--test1 = GetBuffCount(myHero,4); --returns a value bigger than 1 (if the buff at index 4 is actually valid, min index 0, max index 63)
--testname = GetBuffName(myHero,4); --returns a string with a buffname (if the buff at index 4 is valid and has GetBuffCount(myHero,4) > 0)
--immune = IsImmune(Object,myHero); --returns a boolean true if the "Object" is immune to damage and can't be killed (Tryndamere ulti; etc)
local potionslot = GetItemSlot(myHero,2003); --returns a value > than 0 if the item is found; this value is used in CastSpell as slot
local castlevel = GetCastLevel(myHero,_Q); --returns how much the Q spell has been leveled up
local castrange = GetCastRange(myHero,_Q); --returns the range of the Q spell determined by the game engine
local castmana = GetCastMana(myHero,_Q,castlevel);  --returns the mana required to cast Q on the specific level it is
local castcd = GetCastCooldown(myHero,_Q,castlevel);  --returns the cooldown of the Q spell depending on the level it is currently
local castname = GetCastName(myHero,_Q);  --returns the current name of the Q spell (it changes for Nidalee and other champs depending on form)
local castusage = CanUseSpell(myHero,_Q); --returns the current state of the Q spell; READY=0;NOTAVAILABLE=1;NOTLEARNED=2;READYNONCAST=3;UNKNOWN=4;ONCOOLDOWN=5;NOMANA=6;
local hitboxsize = GetHitBox(myHero); --returns a value with the "size (range)" of the object's hitbox
local mylevel = GetLevel(myHero); --returns an int value from 1 to 18 with the player's level
local myexp = GetExperience(myHero);  --returns a value with the total experience gained so far
local amivisible = IsVisible(myHero);  --returns a boolean if an object is visible (not in Fog Of War)
local isobjalive = IsObjectAlive(myHero); --returns a boolean if the object is not dead and has health bigger than 0
local mypingval = GetLatency(); --returns an integer with the value of our ping ingame
local os_clock = GetTickCount(); --returns an integer with the passed ticks in the system
local mynetid = GetNetworkID(myHero); --returns an integer with the netID for an object
--CastTargetSpell(Object,_Q); --casts Q spell at target "Object"
--CastSkillShot(_Q,origin.x,origin.y,origin.z); --casts Q spell as a skillshot at target location "origin" (fixed a typo; it's CastSkillShot)
--MoveToXYZ(origin.x,origin.y,origin.z); --Moves your champion to "origin"
--HoldPosition(); --stops your champion from attacking and moving
--AttackUnit(Object);  --attacks "Object" with an auto-attack if it's an enemy.
local capspress = KeyIsDown(0x14); --Caps Lock key
if capspress then
if BuyItem(1027) then --Saphire Mana Crystal (400gold)
MessageBox(0,"Saphire bought!","Nice!",0);
--we got "origin" by GetOrigin(myHero);
DrawCircle(origin.x,origin.y,origin.z,300,0,0,0xffffffff); --draws a circle around object (params: x,y,z,radius,width,quality,colorARGB);
--width by default is 0; anything above that draws another extra circle
--quality by default is 0 so it will be handled by GoS settings which are set by the user
local myscreenpos = WorldToScreen(1,origin.x,origin.y,origin.z); --transforms xyz to screen xy coordinates; (params: visfix,x,y,z; and returns a struct x,y,flag)
if myscreenpos.flag then
DrawText("Testing... This text was changed",24,myscreenpos.x,myscreenpos.y,0xff00ff00); --draws a text to XY coords; (params: text,size,x,y,color)
--if "size" is not 12, but 0 it will use GoS setting set by the user for default text size
DrawTextSmall("hEllO wOrLd",myscreenpos.x,myscreenpos.y-20,0xff00ff00); --draws small text to XY coords; (params: text,x,y,color)
--note that this "smal" font is custom pixel made and it drains FPS on slow PC's if used in huge quantities
FillRect(myscreenpos.x-200,myscreenpos.y-200,100,100,0x50ffffff); --fills a rect pixels with a specific color; (params x,y,width,height,color)
DrawDmgOverHpBar(myHero,currhp,120,60,0xffffffff);  --draws specific damage over enemy or ally champion in a specific color, takes into account shields
--(params: heropointer,currenthp,adandtruedmg,apdmg,color)
local mousepos = GetMousePos(); --returns a xyz VECTOR of your mouse position in the 3d world
DrawCircle(mousepos.x,mousepos.y,mousepos.z,150,0,0,0xff00ff00); --draw a green circle around the mouse with 150 radius
local myTarget = GetCurrentTarget(); --returns your current target (if any available) based on current GoS logic.
if myTarget ~=nil then
mypred = GetPredictionForPlayer(origin,myTarget,GetMoveSpeed(myTarget),1700,250,castrange,50,true,true);
--Parameters: CastStartPosVec,EnemyChampionPtr,EnemyMoveSpeed,YourSkillshotSpeed,SkillShotDelay,SkillShotRange,SkillShotWidth,MinionCollisionCheck,AddHitBox;
--return value: ret.PredPos.x; ret.PredPos.y; ret.PredPos.z; ret.HitChance (1 or 0 for now)
if mypred.HitChance == 1 then
DrawCircle(mypred.PredPos.x,mypred.PredPos.y,mypred.PredPos.z,150,3,255,0xff00ff00) --draw a green circle if we can hit the enemy
DrawCircle(mypred.PredPos.x,mypred.PredPos.y,mypred.PredPos.z,150,3,255,0xffff0000) --draw a red circle if we can't hit the enemy
currtickz = GetTickCount();
if (global_ticks + 15000) < currtickz then   -- if the ticks + 15 seconds is smaller than "now" (GetTickCount), then 15 seconds have passed
local potionslot = GetItemSlot(myHero,2003);  --get potions slot if available
if potionslot > 0 then
if GetCurrentHP(myHero) < GetMaxHP(myHero) then  --check if we have less current HP than MAXHP
global_ticks = currtickz  --set global_ticks to "now" so a wait of 15 seconds will occur once again
CastSpell(potionslot)  -- "selfcast spell" at "potionslot" (whatever the slot is)
--Katarina R cast would look like CastSpell(_R)
local shiftpress = KeyIsDown(0x10); --Shift Key
if shiftpress then
mymouse = GetMousePos();
CastSkillShot(_Q,mymouse.x,mymouse.y,mymouse.z); --start charging Xerath Q
local tabpress = KeyIsDown(9); --TAB key
if tabpress then
mymouse = GetMousePos();
CastSkillShot2(_Q,mymouse.x,mymouse.y,mymouse.z); --release charged Xerath Q
-- print all the local variables we got so far from myHero
DrawText("Remember that using DrawText so much in an actual script will obviously cause huge FPS drops. This is a test example.",24,0,0,0xffff0000);
DrawText(string.format("Obj_Type = %s", Obj_Type),12,0,30,0xff00ff00);
DrawText(string.format("Obj_BaseName = %s", Obj_BaseName),12,0,40,0xff00ff00);
DrawText(string.format("deadflag = %s", tostring(deadflag)),12,0,50,0xff00ff00);
DrawText(string.format("team = %d", team),12,0,60,0xff00ff00);
DrawText(string.format("x,y,z = %f; %f; %f", origin.x, origin.y, origin.z),12,0,70,0xff00ff00);
DrawText(string.format("currhp = %f", currhp),12,0,80,0xff00ff00);
DrawText(string.format("maxhp = %f", maxhp),12,0,90,0xff00ff00);
DrawText(string.format("currmana = %f", currmana),12,0,100,0xff00ff00);
DrawText(string.format("maxmana = %f", maxmana),12,0,110,0xff00ff00);
DrawText(string.format("magicshield = %f", magicshield),12,0,120,0xff00ff00);
DrawText(string.format("dmgshield = %f", dmgshield),12,0,130,0xff00ff00);
DrawText(string.format("champname = %s", champname),12,0,140,0xff00ff00);
DrawText(string.format("cdr = %f", cdr),12,0,150,0xff00ff00);
DrawText(string.format("armorpenflat = %f", apf),12,0,160,0xff00ff00);
DrawText(string.format("magicpenflat = %f", mpf),12,0,170,0xff00ff00);
DrawText(string.format("armorpenpercent = %f", app),12,0,180,0xff00ff00);
DrawText(string.format("magicpenpercent = %f", mpp),12,0,190,0xff00ff00);
DrawText(string.format("bonusdmg = %f", bonusdmg),12,0,200,0xff00ff00);
DrawText(string.format("bonusap = %f", bonusap),12,0,210,0xff00ff00);
DrawText(string.format("lifesteal = %f", lifesteal),12,0,220,0xff00ff00);
DrawText(string.format("spellvamp = %f", spellvamp),12,0,230,0xff00ff00);
DrawText(string.format("attspd = %f", attspd),12,0,240,0xff00ff00);
DrawText(string.format("basedmg = %f", basedmg),12,0,250,0xff00ff00);
DrawText(string.format("critchance = %f", crit),12,0,260,0xff00ff00);
DrawText(string.format("armor = %f", armor),12,0,270,0xff00ff00);
DrawText(string.format("magicres = %f", magicres),12,0,280,0xff00ff00);
DrawText(string.format("hpregen = %f", hpregen),12,0,290,0xff00ff00);
DrawText(string.format("mpregen = %f", mpregen),12,0,300,0xff00ff00);
DrawText(string.format("movespeed = %f", movespd),12,0,310,0xff00ff00);
DrawText(string.format("range = %f", range),12,0,320,0xff00ff00);
DrawText(string.format("Got OdinRecallBuff? = %d", buffcnt),12,0,340,0xff00ff00);
DrawText(string.format("HealthPotionSlot = %d", potionslot),12,0,360,0xff00ff00);
DrawText(string.format("Q CastLevel = %d", castlevel),12,0,380,0xff00ff00);
DrawText(string.format("Q CastRange = %f", castrange),12,0,390,0xff00ff00);
DrawText(string.format("Q CastMana  = %f", castmana),12,0,400,0xff00ff00);
DrawText(string.format("Q CastCD    = %f", (castcd + (castcd * cdr))),12,0,410,0xff00ff00);
DrawText(string.format("Q CastName  = %s", castname),12,0,420,0xff00ff00);
DrawText(string.format("Q CastUsage = %d", castusage),12,0,430,0xff00ff00);
DrawText(string.format("hitboxsize = %f", hitboxsize),12,0,450,0xff00ff00);
DrawText(string.format("mylevel = %d", mylevel),12,0,460,0xff00ff00);
DrawText(string.format("myexp = %f", myexp),12,0,470,0xff00ff00);
DrawText(string.format("amivisible? = %s", tostring(amivisible)),12,0,480,0xff00ff00);
DrawText(string.format("isobjectalive? = %s", tostring(isobjalive)),12,0,490,0xff00ff00);
DrawText(string.format("Ping(ms): %d", mypingval),12,0,500,0xff00ff00);
DrawText(string.format("GetTickCount = %d", os_clock),12,0,510,0xff00ff00);
DrawText(string.format("NetworkID    = %X", mynetid),12,0,520,0xff00ff00);

  • 42

#127461 Request access to buy "GoS for PUBG" here.

Posted by Feretorix on 08 October 2017 - 01:40 PM

Before requesting access, visit the shop to see if you're already verified and can see the cheat in there, if not - post here.


In order to get access to the shop and purchase GoS for PUBG, you need to be a trusted member and get the extra rank "Verified".
In the following order people will have highest priority and chance to being accepted as "Verified" members in order to get access to PUBG in the shop.
+VIP members which have donated, have PUBG for free, lifetime - as promised.
Donators, they have supported the site in the early stages and are auto-verified. (Simply ask for access)
Registered members before 13th of August which currently have GoS INT/EXT running subscription.
Registered members before 13th of August which have purchased GoS INT/EXT in the past, but now is expired.
Everybody else with a special rank (of some kind) in the forums which is registered before 13th of August.
Regular members registered before 13th of August and have never purchased GoS INT/EXT.
And everybody else which has registered after 13th of August (which was the announcement date) with a really low chance, no matter the rank.
A better chance of getting "Verified" would be if they have registered before 10th of October and have purchased GoS EXT/INT and have been active in the forums, their PayPal is not related to Germany.
Remember that I still hold the right to deny anyone willing to purchase without notice.
Remember that once you purchase PUBG, your account will be locked to your computer hardware.

Please post below if you want to request access!

  • 39

#2981 LastHit Minions

Posted by Feretorix on 28 June 2015 - 03:18 PM

HarassCombo Tab > LastHit:

Screenshot: lasthit.gif

Feature explanation:

-LastHit Hotkey: by default is X, can be set to anything else.
-By holding down the key, you will lasthit minions if they're killable.

-Enable LastHit: by checking this, you will enable the usage of the lasthit key (whatever is set to)

-LastHitMinionMarker: if you enable this, whenever a minion could be killed with an attack, he will have a white circle around him, working like an indicator.
  • 38


Posted by Jotta on 10 September 2015 - 03:31 AM



Não se esqueça das library importantes.






  • 38

#63592 [Patch 8.x] GoSEvade v2.0.3.3 No FPS Drops| Added Zoe's Spells

Posted by MeoBeo on 08 April 2016 - 02:25 PM


  • evades linear, circular, arc and cone skillshots
  • evades trap
  • evades towards mouse position
  • evades multiple spells at once
  • evades fog of war (a.k.a FOW) skillshots
  • smooth evading
  • checks for path collision








(Save as "GoSWalk.lua" and put in Common folder )








  • Mayomie



Old version:


  • 37

#120296 GoS for LoL External [First Banwave and the future of the Project]

Posted by Feretorix on 11 July 2017 - 09:44 AM

What happened:


Today: 11th of July 2017 was issued the first ever ban-wave which affected most of the GoS EXT user-base. It was probably the longest run for a community to survive. GoS EXT was privately used since around early September 2016, was officially released in January 12th 2017 which makes it exactly 6 full months of being undetected.





GoS EXT is slower than Internal. If it's also detected - isn't the project dead now?


Not quite, while people who lost their main accounts might have a few options; 1) stop scripting at all and start from zero - legit, 2) start buying smurf accounts and script with injected tools and get banned every 2 weeks - these are the people who we can count as lost customers for the EXT user-base. But there will be the 3rd type of people, either buy a new high rank account or start from zero which will keep supporting GoS EXT. For the people which decide to support me - I will support them too!





How people will keep supporting GoS EXT if it's unsafe, will you make it undetected again?


While nobody can promise staying undetected forever and ever there is still a lot which could be done to stay safe as long as possible. Just think for a second, it took exactly 6 months for Rito to take actions against GoS EXT since it became too viral and popular and dragged attention to itself. If we were around 50 ~ 100 people then nobody would have really cared to issue a ban-wave. Right now I have plans on reworking/fixing parts of GoS EXT to make it undetected (great) again.





I have an account which I scripted on 2 months ago and didn't play with it ever since today. Now it's banned. Explain?


It's likely that 2-3 months ago just a few people were randomly banned and two weeks later un-banned. Rito might have been testing a new system to detect GoS EXTERNAL and then remove account suspensions. (in case legit users were affected too and didn't really script). If rioter was monitoring our forum might have leaked information of certain users getting banned/unbanned and verifying that on their servers.





If it's EXTERNAL (not injected) and it got detected, do you know how it happened?


While I can't share information exactly how EXT operates (for security reasons), there are a few things I could possibly say to the public scene:

1) GoS EXT operates completely outside of the game memory, but still 2 months ago was leaving a really small trace behind itself, this has been fixed like 1 month ago.

2) GoS EXT was having unencrypted one-instance-check and the data (script transfer) from Loader to EXT was not encrypted. This has been fixed like 1 month ago.

-Both of those things were released back then as a "security patch" for Loader.exe - it also fixed a crack Asians were abusing for GoS Internal and External.

3) GoS EXT was solely and only using Loader.exe (kept running during games). That same loader has file description such as "GamingOnSteroids", this has been fixed like 15 days ago where I let people choose their own 32bit process and using Loader.exe is not needed.




Do you know how to fix GoS EXT to be safe again?


Yes, I still have some more ideas:

One of the things would be most likely forbid completely using Loader.exe as a dummy process to GoS EXTERNAL. Each individual person of you has to find their own process and their own method to inject GoS EXTERNAL in their 32bit antivirus or any other process and if possible hide that process with firewall or antivirus or driver so other applications like LoLLauncher LoLClient League of Legends and other dummy processes (since legacy client rework) won't be able to scan your system and analyse 3rd party processes in your RAM. The goal is to cause as much false positive detections as possible and make it as hard as possible to trace back GoS EXT. This is probably as far as i can give information - anything else will be done "under the skin" and for the sake of security I will not give out information.





How long do we need to wait for the new security patch?


I will be disabling GoS EXT for purchase in the store. When the new Loader and EXT safety patches are applied they will be announced in Loader.exe, above the shoutbox and GoS EXT will be restored for purchasing in the store.







With the new GoS EXT security rework, I will try to support Xigncode3 in Asia servers (and most likely Garena). When that happens I will post a topic with my journey, playing at least once game weekly posting proof that i am not yet banned in there.

  • 35

#7747 ~Mechanics SERIES || VAYNE [0.0.7] :: Wall Tumble // perfect orbwalk // perf...

Posted by Laiha on 21 July 2015 - 12:26 AM












If you wanna use my source , fine do it , but give credits , thanks. (im definitely not talking about ezDeveloper who leeched everything !)



Everything works perfectly now . if you have fps drops problem remove the draw text line!






-Menu bugged? Blame Inspired library :^)


Download : http://pastebin.com/raw.php?i=2uWujeTN


Great vayne play , honor this guy

If you wanna be as good as him , use this script 


Credits : Inspired -as always- helped me :^)

Maxel for  mappos (porting old bol stuff to gos , ty)

Change log :

20/07 release
21/07 fixxed menu
21/07 added E stun drawings
21/07 added damage prediction (says how many AA you need)
24/07 fixxed antigapclose
27/07 perfect calculation on AAs
28/07 updated for the new menu
29/07 fixxed FPS drops and W related crash
30/07 Added AUTOE 
11/08 added recall tracket walltubmel and random stuff leeched

  • 34

#12562 Simple Scripts Version 2.3.0 "Heimer Updated For New INSPIRED" http...

Posted by Zypppy on 07 August 2015 - 03:55 PM


















Most of the credits goes to :

and Ofc for others that helped me


  • 34

#78198 Zero to Scripter - An Informative Guide

Posted by Viridian on 08 September 2016 - 07:19 PM



           Hey guys! It is your friendly neighborhood helpful person here, Viridian. I decided I'd make another guide; but this time, focusing on two things -- clearing up issues and misunderstandings that newer people are experiencing and how to become a great scripter! I'll be trying to make this guide as informative and helpful as possible so that a lot of you can benefit from it. =)


Part 1 - The Basics


Since many new people are joining Gaming on Steroids, I've decided to throw together a quick guide for the curious on how to easily install scripts on their Loader. Considering that a large majority of people can easily download the Loader, I'll leave that part out.


First of all, you should obviously log into your Loader to access your account. From there, you should be greeted with this screen:




As you are able to see, there is a "Scripts" tab. That's where most of the stuff will be happening. In order to install scripts onto your Loader, you will need to get the raw GitHub link from the developer's directory. You will need to right-click the white space and click this button:



After that, you will have to paste the raw GitHub link. If you're still wondering how to get this 'raw GitHub link' I'm talking about:


Proceed to click on the "GitHub" button that is present on all the scripts present in the Script Database. Keep in mind that some links do NOT take you to the GitHub, but give an error! This can be resolved by searching the developer's name and "GitHub" behind their name in Google.


A small note: You do not necessarily have to do this with all scripts. Some scripts install right away just by clicking the handy-dandy "Install" button, but I noticed that quite a few of them do not work! So this is the second-easiest way to do it, should the regular installation process go sour.


Part 2 - Searching the right script for YOU!


I'm not gonna dwell on this part for too long, but say you've managed to get your Loader working and learned how to install some scripts. And now you wonder; what script should I use? At the moment, there's a wide variety of scripts available for your choosing with a few clicks of your mouse. It's simple! Although the choice between a wide variety of scripts might be a bit more challenging for you.


I would recommend you to head over to the Script Database and proceed to go to the "Orbwalker" and "Evade" tabs. There, you will find two of your most essential scripts; an orbwalker and an evasion script. Should you not want one of those, that's fine -- you can skip those if you so please. There is a built-in Orbwalker chooser when you enter a game, so you might not need to install an Orbwalker yourself!




Click on either of those two in whichever order you please and download the top-rated scripts. (They're the best at the moment! In my opinion, atleast.) Either by the GitHub method or the regular Install button, if that works for you. You might also want to check out the Awareness and Automation tab.


After that, you have the liberty to search a script for a champion of your choosing! Quite a lot of champions have a script, but there are a few which do not have one made for them yet; however, some champion scripts might be in a developer's GitHub but NOT on the Script Database. So, if you're wanting to get a script for a champion that doesn't seem to have one, start searching! You might get lucky.


Now that you're all set up with champion scripts and utility, it's time to get going into a few custom games to check out if they are really working. By pressing your left Shift key, you open your script menu; the hub for all your scripts. You will want to edit some stuff here if you're not pleased with your current experience. For example -- your orbwalker might have a humanizer activated or too much movement delay. You can easily edit it by just pressing left Shift and going to your Orbwalker to edit the values!


That's the rundown for installing and editing your scripts. Now, onwards to the next part.


Part 3 - SBTW?


A crucial thing to keep in mind is to NOT rely on your script. the last thing you want to do is to rely on your spacebar key and go in, just to be faced with a massive amount of crowd-control and die alone, followed by your team flaming you. How to prevent this is pretty easy!


It all relies on YOU. You need to take action when you see fit and not let your script do everything for you. See it as a very handy assistant; even if you can easily wreck face by just pressing spacebar, many things can go wrong which can result in a missed kill or death.


Awareness is important. While there are awareness scripts that can enhance your gameplay to notify you on things like ward placements and such, it does not mean that you have it all under control. You should regularly ward and keep an eye out; this is a given for ANY player in League of Legends, and a script can't just predict whenever someone is gonna jump out of that bush and kill you.


So here's a quick run-down of what I said -- do not let your script do all the work and make sure to make your own decisions and plays. Your spacebar is not a key to instant victory! Make sure that you always keep an eye out on the mini-map and other lanes. It's important.


This was a quick little piece of advice I wanted to share with all you fellow fanatics! I hope you will make some use out of this.



Common Misunderstandings and Mistakes


For the newer users out here -- this will be the part of the thread where you should keep your eyes peeled. I'll be explaining a few of your misunderstandings and mistakes that you might make (or have already made) during your stay at Gaming on Steroids. I'm not trying to ridicule you out there who have made them! This is just a simple way to help you all.


Don't ask for help in the shoutbox.


Well, it's not exactly forbidden by any means, but begging for help when the issue can be easily resolved by looking at a few threads in the Support section is a bit dumb. No offense, though.


A very helpful thread made by a Developer called Zwei made this informative thread which will help you with (most) of your issues. It can be found in this section with the name "GoS BASIC TROUBLESHOOTING GUIDE". If your quick ask on the shoutbox didn't get an answer, you know where to head next time.



Click here for the thread!


If your issue can't be resolved via the support threads, join the live support Discord.


If you're ever encountering more issues and can't fix it just by making a thread and receiving a fix from a Support. You can always join the live Discord channel. There are Supports that are willing to help you by text or voice.


Give developers feedback!


Developers appreciate constructive feedback a lot, so don't just post things like "bad script" on their thread. Of course, if no one were to give feedback on their scripts, there would be no motivation to improve them which would mean no scripts. Don't forget to leave an up- or downvote depending on how their script plays. But, before you do so, give constructive feedback!


Final - Conclusion


This is my goodbye to you all who have managed to read through all the walls of text. I've put some images and gifs in for you all so that it would be a bit less boring! I put about an hour into it and I must say I'm pretty happy with how it turned out. Obviously, I do hope it helped you all with some issues!


Of course, you can send me a PM if you need any help -- because I'm here to do so; help! I'm always up for a chat, too.



P.S: Don't forget to hit that upvote if you think that this thread was helpful!

  • 32