Code Monkey home page Code Monkey logo

sidekick's Introduction

Sidekick

Open Website Download

A Path of Exile companion tool. Price check items, check for dangerous map modifiers, and more!

Website

Development

We accept most PR and ideas. If you want a feature included, create an issue and we will discuss it.

We are also available on Discord.

Notice

This product isn't affiliated with or endorsed by Grinding Gear Games in any way.

Thanks

Community

Contributors, Path of Exile Trade, poe.ninja, poeprices.info, poewiki.net, POE-TradeMacro (Original Idea)

Technology

MudBlazor, FluentAssertions, Electron, Electron.NET, NeatInput, GregsStack.InputSimulatorStandard, TextCopy

sidekick's People

Contributors

amp0 avatar cmos12345 avatar dandrew-xx avatar domialex avatar eugenio-santos avatar flarsson87 avatar jadedcricket avatar joeyvancsz avatar jonstelly avatar jovanmhn avatar justcallmemarks avatar kai-oswald avatar kamilponiewierski avatar lemicin avatar meichhoff avatar mrdanoak avatar mwardrop avatar mwardropappdirect avatar newbrict avatar onurtnrkl avatar peteypii avatar pobiega avatar ruriryan avatar trimbe avatar vestakip avatar vonkez avatar zalhera avatar zamoa avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

sidekick's Issues

Blight-Ravaged Maps

Introduction

In Scourge league, Blight-Ravaged maps are added. Sidekick needs to be able to parse them.

Tasks

  • Parse Blight-Ravaged maps
  • Apply the trade filter to Blight-Ravaged

[Cheatsheets] Update cheatsheet information

Introduction

Our cheatsheets are up to date with the Ritual league information. We need to review the cheatsheets with the latest version of the game.

Cheatsheets review

  • Betrayal
  • Blight
  • Delve
  • Heist
  • Incursion
  • Metamorph

Multi language Poe.ninja support

Restore functionality that was removed in commit b787617

If the translations are back. We need to restore the functionality, while also falling back to english only if translations are missing.

Clean up legacy translations

Tasks

  • Remove cheatsheet translations
  • Add a warning next to the settings when the chosen language is not fully translated

Add Gwennen hotkey filter

Add a setting to keep a regex for Gwennen
Add a hotkey that can search automatically while in her gamble window

Maybe we could make this generic for all search boxes, like chat commands.

Error in ViewLocator

Hard to reproduce, but when the error happens all the keybinds are broken and the error page doesn't function properly.

[Parser] Parse Item Class

This branch already includes most of the code to parse item class. We still have some issues to figure out.

The class string values have changed since they were initially implemented. Most of the class names now use the plural form. For exemple, the game used to output Belt; this has now changed to Belts.

Rare item in korean is breaking the trade page.

아이템 종류: 허리띠
아이템 희귀도: 희귀
천공인 유대
가죽 허리띠
--------
요구사항:
레벨: 67
--------
아이템 레벨: 86
--------
생명력 최대치 +25 (implicit)
--------
능력치 12% 증가
최대 생명력 9% 증가
마나 최대치 +60
냉기 저항 +9%
적에게 적용되는 기절 지속시간 27% 증가
--------
사냥꾼 아이템
--------
메모: ~price 15 chaos

"Open Search" feature puts the game into Fullscreen

When I hit the shortcut for the "Open Search" feature, first it doesn't seems to do anything, but it also put my game in Fullscreen (the Fullscreen mode in the game options), no matter what was my setting at that moment (Windows fullscreen or windowed)

Here are the logs relevant to one of my try using the feature :

