27. Apr 2024, 16:02 Hallo Gast.
Willkommen Gast. Bitte einloggen oder registrieren. Haben Sie Ihre Aktivierungs E-Mail übersehen?

Einloggen mit Benutzername, Passwort und Sitzungslänge. Hierbei werden gemäß Datenschutzerklärung Benutzername und Passwort verschlüsselt für die gewählte Dauer in einem Cookie abgelegt.


Select Boards:
 
Language:
 


Autor Thema: Festes Bauen Problem  (Gelesen 9670 mal)

No1Gamer

  • Gastwirt zu Bree
  • **
  • Beiträge: 140
Re: Festes Bauen Problem
« Antwort #15 am: 7. Okt 2008, 21:55 »
lol ... die Lösung kann so einfach sein. XD
And remember, respect is everything!

Ealendril der Dunkle

  • Gast
Re: Festes Bauen Problem
« Antwort #16 am: 8. Okt 2008, 09:38 »
Rimli, was glaubst du wovon ich die ganze Zeit geredet habe :) Lies dir doch mal meine Posts durch, ich habe genau diesen Parameter mehrmals beschrieben  ;)

Rimli

  • Galadhrim
  • **
  • Beiträge: 716
Re: Festes Bauen Problem
« Antwort #17 am: 8. Okt 2008, 15:40 »
Ja sorry, ich dachte, Elrond und du reden von der INI des Bauplatzes. Da hab ich das PlaceMentViewAngle reingemacht und es hat nichts gebracht.

Sorry, dass ich dich falsch verstanden habe, aber es hat sich ja jetzt erledigt. ;)

Ealendril der Dunkle

  • Gast
Re: Festes Bauen Problem
« Antwort #18 am: 9. Okt 2008, 17:43 »
Kein Problem  :) Ist doch Klasse, wenn es jetzt passt ;)

Rimli

  • Galadhrim
  • **
  • Beiträge: 716
Re: Festes Bauen Problem
« Antwort #19 am: 12. Okt 2008, 21:39 »
So, ich hab jetzt noch eine Frage zu den Basen.

Damit die von Anfang an funktionieren, hab ich mit Maethors Hilfe ein Objekt gemacht, das sofort stirbt und beim Sterben das wirkliche Mauerstück spawned.

Das funktioniert auch prima. Nachteil: wenn man eine Festung im Laufe des Spiels einnimmt, gehen die Bauanimationen nicht mehr.

Deswegen wollte ich fragen, ob man irgendwie auch ein Objekt automatisch einen Commandbutton starten lassen kann.

TurinTurumbar hat folgenden Vorschlag gemacht:
Behavior = DoCommandUpgrade Module_DoCommandUpgrade
TriggeredBy = Upgrade_UpgradederFrakti on
GetUpgradeCommandButtonN ame = Command_Mauernbauenbutto n
End

Leider funktioniert das nicht, "Upgrade_MenFaction" lößt den Bauprozess nicht aus. Ich hab dann noch probiert, in der Playertemplate.ini für die Menschen "Upgrade_SwitchToRockThro wing" als Initial Upgrade einzutragen und dieses den CommandButton auslösen zu lassen, das ging aber auch nicht.

Deswegen meine Frage an die super Modder, besonders Ealendril: Geht es irgendwie, dass ein Object einen Commandbutton auslöst und so veranlasst, dass das Mauerstück per Commandbutton gebaut wird?

Ealendril der Dunkle

  • Gast
Re: Festes Bauen Problem
« Antwort #20 am: 13. Okt 2008, 10:13 »
Ich weiß nicht ganz, wie dein System funktioniert. Ich müsste dafür deine Codes/Daten sehen, aber an sich müsste es nach dem Prinzip von Turin funktionieren. Problematisch ist es aber hier, weil das PLAYER_Upgrade der Faction bereits am Anfang ausgelöst wurde. Dieses doCommand funktioniert nur, wenn spezifisch über einen Zeitprozess ein Upgrade gegeben wird.
Es gäbe in der Hinsicht viele Möglichkeiten, zb könnte man über einen Attributemodifier ein Upgrade zukommen lassen, welches eben diesen Button auslöst (Stichwort Draft der Bauern). Eine andere Lösung wäre eben ein extrabutton, der nur ein Upgrade gibt. Das Upgrade wird "gekauft" (Kosten und Buildtime auf 0) und über dieses Upgrade löst sich per docommand dieser button aus.
Schreib mich einfach mal in icq an und schick mir eine erklärung bzw. die besagten Codes, dann können wir uns das zusammen anschauen.

