Giter VIP home page Giter VIP logo

topeterk / hitcountermanager Goto Github PK

View Code? Open in Web Editor NEW
73.0 7.0 18.0 7.13 MB

Free Hit Counter / Death Counter that is running in the background, so you can focus on your stream. No need to keep any windows open for a window capture any more. Initially designed for Dark Souls and similar games but supports any game.

License: MIT License

HTML 7.94% Batchfile 1.18% JavaScript 3.34% CSS 2.01% C# 83.96% Shell 1.56%
counter hitcounter darksouls dark souls download stream streaming obs obs-studio

hitcountermanager's Introduction

HitCounterManager - A Dark Souls inspired Hit Counter

Free Hit Counter that is running in the background, so you can focus on your stream.
No need to keep any windows open for a window capture any more.
Initially designed for Dark Souls but supports any game.
Just add the local HTML file to you broadcasting software and the setup is done.
Works completely offline, no account or login required.

Download latest version here Addons Setup Guide / Wiki Tutorial on YouTube

Preview

Releases GitHub Releases GitHub

Key-Features

  • Offline application
  • No window capture needed for stream integration
  • Hot key support for seamless use ingame (Windows only)
  • Easy to use profile management
  • On the fly configurable design
  • Configurable keyboard hot keys that can easily be used while playing
  • One single save file for all settings and profiles: HitCounterManagerSave.xml

    Note: The settings will be kept when upgrading on newer versions. I try my best keeping it backwards compatible that you can still load an upgraded save file on older versions.

  • Create profiles for each challenge or game or build a sequence of runs (called succession) like for the Dark Souls trilogy
  • Dark Mode (not the best looking but hey: its dark)
  • Timer (including current, PB and gold split times)
  • Customizable designs (Find some examples at the Wiki pages)

Pre-defined profiles

  • Bloodborne + The old hunters
  • Celeste
  • Crash Bandicoot 1
  • Crash Bandicoot 2
  • Crash Bandicoot 3
  • Crash Bandicoot 4
  • Cuphead
  • Dark Souls 1 Prepare To Die Edition
  • Dark Souls 2
  • Dark Souls 3 + Ashes of Ariandel + The Ringed City
  • Demon's Souls
  • Elden Ring
  • Hades
  • Hollow Knight
  • Mortal Shell
  • Salt and Sanctuary
  • Sekiro
  • The Surge + A walk in the park
  • The Surge 2

Get the software

All available releases can be found at the Releases page on GitHub.
Download latest version here

Addons

There are addons available now, e.g.:

  • The LiveSplit plugin LiveSplit.HitCounterManagerConnector
    • Automatically selecting the HCM splits and restarts a new run when LiveSplit is doing so either due to AutoSplitter or manual input.
  • The HitCounterManager plugin AutoSplitterCore for HCM
    • Adds AutoSplitting and InGameTime directly into HitCounterManager without requiring LiveSplit

Systemrequirements

  • OS: Windows Vista, Windows Server 2003 or newer (32/64 bit)
  • OS: Any (32/64 bit)

    Note: This version is not supporting global hot keys

    • Portable version (Tar ball)
      • Running with Mono (tested with 5.14.0)
        Start the application in the application's directory with mono HitCounterManager.exe

        Note: Mono supports 32 bit mode only (therefore it cannot be run on OS without 32 bit support!)

In case your non-Windows OS is no longer supporting 32 bit Mono then this application will not run!
However, there is a new HitCounterManager in development (version 2.x) that can be used instead.
Please have a look at the v2.x branch or find pre-compiled development builds here.

Installation, Guides, Help

Please have a look at the Wiki pages, the Setup Guide or the FAQ.

Anything is missing, something is annoying/can be improved or you just found a bug?

Message me via GitHub / e-mail or simply open an issue and I will try to help you out. Alternatively you can also send me a whipser on Twitch: GeneralGunrider

Community

There is a great growing community on Discord called Team Hitless. If you are seeking for help, guidance or just talk about no hit runs, this is the right place for it.
Thanks to everyone for helping other community members!

Special thanks

I would never have created this tool without the inspiration by watching the awesome 0 hit and no death runners...
Thanks to (in alphabetical order):

Praise the sun! ☀️ . . . 🔥 . . . 🏃 💨

hitcountermanager's People

Contributors

neimex23 avatar topeterk 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  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  avatar

hitcountermanager's Issues

Including Distance PB