2021-10-27 09:25:24.134 -04:00 [INF] Path of Exile focused.
2021-10-27 09:25:24.134 -04:00 [DBG] [Keybind] Unregistered keybinds
2021-10-27 09:25:24.135 -04:00 [DBG] [Keybind] Registered keybinds
2021-10-27 09:25:27.758 -04:00 [DBG] [Keyboard] Sending Copy
2021-10-27 09:25:27.922 -04:00 [DBG] [Keyboard] Sending Ctrl+F
2021-10-27 09:25:27.924 -04:00 [DBG] [Keyboard] Sending Ctrl+A
2021-10-27 09:25:27.925 -04:00 [DBG] [Keyboard] Sending Paste
2021-10-27 09:25:27.926 -04:00 [DBG] [Keyboard] Sending Enter
2021-10-27 09:25:33.784 -04:00 [DBG] [Keyboard] Sending Esc
2021-10-27 09:25:34.231 -04:00 [DBG] [Keyboard] Sending Esc
2021-10-27 09:25:49.491 -04:00 [INF] Path of Exile minimized.
2021-10-27 09:25:49.491 -04:00 [DBG] [Keybind] Unregistered keybinds

I also noticed that it seems to try to focus the search bar in the stash (when it's opened). Maybe there's a conflict with the Ctrl + F feature ?

Version 2.2.4
PoE in Windowed fullscreen or Windowed, both Vulkan or DX

[Parser] Update and fix parser issues

Introduction

This task encompasses some parser issues we had documented in our previous repository. We have grouped them in one issue here.

Tasks

  • Make sure the Atzoatl temple maps are parsable and price checkable
  • Error parsing unidentified influenced item
Item Class: One Hand Maces
Rarity: Rare
Ornate Mace
--------
One Handed Mace
Physical Damage: 53-67
Critical Strike Chance: 5.00%
Attacks per Second: 1.20
Weapon Range: 11
--------
Requirements:
Strength: 161
--------
Sockets: R-R-R 
--------
Item Level: 76
--------
15% reduced Enemy Stun Threshold (implicit)
--------
Unidentified
--------
Hunter Item
  • Rare Blighted Map not detected as blighted
Item Class: Maps
Rarity: Rare
Nightmare Spires
Blighted Spider Forest Map
--------
Map Tier: 2
Atlas Region: Lex Proxima
Item Quantity: +55% (augmented)
Item Rarity: +32% (augmented)
Monster Pack Size: +21% (augmented)
--------
Item Level: 69
--------
Area is infested with Fungal Growths
Map's Item Quantity Modifiers also affect Blight Chest count at 20% value (implicit)
Natural inhabitants of this area have been removed (implicit)
--------
Monsters deal 54% extra Physical Damage as Lightning
Unique Boss has 25% increased Life
Unique Boss has 45% increased Area of Effect
Slaying Enemies close together has a 13% chance to attract monsters from Beyond
Players have 20% less Recovery Rate of Life and Energy Shield
--------
Travel to this Map by using it in a personal Map Device. Maps can only be used once.
  • Can't price check organs
Item Class: Metamorph Sample
Rarity: Unique
Portentia, the Foul's Heart
--------
Uses: Blood Bubble
--------
Item Level: 79
--------
Drops additional Rare Jewellery
Drops additional Currency Items
Drops additional Currency Items
Drops additional Rare Weapons
Drops additional Rare Armour
--------
Combine this with four other different samples in Tane's Laboratory.
  • Make sure the influences are still parsable

Add support for Trigger skills

The wording is different from the api, the parser can't support it.
Example:

{
    "id": "explicit.stat_3079007202",
    "text": "#% chance to Trigger a Socketed Spell on Using a Skill, with a 8 second Cooldown\nSpells Triggered this way have 150% more Cost",
    "type": "explicit"
},
--------
Trigger a Socketed Spell when you Use a Skill, with a 8 second Cooldown (crafted)
Spells Triggered this way have 150% more Cost (crafted)

Make sure the parser works in foreign languages

From the 3.17 patch notes:

The Advanced Mod Descriptions of an item will now display the English name of base item types and Unique items when playing Path of Exile in languages other than English.

Crash during start with completely fresh install

This is the log I was able to pull
With em, we get this lovely error :)
Sidekick.Modules.Initialization.Pages.Initialization[0] Index was out of range. Must be non-negative and less than the size of the collection. (Parameter 'index')

Electron Socket started on port 8000 at 127.0.0.1
ASP.NET Core Port: 8001
stdout: Use Electron Port: 8000