Rimli

  • Galadhrim
  • **
  • Beiträge: 716
Re: Festes Bauen Problem
« Antwort #21 am: 27. Okt 2008, 14:35 »
Okay, ist viellicht besser wenn wir das per ICQ besprechen. ^^

Bin aber grad in der Schule, also ich hätte dann erst heute abend irgendwann Zeit. Ich schreib dich einfach mal per ICQ an...

EDIT:
Neues Volk, neue Probleme.

Ich hab mal wieder eine Frage, diesmal bezüglich Mordor.

Ich kann keine Festung/Lager aufbauen. Die Zitadelle wird nicht geladen. Wenn ich am Anfang als Startunit nur normale Orks habe, d.h. nichts das als Festung zählt, dann kann ich das Lager gar nicht aufbauen und habe sofort verloren.
Wenn ich jedoch einen Arbeiter als Startunit habe, der per KindOf als Base gilt, dann wird die Zitadelle zwar auch nicht geladen, jedoch wird das übrige Lager gebaut, bleibt für etwa 3 Sekunden stehen und verschwindet dann. Wenn ich in diesen 3 Sekunden auf einem Bauplatz etwas baue, bleibt das Lager ganz stehen.
Jetzt kommt das komische:
-Bei dem Außenposten (ExpansionFlag) wird in der BSE-Datei das selbe Objekt als Zitadelle benutzt, der Außenposten funktioniert jedoch im Gegensatz zum Lager.
- Wenn das Lager dem Spieler sofort von Anfang an gehört, man es also nicht einnimt,  dann ist die Zitadelle vorhanden

Ich habe schon bei der Mordorzitadelle die KindOf von der Elbenzitadelle versucht, bei denen es ja funktioniert, bringt jedoch nichts...

EDIT: Hab's gelößt, mit der KindOf der Menschenzitadelle geht es.
« Letzte Änderung: 30. Okt 2008, 17:50 von Rimli »

Rimli

  • Galadhrim
  • **
  • Beiträge: 716
Re: Festes Bauen Problem
« Antwort #22 am: 15. Sep 2009, 19:32 »
Es ist mal wieder soweit, dass ich eure Hilfe brauche:

Es geht um die Gondormauern, die Probleme machen.

Erstes Problem:
Bei der Gondorfestung können die Mauern nicht mit einer Ramme angegriffen werden bzw. ein Belagerungsturm kann nicht andocken.

Ich vermute das hängt mit den Geometries zusammen, ich benutzt ja ein Geometry-Update-System, um das kollidieren der Geometrys beim Laden der Festung und somit Löcher in den Mauern zu vermeiden:

Behavior = ObjectCreationUpgrade MakeTheGeom ;Änderung
        TriggeredBy        = Upgrade_MenFaction       
        Delay            = 1000   
        GrantUpgrade     = Upgrade_MauerGeom           
    End
    Behavior = GeometryUpgrade ModueTag_TowerGeom
        TriggeredBy            = Upgrade_MauerGeom
        ShowGeometry        = Geom_Orig1 Geom_Orig2
        HideGeometry        = DummyGeom
    End

Geometry                        = BOX
    GeometryMajorRadius                = 1.0
    GeometryMinorRadius                = 1.0
    GeometryHeight                    = 1.0
    GeometryName                    = DummyGeom
    GeometryActive                    = Yes

AdditionalGeometry = BOX
GeometryMajorRadius = 24.0
GeometryMinorRadius = 55.0
GeometryHeight = 52.0
GeometryOffset = X:-3 Y:-55 Z:0
    GeometryName                    = Geom_Orig1
    GeometryActive                    = No

AdditionalGeometry = CYLINDER
GeometryMajorRadius = 33.0
GeometryMinorRadius = 0
GeometryHeight = 52.0
GeometryOffset = X:-12 Y:-105 Z:0
    GeometryName                    = Geom_Orig2
    GeometryActive                    = No

GeometryRotationAnchorOffset = X:375.0 Y:0
GeometryIsSmall = No

