Armed-Assault.de Twitter
Antwort
 
Themen-Optionen Ansicht
Alt 22.03.2014, 12:10   #1 (permalink)
50 Beiträge100 Beiträge
 
Registriert seit: 24.02.2014
Beiträge: 100
Standard CreateUnit Init section

Hallo,

ich komme nicht weiter und wollten heute meine Mission los spielen >.<

Folgendes, nach dem ich gemerkt habe das sich nur maximal 144 Einheiten pro Seite erstellen lassen muss ich umdenken um Städte zu bevölkern. Was sogar ressourcen schonend ist sie einfach per Script spawnen zu lassen.

Bei verlassen der Stadt dann einfach wieder löschen, habe ich und klappt toll

Nun aber mein anderes Problem mit CreateUnit und dem Init teil.

Ich rufe bei meinen Zivis folgendes auf:
Code:
this addAction [localize "STR_ZIVI_01", "peoples.sqf", [this,"zufall"], -1, false, True, "", "(_target distance _this) < 2"]
Was macht es, es ruft die peoples.sqf auf und gibt mir eben meinen gewünschten teil aus dieser Datei. Und das soll so beibehalten sein.

Jedoch wenn ich jetzt mit CreatUnit arbeite habe ich es so gemacht:
Code:
veh1 = grp01 createunit ["C_man_w_worker_F",getMarkerPos "spawn", [this addAction [localize "STR_ZIVI_01", "peoples.sqf", [this,"info1"], -1, false, True, "", "(_target distance _this) < 2"]], 0, "none"];
Aber danach spawnt die Einheit nicht mehr oO

mit:
Code:
veh1 = grp01 createunit ["C_man_w_worker_F",getMarkerPos "spawn", [], 0, "none"];
geht es, habe schon versucht mit ["Code"] oder nur "" oder nichts oO
Wie gesagt der CreateUnit Code alleine klappt aber sobald ich die INIT befülle ist es vorbei!

In der beschreibung steht ja drin das es der Bereich für die INIT ist und bei den Modellen wenn ich sie direkt platziere klappt mein code oben doch auch oO
https://community.bistudio.com/wiki/createUnit


Was mache ich da schon wieder falsch

mfg
Sajiki
Sajiki ist offline   Mit Zitat antworten
Alt 22.03.2014, 14:35   #2 (permalink)
10 Jahre hx3
5000 Beiträge
 
Benutzerbild von Duke49th
 
Registriert seit: 06.10.2006
Ort: Manila
Alter: 38
Beiträge: 7.959
Standard

Als jemand mit schwacher Hardware, mein Tipp: Warte bis DAC fertig ist. Dieses erstellt bei Missionsbeginn alle Einheiten und reduziert dann alles bis auf den Lead.

Beim Wiederherstellen der Einheiten die zum Lead gehören, gibt es weniger Ruckler, als wenn eine ganze Gruppe erstellt wird.

Ich habe das vor allem bemerkt als einer aus unserer Staffel bei seiner Mission Gruppen per Trigger hat erstellen lassen.

Beim Spawnen von von Gruppen werden wohl so viele Paramete und Daten erzeugt/abgefragt das dies eine deutlich größere Performance benötigt als wenn die nur wie im DAC Script reduziert werden. Ich glaube hier sind die Einheiten gecached (werden also nicht jedesmal komplett neu erstellt). Daher so vergleichsweise wenig Performanceeinbrüche.


Ausserdem gibts ein Addon welches die Insel mit Zivilisten belebt...weiss nur nicht mehr den Namen.


Ansonsten kann ich nicht viel dazu sagen, ausser das ich mich wundere warum Du der KI Einheit versuchst einen Actionmenü Eintrag zu verpassen?! (this addaction) - Was ja nicht geht..da KI...vielleicht gehts daher nicht...?
__________________

Intel Board | Intel i3 2100 |Dell 8GB DDR-3 1600 | AMD HD7770 1GB | Creative Audigy EX Platinum | TrackIR 5 | Win 10 Pro x64 | Linux Mint x64 | Coolermaster Modular 620W

Geändert von Duke49th (22.03.2014 um 14:38 Uhr).
Duke49th ist offline   Mit Zitat antworten
Alt 22.03.2014, 15:12   #3 (permalink)
500 Beiträge1000 Beiträge
 
Benutzerbild von Drunken Officer
 
Registriert seit: 15.05.2011
Beiträge: 1.109
Standard

Löscht denn DAC auch die Gruppen? Er hat ja das 144er Obergrenzenproblem.
Auch wenn nur der Führer da ist, ist es ein Gruppe.

Beim erstellen der Gruppen, kann man mit Sleep/ waitUntil / unitready arbeiten. Da dürfte es nicht so massiv reinhauen.

