Jump to content
- Werbung nur für Gäste -

IGNORIERT

Trophäe Königshopser


Chris19841

Recommended Posts

Mit dem normalen Script hat es bei mir auch nie geklappt, aber es gibt ein neues:

Spoiler

DetectHiddenWindows, On
#Persistent
#NoEnv

buttonToPress := "Enter"

; --------- Constants 
; jump intervals
a = 667
b = 532
c = 467
d = 433
e = 383
; f = not needed since 200-300 can be done with a single interval

g = 400
g2 = 401

latency = 710
script = 1
; ---------- Gui Setup -------------
Gui, -MaximizeBox
Gui, -MinimizeBox
Gui, 2: -MaximizeBox
Gui, 2: -MinimizeBox
Gui, Color, c282a36, c6272a4
Gui, Add, Button, x15 y10 w70 default, Start
Gui, Add, Button, x15 y40 w70 default gVariableWindow, Variables
Gui, Font, ce8dfe3 s9 w550 Bold
Gui, Add, GroupBox, x90 y10 w120 h60, Button to press
Gui, Font, c758eff Bold, Verdana
Gui, Add, Radio, x100 y28 Checked altsubmit gButtonChange vButtonChoice group, X
Gui, Font, cff5754 Bold, Verdana
Gui, Add, Radio, altsubmit gButtonChange,  O
Gui, Font, ce8dfe3 s8 w550 Bold
Gui, Add, GroupBox, x15 y70 w190 h40, Script
Gui, Add, Radio, x25 y90 Checked altSubmit gScriptChange vScriptChoice group, QueueTip
Gui, Add, Radio, x115 y90 altSubmit gScriptChange, Septomor
;--------- Gui 2 Setup --------------
Gui, 2: Color, c535770, c6272a4
Gui, 2: Font, c11f s9 Bold
Gui, 2: Add, Text,, Jumps 2-19
Gui, 2: Add, Edit,  w40 vA, %a%
Gui, 2: Add, Text,, Jumps 20-49
Gui, 2: Add, Edit,  w40 vB, %b%
Gui, 2: Add, Text,, Jumps 50-99
Gui, 2: Add, Edit,  w40 vC, %c%
Gui, 2: Add, Text,, Jumps 100-199
Gui, 2: Add, Edit,  w40 vD, %d%
Gui, 2: Add, Text, x100 y10, Jumps 200-299
Gui, 2: Add, Edit,  w40 x100 y25 vE, %e%
Gui, 2: Add, Text, x100 y50, Jumps 300+
Gui, 2: Add, Edit,  w40 x100 y65 vG, %g%
Gui, 2: Add, Edit,  w40 x100 y90 vG2, %g2%
Gui, 2: Font, ccc3429 s9 Bold
Gui, 2: Add, Text, x100 y120, Latency
Gui, 2: Font, c11f s9 Bold
Gui, 2: Add, Edit, w40 x100 y135 vLat, %latency%
Gui, 2: Add, Button, x20  y192 gSaveVars, Save 
Gui, 2: Add, Button, x100 y192 gVarDef, Defaults 
Gui, Show,w220 h120,  Vivi Jumps QueueTip + Sept
return

VariableWindow:
Gui, 2: Show, w210 h225, Variables
return

SaveVars:
Gui, 2:Submit
GuiControlGet, a, 2:, A
GuiControlGet, b, 2:, B
GuiControlGet, c, 2:, C
GuiControlGet, d, 2:, D
GuiControlGet, e, 2:, E
GuiControlGet, g, 2:, G
GuiControlGet, g2, 2:, G2
GuiControlGet, latency, 2:, Lat
return

VarDef:
a = 667
b = 532
c = 467
d = 433
e = 383
g = 400
g2 = 401
Lat = 710
GuiControl, 2:, A, %a%
GuiControl, 2:, B, %b%
GuiControl, 2:, C, %c%
GuiControl, 2:, D, %d%
GuiControl, 2:, E, %e%
GuiControl, 2:, G, %g%
GuiControl, 2:, G2, %g2%
GuiControl, 2:, Lat, %lat%
return

