Seite: 1 [2] [3] [4] [5] [6] [7] [8] [9] [10] .. [22] [23] >> |
Autor |
Mitteilung |
|
verfasst am: 13.08.2009, 12:25
|
Registrierdatum: 22.08.2008, 15:51
Beiträge: 403
|
|
|
verfasst am: 13.08.2009, 20:23
|
Admin, Spielsatz GalWar
Registrierdatum: 31.08.2005, 21:51
Beiträge: 5596
|
Der Spielsatz ist jetzt auch im Mantis unter "X-Force Gamesets" korrekt eingebunden, und Kreks kann dort die Tickets selber editieren. |
|
verfasst am: 14.08.2009, 11:16
|
Registrierdatum: 22.08.2008, 15:51
Beiträge: 403
|
Cool, danke. |
|
verfasst am: 18.08.2009, 21:57
|
Registrierdatum: 22.08.2008, 15:51
Beiträge: 403
|
Der Vollständigkeit halber erwähne ich, dass es eine neue Version des Spielsatzes gibt, allerdings gibt es keine spieltechnischen Neuerungen (außer ein Gürtel für Speedy). Das einzige was sich geändert hat, ist, dass der Spielsatz jetzt zum Teil auf Englisch übersetzt ist.
Wie gesagt, der Vollständigkeit halber:
http://www.filefront.com/14314841/ww.pak/ |
|
verfasst am: 19.08.2009, 07:29
|
Registrierdatum: 26.06.2008, 13:42
Beiträge: 648
|
Also ich sehe den Gürtel als bedeutende Neuerung! :) |
|
verfasst am: 27.08.2009, 13:19
|
Registrierdatum: 26.08.2009, 12:44
Beiträge: 1
|
Ich hab jetzt mal den Spielsatz ausprobiert und scheiter andauernd an der Mission wo ich den Spion befreien muss. Sobald ich den letzten (echten) Gegner töte verlier ich nach Beenden der Runde mit der Meldung, dass die Informationen wichtig sind.
Das ist unabhängig davon ob ich den Spion vorher gefunden habe oder nicht, ob noch einen Platz im Transporter frei habe und anscheinend auch vo der Rundenzahl.
Bitte was muss ich machen um die Mission positiv abzuschliessen, oder geht das in der momentanten Version noch nicht? |
|
verfasst am: 27.08.2009, 16:01
|
Spielsatz Alliances
Registrierdatum: 14.07.2004, 14:47
Beiträge: 1185
|
Derzeit läuft es so ab:
Du erschießt den letzten richtigen Gegner, und bei Beginn der nächsten Runde wird geprüft, wie viele Aliens ohc leben, da nur noch der Spion am Leben ist, liegt dieser Wert bei eins. Folglich erkennt das Programm die Mission als gewonnen an, setzt ein entsprechendes Flag und tötet auch den Spion. Mit dessen Tod wird aber die Prozedur aufgerufen, die beim Tod des Spions die Mission als verloren kennzeichnen soll, inc. aller Folgen. Dort wird das Flag zwar abgefragt, welches das ordnungsgemäße Besiegen der ALiens (ohne Verlust des Spions) kennzeichnen soll, aber der Befehl, der das Gameover verursachen soll, falls der Spion nicht gerettet wurde, steht außerhalb des entsprechenden if-Blocks. Ergo wird es immer zum Gameover kommen, sobald der Spion stirbt - auch, wenn man ihn rettet (da er in dem Fall ja vom Skript getötet wird; weil sich der BE nicht anders beenden lässt).
Oder, ganz kurz für Kreks: Verschieb das game_api_GameOver in MakeLose eine Zeile nach oben ;-) |
|
verfasst am: 28.08.2009, 11:19
|
Registrierdatum: 22.08.2008, 15:51
Beiträge: 403
|
Zitat: sujin Oder, ganz kurz für Kreks: Verschieb das game_api_GameOver in MakeLose eine Zeile nach oben ;-)
Ups, ist mir wohl beim nachträglichen editieren passiert. Danke. |
|
verfasst am: 28.08.2009, 21:04
|
Registrierdatum: 27.06.2007, 12:16
Beiträge: 658
|
Ich hab für die Englische Version d. Spielsatzes hier 2328 einige Übersetzungen hochgeladen. |
|
verfasst am: 28.08.2009, 22:38
|
Registrierdatum: 11.06.2009, 18:38
Beiträge: 84
|
Konzept zu moralischen Entscheidungen und deren Auswirkungen
Da du ja im englischsprachigen Forum gefragt hast, wie man die moralischen Entscheidungen besser ins Spiel einbeziehen könnte, mache ich hier mal ein paar Vorschläge:
(Ich weiß nicht ob du andere Pläne hast, oder ob das überhaupt umsetzbar ist.)
- Die Basis des Konzepts bilden zwei Zahlenwerte (globale Integervariablen):
1. Die Haltung der Bevölkerung gegenüber der Gruppe, z.B. von -1000 (für starke Ablehnung) bis 1000 (die Bevölkerung ist begeistert und unterstützt die Rebellen)
Je größer der Wert ist, desto mehr Unterstützung erhält man, je kleiner der Wert ist, desto mehr ist man verhasst, einige menschen verraten William Walker an das Bündnis (???)
2. Ein Wert , inwiefern die Regierung (Aliens des Bündnisses und Menschen) gegen die Rebellen vorgehen.
Z.B. von 0 (Das Bündnis weiß quasi nichts von den Rebellen) bis 1000 (Staatsfeind Nr 1, alles wird mobilisiert um WW zu fassen).
Der Wert beeinflusst, wie viele Ufos die Basis suchen, wie stark Waffenfabriken bewacht sind etc.
Auf diesen zwei Werten kann dann alles andere aufgebaut werden.
Beispiel:
Wenn man ein Silo überfällt, erhöht sich die Regierungsaufmerksamkeit leicht, zusätzlich verschlechtert sich der Ruf bei der Bevölkerung.
Wenn man hingegen ein Waffenlabor überfällt, erhöht sich die Aufmerksamkeit drastisch, bei der Beliebtheit gibt es mehrere Möglichkeiten:
- wenn man ohnehin verhasst ist (Beliebtheit negativ), finden die Menschen diesen Überfall sicherlich auch nicht gut
- ist man in den Augen der Menschen jedoch der geborene Held und Befreier, werden sie den Sabotageakt gut finden usw...
So kann man für jedes Ereignis Effekte auf diese Werte vorsehen, um die moralischen Konsequenzen zu simulieren.
Auch Ereignisse, die aus bestimmten Werten hervorgehen sind denkbar. Z.B. könnte das Bündnis gezielt Propaganda ausstrahlen, um den Rückhalt für WW in der Bevölkerung zu schwächen. Dieses Ereignis (mit passendem tagebucheintrag) würde dann ausgelöst, wenn der Aufmerksamkeitswert ein best. Limit überschreitet
Es sind sicher noch andere Effekte denkbar. Das ist ersteinmal das Grundgerüst.
Was haltet ihr davon?
Felix |
|
verfasst am: 29.08.2009, 03:14
|
Registrierdatum: 27.06.2007, 12:16
Beiträge: 658
|
@Felix
Ein ähnliches Konzept habe ich vor kurzem in meinem Spielsatz eingeführt, allerdings arbeitet dies auf Basis eines "Scores". Ab erreichen einer gewissen Punktzahl (die in meinem Spielsatz von UFO Abschüssen und Einsätzen abhängt, andere Faktoren werden noch eingebaut) werden bestimmte Bonusgegenstände freigeschaltet. Das alles wird mit globalen Variablen und game_api_SetInteger/game_api_GetInteger gesteuert.
Falls also irgendwer programmiertechnische Unterstützung braucht, kann ich da weiterhelfen, da ich bereits fertige Skripte dafür besitze und nur nach belieben umwandeln muss. |
|
verfasst am: 29.08.2009, 11:45
|
Registrierdatum: 22.08.2008, 15:51
Beiträge: 403
|
Der Verrat ist schon eingeplant, wie auch der Umgang mit dem Verräter. Die Regierungsaufmerksamkeit für die Silos steht schon in den Startlöchern für die nächste Version.
Zitat: Felix - wenn man ohnehin verhasst ist (Beliebtheit negativ), finden die Menschen diesen Überfall sicherlich auch nicht gut
- ist man in den Augen der Menschen jedoch der geborene Held und Befreier, werden sie den Sabotageakt gut finden usw...
Find ich gut, dass ist ein besserer Ansatz als ich ihn hatte.
@Betty: Danke für die Übersetzung, die ist jetzt einmal komplett. Falls dein Script über Zählervariablen aund deren Abfrage hinausgeht, kannst du es ja mal posten. |
|
verfasst am: 29.08.2009, 21:07
|
Registrierdatum: 27.06.2007, 12:16
Beiträge: 658
|
Kleines Beispiel aus der 0.47 Spielsatzversion von Apocalypse. Das selbe Prinzip wird auch in Galwar eingesetzt, hatte aber 'ne Weile gebraucht bis ich rausgefunden hab wie genau das geht...
wenn man also eine globale Integervariable haben möchte muss man zuerst folgende Zeilen im Code eingeben:
game_api_RegisterInteger('STA_Aliens');
game_api_SetInteger('STA_Aliens',0);
In dem Falle wird bei meinem Spielsatz die Anzahl der Aliens gezählt und fängt deswegen bei 0 an. (STA steht für statisic)
Diese Zeilen müssen in ein Initialisierungsskript eingefügt sein, das bei Spielstart ausgeführt wird.
Wenn mal also ein Alien zählen will muss das Ganze um 1 erhöht werden. Dies wird mit folgenden Code Zeilen erreicht:
procedure SY002Misc_RegisterAlien;
begin
STA_Aliens:=game_api_GetInteger('STA_Aliens')+1;
game_api_SetInteger('STA_Aliens',STA_Aliens);
end;
Eigentlich ganz einfach.
Wichtig: die variable STA_Aliens ist hier NICHT die global rgistrierte Integervariable STA_Aliens, wie in game_api_RegisterInteger festgelegt.
SY002Misc_RegisterAlien wird dann via uses von anderen Skripten aufgerufen, die eine Zählung der Aliens erforderlich machen.
Falls der Wert zeitlich versetzt und kontinuierlich überprüft werden soll, ist es ratsam, die jeweilige Prozedur mit einem register_timed_event abzufragen. Dieses Skript muss dann natürlich ebenfalls bei Spielstart aufgerufen werden und auch kontinuierlich laufen (also keine mission_win etc. darf vorhanden sein) |
|
verfasst am: 29.08.2009, 23:36
|
Registrierdatum: 11.06.2009, 18:38
Beiträge: 84
|
Hab mir grad nochmal den Spielsatz geladen.
Kann es sein, dass einige Rechtschreibfehler, die ich schon gemeldet hatte, übersehen wurden?
Ich wollte nämlich grade die noch nicht korrigierten Texte durchlesen, da ist mir aufgefallen, dass einige Fehler noch drin sind, und zwar in den ersten Tagebucheinträgen. |
|
verfasst am: 30.08.2009, 00:03 · Edited by: sujin
|
Spielsatz Alliances
Registrierdatum: 14.07.2004, 14:47
Beiträge: 1185
|
Zitat: BlackBetty Diese Zeilen müssen in ein Initialisierungsskript eingefügt sein, das bei Spielstart ausgeführt wird.
Oder man fügt es einfach bei den Schwierigkeitsgraden im Editor hinzu, dann kann man sich das sparen weil die Globale Var bei Spielstart schon längst vorhanden ist.
Zitat: BlackBetty Wenn mal also ein Alien zählen will muss das Ganze um 1 erhöht werden. Dies wird mit folgenden Code Zeilen erreicht:
Geht kürzer: game_api_SetInteger('STA_Aliens', game_api_GetInteger('STA_Aliens')+1);
Man spart sich eine Variable und eine Zeile, und imho ist es dabei noch gut lesbar (im Gegensatz zu manchen anderen Verschachtelungen).
Zitat: BlackBetty Falls der Wert zeitlich versetzt und kontinuierlich überprüft werden soll, ist es ratsam, die jeweilige Prozedur mit einem register_timed_event abzufragen.
Das Event muss sich aber wiederholen:
var
Event: TTimerEvent;
// sonstiger Kram
procedure StartMission;
begin
Event:= register_timed_event(@WerteChecken, nil, xx); // nach xx Minuten WerteChecken(nil) ausrufen...
Event.Repeating:= true // ... und zwar immer wieder
end;
Oder man nimmt event_special_OnNewDay, also immer um 0 Uhr. Das sollte eigentlich ausreichend genau sein für die Auswirkungen von Vertrauensverlust/AUfmerksamkeitszuwachs. Es ginge in dem Skript ja sowieso nur um die weitergehenden Auswirkungen, die Änderung selbst muss in den entsprechenden Skripten geschehen...
register_event(@WenigerVertrauen, SiloEinsatz, Event_OnGroundFinished) |
|
verfasst am: 30.08.2009, 13:36
|
Registrierdatum: 22.08.2008, 15:51
Beiträge: 403
|
@Felix: Es ist ausgebessert aber es ist schon etwas her, dass ich den Spielsatz hochgeladen hab und scheinbar hab ich bis dato noch nicht alle Fehler ausgebessert gehabt.
@Betty: Danke, aber ich dachte du hast etwas, dass über Zählervariblen hinausgeht. |
|
verfasst am: 22.09.2009, 16:05
|
Registrierdatum: 22.08.2008, 15:51
Beiträge: 403
|
|
|
verfasst am: 07.10.2009, 15:41
|
Registrierdatum: 22.08.2008, 15:51
Beiträge: 403
|
Hab ich mich eigentlich so schlecht angestellt, dass sich niemand traut mir die traurige Wahrheit zu sagen? |
|
verfasst am: 07.10.2009, 18:40
|
Registrierdatum: 06.10.2009, 19:31
Beiträge: 16
|
Sind die Bauzeiten nicht ein bischen übertrieben? |
|
verfasst am: 08.10.2009, 16:59
|
Registrierdatum: 22.08.2008, 15:51
Beiträge: 403
|
Die sind so hoch, damit die niemand baut. Es sollen einmalige Gebäude sein, doch wenn man sie deaktiviert kommt es zu Anzeigefehlern. |
Seite: 1 [2] [3] [4] [5] [6] [7] [8] [9] [10] .. [22] [23] >> |