Das Spiel zur Schweinegrippe ist da!

Spiele, Demos, Grafikzeug und anderes unterhaltendes.
Benutzeravatar
WPö
Moderator
Beiträge: 669
Registriert: 27.05.2008 12:44
Wohnort: Oberland
Kontaktdaten:

Re: Das Spiel zur Schweinegrippe ist da!

Beitrag von WPö »

Huhu, das war nichts. Auch mit Admin-Rechten ergibts nach wie vor denselben Fehler:

Code: Alles auswählen

Error Message:   Invalid memory access
Error Code:      -1073741819
Code Address:    4261779
Target Address:  14
Sourcecode line: 1978
Sourcecode file: C:\Users\Gruenewald.LTG\Desktop\pan\prog\pandemie.pb

Register content:
EAX	=	0x0
EBX	=	0x4
ECX	=	0x3A3C08
EDX	=	0x2AC7B58
EBP	=	0x0
ESI	=	0x5DDF1AC
EDI	=	0x1E1
ESP	=	0x12FFC0
Admin-Rechte werde ich mit Sicherheit nicht für ein Spiel anwenden - hier nur zum Ausprobieren.

Gruß - WPö
Ich glaube nur der Statistik, die ich selbst gefälscht habe!
Meine Netzpräsenz: WPö.de
PB5.31 auf LMDE und Pentium T7200 2,00GHz, 4GB DDR2, ATI X1400.
Benutzeravatar
CptGreenwood
Beiträge: 125
Registriert: 12.07.2007 10:40

Re: Das Spiel zur Schweinegrippe ist da!

Beitrag von CptGreenwood »

Los, gib meinem Game Adminrechte! Ich mach dein System platt :twisted:

Wahnsinn, ich glaube, du hast noch einen echten Fehler gefunden! Die Zeilenangabe hat mich auf die Spur gebracht. Du hast wahrscheinlich mit vier Spielern gespielt, das kann zu einem Problem führen. Ich bastele gerade an der Korrektur, versuch doch mal ein Spiel mit 5 Spielern...
Benutzeravatar
CptGreenwood
Beiträge: 125
Registriert: 12.07.2007 10:40

Re: Das Spiel zur Schweinegrippe ist da!

Beitrag von CptGreenwood »

OMG, war das ein blöder Fehler. Noch blöder kommt es mit vor, dass wir ihn nach x Testspielen nicht entdeckt haben, scheinbar haben wir uns nur auf den neuen Bioterroristen konzentriert und daher nur mit 5 Spielern gespielt, weil 4 Spieler ja immer gefunzt hatte.
Tja, mit der Implementierung des Bioterroristen ist in den Vier-Spieler-Modus ein Fehlerchen reingewandert.

Die Version 2.57 ist up (die normale Version, nicht OnError!). Probiere die mal aus! Danke schon mal für's Bughunting! :allright:
Benutzeravatar
HeX0R
Beiträge: 3040
Registriert: 10.09.2004 09:59
Computerausstattung: AMD Ryzen 7 5800X
96Gig Ram
NVIDIA GEFORCE RTX 3060TI/8Gig
Win11 64Bit
G19 Tastatur
2x 24" + 1x27" Monitore
Glorious O Wireless Maus
PB 3.x-PB 6.x
Oculus Quest 2 + 3
Kontaktdaten:

Re: Das Spiel zur Schweinegrippe ist da!

Beitrag von HeX0R »

Ich will ja jetzt nicht mit dämlichen Floskeln ala "Ich habs doch gleich gesagt" kommen, aber mein Urin trügt mich trotzdem eher selten.
Es ist tatsächlich in 98% der Fällen so, dass man selbst für Fehler verantwortlich ist (oder zumindest in der Lage ist, diese zu umschiffen).
Daher lohnt es sich immer ein paar Klimmzüge mehr zu opfern.
Benutzeravatar
CptGreenwood
Beiträge: 125
Registriert: 12.07.2007 10:40

Re: Das Spiel zur Schweinegrippe ist da!

Beitrag von CptGreenwood »

Jo, ich gebe dir recht. Allerdings hat sich die erste Fehlerbeschreibung und die Probleme mit den dx3d-dlls stark nach DirectX-Fehler angehört, da sträuben sich mir immer die Nackenhaare, weil ich damit immer so hilflos bin...

Na ja, warten wir mal auf die Rückmeldung, ob er jetzt einwandfrei Pandemie spielen kann.
Benutzeravatar
WPö
Moderator
Beiträge: 669
Registriert: 27.05.2008 12:44
Wohnort: Oberland
Kontaktdaten:

Re: Das Spiel zur Schweinegrippe ist da!

Beitrag von WPö »