ButtonStart:
Gui, Submit, NoHide
id := ""
SetKeyDelay, 100
Process, priority, , High
gosub, GrabRemotePlay
if  (id = "")
return
gosub, PauseLoop
CoordMode, Pixel, Screen
CoordMode, ToolTip, Screen
sleep 2000
if(script = 1)
gosub, QueueTipS
else if(script = 2)
gosub, SeptS
; ---------- Gui Setup End-------------

; ---------- Jump Loop -------------
; ---------- QueueTip
QueueTipS:
loop {

i = 1

delay = 100
balancer = 0
currentInterval := a
extraTime = 0

ToolTip, start, 400,400

; Initiate steps to begin
ControlSend,, {%buttonToPress% down}, ahk_id %id%  ; Press down the %buttonToPress% key.
DllCall("Sleep", "Uint", 100)
ControlSend,, {%buttonToPress% up}, ahk_id %id%  ; Release %buttonToPress% key.
Sleep, 2000
ControlSend,, {%buttonToPress% down}, ahk_id %id%  ; Press down the %buttonToPress% key.
DllCall("Sleep", "Uint", 100)
ControlSend,, {%buttonToPress% up}, ahk_id %id%  ; Release %buttonToPress% key.
Sleep, 3000
PixelGetColor, failColor, 644, 535, RGB
PixelGetColor, jumpColor, 562, 416, RGB
ControlSend,, {%buttonToPress% down}, ahk_id %id%  ; Press down the %buttonToPress% key.
DllCall("Sleep", "Uint", 100)
ControlSend,, {%buttonToPress% up}, ahk_id %id%  ; Release %buttonToPress% key.

; Detect 1st jump

Loop {
PixelSearch, x, y, 562, 416, 562, 416, %jumpColor%, 20, Fast RGB
   If (ErrorLevel != 0) {
DllCall("Sleep", "Uint",  latency - 220 )
break
}
}

start := A_TickCount + 50

loop
{

; Detect if failed and back at the start to retry
PixelSearch, x, y, 644, 535, 644, 535, %failColor%, 20, Fast RGB
   	If (ErrorLevel != 0) { ; reset
	ToolTip, failed, 400, 400
	sleep, 3000
	ControlSend,, {%buttonToPress% down}, ahk_id %id%  ; Press down the %buttonToPress% key.
	DllCall("Sleep", "Uint", 100)
	ControlSend,, {%buttonToPress% up}, ahk_id %id%  ; Release %buttonToPress% key.
	sleep, 2000
	break
}

   Gosub, timings
Gosub, jump	
}
}

return

jump:
fullTime := A_TickCount - start - extraTime
start := A_TickCount
if(i > 1) {
balancer += currentInterval - fullTime
}
ToolTip, %i% - %fullTime%, 400, 400
ControlSend,, {%buttonToPress% down}, ahk_id %id%  ; Press down the %buttonToPress% key.
DllCall("Sleep", "Uint", delay)
ControlSend,, {%buttonToPress% up}, ahk_id %id%  ; Release %buttonToPress% key.
ToolTip
i += 1
extraTime = 0
return

; ------- Septomor
SeptS:
loop{
i = 1

delay = 100
balancer = 0
currentInterval := a
extraTime = 0
ToolTip, start, 400,300
SendMode, Input

Send, {%buttonToPress% down}
Sleep, 100
Send {%buttonToPress% up}
Sleep, 2000
Send, {%buttonToPress% down}
Sleep, 100
Send {%buttonToPress% up}
Sleep, 3000
PixelGetColor, failColor, 644, 535, RGB
Send, {%buttonToPress% down}
Sleep, 100
Send {%buttonToPress% up}
Sleep, %latency%
loop
{
	
; Detect if failed and back at the start to retry
PixelSearch, x, y, 644, 535, 644, 535, %failColor%, 20, Fast RGB
   	If (ErrorLevel != 0) { ; reset
	ToolTip, failed, 400, 400
	sleep, 3000
	ControlSend,, {%buttonToPress% down}, ahk_id %id%  ; Press down the %buttonToPress% key.
	DllCall("Sleep", "Uint", 100)
	ControlSend,, {%buttonToPress% up}, ahk_id %id%  ; Release %buttonToPress% key.
	sleep, 2000
	gosub, GrabRemotePlay
	break
}
gosub timings
gosub, InputJump
}
}

