BUGSY

Spiele, Demos, Grafikzeug und anderes unterhaltendes.
Benutzeravatar
dllfreak2001
Beiträge: 2925
Registriert: 07.09.2004 23:44
Wohnort: Bayern

Re: BUGSY

Beitrag von dllfreak2001 »

^^
I´a dllfreak2001
Rebon
Beiträge: 263
Registriert: 20.05.2009 19:13

Re: BUGSY

Beitrag von Rebon »

darius676 hat geschrieben:treatsafe und Fullscreen = Problem mit PB -> bei fokuswechsel stürzt das PB programm ab.....
Bin jetzt erst dazu gekommen es zu testen, wie ich mir schon gedacht hatte,
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
Rebon
Beiträge: 263
Registriert: 20.05.2009 19:13

Re: BUGSY

Beitrag von Rebon »

Habe den Cursor durch ShowCursor() entfernen können:

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
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.
PB 4.00 | Windows XP Home SP3
Benutzeravatar
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

Beitrag von darius676 »

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....

:lurk:
Benutzeravatar
kswb73
Beiträge: 319
Registriert: 04.02.2008 16:51
Kontaktdaten:

Re: BUGSY

Beitrag von kswb73 »

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
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
Benutzeravatar
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

Beitrag von darius676 »

Erst einmal Danke fürs testen. :D
(überigens: bitte unter "Parasite" posten, da "BUGSY" das Spiel mit den Spinnen ist und nicht mehr weiterentwickelt wird) :shock:

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....
Benutzeravatar
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

Beitrag von darius676 »

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=
Rebon
Beiträge: 263
Registriert: 20.05.2009 19:13

Re: BUGSY

Beitrag von Rebon »

darius676 hat geschrieben:Update 02.02.2011, Fehler in der Maussteuerung behoben?
Hallo Darius,
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
Antworten