stdout: info: Microsoft.Hosting.Lifetime[0]
      Now listening on: http://localhost:8001

stdout: ASP.NET Core host has fully started.

stdout: info: Microsoft.Hosting.Lifetime[0]
      Application started. Press Ctrl+C to shut down.
info: Microsoft.Hosting.Lifetime[0]
      Hosting environment: Production
info: Microsoft.Hosting.Lifetime[0]
      Content root path: C:\Users\marti\AppData\Local\Programs\sidekick\resources\bin\

ASP.NET Core Application connected... global.electronsocket SvxYAa6adIQWAet1AAAA 2022-02-09T20:59:56.929Z
stdout: BridgeConnector connected!

(node:11792) electron: The default of contextIsolation is deprecated and will be changing from false to true in a future release of Electron.  See https://github.com/electron/electron/issues/23506 for more information
(node:11792) electron: The default of contextIsolation is deprecated and will be changing from false to true in a future release of Electron.  See https://github.com/electron/electron/issues/23506 for more information
stdout: info: System.Net.Http.HttpClient.Default.LogicalHandler[100]
      Start processing HTTP request GET https://api.github.com/repos/Sidekick-Poe/Sidekick/releases
info: System.Net.Http.HttpClient.Default.ClientHandler[100]
      Sending HTTP request GET https://api.github.com/repos/Sidekick-Poe/Sidekick/releases

stdout: info: System.Net.Http.HttpClient.Default.ClientHandler[101]
      Received HTTP response headers after 415.3659ms - 200

stdout: info: System.Net.Http.HttpClient.Default.LogicalHandler[101]
      End processing HTTP request after 421.8255ms - 200

stdout: info: Sidekick.Apis.GitHub.GitHubClient[0]
      [Updater] Found v2.4.0 as latest version on GitHub.

stdout: info: System.Net.Http.HttpClient.Default.LogicalHandler[100]
      Start processing HTTP request GET https://www.pathofexile.com/api/trade/data/leagues

stdout: info: System.Net.Http.HttpClient.Default.ClientHandler[100]
      Sending HTTP request GET https://www.pathofexile.com/api/trade/data/leagues

stdout: info: System.Net.Http.HttpClient.Default.ClientHandler[101]
      Received HTTP response headers after 260.9623ms - 200
info: System.Net.Http.HttpClient.Default.LogicalHandler[101]
      End processing HTTP request after 261.198ms - 200

stdout: fail: Sidekick.Modules.Initialization.Pages.Initialization[0]
      Index was out of range. Must be non-negative and less than the size of the collection. (Parameter 'index')

Changing theme to Transparent throws an exception after restart

After changing the theme to Transparent in the settings and reloading/restarting I receive the following exception :

Unhandled exception rendering component: invalid color format System.ArgumentException: invalid color format at MudBlazor.Utilities.MudColor..ctor(String value) at MudBlazor.Utilities.MudColor.op_Implicit(String input) at Sidekick.Pages.App.GetTransparentPalette() in C:\Users\foo\source\repos\Sidekick\src\Sidekick\Pages\App.razor:line 149 at Sidekick.Pages.App.GetPalette() in C:\Users\foo\source\repos\Sidekick\src\Sidekick\Pages\App.razor:line 87 at Sidekick.Pages.App.OnInitialized() in C:\Users\foo\source\repos\Sidekick\src\Sidekick\Pages\App.razor:line 39 at Microsoft.AspNetCore.Components.ComponentBase.RunInitAndSetParametersAsync() fail: Microsoft.AspNetCore.Components.Server.Circuits.CircuitHost[111] Unhandled exception in circuit 'DTafw1X6mLuCCm22jDrpVdc1PKxgTNn4qFUXYls3x_o'. System.ArgumentException: invalid color format at MudBlazor.Utilities.MudColor..ctor(String value) at MudBlazor.Utilities.MudColor.op_Implicit(String input) at Sidekick.Pages.App.GetTransparentPalette() in C:\Users\foo\source\repos\Sidekick\src\Sidekick\Pages\App.razor:line 149 at Sidekick.Pages.App.GetPalette() in C:\Users\foo\source\repos\Sidekick\src\Sidekick\Pages\App.razor:line 87 at Sidekick.Pages.App.OnInitialized() in C:\Users\foo\source\repos\Sidekick\src\Sidekick\Pages\App.razor:line 39 at Microsoft.AspNetCore.Components.ComponentBase.RunInitAndSetParametersAsync()