timings:
timer := A_TickCount - start

if (i = 1) {
	currentInterval := a
} else if (i = 21) {
	currentInterval := b
	balancer = 0
} else if (i = 51) {
	currentInterval := c
	balancer = 0
} else if (i = 101) {
	currentInterval := d
	balancer = 0
} else if (i = 201) {
	;extraTime = 50
	delay = 70
	currentInterval := e
	balancer = 0
} else if (i = 260) {
	extraTime = 20
	balancer = 0
} else if (i = 301) {
	currentInterval := g
	balancer = 0
} else if (i = 500 or i = 800) {
	currentInterval := g2
} else if (i = 600 or i = 900) {
	currentInterval := g
} else if (i => 1001) {
	if (Mod(i,2) = 0) {
		currentInterval := g
	} else {
		currentInterval := g2
	}
}

if(i > 1)
{
	DllCall("Sleep", "Uint", (currentInterval - timer + balancer + extraTime))
}
return

inputJump:
fullTime := A_TickCount - start - extraTime
start := A_TickCount
if(i > 1) {
balancer += currentInterval - fullTime
}
ToolTip, %i% - %fullTime%, 400, 400
Send, {%buttonToPress% down}    ; Press down the %buttonToPress% key.
Sleep, delay
Send {%buttonToPress% up}   ; Release %buttonToPress% key.
i += 1
extraTime = 0
return
; ---------- Jump Loop End-------------


ButtonChange:
Gui, submit, nohide
if (ButtonChoice = 1)
{
 buttonToPress := "Enter"
}
if (ButtonChoice = 2)
{
 buttonToPress := "Esc"
}
return

GrabRemotePlay:
WinGet, remotePlay_id, List, ahk_exe RemotePlay.exe
if (remotePlay_id = 0)
{
MsgBox, PS4 Remote Play not found
return
}
Loop, %remotePlay_id%
{
 id := remotePlay_id%A_Index%
 WinGetTitle, title, % "ahk_id " id
 If InStr(title, "PS Remote Play")
   break
}	
WinGetClass, remotePlay_class, ahk_id %id%
WinMove, ahk_id %id%,, 0, 0, 1440, 900
ControlFocus,, ahk_class %remotePlay_class%
WinActivate, ahk_id %id%  
return

ScriptChange:
Gui, submit, nohide
if (ScriptChoice = 1)
{
script = 1
}
if (ScriptChoice = 2)
{
script = 2
}
return

PauseLoop:
 Send, {%buttonToPress% Up}
 Send, {Esc Up}
 return

GuiClose:
gosub, PauseLoop
ExitApp

^Esc::ExitApp

https://www.playstationtrophies.org/forum/topic/293235-working-on-hail-to-the-king-script-version-for-ps4/?do=findComment&comment=6384380
 

Das scannt den Bildschirm und führt dann das Script entsprechend aus. Es erkennt auch, wenn man verloren hat und startet selbstständig neu. Der Tooltip zeigt auch stets an, was das Script gerade macht (also entweder die Anzahl der Sprünge oder wenn es neu startet) also kann man gut nachvollziehen, was gerade passiert. 
 

Hat bei mir auf Anhieb 1124 Sprünge gemacht. Mit der PS5 hat es aber nicht geklappt, nur mit der PS4. Und ich habe in RemotePlay vorher die niedrigste Auflösung und die höchste Framerate eingestellt.

 

Im Auswahlbild, was beim Starten des Scripts kommt, hab ich das von Septomor gewählt und dann muss man nur auf Start drücken. Ich musste auch aus irgendeinem Grund das RemotePlay Fenster einmal groß und wieder kleiner machen (2x Vollbildbutton), dann ging es.

 

Es wird auch empfohlen eine Auflösung von 1440x900 am Rechner einzustellen aber die schlägt mir Windows nicht vor, ging also auch so bei mir.

 

Beendet wird das Script mit Strg + Esc.

Bearbeitet von Realmatze
Link zu diesem Kommentar
Auf anderen Seiten teilen

- Werbung nur für Gäste -