Greetings. I´m running DS3 any% hitless at the moment and I think it would be a great feature to be able to set the Distance Personal Best in the counter instead or additional to the daily Distance PB. e.g. daily remains with yellow star, Distance PB with a blue star or smth. Then everyone could see on the current Counter what is the PB and what´s the Distance PB. Right now only the PB is visible for anyone, the Distance PB has to be asked.

Cannot install .NET framework if a later version is installed

Describe the bug
When trying to install the HitCounterManager via the .msi file, I get this error:
image

Upon selecting "Yes" and downloading and running the installer for the .NET framework, it says the framework cannot be installed because a more recent version already exists. As far as I can tell, there is no good way to install an older version.

Desktop (please complete the following information):

  • OS: Windows 10 Pro
  • Browser: Chrome Version 90.0.4430.212 (although not relevant here)

Save space by limiting visible splits

Would it be possible to have a feature like LiveSplit where you can show only X (configurable) number of splits with the total always visible? That would help keep the overlay uncluttered for viewers.

Need help, when i start the app this appears

image

Consulte el final de este mensaje para obtener más detalles sobre cómo invocar a la depuración
Just-In-Time (JIT) en lugar de a este cuadro de diálogo.

************** Texto de la excepción **************
System.IndexOutOfRangeException: Índice fuera de los límites de la matriz.
en HitCounterManager.ProfilesControl.InitializeProfilesControl(Profiles profiles, Succession Succession)
en HitCounterManager.Form1.LoadSettings()
en HitCounterManager.Form1.Form1_Load(Object sender, EventArgs e)
en System.Windows.Forms.Form.OnLoad(EventArgs e)
en System.Windows.Forms.Form.OnCreateControl()
en System.Windows.Forms.Control.CreateControl(Boolean fIgnoreVisible)
en System.Windows.Forms.Control.CreateControl()
en System.Windows.Forms.Control.WmShowWindow(Message& m)
en System.Windows.Forms.Control.WndProc(Message& m)
en System.Windows.Forms.Form.WmShowWindow(Message& m)
en HitCounterManager.Form1.WndProc(Message& m)
en System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

************** Ensamblados cargados **************
mscorlib
Versión del ensamblado: 4.0.0.0
Versión Win32: 4.8.4470.0 built by: NET48REL1LAST_C
Código base: file:///C:/Windows/Microsoft.NET/Framework64/v4.0.30319/mscorlib.dll

HitCounterManager
Versión del ensamblado: 1.20.0.0
Versión Win32: 1.20.0.0
Código base: file:///C:/Users/pau_7/OneDrive/Documentos/HitCounterManager/HitCounterManager.exe

System.Drawing
Versión del ensamblado: 4.0.0.0
Versión Win32: 4.8.4390.0 built by: NET48REL1LAST_C
Código base: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll

System
Versión del ensamblado: 4.0.0.0
Versión Win32: 4.8.4488.0 built by: NET48REL1LAST_C
Código base: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll

System.Windows.Forms
Versión del ensamblado: 4.0.0.0
Versión Win32: 4.8.4488.0 built by: NET48REL1LAST_C
Código base: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll

System.Configuration
Versión del ensamblado: 4.0.0.0
Versión Win32: 4.8.4190.0 built by: NET48REL1LAST_B
Código base: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Configuration/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Configuration.dll

System.Core
Versión del ensamblado: 4.0.0.0
Versión Win32: 4.8.4470.0 built by: NET48REL1LAST_C
Código base: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Core/v4.0_4.0.0.0__b77a5c561934e089/System.Core.dll

System.Xml
Versión del ensamblado: 4.0.0.0
Versión Win32: 4.8.4084.0 built by: NET48REL1
Código base: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll

System.Windows.Forms.resources
Versión del ensamblado: 4.0.0.0
Versión Win32: 4.8.4084.0 built by: NET48REL1
Código base: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms.resources/v4.0_4.0.0.0_es_b77a5c561934e089/System.Windows.Forms.resources.dll

Microsoft.GeneratedCode
Versión del ensamblado: 1.0.0.0
Versión Win32: 4.8.4084.0 built by: NET48REL1
Código base: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll

mscorlib.resources
Versión del ensamblado: 4.0.0.0
Versión Win32: 4.8.4084.0 built by: NET48REL1
Código base: file:///C:/WINDOWS/Microsoft.Net/assembly/GAC_MSIL/mscorlib.resources/v4.0_4.0.0.0_es_b77a5c561934e089/mscorlib.resources.dll

