Mordred
08.08.2010 15:43
965 mal angesehen

Hero Of The Map 2.1

Wenn ich schon bei Werbung bin, dann wenigstens alles ;)
Ich stelle vor: HoTM 2.1! Auch wenn der Screenshot nicht so vielsagend ist!
Ein Held, der (fast) alles kann, was normale helden können.
Er kann ein ganz normaler Reiter, Hauptmann, Leibeigener usw. sein.
Er kann noch:
- er ist Briefingfähig (seit 2.1)
- wird markiert mit effekten
- ist nicht entlassbar
- kann 40 sekunden eine Bombe legen
- ist mit dem (kleinen!!) ?-Button auffindbar
- heilt sich schneller als normale Einheiten
- hat einstellbar verstärkten Angriff (Idee und kleine Skriptschnipsel von AddLegende von warrior1024)
- wenn er stirbt, erscheint er nach einer minute wieder an der angegebenen Spawnpos
- hat den angegebenen namen im selektionsfenster stehen

Wer ihn ausprobieren will, der kann den code herunterladen oder ihn aus meinem Profil kopieren.


Auf das Bild klicken, um es in Originalgröße zu sehen (306,84 KB)


Kommentare

» Kommentar schreiben

warrior1024
09.08.2010 18:32

@Mordred:
Lass das Skript einfach. Im jetzigen Zustand muss nurnoch StartBriefing gehackt werden, damit es auch Funktionen als Parameter verkraftet und fertig. Ich denke, sowas kann jeder selbst schreiben.

@DMDM:
Erstell in einer Funktion mal zuerst das Briefing im alten Stil und dann das selbe mit anderem Namen im neuen Stil. Dann abfragen, ob das "alte" Briefing gleich ist wie das neue. Wenn nicht, gehst du jedes Element des Briefings durch und findest so recht schnell die Seite, die aus der Reihe tanzt.

Mordred
09.08.2010 16:20

was?!
jetzt habe ich HoTM schon umgebaut!
Naja - kann man ja auch wieder rückgängig machen..

DerMacherDieserMap
09.08.2010 12:17

@warrior:
Ja, stimmt. Iwas scheint in der Map zu sein, das Probleme verursacht.
Der Error kam nämlich auch, wenn ich den Npc mit einem normalen Helden ansprach(Mein Fehler, dass ich das nicht schon früher probiert habe... ), bloss hab ich KA was das auslöste, da alles mit den Briefings stimmen sollte .

LG, DMDM

Mordred
08.08.2010 21:13

Mein Gott, nochmal.

Wenn das nicht klappt, bin ich (fast ) am Ende.
Lg Mordred

warrior1024
08.08.2010 21:07

@DMDM:
So was kann eigentlich nicht passieren, da dass Briefingtable das gleiche ist. StartBriefing wurde nur auf den alten Stil ausgelegt, funzt aber auch mit dem neuen, weil der Parameter der gleiche ist.

DerMacherDieserMap
08.08.2010 20:32

So, ich hab jetzt ein bisschen rumprobiert, und bin zu folgender Erkenntniss gekommen:
Der Code funzt einwandfrei mit den "alten" Briefings, aber mit den neuen(AP,ASP) scheint es Probs zu geben.

@Mordred:
Du hast es mit den "alten" Briefings getestet, oder?

DerMacherDieserMap
08.08.2010 20:03

Genau daran lag es!
Callback entspricht bei meinem Npc dem Briefing. Das verwende ich, damit das Spiel den aktuellen Standpunkt Entitys, zu denen die Kamera soll, abzufragen.(siehe Skriptwiki)

Da bei dem Code nur das _briefing abgefragt wird, kommt es zum Error.

warrior1024
08.08.2010 19:26

Ich glaube, ich verstehe, wo der Fehler liegt!
Du hast bei CreateNCP(_npct) nicht bedacht, dass es einen Callback für das _npct gibt. Allerdings ist es auch mir ein Rätsel, warum das nicht bei dem Skriptercode passiert.
Hast du eine Sicherungskopie der Original-CreateNPC-Funktion erstellt, Mordred? Wenn ja: überflüssig!
Ich seh mir mal den Code an.

Mordred
08.08.2010 18:21

..??
Wo wird denn das Briefing angegeben?
Gerade nochmal getestet.
Klappt einwandfrei.
Bei mir wurden sie so erstellt:

 local npc  = {}
 npc.name     = "Steinarbeiter"
 npc.briefing = BriefingMiner
 CreateNPC(npc)


Das da ist der Skript, den ich verwendet habe:
Download

DerMacherDieserMap
08.08.2010 18:14

Es könnte aber auch an meinen Briefings liegen. Aber die sollten eig vollkommen in Ordnung sein, sie stammen aus meiner kommenden Map, und funzen dort wunderbar.

Die Zeile kann ich nicht posten, da es im Skript keine Zeile 701 gibt(Es hat nur rund 400 Zeilen).
Der Pfadangabe im Error nach handelt es sich um die Spieleigenen Comforts.
Möglicherweise liegt es aber auch an der Erstellungsart der Npcs. Wie hast du sie beim Testen erstellt?

Bei mir wurden sie so erstellt:

function NpcWache1()
	local npcWache1 = {name = "Wache1", callback = WacheBriefing1}
	CreateNPC(npcWache1)


end

Mordred
08.08.2010 18:01

kannst du die Zeile vielleicht posten?
Lg Mordred
Ps: Eigentlich war der Npc-mod gut getestet!
Aber irgendwas ist da immernoch...

DerMacherDieserMap
08.08.2010 17:32

Die Funktion ist super! Zeigt mal wieder, was man mit S5 alles anstellen kann!

Nur scheint es bei den Npcs noch ein Prob zu geben.
Dieser Error kommt, sobald der Held in die Nähe eines Npcs geht:

[ 2010/08/08 17:20:28 ] ERROR: DEBUG ERROR!

Error: LUA_ERRRUN: [string "Data\Script\MapTools\Information.lua"]:701: attempt to index field `?' (a nil value)
Additional info: Game turn 290 (0:29)



Wenn ich den Debugger ausschalte, kommt man zwar in den Cinematic Mode, aber Text erscheint keiner.

warrior1024
08.08.2010 17:08

Nur Serfs? Kanonen haben auch keinen Selbstheileffekt!
Idee für 2.2:
Er kann die Pest auslösen und so ganze Heere auslöschen(Natürlich zeigt sich die Wirkung erst nach 90 Sek.).
Er kann Feinde überzeugen, die Seite zu wechseln(wie z.B. der Priester oder S6-Hakim).
Er macht Flächenschaden wie Kanonen oder Scharfschützen gegen Einheiten.
Er hat ein Schild, dass erstmal gebrochen werden muss und für etwas Eisen verstärkt werden kann. Einmal kaputt braucht er ein neues Schutzschild.(Soldaten zukaufen-Button)

Ich würde sagen, das reicht für eine Version 3.0

Mordred
08.08.2010 15:57

[HeroOfTheMap]
Und hier der Download - der Skript ist zu lang.

Mordred
08.08.2010 15:44

und er heilt noch Leibeigene

SiteEngine v1.5.0 by nevermind, ©2005-2007
Design by SpiderFive (www.siedler-games.de) - English translation by juja

Impressum