Schade, dass dieser Trick nicht bei mir funktioniert.
Sowohl das erste Script und das zweite funktionieren bei mir nicht.
Beim ersten Script komm ich maximal auf 100 +-5.
Beim zweiten Script schlägt es fehl, da meines Erachtens die Pixel nicht stimmen, da ich leider nur auf 1366*768 komme.
Hab mich auch teilweise an Stellen durch das andere Forum gelesen und dort stehen meines Erachtens keine großartigen Hilfen mehr drin und ja ich hab auch die Werte genommen, die einer dort gepostet hat für diese Anzeigegröße von Bildschirmen, hat leider auch nicht funktioniert.

 

Beim ersten Script wo es hauptsächlich um die Latenz geht, bekomme ich vermutlich einfach meine Latenz dafür nicht zu fassen.

Raubt mir leider den Spielspaß und ja, ich hab es auch schon selbst probiert zu springen, aber da pack ich nicht mal Ansatzweise die 30.

Werde es noch ein paar mal versuchen, aber ich glaube, wenn das weiterhin nichts wird, für mich ein Spiel, das ohne Platin in der Ecke liegen bleiben wird. Schade eigentlich.

Bearbeitet von Assassin1890
Link zu diesem Kommentar
Auf anderen Seiten teilen

Ich nehme mal an die gängigen Methoden wie Konsole direkt per LAN anschließen etc. hast du schon gemacht?

 

Ich musste es damals auch stundenlang mit diversen Änderungen an bestehenden Scripten ausprobieren. Wenn du dafür die Geduld hast, dann versuch es weiter. Oder hol dir halt einen Cronusmax.^^

Ich habs sowohl mit dem Cronusmax als auch mit der Remote App auf dem Zweitaccount geschafft.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Also Konsole nur über Router halt, nicht direkt in den Laptop.

Davon hatte ich schon gelesen, das es möglich sein soll, wenn probiere ich das Mal bei Zeiten am Wochenende aus.

Der Cronusmax ist mir eigentlich zu teuer, über eBay hatte ich jetzt noch nicht geschaut, aber nur für die eine Trophy wäre es zu schade das Teil wieder in die Ecke zu stellen.

Aber eine Frage dazu, wie genau funktioniert das?

Man schaltet den zwischen Controller und Konsole und gibt über ein Script ein, was er zu emulieren hat auf dem Controller?

Und wäre das eine es klappt beim ersten Versuch Methode oder muss man auch da mit Ruhe und Ausdauer ran?

Link zu diesem Kommentar
Auf anderen Seiten teilen

vor 7 Minuten schrieb Assassin1890:

Also Konsole nur über Router halt, nicht direkt in den Laptop.

Ich hab halt die Konsole per LAN angeschlossen weil ich sonst WLAN benutze, mehr meine ich gar nicht.

vor 7 Minuten schrieb Assassin1890:

Man schaltet den zwischen Controller und Konsole und gibt über ein Script ein, was er zu emulieren hat auf dem Controller?

Du steckst den Cronusmax an den PC, lädst das Script drauf, dann steckst du den Cronusmax an die Playstation an und steckst den Controler mit Kabel an den Cronusmax dran. Geht glaube ich mit einem USB-Hub auch kabellos, habe ich aber nie benutzt, da keine Verwendung.

vor 9 Minuten schrieb Assassin1890:

Und wäre das eine es klappt beim ersten Versuch Methode oder muss man auch da mit Ruhe und Ausdauer ran?

Bei mir hat es etwas gedauert, ich musste auch einige Parameter ändern. Keine Ahnung ob es bei irgendwem direkt geklappt hat.

Link zu diesem Kommentar
Auf anderen Seiten teilen

- Werbung nur für Gäste -

Funktioniert das Script nur wenn man eine PS4 nutzt?

 

 

Weil habe es heute genau nach Anleitung gemacht wie es im Video bei der Roadmap beschrieben ist. Anstatt PS4 Remote Play aber PS5 Remote Play herunter geladen da Ich keine PS4 mehr besitze. Höher als 84 Seilsprünge kam das Script aber nicht. Sehr sehr oft schon bei 22 gescheitert.

 

Latenz auch in 1er Schritten von 300-400 getestet. Brachte nur nichts. Prio in der Fritze war auch auf das Notebook und die PS5 (beide via LAN CAT7 Kabel an der Fritze 7590) gestellt.

 

 