Und man kann einer KI sehrwohl einen Actioneintrag verpassen! z.B. wenn man sie retten oder gefangen nehmen will.

Probiere mal das hier:
veh1 = grp01 createunit ["C_man_w_worker_F",getMarkerPos "spawn", [veh1 addAction [localize "STR_ZIVI_01", "peoples.sqf", [this,"info1"], -1, false, True, "", "(_target distance _this) < 2"]], 0, "none"]
Drunken Officer ist offline   Mit Zitat antworten
Alt 22.03.2014, 15:25   #4 (permalink)
10 Jahre hx3
5000 Beiträge
 
Benutzerbild von Duke49th
 
Registriert seit: 06.10.2006
Ort: Manila
Alter: 38
Beiträge: 7.959
Standard

Der KI einen Actioneintrag verpassen?

Dann ist das wohl so gemeint, daß man selber einen Actioneintrag hat, wenn man der KI begegnet? Weil...die KI hat ja keine 3. Maustaste^^
Ok...in dem Fall verstehe ich es...dachte aber man verpasst dazu dem Spieler ein Actioneintrag...!?

@DAC: So wie ich das in Erinnerung habe, löscht DAC nix, ausser maximal die Einheiten, abseits vom Lead. Und 144 Gruppen muss man erstmal erstellen^^

Frage mich gerade was für ein Rechenzentrum man dazu braucht
(Das ist ja 144 pro Seite...und man will ja auch noch was machen..also noch mehr Skripte, Einheiten usw.)
P.s.: Sorry für OT...
__________________

Intel Board | Intel i3 2100 |Dell 8GB DDR-3 1600 | AMD HD7770 1GB | Creative Audigy EX Platinum | TrackIR 5 | Win 10 Pro x64 | Linux Mint x64 | Coolermaster Modular 620W

Geändert von Duke49th (22.03.2014 um 15:28 Uhr).
Duke49th ist offline   Mit Zitat antworten
Alt 22.03.2014, 19:26   #5 (permalink)
50 Beiträge100 Beiträge
 
Registriert seit: 24.02.2014
Beiträge: 100
Standard

Zitat von Duke49th Beitrag anzeigen

Als jemand mit schwacher Hardware, mein Tipp: Warte bis DAC fertig ist. Dieses erstellt bei Missionsbeginn alle Einheiten und reduziert dann alles bis auf den Lead.

Beim Wiederherstellen der Einheiten die zum Lead gehören, gibt es weniger Ruckler, als wenn eine ganze Gruppe erstellt wird.

Ich habe das vor allem bemerkt als einer aus unserer Staffel bei seiner Mission Gruppen per Trigger hat erstellen lassen.

Beim Spawnen von von Gruppen werden wohl so viele Paramete und Daten erzeugt/abgefragt das dies eine deutlich größere Performance benötigt als wenn die nur wie im DAC Script reduziert werden. Ich glaube hier sind die Einheiten gecached (werden also nicht jedesmal komplett neu erstellt). Daher so vergleichsweise wenig Performanceeinbrüche.


Ausserdem gibts ein Addon welches die Insel mit Zivilisten belebt...weiss nur nicht mehr den Namen.

Aus dem Grund das externe spawnen jetzt


Zitat von Duke49th Beitrag anzeigen

Ansonsten kann ich nicht viel dazu sagen, ausser das ich mich wundere warum Du der KI Einheit versuchst einen Actionmenü Eintrag zu verpassen?! (this addaction) - Was ja nicht geht..da KI...vielleicht gehts daher nicht...?

Weil ich dem Spieler die Möglichkeiten gebe die Bevölkerung zu befragen und dem entsprechend manchmal hilfreiche Informationen gibt die dem Leader helfen


Zitat von Drunken Officer Beitrag anzeigen

Probiere mal das hier:
veh1 = grp01 createunit ["C_man_w_worker_F",getMarkerPos "spawn", [veh1 addAction [localize "STR_ZIVI_01", "peoples.sqf", [this,"info1"], -1, false, True, "", "(_target distance _this) < 2"]], 0, "none"]

Leider nein, damit funzt der komplette eintrag nicht mehr und das Script stürzt ab :/

mfg
Sajiki
Sajiki ist offline   Mit Zitat antworten
Alt 23.03.2014, 16:06   #6 (permalink)
50 Beiträge100 Beiträge
 
Registriert seit: 24.02.2014
Beiträge: 100
Standard

ERLEDIGT

