Autor |
|
|
|
116 Beiträge - Gelegenheitsposter
|
|
|
Zitat Denn wer nicht fragt bleibt ewig Dumm. |
da hast du vollkommen recht, deshalb habt keine scheu hier eure fragen zu stellen,bei den MM seit ihr in guten Händen.
Gruß
Raven
|
Laechle, denn du kannst sie nicht alle toeten. |
Dieser Beitrag wurde 1 mal editiert, zuletzt von Raven-SHW- am 19.01.2009 - 14:22.
|
Beitrag vom 05.01.2009 - 11:58 |
|
|
|
Administrator 464 Beiträge - Fingerwundschreiber
|
|
|
Man sollte doch keinen Gerüchten glauben, außer denen die man selber in die Welt gesetzt hat.
Also, von der genannten Respawnzahl 256 muss ich Abstand nehmen. Ich habe das Ganze mal mit 6 unterschiedlichen Figuren getestet.
1 - [Cindo02] -- IC3: Indonesian Civilian #2 Female Surrender
2 - [Eindo01] -- Indonesian Soldier #1 with AK47 STANDING
3 - [Eindo03] -- Indonesian Soldier #3 with RPG STANDING
4 - [Eindo05] -- Indonesian Soldier #5 Female with Dragunov STANDING
5 - [Troic03] -- IC4: Tropical region Sldr #3 with AK47 STANDING
6 - [Snoic04] -- IC3: Snow region Female #4 with AK74 Medic
Das Ergebnis hat mich doch mal wieder erstaunt.
Nummer 2 - 6 Respawnzahl 60
Nummer 1 Respawnzahl 62
Also sollte die gesuchte Zahl so zwischen 60 und 62 liegen.
Ich habe mir zwar schnell eine Testmap mit einem Zählalgorithmus gebaut, aber dennoch weder Lust noch Zeit, alle Figuren zu erproben, dass können ja dann mal Andere machen.
Wenn ich mir die Zahl von Ghost so überschlage, hatte er ja mit min. 1200 Kills eine gute Abschussrate.
KR-Nevada
Dieser Beitrag wurde 1 mal editiert, zuletzt von KR-Nevada am 08.01.2009 - 21:32.
|
Beitrag vom 05.01.2009 - 18:52 |
|
|
|
Administrator 464 Beiträge - Fingerwundschreiber
|
|
|
@Ghost,
ich hoffe, dass deine Mailadresse noch stimmt, ich habe dir mal Post geschickt. Also gucks du.
"SIE HABEN POST"
KR-Nevada
|
Beitrag vom 06.01.2009 - 20:49 |
|
|
|
18 Beiträge - Grünschnabel
|
|
|
Ein bot soll den human player mit nen messer angreifen.
if (ssnnearssn(3487,player,3)
SSNmin(3487,1)
endif
nur er macht nix komisch obwohl ich den industractor mit knife genommen habe..
|
Beitrag vom 16.01.2009 - 01:08 |
|
|
|
Administrator 464 Beiträge - Fingerwundschreiber
|
|
|
Zitat Original geschrieben von Georg -GD-
Ein bot soll den human player mit nen messer angreifen |
Da sucht sich Einer Dinge aus, die nicht so einfach sind
Aber eine Antwort soll er natürlich haben:
Vorweg gesagt, ich weis zwar dass es geht, habe es aber selber nie probiert. Darum poste ich hier einfach mal ein Script, wie es geht. Es sind Einstellungen in NILE zu den einzelnen Bots notwendig und Eingriffe in der WAC-Datei. Im Script selber ist eigentlich alles logisch erklärt und für mich nachvollziehbar. Auch die Einstellungen im NILE sind logisch und machen Sinn.
Wac Script - for all you that like to knife in your maps here the code.
Code:
if never enter
set(v9,0)
SSNmax(XXXX,100)
SSNmin(xxxx,3)
SSNatt(xxxx,3)
endif
if not ssnalive(xxxx) and never enter
set(v9,1)
endif
PLOOP
if ssnnearssn(player,xxxx,3) and eq(v9,0) and ssnalive(player) enter
ssnaddhp(player, - 45)
ssnwave(xxxx,"psg1sil.wav",20)
endif
END
Now just a few things to cover before you go off trying to knife everyone. Think of it as you final-checklist. Will save a lot of headaches down the road.
This script only applies to the AL's that have knifing capabilities. (Meaning their actions is like knifing you).
If using Nile Mission Editor go to the edit section once you have choosen the correct Al. Check off the following boxes... A. Team Check 2. B. Accuracy1 and 2 Check 100%. C. Firer Timer Check 1. D. Spwans Check 0.(NOTE: MAKE SURE YOU PUT "0" FOR SPAWNING.) E. Vision Range Check 100. F. Min Attack Range Check 3. G. Max Attack Range Check 100.
By now your asking yourself why repeat action - meaning if I put max range in the wac script why do it again when I'm editing the al's in Nile editor. Because base through trial and error I have found this to work and be consistence with favorable results. If you happen to try it just through wac coding you'll end up with a whole different results towards a negative side.
Remember the whole ideal here is to simulate as real as possible the actions of an Al in the map. Trying to make the whole scene as believable as possible both w/sound as well as w/actions. REMEMBER TIMING IS EVERYTHING!
I will be coming-out with a new map shortly which will show you everything in detail of what I just posted. Sorry Guys in AW had to use IC for this one only for the fact the AL's I'm looking are there.
Also, dass alles ohne Garantie. Inwieweit du dich mittlerweile auskennst, kann ich nicht beurteilen, somit weis ich auch nicht ob dir das Script hilft, aber schau einfach mal. Wenn ich am Wochenende Zeit habe, probier ich es selber mal aus.
KR-Nevada
|
Beitrag vom 16.01.2009 - 13:22 |
|
|
|
|
RE |
|
|
18 Beiträge - Grünschnabel
|
|
|
Danke werde es heut abend mal probieren.
muss dieses script erstmal verstehen, da ich mit variablen und ploop noch nie was gemacht hab.
if never enter = habe keine ahnung was das heißen soll
set(v9,0) = setze variable v9 nach 0
SSNmax(XXXX,100) = maximaler radius BOTID, 100meter
SSNmin(xxxx,3) = minimaler radius Botid, 3meter -->weniger geht nicht da es in der "Modified_AI_of_IC" erwähnt wird
SSNatt(xxxx,3) = Setzt SSN Angriff auf maximale Entfernung
endif
if not ssnalive(xxxx) and never enter
set(v9,1)
endif = denk mir mal da wird überprüft ob der bot noch lebt
PLOOP = keine ahung was das bedeutet
if ssnnearssn(player,xxxx,3) and eq(v9,0) and ssnalive(player) enter
ssnaddhp(player, - 45)
ssnwave(xxxx,"psg1sil.wav",20)
endif
END
= mal sehn ob ich das verstehe, wenn player in der nähe von 3metern des bots steht und die variable 9v,0 stimmt-->also wenn bot noch lebt
Dann soll bot den player umbringen und dabei so der ton "psg1.." ausgeben werden.
ssnaddhp(player, - 45) = weis ich nicht was das heißen soll besonders die -45 für was das steht.
ich hoffe ich bin auf dem richtigen weg.
in der "Modified_AI_of_IC" steht das drin:
"10.) Soldier with KNIFE
They try use KNIFE if target is within 3 meter. (Sorry, no graphic for Knife)
Need set "min engage distance" to less than 4 meter if you want to allow use the KNIFE.
If not, A/I w/KNIFE won't be closing to target for using KNIFE."
Dieser Beitrag wurde 1 mal editiert, zuletzt von Georg -GD- am 16.01.2009 - 15:52.
|
Beitrag vom 16.01.2009 - 15:50 |
|
|
|
116 Beiträge - Gelegenheitsposter
|
|
|
hy Georg....also soviel kann ich dazu beisteuern:
ssnaddhp(player, - 45) = ist praktisch das der Player sein leben verliert und die -45 steht dann wieviel von den leben abgezogen wird.
if never enter = so weit ich das verstanden habe ist Enter dafür da damit du nicht schreiben musst
"if never() and then...bin ma da aber jetzt nicht 100%ig sicher.
PLOOP = Alles was du in den PLOOP einfügst wird immer wiederholt, und du musst es mit END zumachen.
Example:
PLOOP
if ssnnearssn(player,xxxx,3) and eq(v9,0) and ssnalive(player) enter
ssnaddhp(player, - 45)
ssnwave(xxxx,"psg1sil.wav",20)
endif
END
was die Variablen angeht, muss ich sagen, ich hatte tierischen schiss davor sie zu lernen, da ich nie gecheckt habe worum es geht, aber dank Nevada hab ich zumindest jetzt das grund wissen und weiss wie man ne Varible runter und rauf zählen lassen kann, und das man mit ihr Objekte öffnen kann. Wenn mich nicht alles täuscht müsste es hier im Forum sogar nen Tread geben wo die Var beschrieben werden.lese sie dir mal durch oder mach ne anfrage bei Nevada, er wird dir sicher helfen, und du wirst sehen das die variablen gar nicht mal so schlimm sind wie sie manchmal ausehen.
Gruß
Raven
|
Laechle, denn du kannst sie nicht alle toeten. |
Dieser Beitrag wurde 1 mal editiert, zuletzt von Raven-SHW- am 19.01.2009 - 14:22.
|
Beitrag vom 16.01.2009 - 20:00 |
|
|
|
18 Beiträge - Grünschnabel
|
|
|
das problem ist der player stirbt nicht, bot machen die gewünschte bewegung rennen zum player ab player lebt noch.
hmm...
|
Beitrag vom 16.01.2009 - 20:04 |
|
|
|
116 Beiträge - Gelegenheitsposter
|
|
|
dann probiers mal so:
PLOOP
if ssnnearssn(player,xxxx,3)then
ssnaddhp(player, - 45)
endif
END
|
Laechle, denn du kannst sie nicht alle toeten. |
Dieser Beitrag wurde 1 mal editiert, zuletzt von Raven-SHW- am 19.01.2009 - 14:22.
|
Beitrag vom 16.01.2009 - 20:23 |
|
|
|
18 Beiträge - Grünschnabel
|
|
|
es lag daran dass das minus vor der 45 nicht direkt dran war.
so funktioniert der befehl:
if never enter
set(v9,0)
SSNmax(XXXX,100)
SSNmin(xxxx,3)
SSNatt(xxxx,3)
endif
if not ssnalive(xxxx) and never enter
set(v9,1)
endif
PLOOP
if ssnnearssn(player,xxxx,3) and eq(v9,0) and ssnalive(player) enter
ssnaddhp(player, -45)
ssnwave(xxxx,"psg1sil.wav",20)
endif
END
also bis dem nächst..und Danke für die Hilfe.
Dieser Beitrag wurde 2 mal editiert, zuletzt von Georg -GD- am 16.01.2009 - 21:49.
|
Beitrag vom 16.01.2009 - 21:27 |
|
|
|
116 Beiträge - Gelegenheitsposter
|
|
|
oh man...auf das hab ich gar nicht geschaut...menno! Naja kann passieren...aber die hauptsache ist du hast es hinbekommen und es funkt jetzt.
Gruß
Raven
|
Laechle, denn du kannst sie nicht alle toeten. |
Dieser Beitrag wurde 1 mal editiert, zuletzt von Raven-SHW- am 19.01.2009 - 14:23.
|
Beitrag vom 16.01.2009 - 22:07 |
|
|
|
Administrator 464 Beiträge - Fingerwundschreiber
|
|
|
Normalerweise poste ich ja keine kompletten Scripte in`s Forum, und das aus gutem Grund. Denn nicht jedes Script wird verstanden und kann in jeder WAC benutzt werden. Aber Georg hat sich da, mit Hilfe von Raven, gut durchgekämpft. Nur das ist der richtige Weg, denn nur was man sich erkämpft hat, hat man auch verstanden. Also in diesem Sinn, mach weiter so, es gibt noch viel zu entdecken.
KR-Nevada
|
Beitrag vom 17.01.2009 - 14:10 |
|