GeometryContactPoint = X:35 Y: -25 Z:0 Grab
GeometryContactPoint = X:21 Y: -25 Z:0
GeometryContactPoint = X:21 Y: -60 Z:52
GeometryContactPoint = X:21 Y: -95 Z:0 
GeometryContactPoint = X:31 Y: -95 Z:0 Grab
GeometryContactPoint = X:-50 Y: -95 Z:0 Grab
GeometryContactPoint = X:-30 Y: -95 Z:0
GeometryContactPoint = X:-21 Y: -60 Z:52 
GeometryContactPoint = X:-21 Y: -25 Z:0
GeometryContactPoint = X:-40 Y: -25 Z:0 Grab


Shadow = SHADOW_VOLUME
End

Zweites Problem: Wenn die Mauer zerstört ist, kommt der Sound von einstürzenden Mauern zweimal.

Gefunden habe ich dazu nur diesen Eintrag:
ModelConditionState  = RUBBLE
Model         = GBCSTWLLGTL2_D3 ;GBCASTGATEL_D3
End
AnimationState = RUBBLE
StateName = STATE_Rubble
Animation = Death
AnimationName = GBCSTWLLGTL2_D3.GBCSTWLLGTL2_D3 ;GBCASTGATEL_D3.GBCASTGATEL_D3
AnimationMode = ONCE
End
EnteringStateFX = FX_WallDie
End     

Wenn ich die FX auskommentiere, kommt gar kein Sound mehr. Wenn die Zeile drinsteht kommt die FX zweimal: einmal direkt wenn die Mauer zerbricht und dann nochmal wenn die Bruchstücke im Boden versinken. Keine Ahnung wieso das so ist, die FX hat nur einen Sound eintrag in der FXList.ini.
Hab noch eine von EA auskommentierte Zeile etwas weiter drüber gefunden, aber das ergibt trotzdem noch kein Sinn für mich:
ModelConditionState  = RUBBLE UPGRADE_NUMENOR_STONEWORK
Model         = GBCSTWLLGTL2_D3 ;GBCASTGATL_UD3
End
AnimationState = RUBBLE UPGRADE_NUMENOR_STONEWORK
StateName = STATE_Rubble
Flags = START_FRAME_LAST
;EnteringStateFX = FX_WallDie ;this plays after the stone sink into the ground
Animation = Death
AnimationName = GBCASTGATL_UD3.GBCASTGATL_UD3
AnimationMode = MANUAL
AnimationBlendTime = 0
End
BeginScript
Prev = CurDrawablePrevAnimationState()
if Prev == "STATE_ReallyDamaged" or Prev == "STATE_None" or Prev == "TRANS_U_IntoReallyDamaged"
then
; Only play the rubble anim if we havn't come from another rubble.
CurDrawableSetTransitionAnimState("TRANS_U_IntoRubble")
end
EndScript
End     

Drittes Problem: Ich hab ein neues Model mit komplett neuer UVW gemacht, wenn die Mauer zerstört wird (das D3 Model, das oben angegeben ist. Es zeigt die animierte zerbrechende Mauer). Problem: Der schwarze Grund wird nicht angezeigt im Spiel.
Hier ein Screen von dem, was ich meine mit W3D Einstellungen:


Viertes Problem: Die KI macht mit dem festen Bauen in SuM2 gar nichts. Die SuM2 KI funzt offensichtlich nicht und wie ich die SuM1 KI in SuM2 reinbekomme weiß ich auch nicht.
Ich bin auf dem Gebiet ein völliger Anfänger, habe auf 3rdage jedoch nur ein Tutorial zur SuM2-KI gefunden (die ja offensichtlich nichts macht). Wie man eine SuM1-KI anlegt bzw. verändert hab ich niergends gefunden.

Ich wäre froh, wenn ihr mir zumindest bei einem der Probleme helfen könnt. :)

« Letzte Änderung: 15. Sep 2009, 19:35 von Rimli »

Ealendril der Dunkle

  • Gast
Re: Festes Bauen Problem
« Antwort #23 am: 16. Sep 2009, 10:01 »
Da ich mich allgemein selbst mit dem festes bauen-Prinzip nicht so sehr auskenne, kann ich nur Vermutungen anstellen. Ich bin aber trotzdem gewillt dir zu helfen.

Zu dem Andock-Problem: Es gibt bei den Contactpoints in sum2 Punkte, die mit "ram" bestückt sind. Müssten in vielen Inis vorhanden sein. Nach deinem Prinzip zu urteilen werden Geometries ja erst nach Spielaufbau aktiviert, deshalb könnte es sein, dass die contactgeometries (die für rammen verantwortlich sind) nicht mehr akzeptiert werden, bzw. nur halb. Mein Vorschlag wäre nochmals extrige anzulegen mit "ram" (Du siehst dort grab, das gibts auch noch für repair und ram).

