GameSentenceMiner 2.8.42__tar.gz → 2.8.44__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (67) hide show
  1. {gamesentenceminer-2.8.42 → gamesentenceminer-2.8.44}/GameSentenceMiner/ai/ai_prompting.py +4 -1
  2. {gamesentenceminer-2.8.42 → gamesentenceminer-2.8.44}/GameSentenceMiner/gsm.py +2 -0
  3. {gamesentenceminer-2.8.42 → gamesentenceminer-2.8.44}/GameSentenceMiner/notification.py +5 -1
  4. {gamesentenceminer-2.8.42 → gamesentenceminer-2.8.44}/GameSentenceMiner/obs.py +2 -2
  5. {gamesentenceminer-2.8.42 → gamesentenceminer-2.8.44}/GameSentenceMiner/util.py +3 -3
  6. {gamesentenceminer-2.8.42 → gamesentenceminer-2.8.44}/GameSentenceMiner.egg-info/PKG-INFO +2 -2
  7. {gamesentenceminer-2.8.42 → gamesentenceminer-2.8.44}/PKG-INFO +2 -2
  8. {gamesentenceminer-2.8.42 → gamesentenceminer-2.8.44}/pyproject.toml +2 -2
  9. {gamesentenceminer-2.8.42 → gamesentenceminer-2.8.44}/GameSentenceMiner/__init__.py +0 -0
  10. {gamesentenceminer-2.8.42 → gamesentenceminer-2.8.44}/GameSentenceMiner/ai/__init__.py +0 -0
  11. {gamesentenceminer-2.8.42 → gamesentenceminer-2.8.44}/GameSentenceMiner/anki.py +0 -0
  12. {gamesentenceminer-2.8.42 → gamesentenceminer-2.8.44}/GameSentenceMiner/communication/__init__.py +0 -0
  13. {gamesentenceminer-2.8.42 → gamesentenceminer-2.8.44}/GameSentenceMiner/communication/send.py +0 -0
  14. {gamesentenceminer-2.8.42 → gamesentenceminer-2.8.44}/GameSentenceMiner/communication/websocket.py +0 -0
  15. {gamesentenceminer-2.8.42 → gamesentenceminer-2.8.44}/GameSentenceMiner/config_gui.py +0 -0
  16. {gamesentenceminer-2.8.42 → gamesentenceminer-2.8.44}/GameSentenceMiner/configuration.py +0 -0
  17. {gamesentenceminer-2.8.42 → gamesentenceminer-2.8.44}/GameSentenceMiner/downloader/Untitled_json.py +0 -0
  18. {gamesentenceminer-2.8.42 → gamesentenceminer-2.8.44}/GameSentenceMiner/downloader/__init__.py +0 -0
  19. {gamesentenceminer-2.8.42 → gamesentenceminer-2.8.44}/GameSentenceMiner/downloader/download_tools.py +0 -0
  20. {gamesentenceminer-2.8.42 → gamesentenceminer-2.8.44}/GameSentenceMiner/downloader/oneocr_dl.py +0 -0
  21. {gamesentenceminer-2.8.42 → gamesentenceminer-2.8.44}/GameSentenceMiner/electron_config.py +0 -0
  22. {gamesentenceminer-2.8.42 → gamesentenceminer-2.8.44}/GameSentenceMiner/ffmpeg.py +0 -0
  23. {gamesentenceminer-2.8.42 → gamesentenceminer-2.8.44}/GameSentenceMiner/gametext.py +0 -0
  24. {gamesentenceminer-2.8.42 → gamesentenceminer-2.8.44}/GameSentenceMiner/model.py +0 -0
  25. {gamesentenceminer-2.8.42 → gamesentenceminer-2.8.44}/GameSentenceMiner/obs_back.py +0 -0
  26. {gamesentenceminer-2.8.42 → gamesentenceminer-2.8.44}/GameSentenceMiner/ocr/__init__.py +0 -0
  27. {gamesentenceminer-2.8.42 → gamesentenceminer-2.8.44}/GameSentenceMiner/ocr/gsm_ocr_config.py +0 -0
  28. {gamesentenceminer-2.8.42 → gamesentenceminer-2.8.44}/GameSentenceMiner/ocr/ocrconfig.py +0 -0
  29. {gamesentenceminer-2.8.42 → gamesentenceminer-2.8.44}/GameSentenceMiner/ocr/owocr_area_selector.py +0 -0
  30. {gamesentenceminer-2.8.42 → gamesentenceminer-2.8.44}/GameSentenceMiner/ocr/owocr_helper.py +0 -0
  31. {gamesentenceminer-2.8.42 → gamesentenceminer-2.8.44}/GameSentenceMiner/owocr/owocr/__init__.py +0 -0
  32. {gamesentenceminer-2.8.42 → gamesentenceminer-2.8.44}/GameSentenceMiner/owocr/owocr/__main__.py +0 -0
  33. {gamesentenceminer-2.8.42 → gamesentenceminer-2.8.44}/GameSentenceMiner/owocr/owocr/config.py +0 -0
  34. {gamesentenceminer-2.8.42 → gamesentenceminer-2.8.44}/GameSentenceMiner/owocr/owocr/lens_betterproto.py +0 -0
  35. {gamesentenceminer-2.8.42 → gamesentenceminer-2.8.44}/GameSentenceMiner/owocr/owocr/ocr.py +0 -0
  36. {gamesentenceminer-2.8.42 → gamesentenceminer-2.8.44}/GameSentenceMiner/owocr/owocr/run.py +0 -0
  37. {gamesentenceminer-2.8.42 → gamesentenceminer-2.8.44}/GameSentenceMiner/owocr/owocr/screen_coordinate_picker.py +0 -0
  38. {gamesentenceminer-2.8.42 → gamesentenceminer-2.8.44}/GameSentenceMiner/package.py +0 -0
  39. {gamesentenceminer-2.8.42 → gamesentenceminer-2.8.44}/GameSentenceMiner/ss_selector.py +0 -0
  40. {gamesentenceminer-2.8.42 → gamesentenceminer-2.8.44}/GameSentenceMiner/text_log.py +0 -0
  41. {gamesentenceminer-2.8.42 → gamesentenceminer-2.8.44}/GameSentenceMiner/vad/__init__.py +0 -0
  42. {gamesentenceminer-2.8.42 → gamesentenceminer-2.8.44}/GameSentenceMiner/vad/result.py +0 -0
  43. {gamesentenceminer-2.8.42 → gamesentenceminer-2.8.44}/GameSentenceMiner/vad/silero_trim.py +0 -0
  44. {gamesentenceminer-2.8.42 → gamesentenceminer-2.8.44}/GameSentenceMiner/vad/vosk_helper.py +0 -0
  45. {gamesentenceminer-2.8.42 → gamesentenceminer-2.8.44}/GameSentenceMiner/vad/whisper_helper.py +0 -0
  46. {gamesentenceminer-2.8.42 → gamesentenceminer-2.8.44}/GameSentenceMiner/web/__init__.py +0 -0
  47. {gamesentenceminer-2.8.42 → gamesentenceminer-2.8.44}/GameSentenceMiner/web/static/__init__.py +0 -0
  48. {gamesentenceminer-2.8.42 → gamesentenceminer-2.8.44}/GameSentenceMiner/web/static/apple-touch-icon.png +0 -0
  49. {gamesentenceminer-2.8.42 → gamesentenceminer-2.8.44}/GameSentenceMiner/web/static/favicon-96x96.png +0 -0
  50. {gamesentenceminer-2.8.42 → gamesentenceminer-2.8.44}/GameSentenceMiner/web/static/favicon.ico +0 -0
  51. {gamesentenceminer-2.8.42 → gamesentenceminer-2.8.44}/GameSentenceMiner/web/static/favicon.svg +0 -0
  52. {gamesentenceminer-2.8.42 → gamesentenceminer-2.8.44}/GameSentenceMiner/web/static/site.webmanifest +0 -0
  53. {gamesentenceminer-2.8.42 → gamesentenceminer-2.8.44}/GameSentenceMiner/web/static/style.css +0 -0
  54. {gamesentenceminer-2.8.42 → gamesentenceminer-2.8.44}/GameSentenceMiner/web/static/web-app-manifest-192x192.png +0 -0
  55. {gamesentenceminer-2.8.42 → gamesentenceminer-2.8.44}/GameSentenceMiner/web/static/web-app-manifest-512x512.png +0 -0
  56. {gamesentenceminer-2.8.42 → gamesentenceminer-2.8.44}/GameSentenceMiner/web/templates/__init__.py +0 -0
  57. {gamesentenceminer-2.8.42 → gamesentenceminer-2.8.44}/GameSentenceMiner/web/templates/text_replacements.html +0 -0
  58. {gamesentenceminer-2.8.42 → gamesentenceminer-2.8.44}/GameSentenceMiner/web/templates/utility.html +0 -0
  59. {gamesentenceminer-2.8.42 → gamesentenceminer-2.8.44}/GameSentenceMiner/web/texthooking_page.py +0 -0
  60. {gamesentenceminer-2.8.42 → gamesentenceminer-2.8.44}/GameSentenceMiner.egg-info/SOURCES.txt +0 -0
  61. {gamesentenceminer-2.8.42 → gamesentenceminer-2.8.44}/GameSentenceMiner.egg-info/dependency_links.txt +0 -0
  62. {gamesentenceminer-2.8.42 → gamesentenceminer-2.8.44}/GameSentenceMiner.egg-info/entry_points.txt +0 -0
  63. {gamesentenceminer-2.8.42 → gamesentenceminer-2.8.44}/GameSentenceMiner.egg-info/requires.txt +1 -1
  64. {gamesentenceminer-2.8.42 → gamesentenceminer-2.8.44}/GameSentenceMiner.egg-info/top_level.txt +0 -0
  65. {gamesentenceminer-2.8.42 → gamesentenceminer-2.8.44}/LICENSE +0 -0
  66. {gamesentenceminer-2.8.42 → gamesentenceminer-2.8.44}/README.md +0 -0
  67. {gamesentenceminer-2.8.42 → gamesentenceminer-2.8.44}/setup.cfg +0 -0