Can not open expand filters

Opening check price with ctrl+D doesn't make error.
But when I click "EXPAND FILTERS", an error occurs
I cannot close the error window with ESC or clicking "close window". alt + f4 only works
sidekick_error

Some combined modifiers are not supported

Data structure is different from the API so we can't parse something like this:

Added Small Passive Skills grant: Staff Attacks deal 12% increased Damage with Hits and Ailments (enchant)
Added Small Passive Skills grant: Mace or Sceptre Attacks deal 12% increased Damage with Hits and Ailments (enchant)
option": {
	"options": [
		{
		"id": 1,
		"text": "Axe Attacks deal 12% increased Damage with Hits and Ailments\nSword Attacks deal 12% increased Damage with Hits and Ailments"
		},
		{
		"id": 2,
		"text": "Staff Attacks deal 12% increased Damage with Hits and Ailments\nMace or Sceptre Attacks deal 12% increased Damage with Hits and Ailments"
		},
...

Basic items price check is crashing sidekick

When I try to price check (ctrl+d) on scarabs and other fragment types, it always causes an error screen and sidekick is unresponsive afterwards until I exit and restart it.

https://gyazo.com/c8747dc8fbe6d68597626d3d08c7bba0

Link of example ^^. I'm not sure what the issue is, maybe I need to reinstall it in a new directory? I don't see this issue listed in the recently closed ones or currently open, yet it's a pretty fundamental problem.

Add Japanese

Now that Japanese has been officially added, I would like to ask for Japanese language support!
Thank you very much.

[Map] Better user experience in the settings

Summary

@PeteyPii Did an amazing job getting this feature started . We wanted the feature for version 1.0, but we want to make it better in a future version. If you want to do the adjustments yourself, just reply here and we will assign it to you :) .

Goals

Add a tab in the settings for the map info view. Inside that tab, there would be a list of checkboxes with different pre-determined list of dangerous mods. If the checkbox is active, then we check if that mod is found on the map. The regex would be located in the LanguageProvider object so that they can be translated. This will be cleaner for the end user, instead of asking them to manipulate a regex.

Tasks

  • Add a tab in the settings view for Map Info settings.
  • Show checkboxes for each dangerous mod.
  • Save the state of the checkboxes in the settings. By default, all dangerous mod should be checked.
  • Determine if a user-selected dangerous mod is listed in the map.
  • Use and store language-specific regex in the Language Provider. For languages that we do not have the translation, use '__TranslationRequired__'.

View sizes are not saved

When resizing some views, the size should be saved. This is no longer the case. It always resets to its default size.

Logbooks cannot be parsed

Item Class: Expedition Logbooks
Rarity: Magic
Chaining Expedition Logbook
--------
Item Quantity: +16% (augmented)
Item Rarity: +9% (augmented)
Monster Pack Size: +6% (augmented)
Area Level: 69
--------
Item Level: 69
--------
Rotting Temple
Druids of the Broken Circle
32% increased quantity of Artifacts dropped by Monsters (implicit)
35% increased Explosive Radius (implicit)
Area contains an additional Underground Area (implicit)
--------
Sarn Slums
Druids of the Broken Circle
29% increased Explosive Radius (implicit)
Area contains 17% increased number of Monster Markers (implicit)
Area contains 36% increased number of Remnants (implicit)
--------
Scrublands
Order of the Chalice
Area contains 8 additional Chest Markers (implicit)
31% increased Explosive Placement Range (implicit)
Area contains 30% increased number of Monster Markers (implicit)
--------
Monsters' skills Chain 2 additional times
--------
Take this item to Dannig in your Hideout to open portals to an expedition.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.