************** Depuración JIT **************
Para habilitar la depuración Just In Time (JIT), el archivo de configuración de esta
aplicación o equipo (machine.config) debe tener el
valor jitDebugging establecido en la sección system.windows.forms.
La aplicación también se debe compilar con la depuración
habilitada

Por ejemplo:

Cuando esté habilitada la depuración JIT, cualquier excepción no controlada
se enviará al depurador JIT registrado en el equipo
en lugar de controlarlo mediante el cuadro de diálogo.

PS: can't translate it to english sry

HitCounterGui.html does not update when using http url from remote machine.

Describe the bug
OBS browser does not update when using http url (ex. http://192.168.169.69:8800/Designs/HitCounterGui.html because chromium embedded framework caches http responses.

To Reproduce
Steps to reproduce the behavior:

  1. Launch static http server serving static files where root path point to directory containing Designs folder.
  2. Launch latest obs on linux with obs-browser plugin installed
  3. Display the browser source in the scene

Expected behavior
The page is updated when the iframe is reloaded.

Additional context

I was able to fix this issue by changing

 iframe.src = '../HitCounter.html';

to call a hardRefreshIframe() function

hardRefreshIframe();

definition of hardRefreshIframe

var iframe;
function hardRefreshIframe() {
    if (!iframe) {
        iframe = document.getElementsByTagName('iframe')[0];
    }
    if (iframe.contentWindow.location.href.indexOf('HitCounter.html') >= 0) {
        // force hard refresh
        iframe.contentWindow.location.reload(true);
    } else {
        iframe.src = '../HitCounter.html';
    }
}

HitCounterManager should ensure it references files relative to the application path rather than the pwd

First of all, thanks for building such a solid app!

I spent a fair amount of time debugging an issue today with 2.x (I enjoyed reading the code BTW) only to discover that the root cause was that the binary (on mac at least) is expected to run from the folder the binary is in.

Consider resolving all paths from the binary location, rather than from the caller's CWD/PWD. Otherwise, the templates etc. don't get read etc.

n.b. It is possible now for users to have working configurations in other directories as well, so some additional logic to detect that may make sense as well

Show star on furthest reached split

Set new furthest reached split on daily basis (application restart), on reset or manually.
The furthest split is shown with a star on stream (in case streamer wants to show it).

Appearance - Force Width

Add option to setup a fixed table width to ensure same width regardless of the split name lengths.

Hit Counter Scrolling

Currently I have 74 splits set up but once I get to about 16 it continues without showing anything and the only way I can get it to show is if I set the source to something like 800x2500 which is really small when you adjust it for the window.

Can you make it so it scrolls when reaching the bottom while keeping the Split and Run, and Progress Bar static?

Unsure of how to set this up and unaware of how to reach the developer

Please fill in all relevant data. That's it.
I am trying to set up a hit counter in OBS Studio, but I don't fully understand how to get this to work or show up. If someone can reach out to me to provide a more detailed setup explanation for a Windows 10 PC, I would really appreciate the help.

Death Counter Hotkeys

I looked through all the settings and I want to use this amazing program for deaths (for now). However I can't seem to figure out how to count deaths and what settings I need for that.

split color

hey!
i noticed my splits are always red, even when "better" than on my pb. html file source code states td.better as green.. how is td.better defined? i only get green splits when 0 hits, not when less than on pb. how so? how to change it?
thx in advance
chemi

Linux ever?

I love how this project looks and would love to use it at some point! Any chance at all there will ever be a Linux compatible version for it? :)

Rename initial Save.xml to avoid overwriting users' XMLs

Rename HitCounterManagerSave.xml to HitCounterManagerInit.xml

Upon loading the application it should do either of those two actions:

  • When HitCounterManagerSave.xml already exists:
    • Upgrade the file and remove the HitCounterManagerInit.xml to preserve users' XMLs
  • When HitCounterManagerSave.xml is not existing:
    • Rename the HitCounterManagerInit.xml to HitCounterManagerSave.xml

Dual PC

Hey ! I was wondering if there is any option to set up that in a dual PC setup ?

OK program but it randomly deleted everything

Really don't know what else to say. I did not alter any of the files of this program, yet today every single split is gone. Even the pre-built splits the app comes with. I'm honestly dumbfounded.

Making the splits again isn't that much work but the fact that I lost my PB and this all might happen again is a huge deterrent to using this program further.

