Skocz do zawartości
Aby otrzymać pełny dostęp do forum zarejestruj się, a następnie zsynchronizuj swoje konto z kontem w grze.

Skaner zarobków z logów MTA - narzędzie z cyklu ułatwienia dla leniwych


psychoo102
 Udostępnij

Rekomendowane odpowiedzi

Siema,

Z nudów i klasycznego lenistwa zrobiłem sobie narzędzie, które samo skanuje logi MTA i liczy ile kasy + XP zebrałem danego dnia.

Bo serio… kto lubi ręcznie grzebać w console.log i sumować „Otrzymałeś X$ … +Y XP”? Ja nie.

Co to robi?

Bierze wszystkie console.log* z folderu MTA, wyciąga linie z zarobkami i generuje ładny raport.txt z podsumowaniem dziennym (od najnowszych).

Gdzie brać

Repo: https://github.com/psychoo102/projectrpg-earnings-scanner

Gotowe .exe leci automatycznie z GitHub Actions → wchodzisz w Releases i pobierasz prpg-earning-scanner.exe. Nie trzeba instalować Go, nie trzeba nic kompilować. Odpalasz i tyle.

Najnowsza wersja do pobrania: https://github.com/psychoo102/projectrpg-earnings-scanner/releases/tag/v1.3.1

Ważny disclaimer (czytajcie)

  • Windows czasem paranoicznie traktuje programy napisane w Go i może rzucić false-positive / SmartScreen. To normalne, nic nie ma wirusa.
  • Cały build robi GitHub Actions (kod jest publiczny, każdy może sprawdzić). Dzięki temu nikt nie wrzuca ręcznie skompilowanego exe i nie ma ryzyka, że ktoś dorzuci coś brzydkiego.

Jak ktoś znajdzie bugi, ma pomysł na ulepszenia (podział na prace, suma tygodniowa, CSV itd.) albo po prostu chce się pośmiać – piszcie.

Robiłem dla siebie, ale jak komuś się przyda to spoko.

Edytowane przez psychoo102
Wersja v1.3.1
  • Super 5
  • Lubię to! 1
Odnośnik do komentarza
Udostępnij na innych stronach

21 godzin temu, HODDIN napisał:

Fajne narzędzie choć nie zadziała u mnie bo mam MTA na dysku D.

Myślę, że warto aby obsługiwało inne lokalizacje - najlepiej do wyboru.

W wolnym czasie zaaktualizuje kod i dodam konfigurację pod inne ścieżki niż domyślne

Odnośnik do komentarza
Udostępnij na innych stronach

Napisano (edytowane)

🔧 Aktualizacja skanera zarobków — v1.1.0

Zapowiadana aktualizacja właśnie ujrzała światło dzienne:

✅ Program sam teraz zapyta Cię o ścieżkę do MTA przy pierwszym uruchomieniu, jeśli masz grę zainstalowaną w niestandardowym miejscu - nie trzeba już nic ręcznie edytować w kodzie.

✅ Raport pokazuje teraz też, czy danego dnia odebrałeś nagrodę za codzienne logowanie (razem z numerem dnia streaka), więc łatwiej upilnować, żeby nie przerwać serii.

✅ Nowy tryb obserwacji na żywo - jeśli chcesz, program może działać w tle podczas grania i pokazywać na bieżąco, kiedy coś się wydarzy (np. odbierzesz nagrodę), zamiast uruchamiać go ręcznie po sesji.

Jak zaktualizować:

  1. Pobierz najnowszy .exe z zakładki Releases: https://github.com/psychoo102/projectrpg-earnings-scanner/releases/tag/v1.1.0
  2. Podmień starą wersję na nową.
  3. Przy pierwszym uruchomieniu nowej wersji program dopyta Cię o parę rzeczy (np. ścieżkę do MTA, jeśli jeszcze jej nie miał) — to normalne, zapamięta to na przyszłość.

Stary raport.txt zostanie bez zmian, format jest kompatybilny wstecz.