Hallo, Leute!

Kapitän, scheint tatsächlich nur daran gelegen zu haben. Allerdings habe ich heute sehr wenig Zeit auf das Austesten verwenden können, wie Du unschwer festgestellt haben wirst. Voraussichtlich morgen teste ich dann intensiver. Danke aber schonmal für die ganze Mühe!

Gruß - WPö
Ich glaube nur der Statistik, die ich selbst gefälscht habe!
Meine Netzpräsenz: WPö.de
PB5.31 auf LMDE und Pentium T7200 2,00GHz, 4GB DDR2, ATI X1400.
Benutzeravatar
CptGreenwood
Beiträge: 125
Registriert: 12.07.2007 10:40

Re: Das Spiel zur Schweinegrippe ist da!

Beitrag von CptGreenwood »

Nun, eigentlich müsste ich den Thread-Titel nun umbenennen. Scheinbar bekomme ich die Major-Versionen meines Spiels immer dann fertig, wenn eine neue Seuche um sich greift. Ich schwöre, das ist nur Zufall :twisted:
Also: "Das Spiel zur EHEC-Seuche ist da!"
Die Version 3 von Pandemie hat nun neben dem freien Spiel einen Kampagnen-Modus mit 14 Missionen, in denen ein Einsatzteam der CDC Atlanta weltweit unterwegs ist, um das Schlimmste zu verhindern. Die Kampagne ist besonders gut für Einsteiger geeignet, da die Dinge, die man im Handbuch gelesen hat, Schritt für Schritt angewendet werden, von ganz leicht bis zur echten Herausforderung.
Außerdem läßt sich beim freien Spiel (kann ja mal länger dauern) der Spielstand sichern und später wieder laden.

Pandemie 3 (deutsch) gibt es nun als Beta1 herunterzuladen unter http://ralfgruenewald.org/download.aspx
Die englische Version folgt, sobald sich die deutsche als stabil herausstellt und ich zum Übersetzen gekommen bin /:-> .
ullmann
Beiträge: 205
Registriert: 28.10.2005 07:21

Re: Das Spiel zur Schweinegrippe ist da!

Beitrag von ullmann »

Vielen Dank für dein Spiel. Ganz toll gemacht. Gefällt mir sehr.

Ich habe Version 3.04 angetestet: Auf XP / SP3 problemlose Installation. Das Vorspannvideo ist erst wenige Sekunden schwarz,
dann wird es wenige Sekunden korrekt abgespielt, den Rest des Videos (mehr als 50% der Videolänge) ist das Fenster weiß
und man hört nur den Ton. Ich vermute, dass ist eine schlechte Umsetzung seitens PureBasic, da wirst du nicht viel ändern
können.

Dann startet das Spiel korrekt und lässt sich auch einwandfrei spielen (Freier Modus, alle Module außer Bioterrorist gewählt).

Der Ton hat meine Familienmitglieder gestört. Also habe ich im Spiel den Sound ausgeschaltet. Das hat funktioniert. Leider
kamen aber immer noch die Toneffekte, z.B. bei zu vielen Karten auf der Hand oder bei der Erforschung eines neues Serums.
Wäre gut, wenn es für die Ausschaltung der Toneffekte auch eine Schaltfläche im Spiel gebe, oder bei "Sound aus" eine
Subauswahl Sound / Effekte / beides.

Also wollte ich im Systray den Ton ausschalten und habe dazu dein Spiel mit Alt-Tab verlassen. Ein Anklicken deines Spieles in
der Taskleiste funktioniert aber nicht -es wird nicht wieder angezeigt. Das ist ein bekanntes PureBasic-Problem, an dem ich
auch schon Tage geknobelt habe. Eine perfekte Lösung habe ich auch noch nicht gefunden. Das ist schon sehr lange her und
beim Durchsuchen der Forenbeiträge gab es zwei Lösungen. Die eine ging zurück zum Vollbild, egal welches Programm in der
Taskleiste angeklickt wurde. Die andere war ein französisch kommentierter Quelltext und schien gut zu funktionieren. Ich habe
sie in mein Projekt eingebaut - musste aber vor 2 Wochen feststellen, wenn ich das Vollbild mit Alt-Tab verlasse und mit dem
Windows-Rechner etwas rechne und diesen dann schließe, dass dann sofort - ohne Klick in die Taskleiste - mein Programm
wieder im Vollbild angezeigt wurde. Vielleicht gibt es jemand, der dieses Problem schon exakt gelöst hat, dann wäre es gut,
wenn du es einbauen könntest. Bei Vollbild-Anwendungen sollte Alt-Tab und zurück ordentlich funktionieren.