Zu dem Sound-Problem: Sicher, dass du nur einmal den rubble sound drinnen hast?
Nunja schau mal in den sum2 mauern nach, es gibt ja nicht nur den behaviour rubble, sondern noch andere. Rubble wird nur aktiviert, wenn ein "wiederaufbau" Behaviour angegeben ist, bzw. ein keepobjectdie (weiß nicht wie es auswendig heißt) angegeben ist. Es könnte sein, dass dun einen weiteren Behaviour dort drinnen hast, der auch auf ein "zerstörungs"-System hinweist.

Zu dem Anzeige-Problem: Check mal ob ein Leerzeichen im Meshnamen ist. Wenn keines drinnen ist das Model nochmals exportieren und darauf achten, dass der Boden leicht über der der z-achse von 0 liegt. Meistens verschwinden Meshpaletten im Boden, wenn sie genau auf der z-achse = 0 liegen. Zusätzlich kommt es auch vor, dass meshteile einfach unsichtbar werden (Problem wie bei deinem Lurtz-Model), da heißt es neu exportieren.

Viertes Problem: Das ist leider ein Rätsel bei dem ich dir nicht weiter helfen kann. In sum2 funktioniert alles über bases und ich weiß nicht, wie man das sum1 Prinzip hinbekommt. Lordi hat für uns die KI gemacht (zusammen mit gnom) vll wissen die hierzu mehr.

Rimli

  • Galadhrim
  • **
  • Beiträge: 716
Re: Festes Bauen Problem
« Antwort #24 am: 16. Sep 2009, 18:35 »
Vielen Dank für das Feedback, Ealendril.

Problem Eins:
Werd mir das angucken mit den Contactpoints. In SuM1 gibts das jedoch nicht oder? Weil dann würd's ja schon in den INIs stehen ...
Übrigens hab ich festgestellt dass die Rammen die Lagermauern problemlos zerstören können ... (Da benutze ich auch das gleiche Geometry-Coding System).
Werd da einfach noch rumprobieren, danke für die Anregung.