@@ -119,7 +119,10 @@ class GeminiAI(AIManager):
119
119
  try:
120
120
  prompt = self._build_prompt(lines, sentence, current_line, game_title)
121
121
  self.logger.debug(f"Generated prompt:\n{prompt}")
122
- response = self.model.generate_content(prompt)
122
+ response = self.model.generate_content(
123
+ prompt,
124
+ temperature=0.5,
125
+ )
123
126
  result = response.text.strip()
124
127
  self.logger.debug(f"Received response:\n{result}")
125
128
  return result
@@ -1,4 +1,5 @@
1
1
  import asyncio
2
+ import sys
2
3
 
3
4
  from GameSentenceMiner.vad.result import VADResult
4
5
 
@@ -42,6 +43,7 @@ except Exception as e:
42
43
  logger.info("Something bad happened during import/initialization, closing in 5 seconds")
43
44
  logger.exception(e)
44
45
  time.sleep(5)
46
+ sys.exit(1)
45
47
 
46
48
  if is_windows():
47
49
  import win32api
@@ -2,7 +2,11 @@ import platform
2
2
 
3
3
  import requests
4
4
  from plyer import notification
5
- from win10toast import ToastNotifier
5
+
6
+ from GameSentenceMiner.util import is_windows
7
+
8
+ if is_windows():
9
+ from win10toast import ToastNotifier
6
10
 