Übrigens hatte ich den PureBasic-Editor noch offen, beim Schließen dieses Editors wurde nur ein Teil seines Fensters
geschlossen, ein Rest des Fensters blieb immer sichtbar (on top), deaktiviert, ohne Taskleisten-Eintrag und ohne Mausanzeige
stehen - so dass ich den Computer neu starten musste. Das ist aber sicher ein Folgefehler der fehlerhaften Alt-Tab-Behandlung.

Edit: Habe nochmal gespielt und da ist mir ein komisches Verhalten aufgefallen: Ich habe die Aktion "Prognose" eingesetzt und
konnte 6 Karten von einem Stapel neu ordnen. Dabei hieß es: "Die zuletzt angeklickte Karte wird auf dem Stapel ganz oben liegen."
Ich habe also die gefährlichste Karte zuerst angeklickt, damit sie auf dem Stapel ganz unten liegt. Sie wurde auch korrekt nach
ganz unten eingeordnet. Aber im nächsten Zug wurde sie sofort als erstes ausgespielt. Wahrscheinlich ist da ein Fehler in der
Ausspielreihenfolge. Übrigens habe ich bereits Training verloren, weil die Zeit abgelaufen war. Ist ziemlich knapp bemessen.
Benutzeravatar
CptGreenwood
Beiträge: 125
Registriert: 12.07.2007 10:40

Re: Das Spiel zur Schweinegrippe ist da!

Beitrag von CptGreenwood »

Danke für den ausführlichen Kommentar. Ich bin immer sehr froh für solche Analysen und Anregungen.

Intro-Video:
Den Effekt, den du beschreibst, habe ich bisher nicht gesehen. Auf einem einzigen Rechner (einem Netbook) war statt des Videos nur ein schwarzes Rechteck zu sehen, nach Drücken der Leertaste ging es aber korrekt weiter ins Spiel. Du hast leider recht, da muss ich mich auf die Umsetzung seitens PureBasic verlassen, weil mir da die Hände gebunden sind, jedenfalls wüsste ich nicht, wie ich auf das Abspielen eines Videos gesteigerten Einfluss nehmen könnte.

Ton:
Ist völlig richtig und auch schon für das nächste Release fest auf der Liste. Ich war bei der Umsetzung irgendwie davon ausgegangen, dass es nur die Hintergrundmusik sein könnte, die irgendwann stört aber wenn es ganz still sein soll, müssen natürlich auch die Effects abschaltbar sein.

Alt-Tab:
Da sprichst du ein großes Ärgernis an. Sobald Pandemie in die Taskleiste geht, ist Feierabend. Das passiert ja manchmal nicht einmal gewollt, sondern auch, wenn die Taskleiste per Bubble irgendwelche Mitteilungsbedürfnisse hat. Gerade wenn das Proggi dann unsichtbar über einem anderen Fenster (z.B. PureBasic IDE) liegt, ist es ein Greuel, es endgültig tot zu kriegen (über TaskManager in Tastatursteuerung). Ich habe das bisher als unbeeinflussbar abgetan, jetzt wo du sagst, es gäbe Threads darüber, werde ich nochmal recherchieren. Zumindest den Effekt, den du mit dem Win-Rechner beschrieben hast, hätte ich schon gern.

Prognose:
Huch, ist mir bisher nicht aufgefallen. Werde ich auf jeden Fall einmal nachstellen!