und für andere weil ich kein Unmensch bin
Code:
createUnit [getMarkerPos "spawn",grp01,"this setVehicleVarName 'veh1'; this addAction [localize 'STR_ZIVI_01','peoples.sqf', [this,'zufall'], -1, false, True, '', '(_target distance _this) < 2']"
];
mfg
Sajiki
Sajiki ist offline   Mit Zitat antworten
Alt 25.03.2014, 12:58   #7 (permalink)
50 Beiträge100 Beiträge
 
Registriert seit: 24.02.2014
Beiträge: 100
Standard

Ich muss mein Thema leider wieder hoch holen

Also es geht dieses mal darum die Einheit zu löschen die ich erstellt habe. Sitze schon seit zwei Tagen dran ohne Erfolg :/

Die Einheit wird so nun erstellt:
Code:
grp01 = creategroup civilian;
			veh1 = "C_man_polo_6_F"
			createUnit [getMarkerPos "spawn_town01_01",grp01,"this setVehicleVarName 'veh1'; this addAction [localize 'STR_ZIVI_01', 'people.sqf', [this,'zufallfeind'], -1, false, True, '', '(_target distance _this) < 2']"];
Das ganze wird über eine Switch funktion gesteuert falls das wichtig ist.


Wenn ich nun aber meine Eihnheit wieder löschen möchte habe ich folgendes genommen was bis jetzt immer klappte:
Code:
deleteVehicle veh1;
klappt aber nicht. Bereits getestet:
Code:
deleteVehicle veh1;
Code:
deleteVehicle grp01;
Code:
			deleteGroup grp01;
			deleteVehicle veh1;
Code:
{deleteVehicle veh1} forEach allUnits;
Code:
{deleteGroup grp01} forEach allUnits;


mfg
Sajiki
Sajiki ist offline   Mit Zitat antworten
Alt 25.03.2014, 13:12   #8 (permalink)
SQF Zauberer 10 Jahre hx3
500 Beiträge1000 Beiträge
 
Benutzerbild von Vienna
 
Registriert seit: 12.07.2004
Ort: Wien
Beiträge: 1.917
Standard

In veh1 steht ja jetzt der String "C_man_polo_6_F"

Das löscht alle Einheiten der Gruppe grp01:

{deleteVehicle _x} forEach units grp01;
Vienna ist offline   Mit Zitat antworten
Alt 25.03.2014, 14:00   #9 (permalink)
50 Beiträge100 Beiträge
 
Registriert seit: 24.02.2014
Beiträge: 100
Standard

Zitat von Vienna Beitrag anzeigen

In veh1 steht ja jetzt der String "C_man_polo_6_F"

ich idiot! Das ist mir gar nicht aufgefallen, dann kann ich ja lange nach veh1 greifen :/

Zitat von Vienna Beitrag anzeigen

Das löscht alle Einheiten der Gruppe grp01:

{deleteVehicle _x} forEach units grp01;

Danke Damit kann ich weiter bauen, hat dir schon mal wer gesagt wie schlau du bist?!

mfg
Sajiki
Sajiki ist offline   Mit Zitat antworten
Alt 25.03.2014, 16:34   #10 (permalink)
500 Beiträge1000 Beiträge
 
Benutzerbild von Drunken Officer
 
Registriert seit: 15.05.2011
Beiträge: 1.109
Standard

Denke daran, dass es die Gruppe noch gibt, auch wenn alle Einheiten tot sind. Du solltest also auch die Gruppe löschen, wenn du sie nimmer brauchst
Drunken Officer ist offline   Mit Zitat antworten
Alt 25.03.2014, 16:47   #11 (permalink)
50 Beiträge100 Beiträge
 
Registriert seit: 24.02.2014
Beiträge: 100
Standard

Zitat von Drunken Officer Beitrag anzeigen

Denke daran, dass es die Gruppe noch gibt, auch wenn alle Einheiten tot sind. Du solltest also auch die Gruppe löschen, wenn du sie nimmer brauchst

Hab ich mir schon gedacht Aber danke trotzdem für das aufmerksam machen
Sajiki ist offline   Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Mehrere Probleme: ### CBA Modul / Init Zeile ### Martinerf Editing & Scripting 3 23.03.2014 08:14
Problem mit zweier Init Befehle Akrinor_GER Editing & Scripting 10 05.11.2012 16:33
KI Spawn? Lancer Editing & Scripting 21 18.06.2012 12:37
Hilfe bei Funktion um Gegnerspawns zu erstellen Ante G. Editing & Scripting 10 25.11.2010 17:26
doppelter Spawn mit createUnit & createVehicle spaccy Editing & Scripting 11 23.11.2010 18:14


Kontakt - HX3.de - Archiv - Nach oben

Angetrieben durch vBulletin, Entwicklung von Philipp Dörner & Tobias



SEO by vBSEO 3.2.0 ©2008, Crawlability, Inc.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116