Vorschläge für neue Maps von DEdK
» Siedler Map Source Forum » Mapping » Vorschläge für neue Maps von DEdK
Seiten: 1 2 ... 12 Nächste Seite
patrick95
|
#1 03.05.2009 09:37 Beiträge: 400 |
Vorschläge für neue Maps von DEdK
Wer Vorschläge für neue Maps hat, ist dazu eingelanden, diese hier zu erzählen.
Ich hoffe auf rege Teilnahme und vielleicht wird hier die ein oder andere gute Idee geboren.
Mfg patrick95
____________________
Alles ist möglich, hat man dafür nur genug Zeit
fritz_98
|
#2 04.05.2009 10:36 Beiträge: 472 |
Meinst du mit Vorschlägen eher so was wie Storys oder eher neue Skriptmöglichkeiten usw. ODER vielleicht Wünsche der Spieler für neue Maps?
Mfg
Fritz
patrick95
|
#3 04.05.2009 12:49 Beiträge: 400 |
Alles das zusammen meine ich damit. Rundums Kartenerstellen.
Mfg patrick96
____________________
Alles ist möglich, hat man dafür nur genug Zeit
fritz_98
|
#4 04.05.2009 16:17 Beiträge: 472 |
Nun, ich glaube, was Storys und Wünsche angeht, werden da wohl eher die Spieler teilnehmen. Als Mapper verschenk ich keine Story Na, dann mal los!
Fritz
patrick95
|
#5 04.05.2009 16:56 Beiträge: 400 |
Ich meine mir diesem Thread Scriptmöglichkeiten, Ideen für den Mapaufbau oder auch Geschichten. Halt alles, was man sich für neue Maps wünscht, oder womit man anderen Mappern unter die Arme greifen kann.
Wenn du es willst z.B. eine Geschichte reinstellen, oder dein Burgbauscript für alle zugänglich machen. Das wären z.B. Sachen, die ich hier sammeln will.
patrick95
____________________
Alles ist möglich, hat man dafür nur genug Zeit
fritz_98
|
#6 04.05.2009 17:31 Beiträge: 472 |
Tja, ich könnte hier sooo viele schöne Sachen posten... ZB den Sound für Regen oder ne schöne Funktion für das einfache Verschieben von Mauern... Vielleicht auch das mit dem aufsammeln von Waffen oder das Ritterskript. Das sind aber alles Dinge, die ich in Maps verwendet habe oder verwenden werde Fazit: Wens interessiert, kanns ja im Skript nachsehen. Ausser es besteht riesen Interesse daran...
Fritz
patrick95
|
#7 05.05.2009 16:51 Beiträge: 400 |
Mauern verschieben?
Das man Mauern verschieben kann, habe ich noch in keiner deiner Maps gesehen. Wie meinst du das?
Mfg patrick95
____________________
Alles ist möglich, hat man dafür nur genug Zeit
fritz_98
|
#8 05.05.2009 17:56 Beiträge: 472 |
Wird in meiner kommenden Map verwendet. Da is dann ein Labyrinth, das aus Mauern besteht. Und wenn man eine bestimmte Bedingung erfüllt hat, verschiebt sich ein Stück dieser Mauer und neue Wege werden frei. Kannst du dir das so in etwa vorstellen? Genauso wird der Regensound verwendet. Wenn Regen is, hört man's tröpfeln. Is aber nur ein kleiner, unscheinbarer Code (hört sich aber gut an...).
Lg
Fritz
patrick95
|
#9 05.05.2009 18:06 Beiträge: 400 |
Dann Glückwunsch zu diesen guten Ideen.
Die Mapverschiebung ist nicht schwer. Sogar für mich nicht.
DestroyEntity("mauer1) CreateEntity(...."mauer1" )
So würde ich das jedenfalls machen.
Mfg patrick95
____________________
Alles ist möglich, hat man dafür nur genug Zeit
fritz_98
|
#10 05.05.2009 18:12 Beiträge: 472 |
Ja, nur musst du bedenken, dass:
1. Es auch in verschiedene Himmelsrichtungen gehen muss
2. Ein paar kleine Effekte nicht unschön aussehen
3. Mit nur einmal Destroy/Create das ganze etwas abgehackt aussieht, und
4. Die Funktion auch mehrmals verwendet werden können muss
Insgesamt macht das bei meinem Code stolze 220 Zeilen!
Fritz
PS: Ich verschieb nur die Mauern, die Map bleibt wo sie ist
Dieser Beitrag wurde von fritz_98 am 05.05.2009 um 18:19 editiert.
patrick95
|
#11 05.05.2009 19:18 Beiträge: 400 |
Zu 1.Man kann ja auch rotate Entity benutzen!
Sonst weiss ich nicht, wie du die Mauern verschieben willst.
Wie machst du es denn?
patrick95
____________________
Alles ist möglich, hat man dafür nur genug Zeit
fritz_98
|
#12 06.05.2009 14:53 Beiträge: 472 |
Zu 1. kannst ja mal ausprobieren, da kommen dann die tollsten Sachen raus
Wie ich es mache? Per Skript
Schau mal:
1.Mauer destroyen-> 2.Mauer destroyen -> 3.Mauer destroyen
2.Mauer createn -> 3.Mauer createn -> 4.Mauer createn
Effekt -> Effekt -> Effekt
usw... Bis die Mauer hinter der anderen verschwindet. Das ist der ganze Trick
Aber mal so nebenbei gesagt... jetzt ist das hier ne Unterhaltung zwischen mir und Patrick.
@alle Anderen: Ein Ideenpool ist keine schlechte Idee, und ich finde es gut von ihm, dass er einen entsprechenden Thread eröffnet hat. Das Siedler_Team hat ja schon von einem engagierten User schon ne schöne Idee bekommen (falls sie sie umsetzen). Also: Wer ne Idee hat, hier rein damit!
Vlg
Fritz
patrick95
|
#13 06.05.2009 17:20 Beiträge: 400 |
Was ich nicht verstehe ist, dass ich zwar einige Mauen destroyen kann, sogar neue erstellen und auch noch Effekte dazu, doch wie macht man, dass das mit jeder Mauer auf der Karte funzt. Vielleicht ne Comfortfunktion. Oder schreibst du das für jede Mauer extra?
Mfg patrick95
____________________
Alles ist möglich, hat man dafür nur genug Zeit
patrick95
|
#15 06.05.2009 18:38 Beiträge: 400 |
Ja, aber wie geht denn das mit einer Comfortfunktion? Ich kenne nur den aufgezeigten Weg die Mauern zu verschieben.
patrick95
____________________
Alles ist möglich, hat man dafür nur genug Zeit
fritz_98
|
#16 06.05.2009 18:41 Beiträge: 472 |
Kleiner Tipp:
OpenWall("mauer1",O,WasDanachPassiert) S = {} -- Himmelsrichtungen N = {} O = {} W = {} function OpenWall(_name,_richtung,_callback) if _callback then WCCallback = _callback else WCCallback = nil end WNName = _name WPPos = GetPosition(_name) WRicht = _richtung StartSimpleJob("WOpenIt") ...
In dem Job wird die Mauer dann via Variablen immer weiter verschoben.´Den stell ich net rein
Alles Klar?
LG
Fritz
patrick95
|
#17 06.05.2009 19:28 Beiträge: 400 |
Achso geht das. Doch darauf wär ich nicht gekommen
Danke für die Enthüllung dieses Codes.
patrick95
____________________
Alles ist möglich, hat man dafür nur genug Zeit
Siedler_Team
|
#18 07.05.2009 08:47 Beiträge: 847 |
Zitat von patrick95:
Achso geht das. Doch darauf wär ich nicht gekommen
Danke für die Enthüllung dieses Codes.
patrick95
Hehehe...
Patrick, ganz so einfach ist das nun auch wieder nicht. Was fritz_9ß reingestellt hat sind nur "Schnipsel" der gesamten Funktion. So wie sie da steht, wirst Du wenig damit anfangen können.
Du kannst doch nicht ernsthaft erwarten, dass fritz_98 hier "mal eben" die komplette Funktion nebst benötigter Comfort-Funktion reinstellt, an der er vielleicht viele Stunden seines "Gehirnschmalzes" verbraten hat.
Er kann Dir nur den Weg zeigen. Darüber nachdenken musst Du schon selbst. Wie sonst auch soll man eine komplexe Funktion vestehen?
Komplexe Funktionen nebst benötigter Comfort-Funktion wird hier wohl niemand aus besagten Gründen reinstellen.
Kleinere wohl eher.
(...was wir ja schon praktiziert haben)
Allgemein gilt:
Das Wiki von Chromix und das von Peermanent sind gute Adressen! Einfach da mal reinschauen.
____________________
Wer altes Wissen ehrt und neues Wissen erlangt, ist bereit, ein Lehrer zu sein. ( -Konfuzius- )
patrick95
|
#19 07.05.2009 13:24 Beiträge: 400 |
Dass er nicht die ganze Funktion reingestellt hat, wusste ich, doch ich verstehe jetzt, wie in etwa das geht. Ich habe auch nicht die ganze funktion gefordret, sondern wollte bloss einen Denkanstoss wie das hier.
____________________
Alles ist möglich, hat man dafür nur genug Zeit
fritz_98
|
#20 09.05.2009 08:34 Beiträge: 472 |
Briefings
So, jetzt start ich voll durch mit den Ideen!
Ich hätte da eine für Briefings, um das Ein oder Andere etwas abwechslungsreicher zu gestalten oder dem Spieler etwas bestimmtes zu zeigen, nämlich Rotationen für die Briefings. Einfach
Camera.RotSetAngle(_rotation)
unter das StartBriefing() setzen und schon braucht man keine Cutscenes mehr für stehende Briefing-Seiten, die aber rotiert sein sollen
Die gesuchten Rotationen kann man ja per InitCutsceneCreatingTools herausfinden
Gruß
Fritz
patrick95
|
#21 09.05.2009 08:53 Beiträge: 400 |
Das ist ne gute Idee, doch geht das einfach so, oder braucht man dazu Comfortfunktionen? Ausserdem kann man wenn man dies bei Briefings einbauen kann, nicht auch Angle, Zoom, etc. in Briefings einbauen?
Zu den CutsceneTools: Ich verwende die eh nicht, geht ohne für mich besser.
Danke für eine weitere tolle Idee!
Mfg patrick95
____________________
Alles ist möglich, hat man dafür nur genug Zeit
fritz_98
|
#22 09.05.2009 09:01 Beiträge: 472 |
Jo, geht einfach so.
Beispiel:
function Beispiel() local briefing = {} local AP, ASP = AddPages(briefing) ASP("soEiner","Lebensfreude in Person","Schön ist es, auf der Welt zu sein...") StartBriefing(briefing) Camera.RotSetAngle(86) end
Gruß
Fritz
patrick95
|
#23 09.05.2009 09:07 Beiträge: 400 |
Armydefend
Wenn das geht, wozu haben wir noch Cutscenes?
Meine Idee ist ein Code, mitdem man eine Verteidigungsarmee erstellen kann. Und ohne eine ID zu verbrauchen (man hat nur 10):
function ArmyDefenders() CreateMilitaryGroup(2,Entities.PU_LeaderBow2,4,GetPosition("RT1sp"),"RT1tr1") CreateMilitaryGroup(2,Entities.PU_LeaderBow2,4,GetPosition("RT1sp"),"RT1tr2") CreateMilitaryGroup(2,Entities.PU_LeaderSword2,4,GetPosition("RT1sp"),"RT1tr3") CreateMilitaryGroup(2,Entities.PU_LeaderSword2,4,GetPosition("RT1sp"),"RT1tr4") StartSimpleJob("ContollingAttacke") end function ContollingAttacke() if AreEntitiesInArea(1, 0, GetPosition("RT1pt2"), 2000, 1) or AreEntitiesInArea(1, 0, GetPosition("RT1pt1"), 2000, 1) then --CreateEffect( 2, GGL_Effects.FXMaryPoison, "RT1pt1") --CreateEffect( 2, GGL_Effects.FXMaryPoison, "RT1pt2") --CreateEffect( 2, GGL_Effects.FXMaryPoison, "RT1pt1") --CreateEffect( 2, GGL_Effects.FXMaryPoison, "RT1pt2") Attack("RT1tr1","RT1pt1") Attack("RT1tr2","RT1pt1") Attack("RT1tr3","RT1pt1") Attack("RT1tr4","RT1pt1") StartSimpleJob("ContollingDefend") return true end end function ContollingDefend() if not AreEntitiesInArea(1, 0, GetPosition("RT1pt2"), 2000, 1) and not AreEntitiesInArea(1, 0, GetPosition("RT1pt1"), 2000, 1) then Attack("RT1tr1","RT1sp") Attack("RT1tr2","RT1sp") Attack("RT1tr3","RT1sp") Attack("RT1tr4","RT1sp") StartSimpleJob("ContollingAttacke") return true end end
____________________
Alles ist möglich, hat man dafür nur genug Zeit
patrick95
|
#24 09.05.2009 09:09 Beiträge: 400 |
Ist zwar mit einfachen Mitteln, doch stark erweiterbar und unkompliziert. Man muss einfach RT1pt1 und RT1pt2 in die Landschaft als Scriptentites setzten und einen RT1 Spawngeb, und einen Spawnpunkt ("RT1sp" ). So einfach ist das! Voher bloss SetHostile (1,2), denn hier geschieht das nicht automatisch.
Mfg patrick95
PS: Sorry, dass ich nur so eine Idee bringen konnte, doch besseren Code kann ich nicht erstellen.
____________________
Alles ist möglich, hat man dafür nur genug Zeit
fritz_98
|
#25 09.05.2009 09:23 Beiträge: 472 |
Cutscenes sind für Cameraflüge, Briefings für Aufgaben
Zu deinem Code:
Wenn ich das richtig interpretiere, gibt es 2 Positionen für alle 4 Einheiten:
Die Entstehungsposition "RT1sp"
Die Angriffsposition "RT1pt"
Die anschließende Rückzugsposition, die wieder "RT1sp" ist.
Das ist leider so ne Wegwerffunktion, da sie nur einmal verwendbar ist. Und das wars dann...
Machs doch in dem Stil:
function ArmyDefenders(_entstehung,_angriff) posEntstehung = _entstehung -- Positionsspeicherung posAngriff = _angriff -- Positionsspeicherung CreateMilitaryGroup(...,GetPosition(_entstehung),...) -- Truppen erschaffen StartSimpleJob("ControllingAttacke") end function ControllingAttacke() if ... then Attack("RT1tr1",posAngriff) ... StartSimpleJob("ControllingDefend") return true end end function ControllingDefend() if ... then Attack("RT1tr1",_posEntstehung) StartSimpleJob("ControllingAttacke") return true end end
Jetzt musste nur noch einsetzen
Was ich vielleicht noch hinzufügen würde, wäre ein Job, der den Tod der Truppen feststellt und die jeweiligen Jobs beendet
Gruß
Fritz
Dieser Beitrag wurde von fritz_98 am 09.05.2009 um 09:41 editiert.
Seiten: 1 2 ... 12 Nächste Seite