Jump to content
Korean Random

adjgam

User
  • Content Count

    15
  • Joined

  • Last visited

Community Reputation

4 Noob

Recent Profile Visitors

1,885 profile views
  1. adjgam

    Gamesense

    - can we add frags counter and change colors or keys ilumination (like in CS:GO plugin)? event from game with count > hange colors keys 1,2,3 and other color if <10 frags - wn8 rating on zone? I wont to show it on headset but i dont have wn8 mod - can you add fire event? (if tank is on fire for example keyboard is blinks red) i can add event in .py and send something
  2. adjgam

    Gamesense

    for keyboard we need correct handler, I cannt register event for wn8 with json request
  3. adjgam

    Gamesense

    app work I dont have keyboard, I cannt test handler for mouse and keyboard you can see answer in app (sending data is not json, cannt connect) logs C:\ProgramData\SteelSeries\SteelSeries Engine 3\Logs handler can write log to see if hanler started and if function call (write-string "handler start\n")
  4. adjgam

    Gamesense

    steelseries_post.zip
  5. adjgam

    Gamesense

    (handler "SETRGB" (lambda (data) (let* ( (r (r: data)) (g (g: data)) (b (b: data)) (n(list r g b))) ( on-device 'rgb-per-key-zones show-on-zone: n function-keys: ) ) )) (handler "HP" (lambda (data) (let* ((v (value: data)) (c (color-between red-color green-color v))) ( on-device 'rgb-per-key-zones show-on-zone: c function-keys: ) ) )) or (handler "SETRGB" (lambda (data) (let* ( (r (r: data)) (g (g: data)) (b (b: data)) (n(list r g b))) ( on-device 'keyboard show-on-zone: n function-keys: ) ) )) (handler "HP" (lambda (data) (let* ((v (value: data)) (c (color-between red-color green-color v))) ( on-device 'keyboard show-on-zone: c function-keys: ) ) )) after any changes in handler you must restart steelseries engine
  6. adjgam

    Gamesense

    which of keys use to show health? lsp handler dont add icon
  7. adjgam

    Gamesense

    I have only headset, I cannt test if it work on other devices headsets have one zone, keyboards and mouse more, which zone to add?
  8. Мод для изменения цвета подсветки у гарнитур Steeleries в зависимости хп своего танка установка: копируем wot.lsp в C:\ProgramData\SteelSeries\SteelSeries Engine 3\hax0rBindings\ "res_mods" в каталог с игрой. Что при желании можно сделать: натанкованый урон(глупо), засвет, урон, wn8, фраги gamesense.zip
  9. так? import BigWorld import os import json import httplib, urllib2 from Avatar import PlayerAvatar from items import vehicles from Vehicle import Vehicle import Math import math import threading print "gamesense loaded" url = '' LastHP = 0 # read GameSense url def Gamesense_ReadUrl(): with open(os.getenv('PROGRAMDATA')+'/SteelSeries/SteelSeries Engine 3/coreProps.json', 'r') as f: data = json.load(f) global url url = 'http://' + data['address'] # register game def Gamesense_RegisterGame(): data = {"game":"WOT","game_display_name":"World Of Tanks","icon_color_id":11} req = urllib2.Request(url+'/game_metadata') req.add_header('Content-Type', 'application/json') response = urllib2.urlopen(req, json.dumps(data)) # delete game def Gamesense_DeleteGame(): data = {"game":"WOT"} req = urllib2.Request(url+'/remove_game') req.add_header('Content-Type', 'application/json') response = urllib2.urlopen(req, json.dumps(data)) # register HP event def Gamesense_RegisterHpEvent(): data = { "game":"WOT", "event":"HP", "min_value":1, "max_value":100, "icon_id":1, "handlers": [{"zone":"headset", "color": {"gradient":{ "zero": {"red":255,"green":0,"blue":0}, "hundred": {"red":0,"green":255,"blue":0} } }, "mode":"percent", "device-type":"rgb-1-zone" }]} req = urllib2.Request(url+'/bind_game_event') req.add_header('Content-Type', 'application/json') response = urllib2.urlopen(req, json.dumps(data)) # delete game event def Gamesense_DeleteEvent(EventName): data = {"game":"WOT","event":"+EventName+"} req = urllib2.Request(url+'/remove_game_event') req.add_header('Content-Type', 'application/json') response = urllib2.urlopen(req, json.dumps(data)) # post HP change event 0..100 def HpChange(n): data = {"game":"WOT","event":"HP","data":{"value": n}} req = urllib2.Request(url+'/game_event') req.add_header('Content-Type', 'application/json') response = urllib2.urlopen(req, json.dumps(data)) # change color def Gamesense_SetRgb(r, g, b): data = {"game":"WOT","event":"SETRGB","data":{"r": r, "g": g, "b": b}} req = urllib2.Request(url+'/game_event') req.add_header('Content-Type', 'application/json') response = urllib2.urlopen(req, json.dumps(data)) # post Keepalive Event def Gamesense_PostHearBeat(): data = {"game":"WOT"} req = urllib2.Request(url+'/game_heartbeat') req.add_header('Content-Type', 'application/json') response = urllib2.urlopen(req, json.dumps(data)) def threadDecorate(object): def decorate(*args, **kwargs): th = threading.Thread(target=object, args=args, kwargs=kwargs) th.setName = object.func_name th.setDaemon = True th.start() return decorate # gamesense hearbeat 15s = set default @threadDecorate def _loop(): Gamesense_PostHearBeat() BigWorld.callback(10, _loop) # on battle loaded set green def _onInitStepCompleted(self): orig_onInitStepCompleted(self) Gamesense_SetRgb(0,255,0) orig_onInitStepCompleted = PlayerAvatar._PlayerAvatar__onInitStepCompleted PlayerAvatar._PlayerAvatar__onInitStepCompleted = _onInitStepCompleted # on hp change @threadDecorate def OnHp(): playerVehicle = BigWorld.entity(BigWorld.player().playerVehicleID) global LastHP if playerVehicle is not None and playerVehicle.isStarted and playerVehicle.isPlayerVehicle: HP = playerVehicle.health MaxHP = playerVehicle.typeDescriptor.maxHealth if LastHP == HP: return LastHP = HP if HP>0: # playerVehicle.isAlive() HPPercent = math.trunc(HP*100/MaxHP) HpChange(HPPercent) else: Gamesense_SetRgb(0 ,0, 0) return return def _onHealthChanged(self, newHealth, attackerID, attackReasonID): orig_onHealthChanged(self, newHealth, attackerID, attackReasonID) OnHp() orig_onHealthChanged = Vehicle.onHealthChanged Vehicle.onHealthChanged = _onHealthChanged def _onLeaveWorld(self): orig_onLeaveWorld(self) Gamesense_SetRgb(0,0,0) orig_onLeaveWorld = PlayerAvatar.onLeaveWorld PlayerAvatar.onLeaveWorld = _onLeaveWorld Gamesense_ReadUrl() Gamesense_SetRgb(0, 0, 0) # set color (0,0,0) on game init _loop()
  10. тоесть в new_onInitStepCompleted запустить поток, и в потоке по таймеру выполнять то, что я делаю в _onHealthChanged?
  11. почему пишет? *** File "", line 99, in _onHealthChanged *** File "", line 99, in _onHealthChanged *** File "", line 99, in _onHealthChanged *** File "", line 99, in _onHealthChanged *** File "", line 99, in _onHealthChanged *** File "", line 99, in _onHealthChanged *** File "", line 99, in _onHealthChanged *** File "", line 99, in _onHealthChanged *** File "", line 99, in _onHealthChanged *** File "", line 99, in _onHealthChanged *** File "", line 99, in _onHealthChanged *** File "", line 99, in _onHealthChanged *** File "", line 99, in _onHealthChanged *** File "", line 99, in _onHealthChanged *** File "", line 99, in _onHealthChanged *** File "", line 99, in _onHealthChanged *** RuntimeError: maximum recursion depth exceeded while calling a Python object *** File "", line 120, in _onLeaveWorld *** File "", line 120, in _onLeaveWorld *** File "", line 120, in _onLeaveWorld *** File "", line 120, in _onLeaveWorld *** File "", line 120, in _onLeaveWorld *** File "", line 120, in _onLeaveWorld *** File "", line 120, in _onLeaveWorld *** File "", line 120, in _onLeaveWorld *** File "", line 120, in _onLeaveWorld *** File "", line 120, in _onLeaveWorld *** File "", line 120, in _onLeaveWorld *** File "", line 120, in _onLeaveWorld *** File "", line 120, in _onLeaveWorld *** File "", line 120, in _onLeaveWorld *** File "", line 120, in _onLeaveWorld *** File "", line 120, in _onLeaveWorld *** File "", line 120, in _onLeaveWorld *** File "", line 120, in _onLeaveWorld *** RuntimeError: maximum recursion depth exceeded while calling a Python object import BigWorld import os import json import httplib, urllib2 from Avatar import PlayerAvatar from items import vehicles from Vehicle import Vehicle import Math url = '' LastHP = 0 # read GameSense url def Gamesense_ReadUrl(): with open(os.getenv('PROGRAMDATA')+'/SteelSeries/SteelSeries Engine 3/coreProps.json', 'r') as f: data = json.load(f) global url url = 'http://' + data['address'] # register game def Gamesense_RegisterGame(): data = {"game":"WOT","game_display_name":"World Of Tanks","icon_color_id":11} req = urllib2.Request(url+'/game_metadata') req.add_header('Content-Type', 'application/json') response = urllib2.urlopen(req, json.dumps(data)) # delete game def Gamesense_DeleteGame(): data = {"game":"WOT"} req = urllib2.Request(url+'/remove_game') req.add_header('Content-Type', 'application/json') response = urllib2.urlopen(req, json.dumps(data)) # register HP event def Gamesense_RegisterHpEvent(): data = { "game":"WOT", "event":"HP", "min_value":1, "max_value":100, "icon_id":1, "handlers": [{"zone":"headset", "color": {"gradient":{ "zero": {"red":255,"green":0,"blue":0}, "hundred": {"red":0,"green":255,"blue":0} } }, "mode":"percent", "device-type":"rgb-1-zone" }]} req = urllib2.Request(url+'/bind_game_event') req.add_header('Content-Type', 'application/json') response = urllib2.urlopen(req, json.dumps(data)) # delete game event def Gamesense_DeleteEvent(EventName): data = {"game":"WOT","event":"+EventName+"} req = urllib2.Request(url+'/remove_game_event') req.add_header('Content-Type', 'application/json') response = urllib2.urlopen(req, json.dumps(data)) # post HP change event 0..100 def HpChange(n): data = {"game":"WOT","event":"HP","data":{"value": n}} req = urllib2.Request(url+'/game_event') req.add_header('Content-Type', 'application/json') response = urllib2.urlopen(req, json.dumps(data)) # change color def Gamesense_SetRgb(r, g, b): data = {"game":"WOT","event":"SETRGB","data":{"r": r, "g": g, "b": b}} req = urllib2.Request(url+'/game_event') req.add_header('Content-Type', 'application/json') response = urllib2.urlopen(req, json.dumps(data)) # post Keepalive Event def Gamesense_PostHearBeat(): data = {"game":"WOT"} req = urllib2.Request(url+'/game_heartbeat') req.add_header('Content-Type', 'application/json') response = urllib2.urlopen(req, json.dumps(data)) # gamesense hearbeat 15s = set default def _loop(): Gamesense_PostHearBeat() BigWorld.callback(10, _loop) # on battle loaded set green def new_onInitStepCompleted(self): # update url Gamesense_ReadUrl() Gamesense_SetRgb(0,255,0) old_onInitStepCompleted = PlayerAvatar._PlayerAvatar__onInitStepCompleted PlayerAvatar._PlayerAvatar__onInitStepCompleted = new_onInitStepCompleted # on hp change def _onHealthChanged(self, newHealth, attackerID, attackReasonID): orig_onHealthChanged(self, newHealth, attackerID, attackReasonID) playerVehicle = BigWorld.entity(BigWorld.player().playerVehicleID) global LastHP if playerVehicle is not None and playerVehicle.isStarted and playerVehicle.isPlayerVehicle: HP = playerVehicle.health MaxHP = playerVehicle.typeDescriptor.maxHealth if LastHP == HP: return LastHP = HP if HP>0: # playerVehicle.isAlive() HPPercent = math.trunc(HP*100/MaxHP) HpChange(HPPercent) else: Gamesense_SetRgb(0 ,0, 0) return return orig_onHealthChanged = Vehicle.onHealthChanged Vehicle.onHealthChanged = _onHealthChanged def _onLeaveWorld(self): orig_onLeaveWorld(self) Gamesense_SetRgb(0,0,0) orig_onLeaveWorld = PlayerAvatar.onLeaveWorld PlayerAvatar.onLeaveWorld = _onLeaveWorld Gamesense_ReadUrl() Gamesense_SetRgb(0, 0, 0) # set color (0,0,0) on game init _loop() вывод.txt
  12. есть код на делфи для получения чата твича
  13. как сделать в tab место xwn8 количиство нанесенного урона за бой? configs.zip
×
×
  • Create New...