Jakby coś nie działało lub macie pomysły na kolejne rzeczy do wykrywania (inne dzienne akcje, eventy itp.) - piszcie, chętnie rozbuduję.

Przykład działania w wersji 1.1.0:

 

=== RAPORT DZIENNY ===
2026-08-08 -> 687.70$ | 13 XP | Nagroda dzienna: TAK (1)
2026-07-15 -> 2991.00$ | 54 XP | Nagroda dzienna: TAK (1)

 

Edytowane przez psychoo102
  • Super 3
Odnośnik do komentarza
Udostępnij na innych stronach

Odpaliłem program, wyskoczyła konsola, kazało nacisnąć enter, pojawił się plik .txt, ale w nim nie było nic poza pierwszą linijką "=== RAPORT DZIENNY ===". Niżej nie pisze ani daty, ani kwot, ani nagrody dziennej. Domyślam się, że wykrył lokację MTA, gdyż nic ani nie wyskoczyło, ani w samej konsoli nie pisało o tym.

obraz.png.bdb5916e804ac45508aa151851e6f94b.png

Edytowane przez WafelTLD
Odnośnik do komentarza
Udostępnij na innych stronach

7 godzin temu, WafelTLD napisał:

Odpaliłem program, wyskoczyła konsola, kazało nacisnąć enter, pojawił się plik .txt, ale w nim nie było nic poza pierwszą linijką "=== RAPORT DZIENNY ===". Niżej nie pisze ani daty, ani kwot, ani nagrody dziennej. Domyślam się, że wykrył lokację MTA, gdyż nic ani nie wyskoczyło, ani w samej konsoli nie pisało o tym.

obraz.png.bdb5916e804ac45508aa151851e6f94b.png

Sprawdź proszę %appdata%\Roaming\projectrpg-earnings-scanner\config.json czy dane dotyczące MTA są poprawne

Przykład ode mnie:

 

{
  "mta_path": "C:\\Program Files (x86)\\MTA San Andreas 1.6\\MTA\\logs",
  "trackers": [
    {
      "name": "Nagroda dzienna",
      "pattern": "Otrzymałeś \\d+(?:\\.\\d+)? \\$ za codzienne logowanie(?:.*\\(Dzień (\\d+)\\))?"
    }
  ]
}

 

W mta_path powinna być dokładna ścieżka do logów MTA, możliwe, że program na początku wykrył złą ścieżkę przez np. istniejący folder po starej instalacji. Jeśli tam się wszystko zgadza to przydałoby się zweryfikować czy w plikach  .log znajdują się jakiekolwiek takie wpisy. Jeśli program nie wyrzucił po cichu jakiegoś błędu to output powinien wyglądać tak:
image.png.2477e1d7a4490c2094c68f6667c802d1.png

  • Lubię to! 1
Odnośnik do komentarza
Udostępnij na innych stronach

Napisano (edytowane)

🔧 Aktualizacja skanera zarobków - v1.2.0

Cześć! Kolejna wersja, wprowadzająca:

✅ Program rozróżnia teraz osobno różne źródła zarobku (np. sprzedaż towaru) oraz koszty (np. tankowanie - dowolne paliwo, LPG/Pb95/Pb98/On), więc raport pokazuje realny bilans netto, a nie tylko sumę "co wpadło".

✅ Nowa opcja eksportu do CSV - jeśli wolicie analizować zarobki w Excelu/Arkuszach Google zamiast czytać plik tekstowy, teraz można.

✅ Przy uruchomieniu program zapyta, co chcesz zrobić (wygenerować raport, CSV, czy odpalić tryb obserwacji na żywo) - nie trzeba pamiętać żadnych parametrów.

✅ Poprawiono raport tak, żeby jawnie pokazywał, gdy NIE odebrałeś nagrody dziennej danego dnia (wcześniej taki dzień był po prostu pomijany).