7
11
  from GameSentenceMiner.configuration import logger
8
12
 
@@ -27,8 +27,8 @@ class OBSConnectionManager(threading.Thread):
27
27
 
28
28
  def run(self):
29
29
  while self.running:
30
- time.sleep(5)
31
- if not client.get_version():
30
+ time.sleep(1)
31
+ if not client or not client.get_version():
32
32
  logger.info("OBS WebSocket not connected. Attempting to reconnect...")
33
33
  connect_to_obs()
34
34
 
@@ -11,7 +11,7 @@ from sys import platform
11
11
 
12
12
  from rapidfuzz import process
13
13
 
14
- from GameSentenceMiner.configuration import logger, get_config
14
+ from GameSentenceMiner.configuration import logger, get_config, get_app_directory
15
15
 
16
16
  SCRIPTS_DIR = r"E:\Japanese Stuff\agent-v0.1.4-win32-x64\data\scripts"
17
17
 
@@ -254,8 +254,8 @@ def do_text_replacements(text, replacements_json):
254
254
  return text
255
255
 
256
256
 
257
- TEXT_REPLACEMENTS_FILE = os.path.join(os.getenv('APPDATA'), 'GameSentenceMiner', 'config', 'text_replacements.json')
258
- OCR_REPLACEMENTS_FILE = os.path.join(os.getenv('APPDATA'), 'GameSentenceMiner', 'config', 'ocr_replacements.json')
257
+ TEXT_REPLACEMENTS_FILE = os.path.join(get_app_directory(), 'config', 'text_replacements.json')
258
+ OCR_REPLACEMENTS_FILE = os.path.join(get_app_directory(), 'config', 'ocr_replacements.json')
259
259
  os.makedirs(os.path.dirname(TEXT_REPLACEMENTS_FILE), exist_ok=True)
