Greasy Fork is available in English.

GOTA Extender

Game of Thrones Ascent Extender

Panayot Ivanov
21 6 4
WTFPL (more at


This script integrates itself in the game user interface (UI) and exposes several options at user disposal for direct tweaking.


Since the script itself cannot clean the values kept in your local database you should delegate this to your extension (either Tampermonkey or Greasemonkey) do it by deleting and re-installing this script. It'll fully function without this thou, so it's up to you (if you're experiencing any troubles - try turning it off and on again, that's a rule).

After a script update you should reload the game several times (especially if you have local changes) for the extender to work.

Full changelog


- Fixes fixes:
- Character display dialog has been updated
- Train all feature has been fixed
- Disable building tooltips has been fixed
- SqLite option has been removed
- Various visual improvements were added

- Find gift codes:
In the shop, in the offer code dialog after a small delay a button will be presented that searches for active special offer codes to redeem. The extender will search through the range of offers given and save the last checked offer, so you won't have to go through all of them again.

- SQLite only (failed testing):
Since this option is doing more harm than good it is now considered as failed after test period and has been removed.

Use this option if you have many accounts and you want to differentiate the settings for each one completely. With this option checked, all your accounts settings will be stored locally, separately.

- pvp & ava delays:
Apply random delay when sending all sworn swords against a player or alliance. Delay will vary between half a second and half of the specified base delay from options. (e.g. if you specified 10s base delay it will be a delay between 0.5s and 5s)

- initialization integrated:
-- integrated with game loading
-- load after the game has loaded
-- fixed bug, regardless of error - clear screen

- more options:
-- control over quartermaster
-- control over send all action for bruting
-- control over AvA send all, option to send from all or current subregion
-- you can now hide locked buildings from the buildings submenu from options

- bruting improvement:
Now, if you send all your sworn swords on adventures using the 'Selected option' the extender will save your choice of attack and then if the option is left unchanged until you decide to brute all (or custom) sworn swords it will pick up that stored action and brute with it.

- queue bugfixin:
-- production queue is synced with the server before undergoing any speeding up
-- production speed up is now an option that you can turn off from options
-- if chosen to speed up, the queue delay will be applied after the 5 minutes of free speed up time is reached
(e.g. if you set you queue delay to 4 seconds, it'll try to speed up at 4 minutes and 56 seconds)

NOTE: I hope this resolves the spending gold issue, since now the data is coming from the server. Downside is now the timer will freeze when the queuing function kicks in, leaving your building with a frozen timer. The building will still complete production after that time, it is only visually frozen.

- initialization:
-- you can now see the progress of initialization and why it failed (if it failed :)

- extender log:
-- integrated log of (for now) Favors claimed, daily rewards, adventures and quartermaster
-- can configure log level of the above mentioned
-- can now filter the log by last hour/day/week
-- can output the log as enhanced text also

To be short here the extender will log items and their quantity that you've won and present it back to you along with info from where you won them and at what moment in time. If the log sees an item being logged that is already in the log it will accumulate it. So you don't have 1320 wood entries you have one with 1320 quantity. This way thou, the extender cannot keep track of the time and from where you logged it, so it'll say that it's from ENDEAVORS and it's ACCUMULATED. You can test with bruting.

- register menu command:
-- CLEAN: it simply cleans your storages. The queue, bossFights and the log are currently held there so you'll lose them
-- use if experiencing bugs or malfunctions among version switching

- production queue:
The queue is now accessible among buildings via a dedicated tab. The tab will display only the enqueued items for the current building and give you an option to clear all items for this building or simply delete an entry by clicking it. In the options there's also a Clear button added which purges the queue. (There is a bug with appending the queue tab sometimes, but I cannot isolate the scenario. Working fix is to reload if you don't see the queue tab)

- bugfixes & improvements:
-- lastSeenTimestamp prevented the list from scrolling to bottom
-- improved visualization of items everywhere; fixed some small offset problems

- auto-collect:
-- will now collect on initialization and when you change the interval immediately. This ensures you're always cashed up

- default modifiers:
-- for new sworn swords this would be taken into account when there is not a modifier set

- train all feature (in testing):
-- in the Bruting tab when you click on the question mark button a list with all your sworn swords will appear.
-- sworn swords with available training points will appear in green
-- you can train their modifier or stats with the drop down list
-- click train All to train all whenever you're ready


- world event manager (obsolete):
-- because that's in testing to enable this you should change the value of the featureTesting to true in options OR run this command from console (which basically does the same)

extender.option('featureTesting', true);

-- that won't work if you run it from some fancy place like facebook or disruptobeam's site for example, so use first method

Now this can spam the shit out of any world event. Go to the tab, assign your sworn swords and save the tab. The extender will repeat the world event until forever. It'll self initialize on load and check if you have any fighters on the world event, then analyze if they've finished and relaunch them again, if they haven't finished it'll wait till they're finished. This feature currently DOES NOT support weakness attacks, cuz I found about them yesterday.

- last seen timestamp:
Last seen time status for a target player will be appended to the following screens: ptp - incoming / outgoing, when you initiate a pvp in the choose action dialog after a few seconds the extender will replace the title with the last seen time of the player you're fighting.

The last seen timestamp is the last interaction from a player with the game, so when deciding whether or not to attack the player - this is very helpful. The ocde is taken from Nolana Kane's GOTA Improvements.

- dozen of bugfixes:
-- on production, regarding data kept, and production onload
-- set base log level (currently for favors and quartermaster only)
-- stop pvp if you made too much hostile attacks against a player
-- and lots' more, see changeset details if you're uber-curious

- auto boss challenger (testing):
With the latest changes the boss challenges (can be now more than one) should persist after a page reload and even after browser closing. When the module responsible for the challenges initiates it sees the stored quests (these that you have began) and starts fighting again on your behalf.

- client log :
In the extender options now you have a log tab at your disposal. Since after the latest update virtually anything can be made persistable and the log will also persist during your current session (that includes reloads, but it gets cleared with the browser closing or if you navigate outside the game domain). Currently it logs daily claims, quartermaster rewards, favors and bruting. Control over what's logged will be implemented soon along with (hopefully) a log of pvp and ava outcomes.

- claim favors :
Prior to initializing the extender will try to claim the favors sent from your friends. The received favors are logged in a tab in the extender options during your current session.

- bruting (out of testing) : This feature repeats the last done adventure of a sworn sword instantly
-- bruting terminates when a certain amount of wounds have been reached.
-- after adventure bruting you can choose either to terminate bruting or to adjust it's timer in which case the extender will wait for the sworn sword to heal from the damage and repeat the bruting process again.
-- if you've chosen to adjust the timer you can cancel it by pressing ESC key.
-- you can terminate the bruting process at any given point with the ESC key.
-- set specific sworn sword for bruting or brute them all (the sworn swords that were not on adventure will be skipped)
-- for your convenience the brute button has been integrated in the user interface when you view results from an adventure (and if the result is successful). Note that the button will appear with a few seconds delay.
-- while using bruting every adventure is done instantly.

- automated quartermaster :
When extender initializes it will perform the regular checks to obtain your daily reward and quartermaster key. If you have enough prestige it will claim your bonus key also. Then it will open boxes from the quartermaster to claim your rewards until all your keys are exhausted. NOTE: This happens only on page load, when the extender initializes and it is done automatically. Write in the feedback section if you want control over this.

- modules (developers remarks) :
Currently boss challenges and the production queue are separated into independent modules (the production even separated into different file). They are responsible for persisting themselves and initializing on load. Any change to the persistable object should be saved immediately in case shit hits the fan.


- auto boss challenger :
This handy feature will do boss challenges for you. Basically if you have this checked from options wherever you open a boss challenge and click on an action, the extender takes on. It'll remember your action fire remaining actions and wait until new are available then repeat again until the challenge is finished. If you wish to change your tactic, just click on another attacking option and the extender will loop and attack with it every 15 minutes again (exhausting all of your 5 actions).

- source control check :
This will check for page function updates (yes, dusruptorbeam also updates it's functions). Follow the instructions and review the console log for details when it's done. Be sure to check regularly for these updates.

- screen darkens (hints & tips) :
If after a dialog or some action that darkens your screen and after the dialog has closed the dark area persist and you can't do anything hit the ESC key. NOTE: this happens regardless of the extender.

- send all button context :
In the options you can specify for the extender to do different attacks when this button is clicked. You can send only friendly attacks (which means your sworn swords with best attack to be either aid, bribe or barter), hostile attacks (which are sworn swords with all other specialities: fight, harass, spy, sabotage, steal and swindle). You could also group sworn swords by their specialities (Send all protectors, saboteurs or charlatans etc.) or you could group them by attack type (Traders, Battlers, Intrigue only, you get the idea...). There are also two other useful configurations for the button: Selected action and Throw everything. The latter will send ALL your sworn swords with their BEST attack against the player. Using the selected action option however you can send ALL your sworn swords with the currently selected action in the dialog with the button. Note here that this requires a selection first and with opening the dialog, fight is selected by default.

- send all :
-- adventures : choose an adventure, the button will appear in the dialog right next to the 'Back' button.
-- pvp : target a player, after a few seconds the button will appear in the dialog. *
-- ava : target an alliance, visit their camp, click on single - Send all appears. **
-- if any error arises while sending a sworn sword, the sending chain will fail and others won't be sent.
-- the extender will notify you, if you have insufficient command points and break the chain.

* NOTE: You can send only 3 hostile attacks against a specific player for 24 hours and it will raise an error from the server saying "too_many_attacks" afterwards.
** NOTE: This will send all your sworn swords from your CURRENT camp. (Expect and option to send all sworn swords from the current region soon.)

- extender filter :
In the shop (as a new game feature) you can now filter shop items by stats. The extender injects it's own filter, which criterias are at your disposal from the options.

- various :
Fixed dozen of bugs.


- Tampermonkey
The script should now be able to run on Chrome's Tampermonkey also!

- sell bulk option
In the shop where you sell items, when you click on an item (to the left) and view it's stats (to the right) a small box and a button will appear beneath the stat view after a few seconds. Now since the game doesn't really allow you to sell your shit bulk (sell many things with 1 request) this function sends as many requests as the amount to sell, so as always - use with caution. Let's say for an average response time of 500 milliseconds, which is half a second, you'll need an average of 8 ~ 10 minutes to sell 1000 of some item and that counts if you have a solid internet connection. Aside from that you should know that the server becomes irresponsive during that time, which means any request, such as adventures sending, shop, pvp, quests etc. will not be served, but QUEUED after the selling is complete. Most of the time such requests will summon the spinner and it'll time out your client, asking you to reload, which will surely interrupt the selling process.

- unlocked quests (patched)
Do quests regarding of the time of day or fealty. Currently the warning will popup, but the script will disregard it and open the action dialog. Note that you still cannot do quests that are for level higher than yours, which isn't recommended even if you could: the dialog will appear, but the defender stats will be empty and the adventure itself will be undefined, so in short, don't do adventures which require higher level than yours. No other peculiarity observed with this feature.

Yep, unfortunately starting locked missions is now patched. Server responds with {:error=>"adventure invalid"} which cannot be parsed by neither me nor the game so you won't even get notified.

You will be able to open the dialog where you send your sworn sword, but clicking on go will continue to throw the above mentioned error in the console. I only leave this here with the hope that it could work again someday.

- 4 wounds :
The script will prevent an adventure if your sworn sword is about to die. Note that this is valid only for adventures. Quests, adventure parties and pvp are not included in this feature.

- queue changes :
If the auto-reload feature is enabled, before a reload is done it will saves the queue for using after you reloaded. This doesn't mean the queue will be persisted if you manually reload. If you wish to persist the queue on a manual reload, go to options on the queue tab and save. The queue will be saved alongside the options selected.

- finish all button :
Integrated in the extender's options main tab. Useful when you left the game and a lot of buildings finished production. Fires finish on all buildings one by one. Extender will notify when it has finished doing the task.

- options : Options are now separated in tabs. Options are saved for the CURRENT tab ONLY.
-- specify the base delay time for any functionality that is implemented with a waiting time.
-- debug mode and - console logging and information for the curious. *
-- reloading saves the queue and reloads the page on the specified interval. 0 disables this feature.
-- collect interval in minutes.
-- never spend gold option will disable ALL gold spending.
-- do tooltips on buildings (self explanatory)
-- queue delay between speeding up, finishing and picking up new item (in seconds).
-- sort player inventory and shop items by two criterias **

* NOTE: this feature is disabled by default. If you have any problems with the extender, or if it doesn't show up entirely, you can enable debug mode by clicking the greasemonkey icon on the top right of your browser and then selecting DEBUG from User Script Commands...
** NOTE: shop items will always be sorted by gold, descending. Items may appear to be sorted incorrectly when sorting on silver. That's because some items have not only gold, but also a price in silver, although you cannot purchase them with silver only.

- search alliance :
A basic search box is embedded in your alliance war map, which can search alliance by keywords and then displays the results in the grid bellow. No rank, victory points or diplomacy stance are displayed (you can view them when you click Go), but it can inform you of the alliance members count.

- enhanced player to player dialog :
On the incoming tab a click on a players name will take you to his character's dialog. A click on the alliance (if any) will take you to the alliance dialog (I don't know if this is a bug or something, but the alliance dialog always displays for me 0 members. NOTE: that this is not caused from the extender - yep that was a bug, they fixed it)

- enhanced character dialog :
In the characters dialog now you can see right from the characters portrait his battle, intrigue and trade stats as well as his level. An improved function will now attempt to view the stats of his equipment, and the stats of equipment all around the game that previously could not be displayed with item stats mini view hopefully now will.

- send all on adventures :
When you choose action for a sworn sword on an adventure now, a button labelled Send all will be shown after a small delay. This button will send ALL of your AVAILABLE sworn sword on this particular adventure, taking their preferred attack or highest stat.

- permanent items tab :
An additional tab in your Storage inventory will keep track of you permanent items. ANY items NOT listed there will NOT PERSIST through reincarnation or restart.

- claim daily :
Is now more robust. It claims the quartermaster key also and closes the welcome screen also.

- code (developers remarks) :
Code is separated into several files. The extender now downloads alongside with the main script custom script, which injects and overrides page functions with custom ones, constants, which is html and css needed for the extender to function and style itself properly, auxiliary, functions injected on the page, but written completely by me, jquery the popular javascript library for manipulating the DOM and SuperValues, which is a library that extends the local storage to store arrays and objects (and even functions!) also.

- user script commands :
The script registers two options. For instant transition to debug mode, which is usefull if the extender fails to initialize or if there is some problem and a home button, which redirects to the extender greasyfork page.

- observable (developers remarks) :
The script injects a DOM element used for communication between things that happen on the page and things that happen in the script. It can be used with the extender javascript variable. Several options are available: .command("name", [args]); for a manual command, .option("name", value); for changing extender options, .lastCommand(); for outputting the last used command.

- web service interruption (developers remarks) :
Can't establish a connection to the server at 
The connection to ws:// 
was interrupted while the page was loading.
This is observed a lot in the game. As to the current moment I cannot establish with certainty if the extender has any influence of the recurrence of this error.

v3.x and below

- collect :
Auto collect money on a cycle (configurable from options). Closes dialog after collecting.

- queue :
-- queue items for production.
-- you now can queue not only 1 but also 5 items with one button click.
-- you can now queue upgrades.
-- instant speed up of 5 minutes (which is free).
-- queue is visualized in the extender options as a table with id, item, icon and production building.
-- tracks if superior materials are required (configurable from options).
-- you can remove items from the queue by clicking on their respective row in the table from extender's options.
-- attempts production of the queue after a certain amount of time (configurable from options).
-- attempt immediate production after item is enqueued (in case the building is idle).

- auto finish :
Finishes up automatically every build production or upgrade.

- claim daily (testing):
Collects daily reward on initialization. (function visually turns gold and silver amount into undefined; collect to update them).

- clean console (developers remarks):
This might not be the best end-user experience, but for developers it would be a breeze: no console logging from the game, only from the extender and only in debug mode.

- options :
-- auto collect interval (self explanatory).
-- use superior materials for production.
-- production queue table, click on a row to delete the entry from the queue.
-- debug alert to enter debug mode.
-- queue delay between finishing and grabbing a new item from the queue.
-- queue interval to check and attempt production (ensures no dropping of elements).
-- reset options to return to default values.
-- all options are persisted in a local database.

- various :
Improved performance, code trim, styling of elements and various bug fixes.

Known issues:

- See the forum topic dedicated to bugs here. Note that most of them are fixed.

- Production spends gold! Workaround:
-- set bigger queue delay from options.
-- check the extender never spend gold option.
-- enable the reloading feature and set it to low value (e.g. 1 hour or similar, especially if the extender is unattended).
-- see more details here.

- Various bugs including certain test scenarios.
- Please provide feedback for bugs.