Jak zaktualizować:
1. Pobierz najnowszy .exe z zakładki Releases: https://github.com/psychoo102/projectrpg-earnings-scanner/releases/tag/v1.2.0
2. Podmień starą wersję na nową - Wasz dotychczasowy config.json zostanie automatycznie zaktualizowany, nic nie trzeba robić ręcznie.

Jak zwykle - jakby coś nie działało albo mieliście pomysły na kolejne rzeczy do wykrywania (inne prace, inne koszty), dawajcie znać.

Przykład jak wygląda aktualny raport:

=== RAPORT DZIENNY ===
2026-08-09 -> 5102.56$ netto (przychód 5169.50$, wydatki 66.94$) | 96 XP | Nagroda dzienna: TAK (2)
2026-08-08 -> 7168.78$ netto (przychód 7436.50$, wydatki 267.72$) | 127 XP | Nagroda dzienna: TAK (1)
2026-07-15 -> 2926.31$ netto (przychód 2991.00$, wydatki 64.69$) | 54 XP | Nagroda dzienna: TAK (1)


 

Edytowane przez psychoo102
Odnośnik do komentarza
Udostępnij na innych stronach

5 godzin temu, psychoo102 napisał:

Sprawdź proszę %appdata%\Roaming\projectrpg-earnings-scanner\config.json czy dane dotyczące MTA są poprawne

Przykład ode mnie:

 

{
  "mta_path": "C:\\Program Files (x86)\\MTA San Andreas 1.6\\MTA\\logs",
  "trackers": [
    {
      "name": "Nagroda dzienna",
      "pattern": "Otrzymałeś \\d+(?:\\.\\d+)? \\$ za codzienne logowanie(?:.*\\(Dzień (\\d+)\\))?"
    }
  ]
}

 

W mta_path powinna być dokładna ścieżka do logów MTA, możliwe, że program na początku wykrył złą ścieżkę przez np. istniejący folder po starej instalacji. Jeśli tam się wszystko zgadza to przydałoby się zweryfikować czy w plikach  .log znajdują się jakiekolwiek takie wpisy. Jeśli program nie wyrzucił po cichu jakiegoś błędu to output powinien wyglądać tak:
image.png.2477e1d7a4490c2094c68f6667c802d1.png

Sprawdziłem lokację, jest prawidłowo podana w configu. Sprawdziłem swój console.log czy w nim jest np. informacja o nagrodzie dziennej, ale jest. Nie mam pojęcia czemu ten programik nie działa.

Odnośnik do komentarza
Udostępnij na innych stronach

Napisano (edytowane)
23 minuty temu, WafelTLD napisał:

Sprawdziłem lokację, jest prawidłowo podana w configu. Sprawdziłem swój console.log czy w nim jest np. informacja o nagrodzie dziennej, ale jest. Nie mam pojęcia czemu ten programik nie działa.

Jeśli to nie jest problem możesz mi też wysłać swój plik console.log, sprawdzę to wtedy lokalnie u siebie. Możesz też sprawdzić czy to samo występuje przy wersji 1.2, gdzie lekko zmieniony został schemat przeszukiwania plików

// Edit:

Tak teraz mi to wpadło do głowy, że to może wynikać z jakiś błędów w stylu pliki .log nie mają kodowanie UTF-8, przez co niektóre znaki (głównie polskie) robią krzaczki w pliku .log, przez co nie są wykrywane. W kolejnej wersji planuję zrobić coś w stylu diagnostyki, żeby na przyszłość łapać takie błędy i móc je eliminować

Edytowane przez psychoo102
Odnośnik do komentarza
Udostępnij na innych stronach

30 minut temu, psychoo102 napisał:

Jeśli to nie jest problem możesz mi też wysłać swój plik console.log, sprawdzę to wtedy lokalnie u siebie. Możesz też sprawdzić czy to samo występuje przy wersji 1.2, gdzie lekko zmieniony został schemat przeszukiwania plików

// Edit:

Tak teraz mi to wpadło do głowy, że to może wynikać z jakiś błędów w stylu pliki .log nie mają kodowanie UTF-8, przez co niektóre znaki (głównie polskie) robią krzaczki w pliku .log, przez co nie są wykrywane. W kolejnej wersji planuję zrobić coś w stylu diagnostyki, żeby na przyszłość łapać takie błędy i móc je eliminować

Może to być to, po odpaleniu loga mam właśnie krzaczki zamiast polskich znaków.

Odnośnik do komentarza
Udostępnij na innych stronach

Siema nie wiem dlaczego ale nie liczy mi ten raport wydatków jak wpłaciłem na organizację wysłałem do gracza nic z tego mi nie liczy, liczy mi tylko za tankowanie oraz naprawy ale to ciekawe bo wydattki są również na org oraz do graczy 

Odnośnik do komentarza
Udostępnij na innych stronach

8 godzin temu, WafelTLD napisał:

Może to być to, po odpaleniu loga mam właśnie krzaczki zamiast polskich znaków.

Przychodzę z małą aktualizacją, dodałem do wersji v1.2.1 debugger i fix dotyczący kodowań innych niż UTF-8. Możesz sprawdzić, jeśli chcesz i zweryfikować czy problem po Twojej stronie minął

https://github.com/psychoo102/projectrpg-earnings-scanner/releases/tag/v1.2.1

6 godzin temu, kxaf napisał:

Siema nie wiem dlaczego ale nie liczy mi ten raport wydatków jak wpłaciłem na organizację wysłałem do gracza nic z tego mi nie liczy, liczy mi tylko za tankowanie oraz naprawy ale to ciekawe bo wydattki są również na org oraz do graczy 

Nie wszystkie wydatki są jeszcze dodane, gdyż nie wszystkie logi posiadałem w swoich plikach, więc nie mogłem ich wprost zawrzeć. Jeśli brakuje Ci czegoś w podsumowaniu to możesz wprost wyciągnąć całą linijkę log'u i przekleić jako propozycje funkcji. Aktualnie pracuję nad dodaniem obsługi wymiań między graczami poza naprawami błędów, które mogą się pojawiać

Odnośnik do komentarza
Udostępnij na innych stronach

21 minut temu, psychoo102 napisał:

Przychodzę z małą aktualizacją, dodałem do wersji v1.2.1 debugger i fix dotyczący kodowań innych niż UTF-8. Możesz sprawdzić, jeśli chcesz i zweryfikować czy problem po Twojej stronie minął

https://github.com/psychoo102/projectrpg-earnings-scanner/releases/tag/v1.2.1

Nie wszystkie wydatki są jeszcze dodane, gdyż nie wszystkie logi posiadałem w swoich plikach, więc nie mogłem ich wprost zawrzeć. Jeśli brakuje Ci czegoś w podsumowaniu to możesz wprost wyciągnąć całą linijkę log'u i przekleić jako propozycje funkcji. Aktualnie pracuję nad dodaniem obsługi wymiań między graczami poza naprawami błędów, które mogą się pojawiać

obraz.png.b7c03ca5e470df5650403384cf67e7e2.pngObraz

Odnośnik do komentarza
Udostępnij na innych stronach

W dniu 10.08.2026 o 11:33, Ryosuke* napisał:

U mnie 1.2.1 działa jakoś tak połowicznie. Wydatki jakieś pokazuje, ale przychodów nic, dziennej też nie pokazuje, a odbieram codziennie.image.png.ac37b3a2f2e2f40e66632538be5e46bf.png

Nie dodałem jeszcze wszystkich ,,wzorców" do zarobków, czy wydatków, bo po prostu nie miałem takich logów w swoich plikach, a bez sensu było zgadywać. Pracujesz na jakiejś konkretnej pracy typu nie wiem, rybak czy kutry? Może jest tam różnica logów. Na pewno wiem, że aplikacja gubi się na nagrodach w dniach innych niż kasa, ale nad tym pracuje już przy wersji, która ma obsługiwać handel jako wydatki/przychody. Powinienem dodać disclaimer, aby doklejać logi, których aplikacja nie potrafi jeszcze wykryć, aby szybciej ją rozwijać, ale zrobię to najwyżej w wolnej chwili