Hab's nun aufgegeben da es, so wie es aussieht, nur mit einer PS4 funktioniert. Für die PS5 gibt es noch kein Script, oder?

Link zu diesem Kommentar
Auf anderen Seiten teilen

Am 16.1.2022 um 17:44 schrieb -.-Realitygamer-:

Funktioniert das Script nur wenn man eine PS4 nutzt?

 

 

Weil habe es heute genau nach Anleitung gemacht wie es im Video bei der Roadmap beschrieben ist. Anstatt PS4 Remote Play aber PS5 Remote Play herunter geladen da Ich keine PS4 mehr besitze. Höher als 84 Seilsprünge kam das Script aber nicht. Sehr sehr oft schon bei 22 gescheitert.

 

Latenz auch in 1er Schritten von 300-400 getestet. Brachte nur nichts. Prio in der Fritze war auch auf das Notebook und die PS5 (beide via LAN CAT7 Kabel an der Fritze 7590) gestellt.

 

 

Hab's nun aufgegeben da es, so wie es aussieht, nur mit einer PS4 funktioniert. Für die PS5 gibt es noch kein Script, oder?

Mit dem ersten Script hatte ich auch auf der PS4 nie erfolg.

Link zu diesem Kommentar
Auf anderen Seiten teilen

Es so zu schaffen ist mir unmöglich, bin nicht mehr der Jüngste und kann mich kaum eine Minute konzentrieren. Habe alle möglichen Latenzen probiert und auch bei der selben kamen ständig unterschiedliche Sprünge bei raus. Wieso muss das über Internet gehen, wenn beide Geräte doch über LAN verbunden sind? Rein über Router sollte es doch da keine Latenzen geben können?!? Auf PS5 läuft das so nicht. Werde mal die alte PS4 rauskramen und es da versuchen. Ich verstehe die Entwickler da nicht, absolute Willkür.

Edit: Habe es geschafft auf der PS4. Remote Play auf niedrigste Auflösung, Framerate hoch, alle Geräte von der Fritz Box genommen und nur Playse 4 und PC per LAN-Kabel dran. Vorher alles neu gestartet und Septomors Script bei 595er Latenz. Musste einiges ausprobieren an Latenzen und ich schätze dass jeder da aufgrund seiner Leitung eine andere hat... Puh, ich ärgere mich, dass ich die so machen musste, aber ich will mir nicht die Platin vorenthalten wegen nem Gehirnschiss, den einer der Entwickler da hatte. 1000 Sprünge wäre mir in keiner Weise jemals möglich gewesen, einfach unschaffbar. SE es ist ein Rollenspiel  - Kein Geschicklichkeitsspiel! 

Bearbeitet von Müüz
Link zu diesem Kommentar
Auf anderen Seiten teilen

vor 5 Stunden schrieb Reiggi23:

Mich macht die Trophäe auch fertig!

 

hab es mit Remote Play und kabelgebundenen Internet und top Leitung versucht - keine Chance!!

 

komme manchmal bis 100 das wars!


liegt es an der Ps5? Oder hat noch jemand eine Idee. Sonst bleibt die Platin wohl nur ein Traum! 😴


Ich habe es auch erst auf der PS5 versucht, aber Erfolg hatte ich auf der PS4, die ich dafür wieder angeschlossen hatte. Habe ewig mit den LAtenzen herumprobiert und wollte schon fast aufgeben. Es hat bei mir auch meist bei knapp über 100 aufgehört. Habe wie gesagt alles von der Fritzbox abgeklemmt und alles frisch neugestartet und dann immer wieder mit verschiedenen Werten probiert. Habe nebenbei Fernsehen geguckt, damit ich nicht die Geduld verliere... xD

Viel Erfolg!

Link zu diesem Kommentar
Auf anderen Seiten teilen

- Werbung nur für Gäste -

Erstelle eine Antwort

Du kannst jetzt einen Beitrag verfassen und dich im Anschluss registrieren. Wenn du bereits einen Account hast, dann melde dich bitte an.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Deine Inhalte, die du zuvor verfasst hast, wurden wiederhergestellt..   Inhalte wieder entfernen

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Neu erstellen...