BUGSY
- dllfreak2001
- Beiträge: 2925
- Registriert: 07.09.2004 23:44
- Wohnort: Bayern
Re: BUGSY
Bin jetzt erst dazu gekommen es zu testen, wie ich mir schon gedacht hatte,darius676 hat geschrieben:treatsafe und Fullscreen = Problem mit PB -> bei fokuswechsel stürzt das PB programm ab.....
läuft im Vollbild mit eingeschaltenem Thread-Safe zumindest unter 640 * 480 und 1280 * 1024 absolut stabil,
der Wechsel des Fokus verursacht bei mir keinen Absturz.
Allerdings bleibt der Windows-Cursor sichtbar wenn das Programm wieder aktiviert wird,
ist aber auch nicht für OpenScreen programmiert worden, daher wahrscheinlich auch nicht sehr verwunderlich.
PB 4.00 | Windows XP Home SP3
Re: BUGSY
Habe den Cursor durch ShowCursor() entfernen können:
Mir sind noch zwei Sachen aufgefallen. Zum einen stimmen bei mir die Positionen des Windows-Cursors, trotz identischer Auflösung von Desktop und Screen, nicht mit denen von MouseX() und MouseY() überein.
Ich glaube das hängt vielleicht mit der schon im MSDN-Artikel erwähnten Sache zusammen, das im Grunde nur dieser eine Befehl für Mäuse mit einer sehr hohen DPI geeignet ist.
Wobei im OpenWindowedScreen gibt es keinen Unterschied zwischen den Positionen der beiden Cursor.
Und zum anderen ist StartDrawing()/StopDrawing() in der Schleife bei mir so gut wie Verzögerungsfrei, im Gegensatz zu dem DisplaySprite()-Befehl.
Könnte aber auch an meiner veralteten PB-Version liegen, was ich ändern werde, habe keine Lust mehr immer den Code anzupassen.
Habe es zusätzlich noch mit Pointern auf MouseX und MouseY versucht, half aber auch nicht die Verzögerungen von DisplaySprite() zu umgehen.
Ausserdem glaube ich das die Probleme mit den Abstürzen die darius676 erwähnt hat erst entstehen wenn man solche Befehle für den Thread wie PauseThread() oder ResumeThread() verwendet.
Kann natürlich auch sein dass es an etwas ganz anderem liegt.
Trotzdem ist ein Thread anscheinend leider auch nicht für 'Highdefinition Mouse Movements' geeignet, aber ich denke um eine mögliche Limitierung durch die Bildsynchronisation zu vermeiden möglicherweise schon.
Edit: ReleaseMouse() hinzugefügt, ohne gibt es ein Problem beim Taskwechsel.
Code: Alles auswählen
If IsScreenActive() = 0
mousethread(#False)
ReleaseMouse(1)
While IsScreenActive() = 1
Delay(10)
Wend
ReleaseMouse(0)
ShowCursor_(#False)
CreateThread(@mousethread(),#True)
EndIf
Ich glaube das hängt vielleicht mit der schon im MSDN-Artikel erwähnten Sache zusammen, das im Grunde nur dieser eine Befehl für Mäuse mit einer sehr hohen DPI geeignet ist.
Wobei im OpenWindowedScreen gibt es keinen Unterschied zwischen den Positionen der beiden Cursor.
Und zum anderen ist StartDrawing()/StopDrawing() in der Schleife bei mir so gut wie Verzögerungsfrei, im Gegensatz zu dem DisplaySprite()-Befehl.
Könnte aber auch an meiner veralteten PB-Version liegen, was ich ändern werde, habe keine Lust mehr immer den Code anzupassen.
Habe es zusätzlich noch mit Pointern auf MouseX und MouseY versucht, half aber auch nicht die Verzögerungen von DisplaySprite() zu umgehen.
Ausserdem glaube ich das die Probleme mit den Abstürzen die darius676 erwähnt hat erst entstehen wenn man solche Befehle für den Thread wie PauseThread() oder ResumeThread() verwendet.
Kann natürlich auch sein dass es an etwas ganz anderem liegt.
Trotzdem ist ein Thread anscheinend leider auch nicht für 'Highdefinition Mouse Movements' geeignet, aber ich denke um eine mögliche Limitierung durch die Bildsynchronisation zu vermeiden möglicherweise schon.
Edit: ReleaseMouse() hinzugefügt, ohne gibt es ein Problem beim Taskwechsel.
PB 4.00 | Windows XP Home SP3
- darius676
- Beiträge: 512
- Registriert: 08.03.2010 22:12
- Computerausstattung: Intel i5 16GB RAM nVidia 1050, Win11
Atari Jaguar, Surface Pro 5,Surface Laptop i5 7200, XBOX ONE X, XBOX Series X - Wohnort: AT
- Kontaktdaten:
Re: BUGSY
Hi Volks:
eine "alte" VERsion der LUCY Engine (mit spiel:"BUGSY")
http://www.file-upload.net/download-288 ... E.zip.html
(diese version wird nicht mehr weiterentwickelt)
Features der neuen Engine:
situationen welche mit Delay() gelöst wurden sind durch timerroutine ersetzt.
object handling wurde von #konstanten auf strings geändert
erweiterte objektsteuerung.
komplette überarbeitung der kollisionsroutine mit komplettem player+object/object+object check. (Parasite/Plastic Zombies), erkennbar daran dass, alle objekte miteinander interagieren
alle auswertungen in actionselector ausgelagert.
joystic/maus/keyboard verwaltung überarbeitet und verbessert.
objekt-garbage - collector. objekt manager wurde erweitert.
scaler verbesserungen.
unterschiedlichste routinen überarbeitet / neu organisiert.
reihenfolge von abfragen angepasst/optimiert.
MapManager/LevelManager eingebaut.
Module/soundplayer routine überarbeitet.
einige logic-fehler (doppelt gemoppelt) entfernt.
SGFX() wurde komplett aus der FWORLD() entfernt
und ist jetzt eigenständig. (behob das "tileshifting" aus einer der ersten "Parsite" versionen)
viele SGFX() routninen getauscht überarbeitet
simple AI()
Layerbehandlung wurde komplett überarbeitet.Performancesteigerung ins unermessliche, da in der Engine keine for i=x to layer... notwendig sind. (LucyBuilder)
und viele kleine änderungen....

eine "alte" VERsion der LUCY Engine (mit spiel:"BUGSY")
http://www.file-upload.net/download-288 ... E.zip.html
(diese version wird nicht mehr weiterentwickelt)
Features der neuen Engine:
situationen welche mit Delay() gelöst wurden sind durch timerroutine ersetzt.
object handling wurde von #konstanten auf strings geändert
erweiterte objektsteuerung.
komplette überarbeitung der kollisionsroutine mit komplettem player+object/object+object check. (Parasite/Plastic Zombies), erkennbar daran dass, alle objekte miteinander interagieren
alle auswertungen in actionselector ausgelagert.
joystic/maus/keyboard verwaltung überarbeitet und verbessert.
objekt-garbage - collector. objekt manager wurde erweitert.
scaler verbesserungen.
unterschiedlichste routinen überarbeitet / neu organisiert.
reihenfolge von abfragen angepasst/optimiert.
MapManager/LevelManager eingebaut.
Module/soundplayer routine überarbeitet.
einige logic-fehler (doppelt gemoppelt) entfernt.
SGFX() wurde komplett aus der FWORLD() entfernt
und ist jetzt eigenständig. (behob das "tileshifting" aus einer der ersten "Parsite" versionen)
viele SGFX() routninen getauscht überarbeitet
simple AI()
Layerbehandlung wurde komplett überarbeitet.Performancesteigerung ins unermessliche, da in der Engine keine for i=x to layer... notwendig sind. (LucyBuilder)
und viele kleine änderungen....

Re: BUGSY
hehe, geschaft.
Also, in den paar Levels macht das Spiel Spass, jedoch würde ich auf Dauer etwas mehr Abwechslung einbauen. Gibt es da überhaupt einen Unterschied zwischen den Spiders und den Baseskulls außer im Aussehen?
Was mich vorallen Anfangs störte war, das man nur in vier Richtung zielen kann. Gegen die derzeitige KI, kann man sich damit aber ganz gut wehren. Des weiteren finde ich deine Evilplants doch ein wenig zu übertrieben für meine Leertaste. Ich drücke jedes mal wie ein irrer drauf, damit ich Sie endlich wegbekomme. Entweder sollte es ein Dauerfeuer geben, oder eine andere Möglichkeiten die Pflanzen zu besiegen. (oder ich besorg mir eine Turbotaste)
Edit: Beitrag gehört nach diesem Beitrag
Also, in den paar Levels macht das Spiel Spass, jedoch würde ich auf Dauer etwas mehr Abwechslung einbauen. Gibt es da überhaupt einen Unterschied zwischen den Spiders und den Baseskulls außer im Aussehen?
Was mich vorallen Anfangs störte war, das man nur in vier Richtung zielen kann. Gegen die derzeitige KI, kann man sich damit aber ganz gut wehren. Des weiteren finde ich deine Evilplants doch ein wenig zu übertrieben für meine Leertaste. Ich drücke jedes mal wie ein irrer drauf, damit ich Sie endlich wegbekomme. Entweder sollte es ein Dauerfeuer geben, oder eine andere Möglichkeiten die Pflanzen zu besiegen. (oder ich besorg mir eine Turbotaste)
Edit: Beitrag gehört nach diesem Beitrag
Zuletzt geändert von kswb73 am 15.10.2010 15:26, insgesamt 1-mal geändert.
Windows XP: PB 4.31, PB 4.4, PB 4.51
Open Suse 11.2: PB 4.4
Open Suse 11.2: PB 4.4
- darius676
- Beiträge: 512
- Registriert: 08.03.2010 22:12
- Computerausstattung: Intel i5 16GB RAM nVidia 1050, Win11
Atari Jaguar, Surface Pro 5,Surface Laptop i5 7200, XBOX ONE X, XBOX Series X - Wohnort: AT
- Kontaktdaten:
Re: BUGSY
Erst einmal Danke fürs testen.
(überigens: bitte unter "Parasite" posten, da "BUGSY" das Spiel mit den Spinnen ist und nicht mehr weiterentwickelt wird)
Wieviele Versuche hast du gebraucht? Teilweise ist es doch recht schwer? Besonders MAP4.
Wegen der Schüsse:
es fehlt noch eine "Egal" Einstellung für die Schüsse, es kommt vor, dass diese sich gegenseiteig vernichten und daher wird nur der letzte Schuss effektiv an den Gegner geführt.
Grundsätzlich sollte das Spiel mit Joypad/Stick gespielt werden.
die Engine Mapt einfach alle Keyboard Eingaben auf die jeweiligen Joysick Eingaben/Tasten und wertet diese dann aus.
aktuell wird folgedendes ausgewertet: [SPACE] = Joypad - Feuer (A), [COURSOR]-Keys = Joypad Digicross, [ENTER] = Joypad (START)
es gibt noch jede Menge verbesserungswürdiger Dinge:
Andere Gegnertypen.
Mehr Waffen.
Mehr Möglichkeiten die Maps zu beenden.
dies lässt sich alles einbauen und erweitern (zeit/idee)
z.B.: gefährliche Vögel (Raben)
Pflanzen die den Spieler angreifen.
Labyrinth - Maps (Einbahn Maps)
Einige kleine interne Engine - Probleme:
Weitere Optimierung des Objekthandlings. (Lösung schon in Sicht
)
Geschwindigkeitssteigerung bei der Objektsituationsauswertung.
und viel kleine Baustellen die der Spieler gar nicht sieht....

(überigens: bitte unter "Parasite" posten, da "BUGSY" das Spiel mit den Spinnen ist und nicht mehr weiterentwickelt wird)

Wieviele Versuche hast du gebraucht? Teilweise ist es doch recht schwer? Besonders MAP4.
Wegen der Schüsse:
es fehlt noch eine "Egal" Einstellung für die Schüsse, es kommt vor, dass diese sich gegenseiteig vernichten und daher wird nur der letzte Schuss effektiv an den Gegner geführt.
Grundsätzlich sollte das Spiel mit Joypad/Stick gespielt werden.
die Engine Mapt einfach alle Keyboard Eingaben auf die jeweiligen Joysick Eingaben/Tasten und wertet diese dann aus.
aktuell wird folgedendes ausgewertet: [SPACE] = Joypad - Feuer (A), [COURSOR]-Keys = Joypad Digicross, [ENTER] = Joypad (START)
es gibt noch jede Menge verbesserungswürdiger Dinge:
Andere Gegnertypen.
Mehr Waffen.
Mehr Möglichkeiten die Maps zu beenden.
dies lässt sich alles einbauen und erweitern (zeit/idee)
z.B.: gefährliche Vögel (Raben)
Pflanzen die den Spieler angreifen.
Labyrinth - Maps (Einbahn Maps)
Einige kleine interne Engine - Probleme:
Weitere Optimierung des Objekthandlings. (Lösung schon in Sicht

Geschwindigkeitssteigerung bei der Objektsituationsauswertung.
und viel kleine Baustellen die der Spieler gar nicht sieht....
- darius676
- Beiträge: 512
- Registriert: 08.03.2010 22:12
- Computerausstattung: Intel i5 16GB RAM nVidia 1050, Win11
Atari Jaguar, Surface Pro 5,Surface Laptop i5 7200, XBOX ONE X, XBOX Series X - Wohnort: AT
- Kontaktdaten:
Re: BUGSY
Update 02.02.2011, Fehler in der Maussteuerung behoben?
Töte soviele Spinnen/Käfer wie möglich!
download unter
http://hosting.alexander-n.de/=NTMwLjEyOTY2NzI1MTc=
Töte soviele Spinnen/Käfer wie möglich!
download unter
http://hosting.alexander-n.de/=NTMwLjEyOTY2NzI1MTc=
Re: BUGSY
Hallo Darius,darius676 hat geschrieben:Update 02.02.2011, Fehler in der Maussteuerung behoben?
habe es jetzt mal kurz getestet, bei 500 Hz Polling Rate gibt es bei mir Aussetzer, der Cursor bleibt dann stehen, bei 125 Hz läuft alles einwandfrei.
Und es werden bei mir Mausklicks öfters mal nicht erfasst, klicke z. B. auf Start, aber das Spiel startet nicht. Kann aber leider nicht sagen ob es in den vorherigen Versionen ebenfalls schon der Fall war.
PB 4.00 | Windows XP Home SP3