Odnośnik do komentarza
Udostępnij na innych stronach

3 godziny temu, psychoo102 napisał:

Nie dodałem jeszcze wszystkich ,,wzorców" do zarobków, czy wydatków, bo po prostu nie miałem takich logów w swoich plikach, a bez sensu było zgadywać. Pracujesz na jakiejś konkretnej pracy typu nie wiem, rybak czy kutry? Może jest tam różnica logów. Na pewno wiem, że aplikacja gubi się na nagrodach w dniach innych niż kasa, ale nad tym pracuje już przy wersji, która ma obsługiwać handel jako wydatki/przychody. Powinienem dodać disclaimer, aby doklejać logi, których aplikacja nie potrafi jeszcze wykryć, aby szybciej ją rozwijać, ale zrobię to najwyżej w wolnej chwili

Aplikacja transportowa, tutaj masz przykładowego loga z niej:
✔ Otrzymałeś 344.56$ (+67 EXP) [+46%]

Odnośnik do komentarza
Udostępnij na innych stronach

19 godzin temu, psychoo102 napisał:

Nie dodałem jeszcze wszystkich ,,wzorców" do zarobków, czy wydatków (...)

A jaki tu wzorzec? Jak w logu masz "Otrzymałeś" i wiadomość zawiera $ to juz powinno sumować taką kwotę 😛 

Fajny skrypcik na pierwszy rzut oka, miałem coś podobnego robić w moim Logusiu, lecz na to potrzeba czasu. Aktualnie mój Logus spełnia swoje zadania do archiwizowania oraz przeszukiwania logów, więcej mi do szczęścia nie trzeba.

Co do pomysłów - może zrobisz jeszcze średni zarobek z danej pracy, średnią na godzinę? Myślałeś kiedyś nad programem, który odczytuje logi live oraz je analizuje?

Popatrz na mój projekt rozwijany w latach 2018-2021 https://github.com/DarXe/Logus, a być może będzie dla ciebie motywacją do stworzenia czegoś podobnego pod ProjectRPG.
Cały program był tworzony pod serwer.. truckersk w języku C++, czyli takim podobnym do Go (kiedyś też próbowałem pisać od nowa Logusa w Go, ale odechciało mi się z powodu innych priorytetów).

Odnośnik do komentarza
Udostępnij na innych stronach

W dniu 12.08.2026 o 09:07, DarXe.mnr napisał:

A jaki tu wzorzec? Jak w logu masz "Otrzymałeś" i wiadomość zawiera $ to juz powinno sumować taką kwotę 😛 

Fajny skrypcik na pierwszy rzut oka, miałem coś podobnego robić w moim Logusiu, lecz na to potrzeba czasu. Aktualnie mój Logus spełnia swoje zadania do archiwizowania oraz przeszukiwania logów, więcej mi do szczęścia nie trzeba.

Co do pomysłów - może zrobisz jeszcze średni zarobek z danej pracy, średnią na godzinę? Myślałeś kiedyś nad programem, który odczytuje logi live oraz je analizuje?

Popatrz na mój projekt rozwijany w latach 2018-2021 https://github.com/DarXe/Logus, a być może będzie dla ciebie motywacją do stworzenia czegoś podobnego pod ProjectRPG.
Cały program był tworzony pod serwer.. truckersk w języku C++, czyli takim podobnym do Go (kiedyś też próbowałem pisać od nowa Logusa w Go, ale odechciało mi się z powodu innych priorytetów).

W tym jednym przypadku odkryłem, że problemem jest niespójność jeśli chodzi o komunikaty w pracach. Na przykładzie powyższym appka daje log:

 

✔ Otrzymałeś 344.56$ (+67 EXP) [+46%]

a, jeśli pójdę na lawety to otrzymam:
 