Schwierigkeitsgrad:
Ja, Pandemie ist schon nicht easy. Dabei gibt es im original Brettspiel die leichtesten beiden Level meiner Umsetzung gar nicht, die habe ich eingefügt, weil ich vom Brettspiel zeitweise etwas frustiert war. Tip: Spiele mal auf "Training" mit allen Modulen ausgeschaltet, das ist die leichtmöglichste Einstellung. Auch die ersten Missionen der Kampagne versprechen noch schnelle Erfolgserlebnisse :-)
Ach ja, wenn es hauptsächlich die Zeit ist, die abläuft, gibt es zusätzlich zu der Weisheit "Dann beeil dich halt!" noch das Produktionslabor. Ist vielleicht einen Blick wert. (Die zusätzlichen und erweiterten Gebäude gibt's im Brettspiel übrigens auch nicht, die habe ich auch eingeführt, um das Spiel leichter gewinnen zu können.

Ich werde hier eine Nachricht posten, wenn es ein neues Release gibt, dann kannst du die Punkte vielleicht nochmal antesten. Bis dahin Viele Grüße!
ullmann
Beiträge: 205
Registriert: 28.10.2005 07:21

Re: Das Spiel zur Schweinegrippe ist da!

Beitrag von ullmann »

Diesen Code von Dobro aus dem englischen Forum habe ich bei mir verwendet. Wahrscheinlich habe ich ihn falsch umgesetzt,
denn hier funktioniert er tadellos in allen Situationen (unter XP / SP3):

Code: Alles auswählen

; Purebasic 4.41 
;By Dobro 
; exemple de l'utilisation de IsScreenActive() 

; quittez le pseudo jeux avec Alt+TAB 
; on retourne dans le jeux d'un clique sur la fenetre en barre des taches 

initsprite ()
initmouse ()
initkeyboard ()
Enumeration 
         #sprite 
EndEnumeration 
Structure sprite
        x.i
        y.i
        pas_x.i
        pas_y.i
EndStructure 
Dim sprite.sprite(1)
examinedesktops ()
x_screen= desktopwidth (0) ; je recup la rez de l'ecran 
y_screen= desktopheight (0)
flag=0
debut: ; le label qui permet le retour dans le jeux !! 
openscreen (x_screen, y_screen, 32, "Fullscreen + ALT-TAB démo" )
releasemouse (0)
createsprite ( #sprite , 64, 64)
startdrawing ( spriteoutput ( #sprite ))
         box (0,0,64,64, rgb (255,13,40))
stopdrawing ()


;********* initialisation du sprite ********** 
If flag=0 ; le joueur n'est jamais sorti du jeu , s'il est sorti on ne fais pas ce bloc de code !! 
sprite(1)\x=x_screen/2 ; on place le sprite au centre 
sprite(1)\y=y_screen/2 ; on place le sprite au centre 
sprite(1)\pas_x=2 ; on donne une vitesse de deplacement a notre sprite 
sprite(1)\pas_y=2 ; on donne une vitesse de deplacement a notre sprite 
EndIf 

Repeat 
         examinekeyboard () ; ne sert que pour quitter le prg avec la touche esc 
    
         ; ************* gere le deplacement du sprite *************** 
        sprite(1)\x=sprite(1)\x+sprite(1)\pas_x
        sprite(1)\y=sprite(1)\y+sprite(1)\pas_y
                 ; ---------------------------------------------------------------------------- 
         If sprite(1)\x+64>=x_screen:sprite(1)\pas_x=-sprite(1)\pas_x: EndIf 
         If sprite(1)\y+64>=y_screen:sprite(1)\pas_y=-sprite(1)\pas_y: EndIf 
         ; ---------------------------------------------------------------------------- 
         If sprite(1)\x<=0:sprite(1)\pas_x=-sprite(1)\pas_x: EndIf 
         If sprite(1)\y<=0:sprite(1)\pas_y=-sprite(1)\pas_y: EndIf 
         ; ******************************************************* 
        
        
         ; ********** affichage du sprite ********************* 
         displaytransparentsprite ( #sprite , sprite(1)\x, sprite(1)\y)
        
         flipbuffers ()
         clearscreen (0)
        
         ; *************** attention toute l'astuce est la !! ******************* 
         If isscreenactive () = 0 ; le joueur a quitter le jeu (Alt-tab) 
                 releasemouse (1) ; je libere la souris ... inutile ici mais bon 
                flag=1 ; on note que l'utilisateur est sorti du jeux 
                 closescreen () ; on ferme l'ecran 
                
                 ; ******* la ruse de guerre !! **************************** 
                 openwindow (1,1,1,1,1, "toto le jeu " , #PB_Window_Minimize ) ; j'ouvre une fenetre que je minimise en bar des taches 
                 Repeat :Event= waitwindowevent (2): Until Event= #PB_Event_ActivateWindow ; j'attend qu'on clique sur la fenetre 
                 closewindow (1) ; je ferme la fenetre 
                 Goto debut ; je retourne dans le jeux sans réinitialiser les variables de déplacement (on reprends ou on en etait! !!! ) 
     EndIf 
Until keyboardpushed ( #PB_Key_Escape ) ; là , on veux vraiment quitter le jeux LOL 
End 

Nach Alt-Tab oder anderem Fokusverlust kann man dies mit Isscreenactive() erkennen. Man muss sich ein Kennzeichen (Flag) setzen,
die Maus freigeben und den Fullscreen schließen. Anschließend erzeugt man ein Mini-Fenster 1 x 1 Pixel und minimiert dieses auf die
Taskleiste. Man fragt in einer Schleife die Fensterereignisse ab, ob #PB_Event_ActivateWindow auftrat, d.h. ob das minimierte
Fenster aktiviert werden soll (durch Mausklick auf das Symbol in der Taskleiste oder erneutes Alt-Tab zu dieser Anwendung).
Dann schließt man das Minifenster, öffnet den Fullscreen und anhand des Flags kann man erkennen, dass man erstmal wieder das
ganze Bild neu aufbauen muss.
Antworten