Using a windows capture blows but at least hit counter websites do not randomly delete every single thing you have done.

Global shortcuts (OS not supported) - Windows 10 Pro

I just installed Hit Counter Manager and ran into an issue with the shortcuts.
If I go into settings > Global shortcuts all the shortcuts and tick boxes are greyed out with the text inside stating:
"ERROR: SJIFT + ?"
In the tab Global shortcuts it tells me 'Global Shortcuts(OS not supported)

The program runs fine other than than.

Screenshot:
Hit

Desktop (please complete the following information):

  • OS: Windows 10 Pro
  • Browser: Opera GX
  • Version: 20H2

Any help would be appreciated, as the shortcut functionality is most important!

PB hits just stop on first split with hit

How can I set the behahiour so the PB will display like this:

splits

I'm talking about the PB hit colum. In my case, the PB colum just stops on the first split with hits, i.e., all of the next splits, even if they don't have a hit, will be crossed instead of checked. In the image example, all of them will be crossed after the dancer hit.

EDIT: Adding an example file of the case I'm talking about

output

Someway to add in window shortcuts to the mono version?

Hi,
I use linux and I would like to use shortcuts, I know that implementing global hotkeys on linux is hard, however I imaging that implementing shortcuts that works on the window is easier and that will make it easier to manually configure global hotkeys (for example with hyprland there is an option that passes the shortcut to the specified window). I wonder if there is a way to make this work by changing some configuration or something like that
Thanks

Linking a CSS to it's own profile

Is your feature request related to a problem? Please describe.

As of now, either a default or a custom CSS file is loaded, but if I had let's say a customized CSS for running dark souls, and I want to change it to one for sekiro I need to manually change the file CSS file URL manually on the style tab.

Describe the solution you'd like

Have an option to bind a CSS file to a profile, so whenever I change a profile from one game to another, the CSS file gets updated automatically.

Describe alternatives you've considered

Additional context

Ability to save each run to compare progress

Is your feature request related to a problem? Please describe.
No

Describe the solution you'd like
Some way to export each run in order to import into another application or show a graph of progress.

Describe alternatives you've considered
Screenshotting the individual runs, or manually entering the data into a CSV file externally.

Additional context
The application already tracks what number attempt someone may be on. I would simply like to see the progress outside of just the PB. Say run 4 is a PB but 5 and 6 are worse, I find value in still seeing this. It will help see if one split is getting worse or the run overall.

Thanks for the hard work on this, especially the Linux compatibility.

Update template for ease of use

I may be missing something obvious here, but it would be nice if the default template was usable out of the box. It appears to be missing the actual JavaScript function but does have the call to one.

Due to the different available styles the most basic one would be the most ideal as a default.

Hotkeys only partially register

Trying to set up Hit Counter's hotkeys to work with the shortcut buttons of another app hosted on Github https://github.com/rivafarabi/deckboard but it doesn't seem to work....I'm not sure if the problem lies with HCM or Deckboard, but after a week with no response from them, figured I'd cross post here as well.

Effectively, I'm trying to set it up so the digital 'buttons' for Deckboard (think Streamdeck for one's phone/tablet) will activate the Hotkey functionality of HCM, so I can press the button on the Deckboard screen and have it register a 'hit' or a Next/Previous split press...but none of them seem to register when the buttons are pressed on Deckboard.
Hotkeys were obviously originally Shift + F6 through Shift + F10, but I even tried swapping them to shift + letters (Shift + H, Shift + N, etc.). Both the Shift + F's and the current Shift + Letter hotkey seem to work when done on keyboard but not on DB.

I've tried telling Deckboard to 'run on' deckboard, as well as on hitcounter itself.

Nothing seems to work and I'm kind of at a total loss...Figure maybe you can realize/test/figure out something I can't, since DB's devs seem unable/unwilling to answer.

Unicode support

Adding support for other language specific characters like Russian or Chinese.

Hide Hit Column possible?

Would it be possible to hide either Hit Column or PB Column? I am currently trying to use this program to record Bosses Killed (Using the HitCounterYesNo.html). Issue is when I go down the list of bosses it auto checks on the Hits side as I go down and when i go back up it auto unchecks itself. Would it be possible to either: Manually select the check marks without auto selecting/deselecting? or Hide the Hits Column so only PB column shows? The PB Column works how i want it to, but i would like to be able to hide the Hits Column. If its something i would be able to edit on my end may i ask how?

Thanks for the help!

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.