[2026-08-10 04:24:52] [Output] : ✔ Otrzymałeś 861.90$ (+13 XP) [+30%]

czy też przykład z kosiarek:
 

[2026-08-08 08:15:40] [Output] : ✔ Sprzedano 760 kg trawy za 6,748.80$

dlatego regexy się czasami sypią, prawdopodobnie ten problem występuje na jeszcze kilku innych pracach np. na kutrach
Żeby program był w pełni funkcjonalny fajnie by było, gdyby wszystko było w logach, a np. mandaty z fotoradarów nie są logowane w konsoli. To byłoby przydatne do np. liczenia końcowego profitu na takich pracach jak aplikacja transportowa.

Potem dochodzą problemy typowe dla MTA, np. encoding tekstu w logach. Ja u siebie mam UTF-8 i zawsze działa, niektórzy mają ASCII, a niektórzy to mają totalnie rozsypane logi pod kątem kodowania tekstu.
Ale odkrywając ten mankament mogę teraz poprawić regex z nadzieją, że żadna inna praca się już nie wysypie po drodze.

Co do odczytywania logów w trybie live, jest tu zaimplementowany zalążek tej funkcji, ale nie jestem na tym etapie w stanie powiedzieć czy będzie on na dłuższą metę rozwijany, gdyż jest to raczej niszowa funkcja, tak jak nie wiem, możliwość eksportu do Loki czy metryk do Prometheusa (raczej nikt poza mną nie korzysta z takich narzędzi)

---

Edit: Wzorce regex  specjalnie są na tyle szczegółowe, gdyż chcę zminimalizować ryzyko błędów typu ktoś na chacie premium zacznie wrzucać log z jakiejś pracy/donejta, a program to wyłapie i wsumuje w nasze zarobki co byłoby błędem.

Myślałem również nad sumowaniem per praca, lecz logi nie dają informacji jaką pracę zaczynamy, a jedynie informację o tym, że ją zaczynamy, więc takie rzeczy na dłuższą metę odpadają

Edytowane przez psychoo102
Odnośnik do komentarza
Udostępnij na innych stronach

W dniu 11.08.2026 o 17:13, Ryosuke* napisał:

Aplikacja transportowa, tutaj masz przykładowego loga z niej:
✔ Otrzymałeś 344.56$ (+67 EXP) [+46%]

Właśnie wrzuciłem wersję 1.3, która ma dodatkowo obsługę testową zysków z handlu P2P. Dodatkowo logi z appki transportowej powinny już być poprawnie sumowane, mam nadzieję, że finalny fix  pomógł też na nagrody za dzienne logowanie.

https://github.com/psychoo102/projectrpg-earnings-scanner/releases/tag/v1.3.0

  • Super 2
Odnośnik do komentarza
Udostępnij na innych stronach

Aktualizacja v1.3.1

Aktualizacja ta wprowadza poprawki do liczenia zarobków, gdy praca osiagnęła maksymalny poziom i nie zdobywa więcej EXPa.

Ważna informacja:
Gdyby po pobraniu aktualizacji poprawka nadal nie działała, należy usunąć plik konfiguracyjny (config.json) z %appdata% w swoim systemie.


https://github.com/psychoo102/projectrpg-earnings-scanner/releases/tag/v1.3.1

Odnośnik do komentarza
Udostępnij na innych stronach

 Udostępnij

  • Ostatnio przeglądający   0 użytkowników

    Brak zarejestrowanych użytkowników przeglądających tę stronę.

×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Siema! Jako, że odwiedziłeś/aś naszą stronę jesteśmy zmuszeni poinformować Ciebie o tym jak wykorzystujemy i przetwarzamy Twoje dane osobowe. Prosimy Ciebie o zapoznanie się z tym linkiem: Polityka prywatności. Umieściliśmy na Twoim urządzeniu pliki cookie, aby pomóc Ci usprawnić przeglądanie strony. Możesz dostosować ustawienia plików cookie, w przeciwnym wypadku zakładamy, że wyrażasz na to zgodę.