Problem Zwei:
Rubble Sound ist nur einmal drin, jedenfalls verschwinden mit dem Auskommentieren des einen Eintrags beide Sounds und einen anderen Eintrag hab ich auch nicht gefunden. :(
Bei den SuM2 Mauern ist es aber komplett anders, weil die kann man ja nicht aus dem eigenen Schutt wieder aufbauen, oder?

Problem Drei:
Der Mesh hat ein Leerzeichen seh ich grad.  [ugly]
Hab vergessen dass EA alles darf und alles macht und wir armen Modder nicht. ^^
Danke für den Tipp.

Problem Vier:
Schade, dass du da auch nichts weißt. Wenn die besagten Personen oder irgendjemand anderes was dazu beisteuern kann, wär ich über eine Antwort sehr dankbar.

Gnomi

  • Administrator
  • Bewahrer des roten Buches
  • *****
  • Beiträge: 12.617
Re: Festes Bauen Problem
« Antwort #25 am: 16. Sep 2009, 22:41 »
Also die KI von SuM I funktioniert ja ganz anders, als die von SuM II...
In SuM I wird alles gescriptet, in SuM II geschieht es über Codes.
Man könnte Mal versuchen einfach die Scripts von SuM I einzufügen und schauen, was daraus wird :D
Ansonsten Mal schauen, ob evtl. ein Code auf diese Scriptdateien verweist.
Mehr kann ich da grad auch nicht dazu sagen...

Hat RJ nicht auch das feste Bauen umgesetzt? Hat der eine funktionierende KI? Eventuell könnte der helfen.

Rimli

  • Galadhrim
  • **
  • Beiträge: 716
Re: Festes Bauen Problem
« Antwort #26 am: 22. Sep 2009, 20:19 »
Update Problem Eins:
Rammen können jetzt angreifen. Es musste nur ein Yes zum No geändert werden. -.-
;------------------------------------------------------------------------------
Weapon IsengardBatteringRamWall ; BALANCE Battering Ram
CanFireWhileMoving    = No
AttackRange           = 20.0
AntiStructure         = Yes            ; Ram ONLY affects structures -- buildings, walls, gates
AntiGround            = No             ; ditto
//RAMMEN-BUG NUMMER
MeleeWeapon           = No ;Yes    ; Try Melee to get close to door
AcceptableAimDelta    = 40             ; give a lot of slack !!!!!!!!!!!!!!!!
DelayBetweenShots     = ISENGARD_BATTERINGRAM_DELAYBETWEENSHOTS           ; time between shots, msec.
PreAttackDelay        = ISENGARD_BATTERINGRAM_PREATTACKDELAY       
PreAttackType         = PER_SHOT       ; Do the delay each time we attack
FiringDuration        = ISENGARD_BATTERINGRAM_FIRINGDURATION
FireFX                = FX_BatteringRamHitGate
LeechRangeWeapon      = Yes

DamageNugget                        ; A basic Nugget that just does damage
Damage        = ISENGARD_BATTERINGRAM_DAMAGE
Radius        = 0.0
;DelayTime     = 2800 ; Contact of nose.  Preattack is being used by trolls putting hands on ram
DamageType    = SIEGE
DeathType     = NORMAL
End
End

Siegetower Problem besteht noch (außerdem wär ich da echt über Tips dankbar bezüglich der Besatzung (siehe mein anderer Thread).

Problem Zwei:
Auch gelöst, Sound bei der Rubble-Animation muss raus und dafür die AnimationSoundClientBeha vior angepasst werden auf mein neu animiertes Model der einstürzenden Mauer.

Die KI macht auch immer noch Sorgen bzw. gar nichts. ^^
« Letzte Änderung: 22. Sep 2009, 20:39 von Rimli »

Rimli

  • Galadhrim
  • **
  • Beiträge: 716
Re: Festes Bauen Problem
« Antwort #27 am: 13. Dez 2009, 17:10 »
Soo, hab mal wieder Probleme mit der schönen GondorFestung.

Problem1:
Trolle greifen die Mauer nicht an. Sie rennen zur Mauer hin mit Angriffsgeschwindigkeit, drehen dann jedoch 1m vor der Mauer um und rennen 15m zurück. Insgesamt spinnen sie ähnlich rum wie die Rammen, jedoch haben die Trolle in ihrer Weapon schon ein "Yes" bei MeleeWeapon. :(
Ideen?

Problem2:
Die Gondorzita schießst durch die Gondormauer. Andere Bogenschützen oder Helden können das nicht, nur die Gondorzita macht das.
Weapon KeepBow       ; BALANCE Archer Weapon
AttackRange               = KEEP_ARCHER_RANGE
WeaponSpeed               = 321       ; dist/sec
MinWeaponSpeed            = 241
MaxWeaponSpeed            = 481 ; dist/sec Upper limit on scaling, when attacking past nominal "max" range
FireFX                    = FX_RohanArcherBowWeapon
ScaleWeaponSpeed          = Yes ; Used for lob weapons, scales speed proportional to range
HitPercentage             = 100 ;When this weapon is used it will hit exactly 50% of the time.
ScatterRadius             = 16.0 ;When this weapon misses it can randomly miss by as much as this distance.
DelayBetweenShots         = Min:KEEP_BOW_DELAYBETWEENSHOTS_MIN Max:KEEP_BOW_DELAYBETWEENSHOTS_MAX
PreAttackDelay            = KEEP_BOW_PREATTACKDELAY   ; 1467 is the prep time for archer.
PreAttackType             = PER_SHOT ; Do the delay each time we attack a new target
FiringDuration            = KEEP_BOW_DELAYBETWEENSHOTS_MAX    ; Duration of the archer firing shot is 500ms.
IsAimingWeapon            = Yes
AntiAirborneVehicle = Yes
AntiAirborneMonster = Yes
HitPassengerPercentage = 20%
AcceptableAimDelta = 180.0 ; We want to be able to shoot all round, as we canit move.

CanBeDodged = Yes ; Will check for a DodgePercent on the target to have a second chance at failing HitPercent


ProjectileNugget          ; Default arrow
ProjectileTemplateName  = GoodFactionArrow
WarheadTemplateName     = KeepBowWarhead
ForbiddenUpgradeNames   = Upgrade_BattleTowersToUseFireArrows
End

ProjectileNugget          ; Upgraded arrow
ProjectileTemplateName  = GoodFactionFireArrow ;UpgradedGoodFactionArrow
WarheadTemplateName     = KeepBowUpgradedWarhead
RequiredUpgradeNames = Upgrade_BattleTowersToUseFireArrows
End

End
Ideen?