260
260
 
261
261
  import urllib.request
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: GameSentenceMiner
3
- Version: 2.8.42
3
+ Version: 2.8.44
4
4
  Summary: A tool for mining sentences from games. Update: Multi-Line Mining! Fixed!
5
5
  Author-email: Beangate <bpwhelan95@gmail.com>
6
6
  License: MIT License
@@ -29,7 +29,7 @@ Requires-Dist: stable-ts~=2.17.5
29
29
  Requires-Dist: silero-vad~=5.1.2
30
30
  Requires-Dist: ttkbootstrap~=1.10.1
31
31
  Requires-Dist: dataclasses_json~=0.6.7
32
- Requires-Dist: win10toast
32
+ Requires-Dist: win10toast; sys_platform == "win32"
33
33
  Requires-Dist: numpy
34
34
  Requires-Dist: pystray
35
35
  Requires-Dist: pywin32; sys_platform == "win32"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: GameSentenceMiner
3
- Version: 2.8.42
3
+ Version: 2.8.44
4
4
  Summary: A tool for mining sentences from games. Update: Multi-Line Mining! Fixed!
5
5
  Author-email: Beangate <bpwhelan95@gmail.com>
6
6
  License: MIT License
@@ -29,7 +29,7 @@ Requires-Dist: stable-ts~=2.17.5
29
29
  Requires-Dist: silero-vad~=5.1.2
30
30
  Requires-Dist: ttkbootstrap~=1.10.1
31
31
  Requires-Dist: dataclasses_json~=0.6.7
32
- Requires-Dist: win10toast
32
+ Requires-Dist: win10toast; sys_platform == "win32"
33
33
  Requires-Dist: numpy
34
34
  Requires-Dist: pystray
35
35
  Requires-Dist: pywin32; sys_platform == "win32"
@@ -7,7 +7,7 @@ build-backend = "setuptools.build_meta"
7
7
 
8
8
  [project]
9
9
  name = "GameSentenceMiner"
10
- version = "2.8.42"
10
+ version = "2.8.44"
11
11
  description = "A tool for mining sentences from games. Update: Multi-Line Mining! Fixed!"
12
12
  readme = "README.md"
13
13
  requires-python = ">=3.10"
@@ -39,7 +39,7 @@ dependencies = [
39
39
  "silero-vad~=5.1.2",
40
40
  "ttkbootstrap~=1.10.1",
41
41
  "dataclasses_json~=0.6.7",
42
- "win10toast",
42
+ "win10toast; sys_platform == 'win32'",
43
43
  "numpy",
44
44
  "pystray",
45
45
  "pywin32; sys_platform == 'win32'",
@@ -15,7 +15,6 @@ stable-ts~=2.17.5
15
15
  silero-vad~=5.1.2
16
16
  ttkbootstrap~=1.10.1
17
17
  dataclasses_json~=0.6.7
18
- win10toast
19
18
  numpy
20
19
  pystray
21
20
  google-generativeai
@@ -24,5 +23,6 @@ groq
24
23
  obsws-python
25
24
 
26
25
  [:sys_platform == "win32"]
26
+ win10toast
27
27
  pywin32
28
28
  pygetwindow