Archiv verlassen und diese Seite im Standarddesign anzeigen : Mod-Ideen, Vorschläge, Machbarkeit
tombom81
16.11.2017, 15:00
Besitzerlose Schlafsäcke "zuordnen"
Euch werden sicher die vielen besitzerlosen Schlafsäcke in Gebäuden und unter/in Betonkonstruktionen aufgefallen sein.
Ich halte es für sinnvoll, denen einen Besitzer zu geben, vorzugsweise Outlaws.
Gegebenenfalls würde ich dazu vorhandene Outlaws verschieben oder eben Klone einbauen.
Da ich gerade erst auf die ersten lebenden Outlaws getroffen bin, kann ich nicht beurteilen, welches die bessere Wahl ist.
Es wird also noch etwas dauern mit der Umsetzung.
(Falls jemand die Idee gleich umsetzen will, tut euch keinen Zwang an.)
Technische Anmerkung: man muss sich etwas mit FreePoints auseinandersetzen (so hießen die jedenfalls bei Gothic 3)
Dark_Bauer
16.11.2017, 18:58
Ist es denn (bereits oder überhaupt) möglich, NPCs einzubauen?
Eventuell sogar mit Dialog?
tombom81
16.11.2017, 21:16
Ist es denn (bereits oder überhaupt) möglich, NPCs einzubauen?
Eventuell sogar mit Dialog?Ich habe bisher nur eine Kistenentity eingebaut.
Wenn das geht, sollte das Kopieren von NPC entities auch funktionieren.
Für neue Dialoge ist es aber noch etwas zu früh; Smalltalk sollte aber funktionieren.
Penthesilea
16.11.2017, 22:14
Mal aus reiner Neugierde und weil ich noch am lernen bin: Eine neue Kiste/NPC/allg. Entity müsste man platzieren können, indem man einfach einen entsprechenden Eintrag in der passenden Sectordatei erstellt/kopiert und die Positionsangaben ändert, oder?
Das der kopierte NPC in so einem Fall wahrscheinlich einfach zurück zu seinem Original rennen würde, sei jetzt mal ein anderes Problem^^
Mal aus reiner Neugierde und weil ich noch am lernen bin: Eine neue Kiste/NPC/allg. Entity müsste man platzieren können, indem man einfach einen entsprechenden Eintrag in der passenden Sectordatei erstellt/kopiert und die Positionsangaben ändert, oder?Ja, das geht, man muss für die Kopie allerdings eine neue GUID vergeben.
Außer der Position (in den beiden Matrizen) müssen auch die Attribute 'Extents' und 'Center' angepasst werden. Der Resource Manager tut das automatisch, wenn man ein Atribut 'NewPos = (vec <x> <y> <z>)' direkt vor den beiden Matrix-Attributen einfügt. (Eine neue Rotation ist auch möglich mittels 'NewRot = (euler <yaw> <pitch> <roll>)', siehe hier (https://forum.worldofplayers.de/forum/threads/1504839-%C3%84nderung-der-Position-und-Rotation-von-Entities-in-Sektoren-%28-elexsecdoc%29).)
Penthesilea
17.11.2017, 12:18
Ja, das geht, man muss für die Kopie allerdings eine neue GUID vergeben.
Außer der Position (in den beiden Matrizen) müssen auch die Attribute 'Extents' und 'Center' angepasst werden. Der Resource Manager tut das automatisch, wenn man ein Atribut 'NewPos = (vec <x> <y> <z>)' direkt vor den beiden Matrix-Attributen einfügt. (Eine neue Rotation ist auch möglich mittels 'NewRot = (euler <yaw> <pitch> <roll>)', siehe hier (https://forum.worldofplayers.de/forum/threads/1504839-%C3%84nderung-der-Position-und-Rotation-von-Entities-in-Sektoren-%28-elexsecdoc%29).)
Danke Baltram :)
Mit den Matritzen muss ich mich sowieso nochmal auseinandersetzen, zu denen hab ich auch im Modforum von Risen erstmal nichts gefunden. Aber alles zu seiner Zeit...
Ist dieser Thread eigentlich als allgemeine Sammelstelle für Ideen und den Austausch über deren Machbarkeit zu verstehen?
tombom81
18.11.2017, 08:15
Ist dieser Thread eigentlich als allgemeine Sammelstelle für Ideen und den Austausch über deren Machbarkeit zu verstehen?würde ich mal sagen; von der Forenadministration erstellte Subforen wären natürlich schicker.
Neuigkeiten zu NPCs: kann man tatsächlich einbauen; allerdings ist Bigby unbeabsichtigterweise im Klo gefangen. Vorteil: er konnte nicht weglaufen:
https://upload.worldofplayers.de/files10/BigbyImKlo.jpg
Allerdings musste ich ihn binär anhängen, weil ich es mit dem resman nicht hinbekommen habe (NPC nicht sichtbar).
Aber prinzipiell geht es, auch mit neuer Startroutine für einen DeathValley_Bandit:
https://upload.worldofplayers.de/files10/SleepingBagFilled.jpg
Aber das ist dann doch totumständlich; muss ich nochmal mit dem elexresman probieren, aber jetzt ist erstmal weiterspielen angesagt... cu
Dark_Bauer
19.11.2017, 08:30
Ich wollte Testweise mal den Sound des Skex in den eines Scavengers ändern. Allerdings habe ich den des Skex gar nicht gefunden.
Heißt das Vieh im Englischen vielleicht anders?
Penthesilea
19.11.2017, 09:03
Ich wollte Testweise mal den Sound des Skex in den eines Scavengers ändern. Allerdings habe ich den des Skex gar nicht gefunden.
Heißt das Vieh im Englischen vielleicht anders?
Anhand des Ausschlussverfahrens, müsste das ein "Griffin" sein. Aktuell gibts bei den Sounds noch ein paar Schwierigkeiten (https://forum.worldofplayers.de/forum/threads/1505093-Schwierigkeiten-beim-Verpacken?p=25644988&viewfull=1#post25644988)...wenn du es hinbekommst, gib gerne bescheid ;)
Dark_Bauer
19.11.2017, 15:20
Anhand des Ausschlussverfahrens, müsste das ein "Griffin" sein. Aktuell gibts bei den Sounds noch ein paar Schwierigkeiten (https://forum.worldofplayers.de/forum/threads/1505093-Schwierigkeiten-beim-Verpacken?p=25644988&viewfull=1#post25644988)...wenn du es hinbekommst, gib gerne bescheid ;)
Der Griffin ist es, danke :A
Somit habe ich meine erste Mod erstellt:D
Ist natürlich ne Quatsch-Mod und ich weiß nicht, ob der Beißer nicht der bessere Kandidat ist. Aber für den ersten Test und Versuch hat es geklappt.
Skex=Scavenger-Mod (https://upload.worldofplayers.de/files10/m_1_SkexScavenger.rar)
Wie gehabt die Datei in den packed-Ordner.
Lucia von der Berg
22.11.2017, 14:59
Gibt es eine Möglichkeit die Rüstungen der Albs ins Spiel einzubauen? Zumindest hab' ich im Spiel keine gefunden...leider. :-(
Gibt es eine Möglichkeit die Rüstungen der Albs ins Spiel einzubauen? Zumindest hab' ich im Spiel keine gefunden...leider. :-(
Der Frage schliesse ich mich direkt an :)
Ich frage mich ob es ueberhaupt eine einzelne Mesh+Skin fuer die Alb-Ruestungen gibt oder sie auf der Haut der Albs angetackert sind.
Die gibt es. Hab' ich vor 2 Tagen bei Nexus hochgeladen. :)
https://www.nexusmods.com/elex/mods/13/?
Die gibt es. Hab' ich vor 2 Tagen bei Nexus hochgeladen. :)
https://www.nexusmods.com/elex/mods/13/?
This is just a replacer at the moment, so it will overwrite the Cleric armors.
Moment, heisst das alle Kleriker laufen mit Alb-Ruestung herum?
Moment, heisst das alle Kleriker laufen mit Alb-Ruestung herum?
Momentan ist das der Fall, ja. Ich hab' mich leider noch nicht genügend mit der Materie auseinandersetzen können, um die Rüstung per Quest oder sowas einzubauen. Aber irgendwo muss man ja anfangen.
Momentan ist das der Fall, ja. Ich hab' mich leider noch nicht genügend mit der Materie auseinandersetzen können, um die Rüstung per Quest oder sowas einzubauen. Aber irgendwo muss man ja anfangen.
Tuerlich, find ich auf jeden Fall schonmal interessant.
tombom81
23.11.2017, 12:35
Kiste einbauen, Item reinlegen (also z.B. die Guid für den Potion in Borns Kiste durch die Guid von Body_Alb_High ersetzen) and you're done:
https://upload.worldofplayers.de/files10/CommandersArmorInChest.jpg
https://upload.worldofplayers.de/files10/CommandersArmorInPlayersInventory.jpg
Anlegen kann ich die Rüstung aber noch nicht, weil meine Stärke und Konstitution noch etwas schwächeln.
(Ich weiß auch nicht, ob ich dann nicht gleich als Alb erkannt werde, was natürlich unnötig Ärger machen würde.)
Mal eine bloede Frage. Es wird immer nur ueber Jaxs Ausruestung geredet aber nie speziell ueber seine Kleidung. Ich kann mir kaum vorstellen Jemand auf dem Schwarzmarkt wuerde etwas dafuer bezahlen und habe auch noch Niemanden ausser Albs diese Ruestungen tragen sehen.
Wie waere es wenn wir die Alb Commander Ruestung einfach in sein Inventar oder neben die Pfeile am Start legen?
Penthesilea
24.11.2017, 09:34
Ich finde die Idee grundsätzlich gut, die Rüstung ins Spiel zu bringen, habe ich selbst ja erst getan mit der Rycyclingmaschine (auch wenn das eher als Spaß dabei ist^^). Nur wenn man diese gleich zu Beginn im Inventar hätte oder dort auf dem Boden platziert, würde der ganze erste Teil der Hauptstory keinen Sinn mehr ergeben, dreht es sich hier ja fast ausschließlich darum, seine Ausrüstung zurück zu bekommen bzw. für einem adequaten Ersatz zu sorgen.
Würde eher vorschlagen, den Helm beim Gleiter zu platzieren (dort wirft Jax ihn ja auf den Boden wärend der Cutscene) und die Rüstung in einem passenden Banditenlager oder gar im Fort unterzubringen, nur eben nicht mit den vollen Stats, sondern in einer beschädigten Version. Vll noch mit einer Notiz dazu, dass jemand versucht hätte, die Technologie zu der Rüstung zu studieren und diese dabei beschädigt wurde. Dann könnte man sie reparieren oder nimmt einfach Abschied davon und macht normal mit der Story weiter.
Genau, Helm muss beim Gleiter hin.
Die Ruestung dann vielleicht irgendwo bei Big W in einer Kiste?
Bis wir Dialoge machen koennen, dauert ja sicher.
Das ganze ist Fraktions-Neutral, Ray muss sowieso aufgelesen werden, wie Cajo (oder war das ein Hund in einem Horrorfilm?) oder Caju oder so.
[...]
Würde eher vorschlagen, den Helm beim Gleiter zu platzieren (dort wirft Jax ihn ja auf den Boden wärend der Cutscene) und die Rüstung in einem passenden Banditenlager oder gar im Fort unterzubringen, nur eben nicht mit den vollen Stats, sondern in einer beschädigten Version. Vll noch mit einer Notiz dazu, dass jemand versucht hätte, die Technologie zu der Rüstung zu studieren und diese dabei beschädigt wurde. Dann könnte man sie reparieren oder nimmt einfach Abschied davon und macht normal mit der Story weiter.
So ähnlich hatte ich mir das vorgestellt. Das man die einzelnen Teile (Kopf, Oberkörper, Hose) auf ganz Magallan wiederfinden muss. Quasi eine so Art Chromanin-Quest für Elex. Man durchsucht das ein oder andere Banditenversteck, bei dem man dann Hinweise zu den einzelnen Parts finden kann.
Penthesilea
25.11.2017, 15:05
Die Albrüstung besteht leider nur aus 2 Teilen...Helm und Körper. Da hat man es sich wohl etwas einfacher gemacht weil die Rüstung eh nicht für den Spieler zugänglich sein sollte.
Obwohl..wenn man sich die Rüstung so anschaut, sieht die auch aus wie ein Einteiler $zuck
Edit: Mal eine allgemeine "Machbarkeit" Frage: Kann man über die "RequiredSkills" nur eine minimale Skill- oder Attributvorrausetzung bestimmen oder auch eine maximale?
Hab hier noch so ein paar Ideen um das "roleplaying" ein bisschen anzupassen wie "als Berserker kann man keine Energiewaffen mehr verwenden" und am einfachsten wäre es dann natürlich, wenn ich einfach alle den "verbotenen" Gegenständen einen maximal erlaubten "Berserker" Skill von 0 zuordnen könnte.
Man könnte natürlich auch eintragen, dass man für diese Waffen den Skill "Kleriker" braucht, nur wenn man dass dann mit allen "Gilden" Waffen so macht, kann man als Fraktionsloser nahezu keine Waffen mehr verwenden :o
tombom81
26.11.2017, 11:01
Genau, Helm muss beim Gleiter hin.Gute Idee, geht aber wohl nicht. Oder hat schon jemand einen "losen" Helm (oder Rüstung) im Spiel gesehen, also außerhalb einer Kiste? (Ich meine, jemand hat einmal bezüglich eines Risens gesagt, dass eine ingame platzierte Rüstung wie ein geschnürtes Paket aussähe.)
Andere Sache: hat schon jemand einen der vielen Helper (Combat, Tuning, Routine) sinnvoll einsetzen können? Der hier aus dem Testlevel_Kaveram hat offenbar nur Dummy-Routinen:
https://upload.worldofplayers.de/files10/RoutineHelper.jpg
Zu den "RequiredSkills": das wird schwierig (für so etwas bräuchte man ein mächtigeres script-System.)
Ich könnte mir aber vorstellen, dass man das möglicherweise über Dialoge regeln könnte, derart, dass einen der Gesprächspartner anpault, wenn man eine Energiewaffe im Inventory hat (ob man das mit einem Guildtest auf "Berserker" verknüpfen kann, weiß ich nicht).
Hintergrund ist das PB-Questsystem, wo eine Quest erfüllt ist, wenn man ein bestimmtes Item "besorgt" hat.
(Ob man permanente Quests anlegen kann und ob man dann für jede Energiewaffe eine extra Quest erstellen müsste, und ob man den Aufwand dann überhaupt treiben will, steht in den Sternen.:D)
Penthesilea
26.11.2017, 11:38
Da die Berserker ja immerhin bereits nervige Sprüche von sich lassen wenn man in ihrer Gegenwart irgendeine Form der Technik verwendet, werde ich wohl mal schauen ob ich das verschärfen kann und diese dann aggressiv reagieren, als ob man eine Waffe gezogen hätte. Aber das wäre nur zur Hälfte das, was ich mir vorgestellt hätte, da ich wirklich verhindern wollte, dass man als Berserker überhaupt eine Energiewaffe anlegen kann (um mal bei dem Beispiel zu bleiben). Im inventory darf die gerne sein, da spricht erstmal nichts dagegen, schließlich sammeln und zerstören die Berserker ja bekanntermaßen auch alles elexhaltige. Dadurch wäre deine Idee über das Questsystem vll ein Overkill aber ich behalte das mal im Hinterkopf, das kann man vll an anderer Stelle noch einsetzen.
Evtl. ist es auch gar nicht so schlimm, wenn man die fraktionsspezifischen Waffen an deren Skills bindet, dann hat man eher das Bedürfnis danach sich früh einer Fraktion anzuschließen und erledigt später den Aufstieg zum höchsten Rang nicht binnen einer Stunde. Man könnte dann sogar noch überlegen neue Craftingrezepte für Ringe zu erstellen, die einem erlauben fraktionsfremde Waffen zu verwenden :o
(Wäre ja nur ein temporärer Bonusskill und schaltet dadurch keine Gildenlehrer frei)
Zu den Helpern kann ich leider nichts sagen, über deren Templates bin ich zwar schon gestolpert aber bin bisher nie auf die Idee gekommen mal einen im Spiel einzufügen...
Weiss Jemand wie man Fraktionen wechseln kann?
Nach dem 'poesen' bzw. eiskalten Ende moechte ich gerne wieder Alb sein. Da wollte ich einmal testen was passiert wenn ich als Alb und nicht Independent starte:
http://www.youtube.com/watch?v=32FrhMiX9c8
Es gibt ja etliche Quests die ein JoinGuild Script aufrufen. Es koennte ja sein das es die Guild des Questtargets nimmt.
Wenn man nun weiss wo der Dialog oder die Entscheidung ausgeloest wird, dort dann die Fraktion wechseln?
@disi123
Mit den DebugKeys (https://forum.worldofplayers.de/forum/threads/1483240-Modkit-f%C3%BCr-Elex?p=25632300&viewfull=1#post25632300) kannst du dir das viele Wegrennen sparen. ;)
Über Fraktionswechsel weiß ich leider nichts.
Andere Sache: hat schon jemand einen der vielen Helper (Combat, Tuning, Routine) sinnvoll einsetzen können? Der hier aus dem Testlevel_Kaveram hat offenbar nur Dummy-Routinen:Wenn ich mir so die Infos anschaue, dann sind dort nicht besonders viele interessante Infos (=Dialoge) für diese Helper vorhanden. Die einzige Info des TradeHelpers sieht zum Beispiel so aus:
InfoCommands {
class gCInfoCommandDescription {
Version = 1;
Properties {
class gCInfoDescLocString Text = "INFO_DESC_KALVERAMX62_00000033";
}
ClassData {
}
}
class gCInfoCommandRunAIScript {
Version = 1;
Properties {
class gCScriptProxyAIFunction AIScript = "OnOpen_Trade";
class bCString Self = "";
class bCString Other = "";
int Param = 0;
}
ClassData {
}
}
}
InfoConditions {
}Da passiert nichts, außer dass sich das Handelsfenster öffnet.
Uns hält aber nichts davon ab, eigene Infos (mit vorhandenen Texten) zu schreiben und so unsere eigenen Helper-NPCs zu basteln.
@disi123
Mit den DebugKeys (https://forum.worldofplayers.de/forum/threads/1483240-Modkit-f%C3%BCr-Elex?p=25632300&viewfull=1#post25632300) kannst du dir das viele Wegrennen sparen. ;)
Über Fraktionswechsel weiß ich leider nichts.
Dangoe, ich hatte das vor laengerer Zeit einmal genutzt und da war mir das allererste Mal das Spiel abgestuerzt, da dachte ich lieber nicht permanent. Zum Testen ist es aber super.
Ich kann schonmal sagen:
Nur das bestimmt das Verhalten der Nicht-Quest-NPC:
enum gEGuild Guild = gEGuild_Independent;
Ich hatte mir Perks in Kleriker oder auch Outlaw gegeben und wurde trotzdem nicht als Kleriker angesehen.
Nicht-Quest-NPC sind die Namenlosen im Spiel. Selbst als Alb kannst du noch normal die Quests mit Duras und Co. machen.
Als gEGuild_Alb oder gEGuild_Bandit ist man Feind mit allen anderen (KoS).
gEGuild_Separatist macht keinen grossen Unterschied und ist auch egal wenn man mit den Separatisten redet.
Alle Gild-Quests haben diese als Parent: player_joinguild
Die Unterquests wie Player_JoinKLE schliessen die Hauptquest mit ab.
Diese Quest muss abgeschlossen werden um die Hauptgeschichte voran zu bringen.
Hier findet die Magie statt:
class eCScriptProxyScript SucceededQuestScript = "OnQuestSuccess_PlayerJoinGuild";
Ich nehme an es guckt welche der Sub-Quests abgeschlossen wurden (oder bekommt man den i.e. Outlaw Perk erst und es guckt dann welchen Skill man hat?). Ich denke es guckt nach der Quest und gibt dem Spieler dann auch den entsprechenden Perk, kann jedenfalls nirgends eine Zeile finden wie:
enum gESkill Skill = gESkill_Perk_Outlaw;
Jeder Gild-NPC hat seine eigene Quest:
Player_JoinOUT fuer William
mit Parent player_joinguild
In der ELEX.exe gibt es nur diese Eintraege:
SetPlayerGuild_KLE
SetPlayerGuild_BSK
SetPlayerGuild_OUT
Ich denke es gibt keine Moeglichkeit den Spieler Alb werden zu lassen :(
Dann ist da:
SetGuild_Alb
Boldly go where no man has gone before:
https://www.youtube.com/watch?v=jIXfUsg8Fh8
Als Referenz, du kannst Potions vermutlich alle moeglichen Skripte ausfuehren lassen:
class eCScriptProxyScript ConsumeScript = "SetGuild_Alb";
unsigned int Amount = 1;
p.s. Ich wuerde dann sagen:
- ALLES TOP SECRET
p.s. Das funktioniert besser fuer Potions:
class eCScriptProxyScript PostInteractScript = "SetGuild_Alb";
Grumbledore
29.11.2017, 14:33
Gute Idee, geht aber wohl nicht. Oder hat schon jemand einen "losen" Helm (oder Rüstung) im Spiel gesehen, also außerhalb einer Kiste? (Ich meine, jemand hat einmal bezüglich eines Risens gesagt, dass eine ingame platzierte Rüstung wie ein geschnürtes Paket aussähe.)
Aye die Sonnenbrillen liegen lose Rum ^^
Grumbledore
29.11.2017, 23:30
und der alb commander helm bei mir jetzt auch, nur der mesh passt noch nicht xD mal schauen, ob ich das noch hinkriege ^^
https://i.imgur.com/aFgmD6m.jpg
https://i.imgur.com/y4yvB8j.jpg
https://i.imgur.com/VqRQYCN.jpg
Grumbledore
30.11.2017, 01:39
Items in der Welt platzieren/ersetzen:
Ich hab als Beispiel mal den Alb Commander Helm genommen. Hab ein, in der Welt, bereits platziertes Item genommen und umgewandelt. Das Item war ein altes Medkit, dass beim Händler im Dorf der Mitte, auf dem Thresen stand.
"It_Helmet_ALB_High" {
GUID = {BE6C1F3C-2B11-4D4D-925B-7279653B2501};
//Creator muss die GUID aus dem Template sein (die 2. auftauchende)
Creator = {9EA46D28-371D-435A-8331-74356D8619A3};
MatrixLocal = (mat 1 0 0 0 0 1 0 0 0 0 1 0 -126359.406 50044.3281 -104947.945 1);
MatrixGlobal = (mat 1 0 0 0 0 1 0 0 0 0 1 0 -126359.406 50044.3281 -104947.945 1);
Extents = (box -126389.406 50014.3281 -104977.945 -126329.406 50081.9219 -104917.945);
Center = (vec -126359.406 50048.125 -104947.945);
Radius = 10.2423134;
Range = 3000;
Unknown0 = <69 66 3A BF BE 0B 53 B3>;
Unknown1 = <00>;
Unknown2 = <9D A5 00 00 02 00>;
class eCMesh_PS {
Version = 2;
Properties {
//Das Mesh muss in dem Ordner Mesh zufinden sein.
class bCString MeshFileName = "Obj_Cs_Helmet_1_L1";
int MaterialSwitch = 1;
class bCFloatColor ObjectColor = (color 255 100 100);
unsigned int GIVoxelLevel = 2;
bool BlockVegetation = True;
bool ShowOnMap = False;
enum eSGameMapType GameMapType = eSGameMapType_None;
bool RiverObstacle = True;
}
ClassData {
}
}
class gCItem_PS {
Version = 2;
Properties {
unsigned int Amount = 1;
int GoldBuy = 20;
int GoldSell = 4;
bool MissionItem = False;
bool MagicItem = False;
bool AlchemyItem = False;
bool GoldItem = False;
bool AdventureItem = False;
bool Permanent = False;
int SortValue = 5800;
class eCEntityProxy Owner = {00000000-0000-0000-0000-000000000000};
//Muss dem Itemtyp angespasst werden. Da wir hier einen Helm haben muss die Category Equippable sein.
enum gEItemCategory Category = gEItemCategory_Equippable;
class bCString IconOverlay = "Moep";
//Das Icon anpassen nicht vergessen :-P
class bCString IconImage = "Icon_Helmet_ALB_High";
enum gEUIImageBackground IconBackground = gEUIImageBackground_Black;
class bCMotion HoldOffset = <00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80 3F>;
class bCMotion EquipOffset = <00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 80 3F>;
bool Dropped = False;
class eCTemplateEntityProxy ItemWorld = {00000000-0000-0000-0000-000000000000};
class eCTemplateEntityProxy ItemInventory = {00000000-0000-0000-0000-000000000000};
class bTSceneObjArray<class gCSkillValue> RequiredSkills = [
];
class bTSceneObjArray<class gCModifySkill> OnUseModifySkills = [
];
class bTSceneObjArray<class gCModifySkill> OnPossessModifySkills = [
];
//Der UseType muss auch entsprechend modifiziert werden.
enum gEItemUseType UseType = gEItemUseType_Hat;
class eCScriptProxyScript CanEquipScript = "CanEquipHasRequieredStats";
class eCScriptProxyScript OnPreUnEquipScript = "";
class eCScriptProxyScript OnEquipScript = "OnEquip";
class eCScriptProxyScript OnUnEquipScript = "OnUnEquip";
class eCScriptProxyScript OnPossessScript = "";
class eCScriptProxyScript OnUnholdScript = "";
class eCScriptProxyScript OnHoldScript = "";
//Hier bin ich mir nicht sicher, ob das Effectmaterial angepasst werden muss, hab es vorsichtshalber gemacht.
class bCString EffectMaterial = "plate";
enum gEItemHoldType HoldType = gEItemHoldType_None;
bool IsDangerousWeapon = False;
enum gECoolDownType CoolDownType = gECoolDownType_None;
unsigned int CoolDownMS = 0;
unsigned int AttachedItemId = 0;
int PickPocketModificator = 0;
unsigned int StackFlags = 0;
int NumSocketSlots = 0;
}
ClassData {
[class gCItem_PS, Version 2] = <02 CA A8 90 00 00 00 00 01 00 00 00>;
}
}
class gCInteraction_PS {
Version = 2;
Properties {
enum gEInteractionUseType UseType = gEInteractionUseType_Item;
class eCScriptProxyScript EnterROIScript = "OnEnterProcessingRange";
class eCScriptProxyScript ExitROIScript = "OnExitProcessingRange";
class eCScriptProxyScript TouchScript = "";
class eCScriptProxyScript IntersectScript = "";
class eCScriptProxyScript UntouchScript = "";
class eCScriptProxyScript TriggerScript = "";
class eCScriptProxyScript UntriggerScript = "";
class eCScriptProxyScript DamageScript = "";
class eCScriptProxyScript CanAttachSlotScript = "";
class eCScriptProxyScript AttachedSlotScript = "";
class eCScriptProxyScript DetachedSlotScript = "";
class eCScriptProxyScript BlockRemovingDeadScript = "";
class eCScriptProxyScript GeneratePlunderScript = "GeneratePlunder";
class gCScriptProxyAIState RoutineTask = "";
bool GroundBias = False;
class bCString FocusNameBone = "";
class bCVector FocusViewOffset = (vec 0 0 0);
class bCVector FocusWorldOffset = (vec 0 0 0);
class eCScriptProxyScript FocusPriorityScript = "GetFocusEntityPriority";
class eCScriptProxyScript FocusNameScript = "GetFocusEntityName";
class bTSceneObjArray<class gCInteraction> Interactions = [
class gCInteraction {
Version = 1;
Properties {
enum gEInteractionType Type = gEInteractionType_Interact_Player;
class eCScriptProxyScript CanInteractScript = "";
class gCScriptProxyAIFunction PreInteractScript = "";
class gCScriptProxyAIFunction InteractScript = "Interact_Player_TakeItem";
class eCScriptProxyScript PostInteractScript = "";
}
ClassData {
}
},
class gCInteraction {
Version = 1;
Properties {
enum gEInteractionType Type = gEInteractionType_Magic;
class eCScriptProxyScript CanInteractScript = "CanInteract_Magic_Item";
class gCScriptProxyAIFunction PreInteractScript = "PreInteract_Magic_Item";
class gCScriptProxyAIFunction InteractScript = "Telekinesis_Item";
class eCScriptProxyScript PostInteractScript = "";
}
ClassData {
}
}
];
class bCMatrix SlotOffset = (mat 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1);
enum gEFocusPriority FocusPriority = gEFocusPriority_Normal;
enum gEFocusNameType FocusNameType = gEFocusNameType_Entity;
int InteractionCounter = 0;
class eCEntityProxy SlotWorldItem = {00000000-0000-0000-0000-000000000000};
class eCTemplateEntityProxy SlotItem = {00000000-0000-0000-0000-000000000000};
}
}
}
So das sind alle Änderungen, die ich an dem vorhandenen Objekt gemacht habe. Die ganzen Werte könnt ihr bequem aus der Template Datei kopieren. Ich hoffe es hilft jemanden :D
P.S.: Es gibt scheinbar nur ganze 3 Meshes für Helme. Einmal die Sunglasses, und dann noch 2 "unbekannte" wovon einer zufälligerweise der Albhelm (Obj_Cs_Helmet_1_L1) ist.
Penthesilea
30.11.2017, 03:19
Ich bin grade ein wenig irritiert..sollte das MedKit denn aussehen wie ein Helm oder sich beim Einsammeln "verwandeln" in einen Helm?
Für letzteres reicht es die Creator GUID zu ändern, sobald das Item in deinem Inventar liegt, werden Angaben wie "effektmaterial", "Icon", "UseType" usw. aus der Templatedatei des Items mit der entsprechenden Creator GUID gelesen.
Wenn es dann noch aussehen soll wie der Helm, sollte demnach genügen, auch noch das Mesh anzupassen.
Funktioniert die "Verwandlung" mit "Obj_Cs_Helmet_1_L1" überhaupt? Das "Cs" lässt auf ein Mesh für eine Cutscene schließen.
Grumbledore
30.11.2017, 07:40
Ich bin grade ein wenig irritiert..sollte das MedKit denn aussehen wie ein Helm oder sich beim Einsammeln "verwandeln" in einen Helm?
Für letzteres reicht es die Creator GUID zu ändern, sobald das Item in deinem Inventar liegt, werden Angaben wie "effektmaterial", "Icon", "UseType" usw. aus der Templatedatei des Items mit der entsprechenden Creator GUID gelesen.
Das Spiel zickt so schon bei jedem kleinen Fehler rum, deswegen hab ich gar nicht erst probiert, ob nur eine Änderung der GUID ausreicht. Schlichtweg aus dem Grunde, dass ein Template für ein Rüstungsteil nicht die Klasse gCItem_PS sondern nur die Klasse gCItemCloth_PS. Die Klasse abzuändern hat bei mir in einem Crash resultiert. Und das war nur Copy&Paste. Hmm gerade mal die Sonnenbrille in einer Sektor datei rausgesucht, dort ging es mit ItemCloth. Lustigerweise funktioniert es auch mit Item oO
Wenn es dann noch aussehen soll wie der Helm, sollte demnach genügen, auch noch das Mesh anzupassen.
Funktioniert die "Verwandlung" mit "Obj_Cs_Helmet_1_L1" überhaupt? Das "Cs" lässt auf ein Mesh für eine Cutscene schließen.
das mesh in der Klasse eCMesh_PS wird aus dem Mesh Ordner gelesen und ist scheinbar für Meshes, die in der Welt platzierbar sind. Funktioniert wunderbar.
https://i.imgur.com/DqHayw2.jpg
Items in der Welt platzieren/ersetzen:
Vorab: Ich hab' derzeit noch 0 Ahnung von Risen- oder Elexmodding.
Die Archive bekomme ich wohl entpackt, aber das war's dann momentan auch schon fast ... wie genau komme ich an vernünftigen Code wie aus deinem Post? Das sind die entpackten "templates" richtig? Gibt's da ein Tool mit dem die geöffnet werden müssen?
Penthesilea
01.12.2017, 11:05
Vorab: Ich hab' derzeit noch 0 Ahnung von Risen- oder Elexmodding.
Die Archive bekomme ich wohl entpackt, aber das war's dann momentan auch schon fast ... wie genau komme ich an vernünftigen Code wie aus deinem Post? Das sind die entpackten "templates" richtig? Gibt's da ein Tool mit dem die geöffnet werden müssen?
Wenn du die .pak Archive bereits entpacken konntest, nehme ich mal an, dass du bereits den Ressourcen Manager (elexresman.exe) geladen hast. Wenn du nun aus den entpüacken Templates, Sektoren usw. lesbare Dateien machen willst, gehst du genauso vor wie beim entpacken der Archive, sprich: einfach die Datei auf die elexresman.exe ziehen und du erhälst eine ".elex*doc" , welche du mit einem beliebigen Texteditor öffnen, lesen und bearbeiten kannst.
Wenn du einfach nur den Ressourcen Manager mit einem Doppelklick startest, siehst du auch eine Übersicht aller Möglichen Dateitypen und in welche diese Umgewandelt werden können.
Schau auch ruhig mal im Moddingbereich von Risen vorbei, dort findest auch den Ressourcen Manager für Risen 3 zusammen mit einer Readme, welche dessen Funktionen beschreibt und (größtenteils) genauso auch auf die Elex Version angewendet werden können.
Besten Dank, hilft mir schonmal einen großen Schritt weiter. :gratz
Grumbledore
03.12.2017, 09:58
ich hatte gestern nacht eine idee für einen modlauncher.
allerdings bin ich seit ewigkeiten raus, was programmieren angeht. das letzte mal ernsthaft mit c++ / visual basic gearbeitet hab ich vor ca 13 jahren.
grundlegendes probleme mit mods ist die kompabillität, sobald sie w_info, w_quest.hd und world.elexwrl modifizieren. später werden dann vielleicht auch noch die lokalisierungs strings hinzu kommen.
das auslesen der mod dateien und extrahieren der änderungen an den entsprechenden dateien würde wahrscheinlich zu viele ressourcen fressen.
dementsprechend müssten modder ihre änderungen in einer seperaten txt datei festhalten und diese dem mod archiv beilegen.
der launcher liesst den ordner mit den mods aus, zeigt sie im launcher an und der user kann per checkbox die mods auswählen, die er benutzen will.
bei klick auf aktivieren schaut der launcher nach text dateien zu den mods und verbindet sie mit den original files. danach packt er das ganze in einen eigenständigen mod und fertig.
ich hatte gestern nacht eine idee für einen modlauncher.
allerdings bin ich seit ewigkeiten raus, was programmieren angeht. das letzte mal ernsthaft mit c++ / visual basic gearbeitet hab ich vor ca 13 jahren.
grundlegendes probleme mit mods ist die kompabillität, sobald sie w_info, w_quest.hd und world.elexwrl modifizieren. später werden dann vielleicht auch noch die lokalisierungs strings hinzu kommen.
das auslesen der mod dateien und extrahieren der änderungen an den entsprechenden dateien würde wahrscheinlich zu viele ressourcen fressen.
dementsprechend müssten modder ihre änderungen in einer seperaten txt datei festhalten und diese dem mod archiv beilegen.
der launcher liesst den ordner mit den mods aus, zeigt sie im launcher an und der user kann per checkbox die mods auswählen, die er benutzen will.
bei klick auf aktivieren schaut der launcher nach text dateien zu den mods und verbindet sie mit den original files. danach packt er das ganze in einen eigenständigen mod und fertig.
Ich habe schon xml Dateien manipuliert mit dem Notepad++ C++ plugin. Das laesst dich C++ Skripte in Notepad++ ausfuehren.
So konnte ich die massiven AI Daten von Superpower2 per Mouseklick manipulieren.
Das waere ein Ansatz, wenn man einfach sagt XML-maessig mit geschweiften Klammern um die Felder zu identifizieren.
Allerdings muessten die Mod Authoren auch idealerweise die bereits extrahierten w_info.hdrdoc Dateien bereitstellen und Benutzer koennen die dann zusammenfuehren, anschliessend muessen sie praktisch ihre eigene Mod (w_info.hdr) erstellen.
Oder fuer The Forest hatte ich in Unity/C++ die Daten direkt als CSV mit einer XML Class gelesen und gespeichert. Leider ist das hier kein offizielles Format und man muesste alles manuell einlesen, dann zusammenfuehren und wieder in eine neue w_info.hdrdoc schreiben.
Grumbledore
03.12.2017, 12:40
Ich habe schon xml Dateien manipuliert mit dem Notepad++ C++ plugin. Das laesst dich C++ Skripte in Notepad++ ausfuehren.
So konnte ich die massiven AI Daten von Superpower2 per Mouseklick manipulieren.
Das waere ein Ansatz, wenn man einfach sagt XML-maessig mit geschweiften Klammern um die Felder zu identifizieren.
Allerdings muessten die Mod Authoren auch idealerweise die bereits extrahierten w_info.hdrdoc Dateien bereitstellen und Benutzer koennen die dann zusammenfuehren, anschliessend muessen sie praktisch ihre eigene Mod (w_info.hdr) erstellen.
Oder fuer The Forest hatte ich in Unity/C++ die Daten direkt als CSV mit einer XML Class gelesen und gespeichert. Leider ist das hier kein offizielles Format und man muesste alles manuell einlesen, dann zusammenfuehren und wieder in eine neue w_info.hdrdoc schreiben.
also die idee war so:
die original w_info.hdr wird als template benutzt. die mods selber beinhalten keine gepackten dateien der info world quest etc mehr. sondern nur noch eine info datei mit den zeilen, die angehängt worden sind.
der user wählt mod 1 3 und 6 aus.
mod 1 benutzt nur eine modifizierte w_info.hrd
mod 3 benutzt eine modifizierte world und info datei
mod 6 benutzt gar nichts.
das programm ließt die info datei und fügt den inhalt an die template info an.
in diesem falle würde das template für die info mit den nötigen modifikationen von mod 1 und 3 erweitert und die world nur von den infos zu mod 3 erweitert.
das programm packt dann die info world und quest in eine eigenständige mod und fertig.
auf diese weise hätte man den geringsten aufwand seitens des users und nur einen minimalen aufwand seitens des modders. er kann zum testen seines mods weiterhin mit den modifizierten info dateien arbeiten und brauch beim updaten dann nur die modfizierten oder neuen sachen in die info datei packen.
welches format die datei hat ist im prinzip egal. das programm muss sie nur lesen können.
Penthesilea
03.12.2017, 13:13
Mal ganz doof gefragt: Hat das schon jemand getestet ob es überhaupt kompatibilitäts Probleme zwischen Mods gibt oder ist das eine reine Vermutung? Ich erinnere mich daran, dass in dem Diskussionsthread zu einem Modkit erwähnt wurde, dass es egal sein sollte wieviele Mods man gleichzeitig hat und dies bereits bei Risen 3 funktioniert habe.
Mal ganz doof gefragt: Hat das schon jemand getestet ob es überhaupt kompatibilitäts Probleme zwischen Mods gibt oder ist das eine reine Vermutung? Ich erinnere mich daran, dass in dem Diskussionsthread zu einem Modkit erwähnt wurde, dass es egal sein sollte wieviele Mods man gleichzeitig hat und dies bereits bei Risen 3 funktioniert habe.
*hust* Bin neu hier :D
Es gibt dieses 0-9 fuer die Versionen der .pak Dateien aber ich dachte immer die ueberschreiben jede Datei mit der jeweils hoeheren Version. Getestet habe ich das nicht.
Grumbledore
03.12.2017, 13:33
Mal ganz doof gefragt: Hat das schon jemand getestet ob es überhaupt kompatibilitäts Probleme zwischen Mods gibt oder ist das eine reine Vermutung? Ich erinnere mich daran, dass in dem Diskussionsthread zu einem Modkit erwähnt wurde, dass es egal sein sollte wieviele Mods man gleichzeitig hat und dies bereits bei Risen 3 funktioniert habe.
nein das funktioniert nicht. gerade mal dein recycling und meinen traders mod zusammen gestartet, meine trader gehen alle noch, dein recycling kann nicht mehr benutzt werden.
https://i.imgur.com/d3CEU2b.jpg
Jupp, tut nicht.
Sein Helm-Mod ist m_2_ und meiner ist m_6_
Keiner seiner Sektoren wurden geladen, weil meine world.elexwrl seine ueberschreibt.
https://upload.worldofplayers.de/files10/multi_mod.jpg
Penthesilea
03.12.2017, 14:07
Ok ;)
Wollte nur sichergehen, dass der Aufwand um eine Lösung dafür zu finden sich auch lohnt^^
Das wird dann wohl auch wieder Probleme geben, sobald wir die w_strings.bin bearbeiten können...zumal ich nicht weiß, wie diese Bearbeitung später aussehen wird. Grundsätzlich dürfte das kein Problem sein, ein Programm zu schreiben, dass die problematischen Dateien aus den unterschiedlichen Mods zusammenführt. In Visual Basic brauchts dazu nur einen StreamReader und einen StreamWriter die parallel laufen, die neuen Daten auslesen und in einer Datei zuzsammenführen. Das Problem dürfte da eher das (ent-)packen der .pak Dateien werden sowieso die Umwandlung von in lesbare .*doc Dokumente (wobei ich mir da nicht sicher bin ob man das wirklich machen müsste oder einfach die binären Daten kopieren kann)
@Grumbledore vielleicht waere es besser du packst die Haendler in eine neutrale Fraktion wie gEGuild_None damit sie nicht angreifen?
Ich habe hier mal getestet:
http://www.youtube.com/watch?v=UDaImuiwwWU
Grumbledore
03.12.2017, 15:06
Ok ;)
Wollte nur sichergehen, dass der Aufwand um eine Lösung dafür zu finden sich auch lohnt^^
Das wird dann wohl auch wieder Probleme geben, sobald wir die w_strings.bin bearbeiten können...zumal ich nicht weiß, wie diese Bearbeitung später aussehen wird. Grundsätzlich dürfte das kein Problem sein, ein Programm zu schreiben, dass die problematischen Dateien aus den unterschiedlichen Mods zusammenführt. In Visual Basic brauchts dazu nur einen StreamReader und einen StreamWriter die parallel laufen, die neuen Daten auslesen und in einer Datei zuzsammenführen. Das Problem dürfte da eher das (ent-)packen der .pak Dateien werden sowieso die Umwandlung von in lesbare .*doc Dokumente (wobei ich mir da nicht sicher bin ob man das wirklich machen müsste oder einfach die binären Daten kopieren kann)
Das entpacken würde ja weg fallen, wenn die Modder im Vorfeld ihre Modifikationen an den wichtigen Dateien in einem lesbaren Format bereitstellen.
Dann würde nur noch das einfügen und packen bleiben. Allerdings weiss ich nicht in wie fern baltrams elexresman als Kommandozeilen Tool benutzt werden kann.
Was ich noch gar nicht probiert habe ist, ob die .Pak Dateien auch entpackt funktionieren, dass war damals ein kleiner kniff um ein bisschen mehr Performance bei spielen raus zu holen.
//Edit:
@disi ja klar kann ich nachher machen. Bin nur gerade nicht zu Hause.
Penthesilea
03.12.2017, 15:13
Da der Elex Ressourcen Manager eine Angepasste Version des Risen 3 Ressourcen Managers ist, sollte die Benutzung über Commandozeile immernoch funktionieren:
Kommandozeilenparameter:
--non-interactive - Deaktiviert Aufforderungen zur Interaktion (z.B. Drücken der Enter-Taste)
--generation [Zahl von 0 bis 9] - Bestimmt die Archiv-Generation beim Erstellen von .pak-Dateien
r3resman.exe <Datei oder Ordner> <Parameter>
Vll könnte man den Resosurcen Manager sogar in einen solchen Launcher mittels Ressourcendatei integrieren, habe mich mit sowas aber noch nicht genauer beschäftigt.
Grumbledore
03.12.2017, 15:43
Das wäre natürlich super :D
Ich schaue nachher Mal, ob das Spiel auch entpackte .Pak Dateien liest.
Ich könnte wahrscheinlich so etwas realisieren, allerdings würde jemand mit mehr Praxis das ganze weitaus schneller hinbekommen.
NPC Party tut so:
Die GUID der Mitglieder ist Teil der ClassData aller Mitglieder (Haelfte umgedreht).
Rainer hat GUID: 8FC33D75-3C79-4411-ADC9-7AEEA13E8879
Und hier seine ClassData fuer Party, all seine Begleiter haben dieselbe Klasse:
class gCParty_PS {
Version = 2;
Properties {
enum gEPartyMemberType PartyMemberType = gEPartyMemberType_None;
enum gEPartyMemberMode PartyMemberMode = gEPartyMemberMode_Following;
class bCString PartyArea = "";
}
ClassData {
[class gCParty_PS, Version 2] = <08 00 52 61 69 6E 65 72 5F 30 01 00 00 00 75 3D C3 8F 79 3C 11 44 AD C9 7A EE A1 3E 88 79>;
}
}
Gruppenname und mehr was unbekannt ist.
Anfuehrer.
class gCRoutine {
Version = 1;
Properties {
class bCString Name = "Start";
}
ClassData {
[class gCRoutine, Version 1] {
RoutinePoints = [
class gCRoutinePoint {
Version = 1;
Properties {
float Time = 0;
class eCEntityProxy Point = {951F561A-B70B-4C68-A5DF-F87F3BF9CDC7};
}
ClassData {
}
}
];
}
}
}
Der eCEntityProxy Point ist ein Stand vor Abessa.
Float gibt die Tageszeit an, wo der NPC dort sein soll (0-24)
Start Routine wird automatisch gestartet sobald der NPC in der Welt erscheint.
Du kannst immer nur einen NPC einen interaktiven Punkt in der Welt gleichzeitig anlaufen lassen, ich nehme die Punkte aus i.e. EDA_Interacts.elexsecdoc (Lagerfeuer und so).
Deswegen waere Party nuetzlich, weil die sonst niemals zusammen laufen koennen. Nur der mit 01 fuehrt seine Routine aus.
Penthesilea
03.12.2017, 16:05
Das wäre natürlich super :D
Ich schaue nachher Mal, ob das Spiel auch entpackte .Pak Dateien liest.
Ich könnte wahrscheinlich so etwas realisieren, allerdings würde jemand mit mehr Praxis das ganze weitaus schneller hinbekommen.
Wirklich viel Erfahrung habe ich damit bei weitem nicht, hab grade erst angefangen von Makros in VBA auf "richtige" Programme in VB umzusteigen und arbeite dabei grade an einem andere Projekt (einfache Modifikation vieler Item Dateien, später vll auch Sektoren (Kisten)). Das ganze benötigt nur leider eine Datenbank und damit hatte ich bisher keinerlei Berührungspunkte...glücklicherweise hilft mir jemand aus dem Forum dabei :)
Wenn ich das hinbekomme und bis dahin niemand eine Lösung für dieses Problem hat oder daran arbeitet, schaue ich mir das gerne auch noch an.
JCDenton
03.12.2017, 16:55
Kann man vielleicht das GUI/Inventar ändern?
z.B. einen Charakter-Screen mit Zahlenwerten (Leben,Ausdauer etc.) erstellen.
Ich bin leider nicht erfahren genug. Habe bisher nur für Skyrim/Enderal gemoddet.
Beste Grüße
JC
Grumbledore
03.12.2017, 17:04
Kann man vielleicht das GUI/Inventar ändern?
z.B. einen Charakter-Screen mit Zahlenwerten (Leben,Ausdauer etc.) erstellen.
Ich bin leider nicht erfahren genug. Habe bisher nur für Skyrim/Enderal gemoddet.
Beste Grüße
JC
https://forum.worldofplayers.de/forum/threads/1505378-Request-Mod-f%C3%BCr-zum-besseren-Inventar
Siehe hier :D
Grumbledore
03.12.2017, 20:34
sieht bescheiden aus, aber immer hin schon mal ein anfang haha.
die liste wird durch den inhalt der packed folder generiert, wobei ich alles was nicht "m_" und ".pak" beinhaltet rausfiltere
https://i.imgur.com/KJEQeHJ.jpg
Penthesilea
03.12.2017, 20:50
Ist doch immerhin schonmal ein Anfang :)
Je nachdem wie weit du damit noch gehen willst, weise ich darauf hin, dass meine Recyclingmaschine noch nicht den Richtlinien angepasst ist und bis dahin für Testzwecke zur Zusammenführung von Mods erstmal ungeeignet ist ;)
Ich weiß nichtmal, ob ich die Mod in dieser Form überhaupt anpassen kann, da ich ja eine vorhandene Maschine verändert und somit die originale Sectordatei verändert habe. Um die Kompatibilität zu wahren, müsste ich einen eigenen Sector erstellen und die Maschine als neues Objekt in der Welt platzieren...mal schauen wann ich die Zeit dazu finde :o
Grumbledore
03.12.2017, 21:37
na die kriege ich notfalls auch gebastelt ^^ aber hab ja disi's mod zum testen ;)
so pfad wird über die registry rausgesucht :D mal schauen wie lange ich für den spaß brauche xD das war jetzt das einfachste.
Grumbledore
04.12.2017, 13:56
Paar kleinere Fortschritte gestern Abend gehabt 😂 zum Glück muss ich morgen erst auf Spätschicht kommen. Hab auf Arbeit vorhin ne kleine Auflistung gemacht, was ich noch alles machen muss/will.
aktuell sieht das Gerüst der Datei vom Modder so aus:
[infostart]
//Änderungen an w_info.hdr
[infoende]
[worldstart]
//Änderungen an world.elexwrl
[worldende]
[queststart]
//Änderungen an w_quest.hdr
[questende]
Die Verarbeitung bereitet mir im Moment ein paar Probleme, allerdings werde ich die heut Abend beheben xD
Penthesilea
04.12.2017, 16:05
Mal ganz doof gefragt: Was ist mit Mods die nicht drumherum kommen, die originalen Sektordateien zu verändern? Ich plane ja unteranderem nahezu jeden Kistenloot zu verbessern damit es nicht mehr so enttäuschend ist, nur eine Hand voll Splitter und Zigaretten zu finden. Nur kann ich das ja schlecht in einen eigenen Sektor schreiben.
Grumbledore
04.12.2017, 16:16
Das sollte eigentlich nichts machen, so lange kein anderer Mod die Sektoren überschreibt. Überschreibt ein anderer Mod die Sektoren, dann ist das eine Sache des Users.
Penthesilea
04.12.2017, 17:06
Ok, also einfach mit dem Hinweis auf die veränderten Sektoren veröffentlichen^^
Du kannst in toten NPC permanent Gegenstaende erzeugen:
Auf dem Helden laufen lassen:
class bCString Owner = "PC_Hero";
Permanent:
bool Permanent = True;
InfoCommand:
class gCInfoCommandCreateItem {
Version = 1;
Properties {
class bCString Entity1 = "Vivian";
class eCTemplateEntityProxy Item = {B455590B-D388-487C-BAF5-BEA50A1492C9};
unsigned int Amount = 500;
bool ResetRansacked = True;
bool OnScreenLog = True;
}
ClassData {
}
}
Jeden Tick bekommt Vivian 500 Splitter dazu und kann nochmal gelootet werden.
Wenn du unten noch ein ExecutionTimestamp als Condition benutzt:
class gCInfoConditionLastExecutionTimestamp {
Version = 1;
Properties {
class bCString Info = "DISI_60027";
enum eEExecutionTimestampCompare Compare = eEExecutionTimestampCompare_GreaterOrNone;
float TimeDistance = 1;
}
ClassData {
}
}
Und/Oder nur wenn sie keine Splitter mehr hat:
class gCInfoConditionItemAmount {
Version = 1;
Properties {
class eCEntityStringProxy Owner = "Vivian";
class eCTemplateEntityProxy Item = {B455590B-D388-487C-BAF5-BEA50A1492C9};
unsigned int ItemAmount = 0;
bool InvertTest = False;
}
ClassData {
}
}
Grumbledore
04.12.2017, 19:29
das ist eigentlich gar keine schlechte idee.
ich hab mir eh schon die frage gestellt, wieso man nicht zwischendurch "leichen" findet. überall monster, feindliche npc's aber kaum leichen oO mir fallen gerade nur die toten kleriker vom anfang ein....
Penthesilea
04.12.2017, 19:52
Naja, in der Wüste liegen auch noch diverse Banditen und Outlaws zum plündern, so ist es nicht. Viele Leichen sinds insgesamt aber wirklich nicht, das stimmt schon.
Die Idee die ich verfolge soll jedoch nicht einfach nur mehr Loot in die Welt bringen, sondern viel mehr das Knacken von Kisten und Tresoren attraktiver machen. Mir ist schlichtweg keine Kiste untergekommen bei der ich mir dachte, das es sich gelohnt hätte diese zu öffnen. Je höher die Skillanforderung dabei ist, desto besser sollte auch der Loot werden. Das kann ich mit Leichen nicht erreichen.
War mehr so die Idee: Einmal am Tag, wenn der Held in der Naehe ist und die Leiche schon gepluendert wurde, generiert sie einige Splitter und kann nochmal gepluendert werden.
Grumbledore
04.12.2017, 20:45
Naja, in der Wüste liegen auch noch diverse Banditen und Outlaws zum plündern, so ist es nicht. Viele Leichen sinds insgesamt aber wirklich nicht, das stimmt schon.
Die Idee die ich verfolge soll jedoch nicht einfach nur mehr Loot in die Welt bringen, sondern viel mehr das Knacken von Kisten und Tresoren attraktiver machen. Mir ist schlichtweg keine Kiste untergekommen bei der ich mir dachte, das es sich gelohnt hätte diese zu öffnen. Je höher die Skillanforderung dabei ist, desto besser sollte auch der Loot werden. Das kann ich mit Leichen nicht erreichen.
würdest du aber auch erreichen, wenn du komplett neue kisten und tresore reinbringen würdest. wenn du einfach nur die vorhandenen modifizierst, kann man anhand der schwierigkeit vorhersehen, ob es sich lohnt oder nicht. es gab einige ecken, wo ich mir dachte "hier muss was sein" und dann war da einfach nichts... genauso wie dieses angepriesene jetpack. wie war das? an hochgelegenen orten, soll sich wertvoller loot verbergen? das wurde doch mal in nem interview gesagt. ja ein paar stellen hab ich mal gefunden, aber 90% der zeit war einfach nichts da. wie oft bin ich mit dem jetpack irgendeinen turm o.ä. hoch geflogen, nur um nichts zu finden hahahaha
in tavar war ich nicht wirklich viel unterwegs. irgendwie liegen mir die wüstengebiete in spielen nicht mehr so wirklich. ich glaub, ich hab zu viel zeit auf tatooine verbracht xD
Goldbart
05.12.2017, 07:38
Heyho zusammen, ich hab so garkeienn Plan vom modden und hab deswegen eine Frage. In wie weit könnt ihr jetzt auch noch abschätzen was in Elex alles möglich sein wird und was euch auf jeden Fall verwehrt bleibt? Also ist Elex eher gut modbar oder sind so optische Sachen wie die Vegetation zu verändern das höchste der Gefühle.
Ich wuerde sagen so gut wie Skyrim/Oblivion etc. Dank Baltram.
Die Skriptsprache ist verstaendlich und konsistent durch alle Formen von Ressourcen (egal ob NPC/Item/Interact/Quest/Dialog).
Allerdings:
Du benutzt nicht das hauseigene Development Tool sondern haupsaechtlich Notepad++
Du hast keine Fenster wo du Buttons klickst um Dialoge/Skripts/Items/Quests zu erstellen sondern eine Text-Datei.
Du hast keine 3D Ansicht der Gegend um Gegenstaende zu platzieren sondern eine Matrix in einer Text-Datei.
Du hast keinen "Scene-Manager" sondern nur eine Text-Datei.
Ueber Sound weiss ich nichts aber auch die kann man wohl schon extrahieren.
Ueber Grafik weiss ich auch nichts.
Texte sollen wohl bald editierbar sein.
Erst vor ein paar Tagen kamen eigene Sektoren als Moeglichkeit hinzu und das war ein grosser Sprung :)
Grumbledore
05.12.2017, 12:37
Und ich komme so langsam mit dem modloader voran. Lesen/schreiben der Info, Quest und world funktioniert. Allerdings muss ich da nochmal Ran, RAM Belegung Schießstand von 20 auf 140mb hoch und bleibt da konstant.
Alter, mit solchen Möglichkeiten können wir das Spiel ja zu einem Diamanten schleifen!!
Stellt euch vor: dicht bevölkerte Dörfer und Städte mit NPCs, die euch kreativ ausgedachte Quests geben, in einer Welt die sowohl optisch als auch akkustisch seines Gleichen sucht. Wir bauen super Sounds aus den Gothic- und Risen-Spielen ein und basteln Texturpakete §omg
Mein Leben hat wieder einen Sinn!
Hat Jemand eine Idee wie man Teleporter deaktivieren/aktivieren kann?
Es gibt folgende Skripte:
SetTeleporterEnabled = setzt den Teleporter Marker auf der Karte aktiv
OnTeleporterEnabled = setzt den Teleporter Marker auf der Karte aktiv
SetTeleporterEnabled finde ich als nicht genutzt.
OnTeleporterEnabled wird ausgefuehrt wenn der Spieler eine Box um den Teleporter in der Welt betritt.
Ich habe versucht den Sektor World_Teleporter abzuschalten aber das entfernt/deaktiviert nicht bereits aktivierte Teleporter Mapmarker von der Karte.
Grumbledore
06.12.2017, 16:02
Hat Jemand eine Idee wie man Teleporter deaktivieren/aktivieren kann?
Es gibt folgende Skripte:
SetTeleporterEnabled = setzt den Teleporter Marker auf der Karte aktiv
OnTeleporterEnabled = setzt den Teleporter Marker auf der Karte aktiv
SetTeleporterEnabled finde ich als nicht genutzt.
OnTeleporterEnabled wird ausgefuehrt wenn der Spieler eine Box um den Teleporter in der Welt betritt.
Ich habe versucht den Sektor World_Teleporter abzuschalten aber das entfernt/deaktiviert nicht bereits aktivierte Teleporter Mapmarker von der Karte.
Werden wahrscheinlich noch in dem savegame gespeichert. Würde ich jetzt Mal tippen ^^
Werden wahrscheinlich noch in dem savegame gespeichert. Würde ich jetzt Mal tippen ^^
Man kann sie entfernen wie NPC:
class gCInfoCommandAddInfoSystemEndScript {
Version = 1;
Properties {
class eCScriptProxyScript Script = "RemoveNPC";
class bCString Self = "MapMarker_Location_TAV_Fort";
class bCString Other = "";
int Param = 0;
}
ClassData {
}
}
Ich meinte immer es gibt zu viele Teleporter und wenn eine Fraktion feindlich ist, muessen die Teleporter in die Stadt weg :)
Grumbledore
08.12.2017, 22:50
sehr nice :D gz :D dann wird das wohl auch für die händler marker gehen tippe ich mal haha
Wie sieht es eigentlich mit Kpfschuss-Schaden aus?
Es gibt ja für Gothic 1/2 ein Skript, welches freies Zielen und zonenbezogenen Schaden (Kopf, Arme, Beine, Torso) einführt.
Könnte man das für Elex übernehmen oder muss da sehr viel anpassen?
Hier die Mod: https://forum.worldofplayers.de/forum/threads/1509592-Release-Gothic-Freies-Zielen-Free-Aiming-(DE-EN-PL)
Ich komme mit Inbox und Sent Items im Forum nicht klar :)
Also derzeit bekomme ich unterschiedliche Fehler mit Modloader:
Woanders ausgefuehrt:
System.IO.DirectoryNotFoundException: Could not find a part of the path 'D:\Downloads\Nope\data\packed'.
Aus dem Spieleverzeichnis:
System.IO.DirectoryNotFoundException: Could not find a part of the path 'C:\GOG Games\elex\Nope\data\packed'.
tombom81
11.12.2017, 08:50
Man kann sie entfernen wie NPC:
class gCInfoCommandAddInfoSystemEndScript {
Version = 1;
Properties {
class eCScriptProxyScript Script = "RemoveNPC";
class bCString Self = "MapMarker_Location_TAV_Fort";
class bCString Other = "";
int Param = 0;
}
ClassData {
}
}cool, dazu brauchst du aber einen Dialog? Notfalls über unsichtbare NPCs, die hat das CPT team für ähnliche Sachen benutzt.
Ich meinte immer es gibt zu viele Teleporter und wenn eine Fraktion feindlich ist, muessen die Teleporter in die Stadt weg :)Wieso sollten die plötzlich "weg" sein? Das wäre schwer zu erklären; man könnte sie aber von der Map nehmen (dazu müsste man aber die GUI genauer untersuchen). Cooler wäre es aber, wenn feindliche Fraktionen eine Wache dort platzieren würden, was rpgmäßig richtig stimmig wäre, mMn.
Der Teleporter in Goliet war mir schon immer ein Dorn im Auge. Er sieht ja auch gestaltungs-technisch "technologisch" aus.
Anders ist es, wenn man ihn der Magie zuordnet.
Jedenfalls würde ich ihn umnutzen, d.h. dort platzieren, wo man ihn besser brauchen kann.
Dazu muss man nur das World_Teleporters Sektorfile bearbeiten; in Risen 3 hat das funktioniert, wenn ich mich recht erinnere.
Ich habe versucht den Sektor World_Teleporter abzuschalten aber das entfernt/deaktiviert nicht bereits aktivierte Teleporter Mapmarker von der Karte.Ich könnte mir vorstellen, dass die GUI die World_Teleporters "abklappert". Wenn man also einen Teleporter dort rauslöscht und die Datei als Mod verwendet, müsste er von der Map verschwinden.
Ich werde mal testen, ob er auf der Map erscheint, wenn ich ihn in ein anderes Sektorfile kopiere. Eventuell noch das MapMarker_Location modifizieren, für den Fall, dass die Teleporter darüber ("von der GUI") identifiziert werden.
cool, dazu brauchst du aber einen Dialog? Notfalls über unsichtbare NPCs, die hat das CPT team für ähnliche Sachen benutzt.
Wieso sollten die plötzlich "weg" sein? Das wäre schwer zu erklären; man könnte sie aber von der Map nehmen (dazu müsste man aber die GUI genauer untersuchen). Cooler wäre es aber, wenn feindliche Fraktionen eine Wache dort platzieren würden, was rpgmäßig richtig stimmig wäre, mMn.
Der Teleporter in Goliet war mir schon immer ein Dorn im Auge. Er sieht ja auch gestaltungs-technisch "technologisch" aus.
Anders ist es, wenn man ihn der Magie zuordnet.
Jedenfalls würde ich ihn umnutzen, d.h. dort platzieren, wo man ihn besser brauchen kann.
Dazu muss man nur das World_Teleporters Sektorfile bearbeiten; in Risen 3 hat das funktioniert, wenn ich mich recht erinnere.
Ich könnte mir vorstellen, dass die GUI die World_Teleporters "abklappert". Wenn man also einen Teleporter dort rauslöscht und die Datei als Mod verwendet, müsste er von der Map verschwinden.
Ich werde mal testen, ob er auf der Map erscheint, wenn ich ihn in ein anderes Sektorfile kopiere. Eventuell noch das MapMarker_Location modifizieren, für den Fall, dass die Teleporter darüber ("von der GUI") identifiziert werden.
Der Spieler ist der Einzige der Teleporter benutzt und so kann man sie definitiv von der Karte entfernen. Es faellt kaum auf und wenn man sie nicht komplett entfernt bleiben sie auch auf der Karte.
Eigene Teleporter sind kaum moeglich, weil man noch keine Strings bearbeiten kann.
Ich finde das passt ganz gut zu meiner Mod, es ist auch ein super Gefuehl wie auf einmal ALLE freien Haendler, Trainer und die Teleporter direkt oder nahe der freien Staedte verschwinden sobald man Alb wird. Es wird sehr einsam auf der Karte.
Um InfoSkripte auszuloesen brauchst du keinen Dialog.
Einfach auf dem Helden als Owner laufen lassen, mit einer bestimmten Bedingung wann es laufen soll.
Ich habe mal ein eigenes kleines Projekt heute gestartet.
Das waere ein Konsolenprogramm um die w_info.hdrdoc zu mergen: https://github.com/disi/ElexModMerger
Eine w_info.hdrdoc und w_info1.hdrdoc im gleichen Ordner und es erstellt eine kombinierte w_info_new.hdrdoc.
Bitte nicht lachen, ich habe da echt herumgeforscht wie man die Klassen direkt einlesen konnte aber war mir echt zu kompliziert :)
Die Idee ist es irgendwann im data\packed laufen zu lassen und es erstellt eine m_9_merged_mod.pak am Ende.
Ich habe mal ein eigenes kleines Projekt heute gestartet.
Das waere ein Konsolenprogramm um die w_info.hdrdoc zu mergen: https://github.com/disi/ElexModMerger
Eine w_info.hdrdoc und w_info1.hdrdoc im gleichen Ordner und es erstellt eine kombinierte w_info_new.hdrdoc.
Bitte nicht lachen, ich habe da echt herumgeforscht wie man die Klassen direkt einlesen konnte aber war mir echt zu kompliziert :)
Die Idee ist es irgendwann im data\packed laufen zu lassen und es erstellt eine m_9_merged_mod.pak am Ende.
Gute Idee! Danke :gratz
Grumbledore
12.12.2017, 19:08
Ich habe mal ein eigenes kleines Projekt heute gestartet.
Das waere ein Konsolenprogramm um die w_info.hdrdoc zu mergen: https://github.com/disi/ElexModMerger
Eine w_info.hdrdoc und w_info1.hdrdoc im gleichen Ordner und es erstellt eine kombinierte w_info_new.hdrdoc.
Bitte nicht lachen, ich habe da echt herumgeforscht wie man die Klassen direkt einlesen konnte aber war mir echt zu kompliziert :)
Die Idee ist es irgendwann im data\packed laufen zu lassen und es erstellt eine m_9_merged_mod.pak am Ende.
Oki dann kann ich mein Projekt ja einstellen ^^
Oki dann kann ich mein Projekt ja einstellen ^^
Tut mir Leid, ich wollte etwas einfaches.
Bisher nur dir w_info.hdr, world sollte aber nicht so heftig sein *hoff*
https://www.youtube.com/watch?v=KM4qeBXMZF4
Hier mal zum Testen, da sind ein paar Checks drin aber wer weiss was Leute ausprobieren.
Seid vorsichtig mit der Ordner-Loeschung am Ende! Macht das nur wenn ihr die echt nicht braucht! KEIN RECYCLEBIN!
Hier mit world file:
https://forum.worldofplayers.de/forum/threads/1510364-Tool-ElexModMerger
Das ist ziemlich geil, jetzt koennen HelmetMod, RecycleMachine und AlbMod und was nicht alles koexistieren :)
p.s. die w_quests.hdr fehlt noch.
Ich habe mir gerade mal so ueberlegt. Da das Programm die elexresman.exe braucht, ist eine Veroeffentlichung woanders als hier im Forum nutzlos.
Ich werde vermutlich einen eigenen Thread aufmachen.
Wir koennen noch nichts mit denen aus z.B. Dialogue_en machen, oder?
INFO_DIRKSI5_00000001_English.elexdlg
Diese hier kann man mit dem fmod_extr.exe extrahieren:
INFO_DIRKSI5_00000001_English.fsb
und bekommt eine:
INFO_DIRKSI5_00000001_English_0.wav
So kann man die existierenden Sprachdateien durchhoeren und dann z.B. INFO_DIRKSI5_00000001 in einem Dialog in w_info.hdr verwenden.
Da schon so viel Text in Sprachdateien existiert, koennte man ganz neue Dialoge bauen oder Ambient Sounds. Ich vermisse teilweise sowas wie "12 Goetter, Schwachsinn!" wenn man einfach mal durch die Stadt geht. Es gibt glaube ich nur ganze Dialoge zwischen NPC wenn man stehenbleibt und zuhoert.
So Umgebungsgeraeusche.
p.s. oder Jemand setzt sich hin und hoert die durch, dann dokumentieren wie [Sprecher][Tonlage][Text][Kontext][Datei] oder so. :D (~30.000 Dateien)
Zum Extrahieren, ein batch Skript:
FOR %%F in (*.elexdlg) DO elexresman.exe %%F
FOR %%F in (*.fsb) DO fsb_aud_extr.exe %%F
Diese Dateien muessen im gleichen Ordner sein der entpackten c_1_en.pak:
elexresman.exe
fmod_extr.exe
fmodex.dll
fmodL.dll
fsb_aud_extr.exe
p.s. Ich gucke mir gerade https://speechnotes.co/ an :)
Voice zu Text...
Ich habe mal mit pocketsphinx herumexperimentiert, das geht. Ich wandel gerade 30k wave Dateien in 16kHz um, dann mal gucken...
Was dabei herauskommt: https://upload.worldofplayers.de/files10/VOICETEXT.7z
Software: https://cmusphinx.github.io/
pps. Ein paar Gedanken dazu.
- Woerter wie Magallan, Albs, Feen und Elfen kennt die Datenbank nicht
- Die Erkennungssoftware Definition (model) ist 8kHz (in Frequenzen), ich muss mal gucken wie das Spektrum der Audios aussieht (mir ist aufgefallen, Jax hat eine sehr tiefe Stimme und wird sehr gut erkannt)
Radiant Quests.
Das sind Quests die man sich von NPC/Boards oder was auch immer abholen kann und dann gegen Belohnung ausfuehren.
Es gibt sehr sehr sehr wenig Random in Elex meiner Meinung nach. So habe ich keine Moeglichkeit gefunden einen zufaelligen Ort fuer eine Quest zu waehlen. Alles muss vorher geplant sein.
Es gibt die Moeglichkeit zufaellige Gegner (aus einem Pool) an einer bestimmten Stelle erscheinen zu lassen. Die stehen dann aber da doof herum und warten auf Gegner, Respawn koennen keine Routinen ausfuehren.
Aus den Begleiter-Dialogen habe ich gesehen, man kann testen wie oft ein Dialog gesprochen wurde pro Tag.
Ich ueberlege ob man einem NPC ein paar Dialoge gibt, wie "Geh und toete die Kleriker dort!", "Geh und toete die Berserker hier!", "Geh und toete die Outlaws da!". Dann macht man diesen Dialog nur einmal alle 2-3 Tage verfuegbar. Leider wird es immer der gleiche Ort und die gleiche Quest sein.
Hat damit schon Jemand herumprobiert oder in die Richtung geforscht?
tombom81
18.12.2017, 19:19
Ich habe das "Teleporter verschieben" ausprobiert; funktioniert soweit, der Marker erscheint auch auf der Map, wenn man ihn aktiviert. (Kleiner Schönheitsfehler: er heißt noch "Hotel ruins of Goliet".)
https://upload.worldofplayers.de/files10/Teleport_moved.jpg
https://upload.worldofplayers.de/files10/Teleport_moved_on_map.jpg
Radiant Quests. ...
Hat damit schon Jemand herumprobiert oder in die Richtung geforscht?Nicht wirklich; bei so komplexen Sachen wäre es nicht schlecht, wenn du mehr input gibst, z.B. wie das "Abholen" von Quests umgesetzt ist. Normal läuft Questaktivierung ja über eine Info (Dialog) mit Aktivator, ist das beim Abholen anders?
Zu den Random Orten hätte ich die Idee, das mit einem reisenden Händler zu verknüpfen. Hier wird der Ambient_Traveling_Merchant_01 aus ABE gesteuert:
ClassData { [class gCNavigation_PS, Version 12] {
Routines = [
class gCRoutine {
Version = 1;
Properties {
class bCString Name = "Start";
}
ClassData {
[class gCRoutine, Version 1] {
RoutinePoints = [
class gCRoutinePoint {
Version = 1;
Properties {
float Time = 0;
class eCEntityProxy Point = {86409DBE-1889-403B-ADD0-B905926D0A18};
}
ClassData {
}
}
];
}
}
},
class gCRoutine {
Version = 1;
Properties {
class bCString Name = "WorldHeartSprint";
}
ClassData {
[class gCRoutine, Version 1] {
RoutinePoints = [
class gCRoutinePoint {
Version = 1;
Properties {
float Time = 0;
class eCEntityProxy Point = {408A887C-A460-487E-BA9A-16847E2212F0};
}
ClassData {
}
}
];
}
}
},
class gCRoutine {
Version = 1;
Properties {
class bCString Name = "WorldHeartRun";
}
ClassData {
[class gCRoutine, Version 1] {
RoutinePoints = [
class gCRoutinePoint {
Version = 1;
Properties {
float Time = 0;
class eCEntityProxy Point = {C21EC6BA-F04D-4422-BF2A-0B2960DAF950};
}
ClassData {
}
}
];
}
}
},
class gCRoutine {
Version = 1;
Properties {
class bCString Name = "NewHome";
}
ClassData {
[class gCRoutine, Version 1] {
RoutinePoints = [
class gCRoutinePoint {
Version = 1;
Properties {
float Time = 0;
class eCEntityProxy Point = {7A7439F8-C31C-44E2-BFFC-813A4EE255D3};
}
ClassData {
}
}
];
}
}
},
class gCRoutine {
Version = 1;
Properties {
class bCString Name = "WorkBSK";
}
ClassData {
[class gCRoutine, Version 1] {
RoutinePoints = [
class gCRoutinePoint {
Version = 1;
Properties {
float Time = 7;
class eCEntityProxy Point = {F9F8D5D3-A6C6-4D13-AD78-17EE54A94703};
}
ClassData {
}
},
class gCRoutinePoint {
Version = 1;
Properties {
float Time = 23;
class eCEntityProxy Point = {1A8366A0-18EE-467C-A36A-69C9F122505C};
}
ClassData {
}
}
];
}
}
}
];
}
}
}
Die Routinen der NPCs können per dialog umgeschaltet werden, soweit ich weiß. Hier macht es wohl das Spiel, hardcoded vermutlich?
(Du hattest ja was von Ticks geschrieben; muss ich mal in den Dialogen suchen, ob da auch die traveling merchants geticked werden.)
Wenn man die Anzeige des Händlers auf der Map ausschalten würde, hätte man tatsächlich random encounters.
edit: müsste reichen, ihm die "class gCMapMarker_PS" zu klauen im elexsecdoc File
Coole Idee!
Ich hatte ja auch schon in die Routinen geguckt.
Mir ist noch etwas in den Sinn gekommen. Ein Skript das guckt ob man einer Fraktion angehoert und es macht dann andere Fraktionen feindlich.
Kleriker -> alle Berserker und Outlaw feindlich
Berserker -> alle Kleriker feindlich
Outlaw -> alle Kleriker feindlich
Es gibt immer noch etliche geskriptete Quests die trotzdem funktionieren und wo der Questgeber selbst nicht feindlich ist.
Dark_Bauer
19.12.2017, 20:38
Coole Idee!
Ich hatte ja auch schon in die Routinen geguckt.
Mir ist noch etwas in den Sinn gekommen. Ein Skript das guckt ob man einer Fraktion angehoert und es macht dann andere Fraktionen feindlich.
Kleriker -> alle Berserker und Outlaw feindlich
Berserker -> alle Kleriker feindlich
Outlaw -> alle Kleriker feindlich
Es gibt immer noch etliche geskriptete Quests die trotzdem funktionieren und wo der Questgeber selbst nicht feindlich ist.
Sowas ist aber gameplaytechnisch keine gute Idee.
Schwerer umzusetzen aber durchaus sinnvoller und wirklich toll wäre aber folgendes:
Ein Skript fragt ab, ob man einer Fraktion angehört und gerade eine ihrer Rüstungen trägt und sich Konsequenzen dadurch ergeben.
Komme ich also in Erzberserker-Rüstung zu den Klerikern, handelt niemand mit mir. Und es gibt dumme Kommentare.
Halt einfach Reaktionen auf meine Fraktions-Rüstungen.
Ein Vorschlag bzw. eher Wunsch ...
Wäre es jemand von euch möglich, nach dem neuen Elex-Patch die nun ganz regulär zu erhaltenden Albrüstungen irgendwo in der Gegend zu platzieren?
Im Moment bekommt man die Commander Rüstung im Eispalast im ehemaligen Zimmer und die Elexetor-Rüstung wenn der Kältewert ganz unten ist und man sich am Ende für den Hybriden entscheidet. Da ist man im Regelfall durch das Spiel durch :(
Das wäre echt dufte.
Is it possible to get back the weather from before the update ?
i tried replacing the shaders with the pre-patch one but did not work tried the effect folder too, got the same result
i really really really hate the new blue sky with the white sun
tombom81
25.12.2017, 17:08
weatherstates are defined in w_weather.hdr (documents folder in pak).
You might compare it to the old one; I'd guess they changed "Sunny_1".
[QUOTE = tombom81; 25684408] weatherstates are defined in w_weather.hdr (documents folder in pak).
You might compare it to the old one; I'd guess they changed "Sunny_1". [/ QUOTE]
dude it worked like charm thx ..one last thing do u know how to open the hdr file ?
tombom81
30.12.2017, 16:27
Dunno what you mean exactly with "open the hdr file"?
Use Baltram's elexresman to convert the .hdr to hdrdoc, chance a line (if you know what you're doing) then convert the doc back by dragging it onto the elexresman.exe (didn't test .hdrdoc -> .hdr but should work).
I released a first version of the string table packer (can also be used for ELEX).
Note that the binary string table version has been changed (7) with the last ELEX update.
Thread: [release] Risen 3 string table [un]packer (lianzifu)
tombom81
07.01.2018, 12:20
Great! Very nice tool.
(Thought I met a missing string with ELEX but "Das ist eine schlechte Idee." is to be found in storyprints.csv)
I repacked and unpacked the whole thing, compared the resulting csv files and looks like it works.
(packed w_strings.bin, v7 has a size of 17,140,102 bytes compared to 15,049,760 bytes of the original file.)
I used the Risen 3 map file though, so guess I've to create a map file for ELEX, at least for the info: part.
(those hashes and strings can be taken from w_info.hdr). Or is there a smarter way?
Is there a way to significantly increase the adjustment period for lighting when entering a new room or a cave? Suppose it's meant to immitate the human eye but I just think it's super annoying to the point where I have to wait for the adjustment before walking in a crowded room. (Berserker's tavern seems to be the worst offender so far.)
tombom81
14.01.2018, 11:56
Is there a way to significantly increase the adjustment period for lighting when entering a new room or a cave?Give us a name to search for in sector files ("FadeInDuration" for example?)
Or maybe it's a variable in the engine which could be affected using process injection, who knows?
btw: you mean "decrease", don't you?
On another thought for the helpers; could be interesting to get the storyhelper (sh) from Bjoern's testlevel into the game and expand it's features:
https://upload.worldofplayers.de/files11/storyhelper_sh_.jpg
(Thought I met a missing string with ELEX but "Das ist eine schlechte Idee." is to be found in storyprints.csv)
[...]
I used the Risen 3 map file though, so guess I've to create a map file for ELEX, at least for the info: part.
(those hashes and strings can be taken from w_info.hdr). Or is there a smarter way?
Some years ago I hacked some code together to resolve most of the hashes by scanning the content and binary files of Risen 3. But some strings (hashes) are not used by the game, or are platform specific, and/or the source/prefix wasn't clear. So I asked PB for the missing 5%, they gave me CSVs with the German strings (that's the reason why I was able to create a complete map file for Risen 3, including the strings for x360 and ps3). I already asked PB if they could do this for ELEX again... time will tell if and when. In the meantime you might start creating your own map file :)
I repacked and unpacked the whole thing, compared the resulting csv files and looks like it works.
(packed w_strings.bin, v7 has a size of 17,140,102 bytes compared to 15,049,760 bytes of the original file.)
I'm working on a completely different compression method, but it's quite complex (due to the limited sequence depth in the Genome decoder).
But for now the existing compression levels are good enough:
0 = dump
no compression, symbol index = character code (readable strings)
1 = none
no compression, one symbol index per character code
2-4 = simple
create sequences (symbol links) while strings are added to the table
5-6 = extended
same as "simple", but also searches for existing sequence lists
7-9 = currently no implemented (same as "extended")
will build a sequence table from the most used repetitions in the whole text
Give us a name to search for in sector files ("FadeInDuration" for example?)
Decrease, yes. I wanna see stuff quickly after entering a room. This is where I was hoping for some input though: Where to look? I suppose I could give the sectors a try.
The other thing I've been curious about is making the night darker. Seems to me like there are 59 WeatherStates in w_weather.hdr, all of which contain a bunch of night-specific Properties. (Spoiler because it messes with the layout otherwise? seems weird to me)
class eCWeatherStates {
"Main_Center" {
Timestamp = (time 131439089810000000 "Fri Jul 07 13:49:41 2017");
class eCWeatherStates {
Version = 2;
Properties {
...
class bCColorScale NightSkyColor = <01 00 02 00 00 00 D9 0D A6 3D E3 DD 5D 3F F1 F3 73 3F 00 00 80 3F 00 00 80 3F 0F B6 C0 3E E3 DD 5D 3F F1 F3 73 3F 00 00 80 3F 00 00 00 00 01 00 00 00>;
class bCFloatScale NightSkyColorMultiplier = <01 00 01 00 00 00 02 00 00 00 FA F7 A4 3D B8 1E 25 3F 0F B6 C0 3E B8 1E 25 3F>;
class bCColorScale NightSkyHazeColor = <01 00 02 00 00 00 0F B6 C0 3E F8 FE FE 3E F8 FE FE 3E F8 FE FE 3E 00 00 00 00 00 00 00 3F F8 FE FE 3E F8 FE FE 3E F8 FE FE 3E 00 00 80 3F 01 00 00 00>;
class bCFloatScale NightSkyHazeColorMultiplier = <01 00 01 00 00 00 02 00 00 00 70 D2 2F 3D 33 33 33 3E 0F B6 C0 3E 33 33 33 3E>;
class bCColorScale NightSkyInnerCoronaColor = <01 00 02 00 00 00 0F B6 C0 3E 00 00 80 3F 00 00 80 3F 00 00 80 3F 00 00 00 00 00 00 00 3F 00 00 80 3F 00 00 80 3F 00 00 80 3F 00 00 80 3F 01 00 00 00>;
class bCFloatScale NightSkyInnerCoronaColorMultiplier = <01 00 01 00 00 00 01 00 00 00 00 00 00 00 CD CC CC 3D>;
class bCColorScale NightSkyOuterCoronaColor = <01 00 02 00 00 00 0F B6 C0 3E 00 00 80 3F 00 00 80 3F 00 00 80 3F 00 00 00 00 00 00 00 3F 00 00 80 3F 00 00 80 3F 00 00 80 3F 00 00 80 3F 01 00 00 00>;
class bCFloatScale NightSkyOuterCoronaColorMultiplier = <01 00 01 00 00 00 01 00 00 00 00 00 00 00 CD CC CC 3D>;
class bCFloatScale NightSkyInnerCoronaSize = <01 00 01 00 00 00 02 00 00 00 0F B6 C0 3E 0A D7 23 3C 00 00 00 3F 0A D7 23 3C>;
class bCFloatScale NightSkyOuterCoronaSize = <01 00 01 00 00 00 02 00 00 00 0F B6 C0 3E 0A D7 A3 3C 00 00 00 3F 0A D7 A3 3C>;
...
"Tavar_1" {
Timestamp = (time 131439089810000000 "Fri Jul 07 13:49:41 2017");
class eCWeatherStates {
Version = 2;
Properties {
...
class bCColorScale NightSkyColor = <01 00 01 00 00 00 00 00 00 3F 73 80 80 3E 83 86 86 3E C6 BF 3F 3F 00 00 00 00 01 00 00 00>;
...
I'm lost though when it comes to the structure of bCColorScale (or FloatScale) (if this weather-stuff is even relevant :D). There seems to be x amount of 20 byte-sets or something, but that's where I'm out. But yeah, I guess I'm just gonna try some stuff out when I actually have the time. :)
bCColorScale
0001
00000002 {
3DA60DD9 3F5DDDE3 3F73F3F1 3F800000 3F800000 // 0.0810811 0.866667 0.952941 1.0 1.0
3EC0B60F 3F5DDDE3 3F73F3F1 3F800000 00000000 // 0.3763890 0.866667 0.952941 1.0 0.0
}
00000001
0001
00000001 {
3F000000 3E808073 3E868683 3F3FBFC6 00000000 // 0.5 0.25098 0.262745 0.74902 0.0
}
00000001First looks like a version, entries seem to be RGB+??, and last might be flags...
bCFloatScale
0001
00000001
00000002 {
3D2FD270 3E333333 // 0.0429253 0.175
3EC0B60F 3E333333 // 0.3763890 0.175
}
0001
00000001
00000001 {
00000000 3DCCCCCD // 0.0 0.1
}
Much appreciated. Thank you :gratz
Thank you :gratz
I found out now, that Kuchenschlachter already documented both structures: R3ResMan #35 :)
TheCakeIsALieX5
26.01.2018, 16:05
Hi,
Da die Welt von Elex ja um ein Vielfaches größer ist, als der auf der Map erfasste und begehbare Teil - wäre es nicht möglich, diese mit Leben zu füllen? Ohne Jetpack und Leben Cheat kommt man ja nicht durch die Radioaktiv-, Hitze- oder Frostbarriere von ~100m durch, dahinter ist jedoch alles begehbar, wunderschön gestaltet und "risikofrei". Vielleicht kann man Tränke brauen, die einem 99%ige Frost- Radio- oder Hitzebeständigkeit geben, um auf die andere Seite zu kommen.
Da stelle ich mir folgende Fragen:
Kann man die eigentliche Map im Adjutor um diese Bereiche erweitern, würde das funktionieren oder ergäbe das Sinn?
Kann man diesen immens großen Bereich mit Leben füllen?
Es ist ziemlich krass, wie wahnsinnig viel PB eigentlich gebaut hat, es aber überhaupt nicht verwendet.
Umso trauriger ist es, dass nicht mal die Modder das ohne weiteres können, da es keine offiziell verfügbaren Designtools gibt.
Hier drin gibts passende Bilder zur Veranschaulichung:
https://upload.worldofplayers.de/files11/20180126164005_1.jpg
https://upload.worldofplayers.de/files11/20180126164617_1.jpg
https://upload.worldofplayers.de/files11/20180126165127_1.jpg
https://upload.worldofplayers.de/files11/20180126171319_1.jpg
https://upload.worldofplayers.de/files11/20180126171321_1.jpg
https://upload.worldofplayers.de/files11/20180126171327_1.jpg
Vielen Dank!
tombom81
27.01.2018, 09:45
- wäre es nicht möglich, diese mit Leben zu füllen?Ja. Habe zur Zeit keinen Zugriff auf ELEX, um es zu testen, sollte aber gehen.
Das Problem wird sein, wenn du Gebäude einbauen willst, ausreichend ebene Fläche im Terrain vorzufinden. Das war jedenfalls ein Problem in Risen, teilweise auch in Gothic 3. Wenn man eine Hütte zum Beispiel aus einer elexsec-Datei entfernen würde, sollte man sehen, wie die Highmap (?) vorbereitet wurde. (In Risen Eins sah man in dem Fall ein Loch, aber da wurde noch keine Highmap verwendet, iirc.)
, um auf die andere Seite zu kommen.Baue einfach einen Teleporter an die Stelle, wo du hinwillst. Verschieben ist easy, siehe meinen post oben.
Umso trauriger ist es, dass nicht mal die Modder das ohne weiteres können, da es keine offiziell verfügbaren Designtools gibt.Das wird sich auch nicht ändern, und doch, Modder können die Welt mit Objekten füllen, du musst nur entities (Kisten, Häuser) in den elexsecdoc kopieren und pasten, die guid ändern, elexsec erzeugen. Ist vielleicht etwas aufwändig, aber jedenfalls nicht traurig.
TheCakeIsALieX5
27.01.2018, 13:51
Baue einfach einen Teleporter an die Stelle, wo du hinwillst. Verschieben ist easy, siehe meinen post oben.
Ich habe mir halt überlegt, ob man nicht quasi nach dem "Ende" des Hauptspiels irgendwie die Möglichkeit bekommt um auf legalem Wege rüberzukommen, ob jetzt Teleporter aktiviert werden oder man besagte Resistenztränke dann bekommt wäre denke ich beides möglich.
Das wird sich auch nicht ändern, und doch, Modder können die Welt mit Objekten füllen, du musst nur entities (Kisten, Häuser) in den elexsecdoc kopieren und pasten, die guid ändern, elexsec erzeugen. Ist vielleicht etwas aufwändig, aber jedenfalls nicht traurig.
Traurig meinte ich in sofern, dass es traurig ist, dass PB so viel bastelt und es dann Entwicklerseitig nicht wie in Skyrim vorgesehen ist das wunderbar besiedeln zu können und das nur über Umwege, das Bauen von neuen Quests etc schwierig wird... Die Möglichkeit einer komplexen Mod für ELEX wie Enderal für Skyrim mit allem drum und dran würde die Welt hergeben können - aber leider fehlen für solchen Feinschliff vermutlich auch auf Dauer die Mittel / Tools.
Dass hier Modder schon so weit sind, ist definitiv nicht traurig sondern absoluter Hammer !! Vielen Dank !
Ich hoffe, dass der ein oder andere Inspiration für das Land hinter der Kartengrenze bekommt, ich glaube, dass es insgesamt mindestens doppelt so groß ist wie der normale begehbare Teil.
Alleine links vom Eispalast sind so viele Höhlen, die Eisberge sind riesig (viel größer als es auf der Karte ausschaut) und das wäre im normalen Spiel als Gegend so perfekt gewesen...
Bjorn vom See
01.02.2018, 18:23
Ich finde es klasse, dass Mods für Elex schon möglich sind. Ich fände es schön, wenn es in manchen Regionen mehr NPCs geben würde, mit denen man handeln könnte und die etwas beibringen.
Dark_Bauer
11.02.2018, 08:56
Könnt ihr keinen Leveleditor wie beim Creation Kit von bethesda entwickeln? $§p4
Das fände ich übelst Nice
tombom81
11.02.2018, 09:29
Könnt ihr keinen Leveleditor wie beim Creation Kit von bethesda entwickeln? $§p4
Ich will hier nicht den Spielverderber geben, aber das kannst du knicken. Orientiere dich an dem, was bei Risen (1) möglich war (Risen editor von Baltram); und selbst das wird es bei ELEX eher nicht geben, weil es kein SDK (entsprechend dem RisenSDK von NicoDE) gibt.
Bei Gothic 3 gab es einen RAM editor, mit dem man ingame Objekte verschieben konnte; das wäre für ELEX sehr hilfreich.
Was es früher oder später geben wird, sind Tutorials, wie man Dialoge und NPCs erstellen kann. Das ist ja jetzt schon möglich; die meisten scheuen nur das Einarbeiten offensichtlich.
Ein LevelEditor wie beim Creation Kit wäre nice, zugegeben, aber die augenblicklichen Möglichkeiten sind meiner Meinung nach mehr als wir erhoffen konnten.
Man muss da auch realistisch bleiben, imho.
Kein Thema, ist morgen fertig. Das wird dann richtig noice, versprochen. §omg (https://www.youtube.com/watch?v=UBX8MWYel3s)
tombom81
12.06.2018, 22:22
Nachdem das ELEX-modding so ziemlich sang- und klanglos eingeschlafen ist, wollte ich nochmal eine kleine Idee vorstellen, inspiriert von dem "Was man ohne Jetpack verpasst" -thread. Da mich Minispiele wie das Erklimmen von Jacks Leuchtturm so ziemlich abtörnen, habe ich eine Leiter eingebaut.
Dass der Hero nicht vernünftig an dieser hochklettert, müsste damit zusammenhängen, dass ich sie nicht anständig im Turm "verankert" habe.
War aber zu faul, dass nochmal mühsam zu ändern, da ich nur das Prinzip vorstellen wollte.
Ob man Leitern überall dort sinnvoll einsetzen kann, wo man ohne Jetpack nicht hingelangen kann, wäre eine andere Frage.
https://upload.worldofplayers.de/files11/machMirDieLeiter.jpg
tombom81
28.07.2018, 21:17
Nach mehreren vergeblichen Versuchen konnte ich endlich Baldvin wiederbeleben:
https://upload.worldofplayers.de/files11/Baldvin_lebt.jpg
Da sein LieDead-State im savegame abgespeichert ist, habe ich das in diesem korrigiert.
Das hat den Vorteil, dass man kein neues Spiel anfangen muss, um mit ihm zu sprechen.
"Good to feel", sagt er nur, was ja ganz passend ist, "es fühlt sich gut an", wieder zu leben.:D
Jetzt braucht er noch eine passende Geschichte, da er selbst offensichtlich nicht zur Aufklärung seines Todes beitragen will.
Is it possible for any difficulty mods to be made for ELEX?
tombom81
23.08.2018, 11:32
Die vielen Autos, die in der Landschaft rumstehen, kann man leider nicht plündern (erinnere mich an eine Ausnahme, aber das muss ich nochmal prüfen). Daher habe ich mal ein Inventory eingebaut: https://upload.worldofplayers.de/files11/Open_car_2.jpgWie man sieht, gibt es eine "Open" interaction beim vorderen Fahrzeug.
Jetzt könnte man. je nach Typ der Fahrzeuge, diese mit metal und electric scrap in unterschiedlicher Menge versehen. Allerdings sind es eine ganze Menge und die Änderung automatisiert in den Decorations-Sektorfiles durchzuführen, funktioniert nicht. Sieht natürlich aus wie ein Kisteninventar, was manche Puristen stören könnte, daher habe ich das garnicht erst eingeblendet.
(Dann müsste man noch einen Plan entwickeln, was die outlaws denn schlussendlich mit all dem Schrott anfangen wollen, den man ihnen verkauft.)
tombom81
31.08.2018, 14:52
Artag Story
Nachdem ich ELEX "durch" hatte, stieß ich zufällig auf einen Ort, wo ich noch nicht gewesen war.
Und zwar liegt ganz unten in Edans südwestlichem Zipfel Artag tot rum und auch Grindill.
Außerdem hängt dort ein Nachtschatten ab, und der Eingang zur Unterkunft ist zu breit, so dass das Vieh dort eindringen kann.
Daher also beide tot?
Dann fiel mir auf, dass Artag viele Routinen hat, zum Beispiel SmallTalkWith_AlbSlave, Smalltalk_Kerk, SmallTalk_Grindill.
War der erst vom Nachtschatten gekillt worden, als ich die Range-of-Interact (ROI) "zu ihm trug"?
Nope, ein Blick in das EDA_NPCs Weltsektorfile zeigt: in Artags gCScriptRoutine_PS class steht: "Rtn_LieDead", er war also von Anfang an tot.
Und der Rest der Belegschaft auch:
Grindill, "Rtn_LieDead"
Dead Exile "Rtn_LieDead"
Skald "Rtn_LieDead"
Es gibt 5 Infos (Weidmann 493 - 497) mit leerem InfoCommandsblock:
[class gCInfo, Version 1] {
InfoCommands {
}
InfoConditions {
}
}
Die könnte man mit Say-Commands füllen; mir fehlt aber gerade der kreative Einfall dafür.
Etwas helfen könnten da diese ungenutzten Spiel-Daten:
(Ulfar "Rtn_LieDead" wird erwähnt; Kerk müsste der ursprünglich geplante Albsklave sein.)
EDA_Story, AreaZone_EDA_KerkDeathWish, AreaZone_EDA_KerkAllowedArea
d7daebeb|Artag hat eine Lieferung für Ulfar vorbereitet
d1810f87|Das Tagebuch des verbannten Artag|The Exile Artag's journal.|Le
b7162c4c|Borax bat mich, ihm die Waffen zu bringen, die Artag ihnen abgenommen hatte.|
(Borax gibt es nicht in den Spieldaten.)
ingame zu finden: Tagebuch von Skald (Skald wird am 2. Tag erwähnt, wahrscheinlich ein Bug?)
6ca40762|Ich hab keine Lust auf den Kram. Artag meint, wir alle sollten Tagebücher führen.
Für den Fall, dass die Prüfer uns später nicht glauben. Also gut.\r\n
Tag 1:\r\n
Ich wurde vor der Expedition zu dem Herzding hier zum Lagermeister ernannt.
Ich soll ein Auge auf die Vorräte halten. Die anderen erscheinen alle ziemlich entspannt,
dass sollte ein Kinderspiel werden.\r\n
Tag 2:\r\nHabe gearbeitet. Grindill liegt nur herum.
Skald scheint zu arbeiten aber er pult seit Stunden an der selben Stelle herum.
In der Geschwindigkeit werden wir nie fertig.\r\n
Tag 3:\r\nIch hab den anderen gesagt,
dass wir schneller arbeiten müssen. Sonst laufen wir Gefahr nicht rechtzeitig fertig zu werden.\r\n
Tag 4:\r\nDie anderen arbeiten im absoluten Schneckentempo, kriegen nichts geschissen.
Ich habe mir die Axt geschnappt und bin in den Wald. Scheiß doch auf das Weltenherz und auf Artag. Ich hack Holz.\r\n
Tag 7:\r\nWir hatten einen Dieb in unseren Reihen, ich habe ihn EIGENHÄNDIG überführt und weggesperrt.
Mir ist es egal was die anderen sagen. Er. ist. Schuldig. Punkt.\r\n
Tag 10: \r\nIch glaube Artag dreht durch.
Er behauptet, dass irgendwelche Viecher nachts um unser Lager herumschleichen. Ich werde heute Nacht Wache halten.
Vermutlich ist Artag aber einfach voll mit Scheiße in den Ohren.\r\n|
english:
Artag says we should keep journals to help when they review our exile.\r\nIt's bullshit, but I'll cooperate, not that I think it will make any difference, you've already made your mind up haven't you, judges, jury, executioners...\r\n
Day 1:\r\nI was appointed store keeper here before the expedition to the World Heart.\r\nThey say it's responsibility, I say it's counting things then writing the numbers down.\r\n
Day 2:\r\nCounted, wrote things down. Grindill just lay around. Artag, but today, he's done sweet fuck all. He has been in the same spot for hours now. I decided to learn to juggle. Will that count in my favor?\r\n
Day 3: I told the others we have to work faster if we're going to survive. I told them if they don't start getting shit done, I will keep the stores locked.\r\n
Day 4: More counting. Then I grabbed myself an axe and went into the forest. Fuck the World Heart and fuck Artag. I am chopping wood. Someone has to.\r\n
Day 7: We have a thief in our midst, I caught Beloc near the stores and have locked him up. If nothing else disappears then we'll know we have the right man. \r\n
Day 10: Artag claims that there are creatures taking our supplies at night. I will stand guard tonight.
Diese NPCs existieren nicht in den Daten, sie haben aber je eine Dialogzeile:
Ambient_BSK_WorldHeartArtag_01 WEIDMANNX6_00413 "Was hier geschehen ist, ist beschämend für alle Berserker."
Ambient_BSK_WorldHeartArtag_02 WEIDMANNX6_00414 "Albs werde[n] nicht gefangen genommen, sie werden getötet."
Ambient_BSK_WorldHeartArtag_03 WEIDMANNX6_00415 "Sie haben ihre gerechte Strafe bekommen.
Ambient_BSK_WorldHeartArtag_04 WEIDMANNX6_00416 "Albs für sich arbeiten lassen. Wir sind vielleicht Berserker, aber keine Barbaren."
Ambient_BSK_WorldHeartArtag_05 WEIDMANNX6_00417 "Ich kann es nicht fassen, dass ich einst dachte, Artag wäre mein Freund."
nächste geplante Aktionen:
- Artag und Grindill im savegame wiederbeleben
- kleinere Tür vor Unterkunft pappen
- Mist, Positionieren ist langwierig, weil auch der Winkel stimmen muss
edit: Wiederbelebungsmaßnahmen erfolgreich:D:
https://upload.worldofplayers.de/files11/Artag_lebt_Grindill_auch.jpgLeider wollen beide ihren Standort nicht verlassen (außer um wieder zu sterben, wenn der Nachtschatten angreift).
Dabei hat Artag einen SmallTalk_Grindill Freepoint; Problem ist wohl, dass Grindill nur einen "Start"-Freepoint besitzt.
tombom81
06.10.2018, 23:30
Endlich mal ein durchschlagender Erfolg, im wahrsten Sinne des Wortes: Bomben kann man moveable gestalten:
https://upload.worldofplayers.de/files11/movingChestAsABomb.jpgDie eingekreiste Kiste ist moveable und eine Bombe, die ich durch Pfeilschuss zur Explosion bringe. Da sie wohl ein Megatönnchen TNT zuviel enthält, ging ich leider auch dabei drauf, nicht nur die Swamp spider, wie beabsichtigt.
(Die Überdosis habe ich eingebaut, weil ich ursprünglich den Hort oder das Fort damit zerstören wollte.)
Sinnvoller wäre es natürlich, Ölfässer moveable zu machen (aber das hat noch nicht funktioniert).
Die stehen nämlich oft an ungünstigen Stellen; wenn man die aktiv bewegen könnte, fände ich das besser.
Guten Abend zusammen,
eine Frage an die Expertenrunde: kann man (ich) mit überschaubarem Aufwand das Startinventar des Helden editieren, sodass er direkt alle Fraktionsrüstungen erhält? Alternativ auch, dass man diese am Startplatz in die Welt platziert ... :o
Würde mich sehr über ein paar Informationen freuen! :)
tombom81
29.11.2018, 20:37
Guten Abend zusammen,
eine Frage an die Expertenrunde:N'Abend,
ich bin zwar weder Experte noch rund, und mMn handelt es sich um einen relativ sinnfreien Cheat, aber da es praktisch keine aktiven ELEX modder gibt, versuche ich trotzdem zu antworten.:D
kann man (ich) mit überschaubarem Aufwand das Startinventar des Helden editieren, sodass er direkt alle Fraktionsrüstungen erhält? Alternativ auch, dass man diese am Startplatz in die Welt platziert ... :oZum ersten muss du Weltsektorfiles und templates entpacken und wieder packen können, oder auch die w_info.hdr Datei.
Jax, also den PC_Hero findest du in der world_intern.elexsec(doc), Datei; sein Inventar enthält nur die Guid von It_1H_Sword_Proto.
Nachtrag: in der class gCInventory_PS gibt's ein paar unknown bytes, die It_Body_Naked und It_Pants_Naked als ASCII enthalten.
Rüstung und Kopf findest du in der class eCAnimation3Controller_PS:
BodyPart0 {
MeshFile1 = "";
MeshFile2 = "";
[...]
}
BodyPart1 {
MeshFile1 = "Mesh_Male_Head_Player_01_L1";
MeshFile2 = "Mesh_Male_Head_Player_01_L1";
[...]
}
Da kannst du schonmal testweise bei BodyPart0
MeshFile1 = "Mesh_Male_UpperBody_Kle_High_01_L1";
eintragen z.B.
Ich weiß aber nicht, ob das beim Spielstart akzeptiert oder überschrieben wird.
Wenn du Rüstungen ingame platzierst, sehen die aus wie ein geschnürtes Paket, oder so.
(Es gibt eine mod für Jax mit Albrüstung, habe nur vergessen, wo. Einfach nach suchen, entpacken und gucken, wie es genau gemacht wurde.)
Der Einfachheit halber hatte ich mal eine Rüstung in eine Kiste gelegt, ist aber schon länger her.
Alternativ könntest du Jax eine Rüstung über einen Dialog mit InfoCommandGive (in der w_info.hdr(doc)) ins Inventory legen. Allerdings weiß ich nicht, inwieweit du da den HiddenStack adressieren musst. (Gegebenenfalls meinen post über Waffen im HiddenStack suchen.)
Probier am besten einfach mal was aus; nicht verzagen, man braucht meist mehrere Anläufe, bis die Dinge funktionieren.§wink
Nachtrag2: habe meinen alten Kram nicht mehr gefunden und daher einfach "mal eben":rolleyes: einen neuen Anlauf genommen (Rüstung als Beutel ist natürlich nicht besonders immersiv):
https://upload.worldofplayers.de/files11/RegentArmor_ingame_platzieren.jpg
Du findest den It_Body_ALB_High in der XAC_Items.elexsec(doc) Datei.
Kopiere ihn in eine eigene elexsecdoc Datei; geändert habe ich es so:
"It_Body_CLE_High" {
GUID = {2C994FAE-B6BE-4391-B787-6B3799999999};
Creator = {188B0D28-1FF0-4091-B8C9-CE7C42A6AF5A};
NewPos = (vec -156740 28350 -206598.484)
wobei du die "99999999" durch dein eigenes Zahlenkürzel ersetzen solltest (ASCII "ABCD" als hex: 41424344 z.B.).
Die Position ist in der Nähe des Teleporters der First Base. Creator ist die Item-Guid aus dem zugehörigen template.
[...]
Yes, danke dir vielmals!
Das hat mir echt geholfen ... konnte mir einen Händler basteln, der einfach alles verkauft, das ich haben will :D
Jetzt habe ich direkt noch eine andere Frage: ich würde gerne die Rüstungs-Optik meiner Begleiter (Falk, Netty, usw.) in die der obersten Fraktionsrüstungen ändern. Wo finde ich denn die Konfiguration der einzelnen Begleiter?
/e: ich glaube ich habe es gefunden ... ist unter Templates
/e: damn, ich habe nun bspw. bei Duras Folgendes in seinem Template angepasst
class eCAnimation3Controller_PS {
Version = 13;
Properties {
class eTResourceProxy<class eCMotionNetworkDefResource2> NetworkResource = "Male";
class bCFloatColor ObjectColor = (color 0 0 0);
float LoD2Range = 1500;
float LoD3Range = 4500;
float ClothLoDBegin = 1000;
float ClothLoDEnd = 1500;
}
ClassData {
[class eCAnimation3Controller_PS, Version 13] {
BodyPart0 {
MeshFile1 = "Mesh_Male_UpperBody_Bsk_High_01_L1";
MeshFile2 = "";
Unknown1 = <00 00>;
Unknown2 = <00 00>;
}
BodyPart1 {
MeshFile1 = "Mesh_Male_Head_Unique_01_L1";
MeshFile2 = "Mesh_Male_Head_Unique_01_L1";
Unknown1 = <10 10>;
Unknown2 = <01 00>;
}
BodyPart2 {
MeshFile1 = "Mesh_Male_Head_Unique_01_Hair_L1";
MeshFile2 = "";
Unknown1 = <01 00>;
Unknown2 = <00 00>;
}
BodyPart3 {
MeshFile1 = "Mesh_Male_PantsShoes_Bsk_High_01_L1";
MeshFile2 = "";
Unknown1 = <00 00>;
Unknown2 = <00 00>;
}
BodyPart4 {
MeshFile1 = "";
MeshFile2 = "";
Unknown1 = <00 00>;
Unknown2 = <00 00>;
}
BodyPart5 {
MeshFile1 = "";
MeshFile2 = "";
Unknown1 = <00 00>;
Unknown2 = <00 00>;
}
}
[class eCAnimation3Base_PS, Version 1] = <00 00 02 00 02 00>;
}
}
Leider scheinen Meshädnerungen nur nach Neustart eines Spiels zu funktionieren ... oder ich mache was falsch :(
/e: Mist, ein Neustart bringt auch keine Änderung.
Was mache ich falsch? :/
tombom81
02.12.2018, 17:08
Tja, dein Ansatz ist ok; ich gehe davon aus, dass du das geänderte Duras-Template im template Unterordner deines Modordners hast?
Guid hast du auch geändert? Wenn ja, brauchst du aber auch einen "neuen Duras" im EDA_NPCs Sektorfile oder must zumindest die Guid des alten dort anpassen.
Bin mir aber nicht sicher, inwieweit da savegame-Relevanz eine Rolle spielt und "alles vermurkst" wird.
Daher habe ich Duras (vor fast genau einem Jahr!) eine andere Rüstung verpasst, allerdings aufgrund der Template-Umstände diese in der class eCAnimation3Controller_PS des Sektorfiles "eingebaut".
Dann gibt's keine Rumgezicke mit den Guids, soweit ich mich erinnere.
(Ein elextpl habe ich nicht erzeugt, iirc, aber es ist halt schon ein Jahr her; aua, die Zeit rennt, wow.;D)
Tja, dein Ansatz ist ok; ich gehe davon aus, dass du das geänderte Duras-Template im template Unterordner deines Modordners hast?
Soweit kann ich dir noch folgen: ja, habe ich.
Guid hast du auch geändert? Wenn ja, brauchst du aber auch einen "neuen Duras" im EDA_NPCs Sektorfile oder must zumindest die Guid des alten dort anpassen.
Da geht es schon los: nein, habe ich nicht. Was ist das denn? Wozu muss ich da etwas ändern, wenn ich an dem bestehenden Duras etwas ändern will?
Daher habe ich Duras (vor fast genau einem Jahr!) eine andere Rüstung verpasst, allerdings aufgrund der Template-Umstände diese in der class eCAnimation3Controller_PS des Sektorfiles "eingebaut".
Ääääääh, ja, ne, keine Ahnung :D
[...] aber es ist halt schon ein Jahr her; aua, die Zeit rennt, wow.;D)
Total.
Ich stehe immer Weihnachten bei der Familie auf dem Balkon und denke daran, wie ich letztes Jahr auch schon hier stand und wie schnell die Zeit rückblickend doch vergangen ist. Auch wenn sie einem währenddessen manchmal recht lang vorkommt.
tombom81
03.12.2018, 19:12
Da geht es schon los: nein, habe ich nicht. Was ist das denn? Wozu muss ich da etwas ändern, wenn ich an dem bestehenden Duras etwas ändern will?Der bestehende Duras ist im EDA_NPCs.elexsec file. Dort hat er als Creator-Guid
"Duras" {
GUID = {06746F8B-37C4-4589-BD7F-A1FEB51F5931};
Creator = {CCC98E61-DE2F-4FC2-8898-D1B7C7D95546};
d.h., die (Item-) Guid des Duras-Templates.
Da du dieses Template geändert hast, must du aus Gründen der Daten-Konsistenz auch seine Item-Guid ändern (und vermutlich auch die am Anfang: <master> {
GUID = {44DF91EF-CAC6-4498-A1EE-4A4887D0149E};).
Dann muss aber auch die Creator-Guid im sec file aktualisiert werden. (Müsstest du ausprobieren, ob es funktioniert.)
Wenn du nur das template ändert, wirken sich die Änderungen nicht aus, wie du gemerkt hast.
Auch die time stamp, die in Risen 3 noch wichtig war, hat offenbar keine Auswirkung (s. post von Malkav):
https://forum.worldofplayers.de/forum/threads/1483240-Modkit-f%C3%BCr-Elex?p=25620768&viewfull=1#post25620768
Mein Tipp: ändere einfach das body mesh bei Duras im SektorFile (muss dann auch im Modordner\Sector vorhanden sein). Hat bei mir geklappt; s. Bild 2 posts unter Malkavs.
(Wenn du das template (bodymäßig) genauso änderst und die Guids in den Griff kriegst, sollte die neue Rüstung sauber zu sehen sein; bei mir schimmerte ja der alte body noch durch, wie man auf dem Bild sehen kann.)
(Mach das aber NICHT im hexeditor, das waren nur meine Anfänge, sondern in den doc files!)
So ihr Lieben, ich habe noch eine Frage:
ich habe das Mesh des Helms der Vollstreckerrüstung in das einer Sonnenbrille geändert.
Wie kriege ich es nun hin, dass der Helm auch in Konversationen angezeigt wird? Geht das?
tombom81
13.12.2018, 18:02
Gute Frage, nächste Frage.:D
Held equipped mit Vollstreckerhelm, in dessen template du das Sonnenbrillenmesh eingesetzt hast, hat ingame die Sonnenbrille auf, nur nicht beim Gespräch?
Gute Frage, nächste Frage.:D
Held equipped mit Vollstreckerhelm, in dessen template du das Sonnenbrillenmesh eingesetzt hast, hat ingame die Sonnenbrille auf, nur nicht beim Gespräch?
Korrekt.
Es passt alles, nur dass der Helm mit Sonnenbrillenmesh wohl noch immer als "Helm" defininiert ist. Oder so.
tombom81
19.12.2018, 11:07
UseType = gEItemUseType_Sunglasses;
hast du gesetzt im Helm-template?
Habe gerade erst gesehen, dass man mit dem elexresman (super Tool :)) auch Templates, Sektoren und Weltdaten in Text umwandeln kann.
Ich könnte diese zur Bearbeitung in mein Tool aufnehmen. Dadurch, dass die binären Elemente auch mehr oder weniger aus den Textdateien ersichtlich sind, wäre eine Umwandlung in doc eventuell gar nicht mehr nötig. Aber das ist noch ferne Zukunftsmusik :D.
tombom81
22.12.2018, 21:55
Nachdem Feyn schon rosige Ausichten für dialogmodder beschert hat, wollte ich auch mal ein Ergebnis vorzeigen, und zwar fand ich es störend dass man auf die rumstehenden Boots keinen Zugriff hat (ebenso so wie auf Bags/Sporttaschen und Bücher). Das hat mich schon in Skyrim gestört, in ELEX werde ich das ändern.
Die Boots im Fort habe ich moveable und pickable gemacht, das heißt man kann sie aufnehmen (und für 10 Splitter verkaufen), oder wegkicken. Letzteres führt manchmal zu einem "stunlock", d.h. sie schweben eventuell in der Luft und sind nicht mehr bewegbar; aufnehmbar schon.
Das Icon ist noch falsch (Misc_Cuttery, oder so), ebenso das "N/A" (not avialable?) im Namen. (Das kann man sicher wegkriegen, ist mir aber zuviel Aufwand momentan.)
Die ganze Sache ist allerdings ziemlich experimentell, daher muss ich erstmal abwarten, wie die engine auf längere Sicht (mehrere saves/loads) darauf reagiert.
https://upload.worldofplayers.de/files11/boots_moveableAndPickable.jpgOriginal-Boots müssen natürlich noch ausgeblendet werden; wenn es nicht zuviel Aufwand ist.
Die Boots im Fort habe ich moveable und pickable gemacht, das heißt man kann sie aufnehmen (und für 10 Splitter verkaufen), oder wegkicken. Letzteres führt manchmal zu einem "stunlock", d.h. sie schweben eventuell in der Luft und sind nicht mehr bewegbar; aufnehmbar schon.
Das Icon ist noch falsch (Misc_Cuttery, oder so), ebenso das "N/A" (not avialable?) im Namen. (Das kann man sicher wegkriegen, ist mir aber zuviel Aufwand momentan.)
Die ganze Sache ist allerdings ziemlich experimentell, daher muss ich erstmal abwarten, wie die engine auf längere Sicht (mehrere saves/loads) darauf reagiert.
Original-Boots müssen natürlich noch ausgeblendet werden; wenn es nicht zuviel Aufwand ist.
Schöne Sache!
Hat es ausgereicht, die Templates zu modifizieren?
Überschreiben die PropertySets eines Templates die jeweiligen PropertySets der Entities in den Weltdaten?
tombom81
25.12.2018, 22:35
Überschreiben die PropertySets eines Templates die jeweiligen PropertySets der Entities in den Weltdaten?Offenbar nicht. Es gilt noch immer Malkavs Spruch: https://forum.worldofplayers.de/forum/threads/1483240-Modkit-f%C3%BCr-Elex?p=25620768&viewfull=1#post25620768
Ich habe für die boots neue Entities in einer secdoc-Datei erstellt (Klon von It_Fork plus Änderungen). Ihnen dann die Positionen der vorhandenen boots übertragen und neue Guids gegeben. Ein passendes template braucht's auch. Da seine Guid weiterhin der Creatorguid der originalen boots entsprach, hätten sich deren Eigenschaften eigentlich auch ändern sollen; taten sie aber nicht. Also muss ich die originalen boots irgendwie ausschalten (ohne sinnvollerweise die originalen sec Dateien anzufassen).
(Ich meine mich aber erinnern zu können, schon mal per template eine zusätzliche class in eine sec Datei Entity übertragen zu haben; muss nochmal die alten Sachen durchforsten; ist ja schon wieder ein Jahr her.)
Unabhängig davon lassen sich durch Einbauen zusätzlicher classes (in template UND sec entity) alle möglichen Dinge ändern. Mein nächster Versuch werden dropable Items sein; die Magnesiumfackeln kann man ja wegwerfen und wieder einsammeln.
tombom81
02.01.2019, 22:35
Der Jahreszeit entsprechend habe ich mich explosionstechnisch mit ELEX beschäftigt, und das völlig feinstaubfrei.:D
Die ursprüngliche Idee, Obj_Int_Exp_Barrel_Oil_1 aufzunehmen und an anderer Stelle wieder abzusetzen, gelang nur halb. Die Fässer wollten partout nicht explodieren, selbst Änderung von Proxyscript-Zuweisungen erbrachten nichts. Wahrscheinlich ist die Mechanik um die Magnesiumfackel zu komplex (oder mein brain zu schwach:D).
Jedenfalls hat es im gefühlt 99ten Anlauf geklappt mit der modifizierten Handgrenade. timer- und Aufschlagzündung hatte ich deaktiviert und nur den Annäherungszünder dringelassen (proximity, oder so), klappt wunderbar; allerdings kann ich das Ölfass nicht per Pfeil zünden, warum auch immer, sondern es geht irgendwann von alleine hoch, ohne Annäherung (weaponMode timer ist auch gelöscht, hmm, verstehe, wer will):
https://upload.worldofplayers.de/files11/Grenade_areYouKiddingMe.jpghttps://upload.worldofplayers.de/files11/esFunktioniert.jpg
und das völlig feinstaubfrei.:D
Sehr löblich :D
Die ursprüngliche Idee, Obj_Int_Exp_Barrel_Oil_1 aufzunehmen und an anderer Stelle wieder abzusetzen, gelang nur halb. Die Fässer wollten partout nicht explodieren, selbst Änderung von Proxyscript-Zuweisungen erbrachten nichts. Wahrscheinlich ist die Mechanik um die Magnesiumfackel zu komplex (oder mein brain zu schwach:D).
Jedenfalls hat es im gefühlt 99ten Anlauf geklappt mit der modifizierten Handgrenade. timer- und Aufschlagzündung hatte ich deaktiviert und nur den Annäherungszünder dringelassen (proximity, oder so), klappt wunderbar; allerdings kann ich das Ölfass nicht per Pfeil zünden, warum auch immer, sondern es geht irgendwann von alleine hoch, ohne Annäherung (weaponMode timer ist auch gelöscht, hmm, verstehe, wer will):
Gefällt mir. Dein Beispiel zeigt mal wieder, dass Elex großes Potential im Modding hat.
Wenn es doch nur mehr Modder gäbe...
Dein Beispiel zeigt mal wieder, dass Elex großes Potential im Modding hat.
Wenn es doch nur mehr Modder gäbe...
ich bin leider zu dumm für diesen ganzen technischen kram :(
würde gerne modden aber halt im bereich dialoge schreiben und 3d design xD
Jazz Jackrabbit
26.05.2020, 23:23
Ich hätte gerne eine Mod, welche die ganzen willkürlich platzierten Schlafsäcke aus der Welt entfernt... Spiele gerade selber und merke wieder, wie sehr die das Balancing kaputtmachen, weil man wenn man weiß dass der nächste Schlafsack nur ein paar Meter entfernt ist, garnicht erst an seine Heiltränke geht. Wenn man sich sowieso schon nahezu überall hinporten kann, wo meistens auch ein Bett ist, verstehe ich nicht so ganz wieso zusätzlich noch überall Schlafsäcke verteilt sind.
Da fällt mir ein, eine Mod welche die Teleporter erst nach einem bestimmten Questerfolg freischaltet, wäre auch eine gute Idee. Das hätte bereits im Vanilla-Spiel so sein sollen. Oder noch besser: Das 3D-Modell der Teleporter soll komplett entfernt werden, da diese Loretechnisch sowieso nicht ins Spiel passen und die Teleportpunkte sollen nur noch als anwählbarer Punkt auf der Karte sichtbar sein.
tombom81
27.05.2020, 08:34
Ich hätte gerne eine Mod, welche die ganzen willkürlich platzierten Schlafsäcke aus der Welt entfernt... (https://forum.worldofplayers.de/forum/threads/1504999-Mod-Ideen-Vorschl%C3%A4ge-Machbarkeit?p=25642102&viewfull=1#post25642102)
Ja, voll korrekt!:D Oder ihnen wenigstens "Besitzer" zuweist, die den Spieler wegscheuchen.
(Ich denke, PB hatte da bestimmt was im Sinn, ist aber nicht mehr dazu gekommen.)
Da fällt mir ein, eine Mod welche die Teleporter erst nach einem bestimmten Questerfolg freischaltet, wäre auch eine gute Idee. Das hätte bereits im Vanilla-Spiel so sein sollen. Naja, der Questerfolg besteht doch darin, dass ein Teleporter erst freigeschaltet wird, wenn man ihn zum ersten Mal erreicht hat? (außer der "co-freigeschaltete" am Hort, iirc)
Viel, viel immersionszerstörender fand ich die Tatsache, dass man von überall auf der map zu irgendeinem Teleporter teleporten konnte. So ein dämmlicher Schwachsinn, also wirklich. Das hängt aber wohl damit zusammen, dass PB da scheinbar noch die Teleportstein-Philosophie aus Gothic 3 mit sich rumtrug. (Da machte das auch spieltechnisch Sinn: wenn ich einen magischen Stein mit mir rumtrage, dann kann ich seine Funktionalität auch überall (außer unter Tonnen von Erz:D) jederzeit nutzen.)
Andererseits muss man natürlich, wenn man nur von Tp zu Tp teleportieren können soll, mehr Tp installieren bei so einer riesigen map. Da hat sich PB wohl gedacht: ach, was soll's, kräht eh kein Hahn nach.
Ob sich nochmal jemand bei ELEX modtechnisch mit solchen Sachen, wenn nicht gar Quests/Dialogen beschäftigt, halte ich eher für fraglich.
(Nachdem ich gerade Witcher 3 beendet habe, fehlt mir auch der Glaube, dass ich mich für's ELEX2 modding werde erwärmen können. Natürlich könnte ich den SaveGame (https://www.nexusmods.com/elex/mods/65?tab=posts)- und den RAM-Modifier für ELEX versuchsweise auf ELEX 2 umpatchen.)
Viel, viel immersionszerstörender fand ich die Tatsache, dass man von überall auf der map zu irgendeinem Teleporter teleporten konnte. So ein dämmlicher Schwachsinn, also wirklich. Das hängt aber wohl damit zusammen, dass PB da scheinbar noch die Teleportstein-Philosophie aus Gothic 3 mit sich rumtrug. (Da machte das auch spieltechnisch Sinn: wenn ich einen magischen Stein mit mir rumtrage, dann kann ich seine Funktionalität auch überall (außer unter Tonnen von Erz:D) jederzeit nutzen.)
Andererseits muss man natürlich, wenn man nur von Tp zu Tp teleportieren können soll, mehr Tp installieren bei so einer riesigen map. Da hat sich PB wohl gedacht: ach, was soll's, kräht eh kein Hahn nach.
das ist tatsächlich wahr und wär ne gute idee für nen "einfachen?" mod xD
vielleicht nehmen sie sich sowas für elex2 ja zu herzen
Jazz Jackrabbit
27.05.2020, 18:16
Naja, der Questerfolg besteht doch darin, dass ein Teleporter erst freigeschaltet wird, wenn man ihn zum ersten Mal erreicht hat? (außer der "co-freigeschaltete" am Hort, iirc)
Naja einen Punkt in der Karte zu berühren hat aber für mich nichts mit Questerfolg zu tun. Dass ich dafür eine Einblendung bekomme, interessiert mich herzlich wenig. Ich will irgendetwas dafür tun müssen, beispielsweise einen Konverter abschalten oder mir das Vertrauen einer Fraktion verdienen, damit ich mich an einen Ort Teleportieren darf.
Viel, viel immersionszerstörender fand ich die Tatsache, dass man von überall auf der map zu irgendeinem Teleporter teleporten konnte. So ein dämmlicher Schwachsinn, also wirklich. Das hängt aber wohl damit zusammen, dass PB da scheinbar noch die Teleportstein-Philosophie aus Gothic 3 mit sich rumtrug. (Da machte das auch spieltechnisch Sinn: wenn ich einen magischen Stein mit mir rumtrage, dann kann ich seine Funktionalität auch überall (außer unter Tonnen von Erz:D) jederzeit nutzen.)
Das ist in der Tat eines dieser "modernen" Features inspiriert von Bethesda-RPGs, welche Rollenspiele meiner Meinung nach kaputtmachen. Die frühe Möglichkeit zum Schnellreisen von jedem Punkt in der Welt steht vollkommen im Widerspruch zum Grundgedanken, dass Open-World Rollenspiele durch ihre interessante Welt eigentlich zum Entdecken einladen sollen. Wenn man die Welt erstmal kennengelernt hat und Wege, die man schon x-mal abgelaufen ist abkürzen will, ist das was anderes. Dann kann man dem Spieler gerne als Belohnung die Möglichkeit zum Schnellreisen geben. Aber gerade bei einem Spiel wie Elex in dem man ohnehin schon ein Jetpack hat mit dem man jeden Weg über "Luftlinie" abkürzen kann, mindert das den Entdeckerdrang umso mehr. Ich glaube Elex hätte komplett ohne Teleporter besser funktioniert. Oder auch nicht, weil der Loot den man beim Erforschen der Welt gefunden hat größtenteils unbrauchbar war... Ich glaube mit den Teleportern hat PB ein Problem zu lösen versucht, das sie selbst geschaffen haben.
Meiner Meinung nach war es auch nicht die beste Idee, dem Spieler das Jetpack in seinem vollen Umfang von Anfang an zu geben. Man hätte doch sagen können das Jetpack wurde beim Absturz des Gleiters beschädigt und hat erstmal nur die Hälfte seiner Kapazität und später im Spiel kann man es reparieren, wodurch man im Lategame höhergelegene Ebenen ereichen kann, was einem nochmal Motivation gibt in bereits abgelaufene Gebiete zu gehen. Definitiv eine verpasste Chance von PB.
Man hätte doch sagen können das Jetpack wurde beim Absturz des Gleiters beschädigt und hat erstmal nur die Hälfte seiner Kapazität und später im Spiel kann man es reparieren, wodurch man im Lategame höhergelegene Ebenen ereichen kann
oder vielleicht sogar spezifisch upgraden um mehr sachen zu machen <3
da wär wirklich einiges möglich
Hallo ich bin ganz neu hier und konnte zu meiner Frage bisher nichts genaues finden. Daher frage ich mal hier:
Ist es bereits möglich 3D Modelle zu importieren/erstellen?
godagarah5000
03.12.2020, 17:12
one idea i have is a mod to turn jax back into an alb appearance included if he drinks any of the elex drinks and if he uses natural elex
Jazz Jackrabbit
12.12.2020, 02:13
one idea i have is a mod to turn jax back into an alb appearance included if he drinks any of the elex drinks and if he uses natural elex
Good idea. It should have been like that in the main game, honestly. I was always disappointed that it made no visual difference whatsoever if your character is warm or cold. They could have done a simple texture swap where his skin is more pale once your cold exceeds a certain threshold. Also it would have been interesting to have the character start with a cold appearance, and gradually make him appear more human as you make more human choices. Another missed opportunity by PB.
Is it possible to define a number in conversations with NPCs and hit that number on the keypad to select it?
Like other games where you have the answer 1 on the button 1 of the keyboard, the answer 2 on the button 2 of the keyboard, etc etc, I do not know if I am explaining myself well xD
Paragrimm
17.06.2021, 10:07
Moin, ist es möglich die Texturen zu extrahieren, diese vernünftig (mit KI?) hoch zu skalieren und wieder in .pak umzuwandeln?
Ich finde zwar die Grafik auch heute noch echt schön und stilsicher, jedoch finde ich, dass die matschigen Texturen der Optik am meisten "schmerzen".
Könnte man an dieser Stelle Abhilfe schaffen?
tombom81
17.06.2021, 15:15
Moin, ist es möglich die Texturen zu extrahieren, Extraction der pak Dateien mit dem elexresman:
https://forum.worldofplayers.de/forum/threads/1512504-tool-Elex-Resource-Manager?p=25706522&viewfull=1#post25706522
Texturen:
Elex-Bilder (.eleximg) ins .dds-Format umwandeln
Ziehe die .eleximg-Datei auf die elexresman.exe. ...Rest musst du selbst probieren.:dnuhr:
Persocom
04.07.2021, 13:01
Ist es evtl. möglich die pick up animation zu entfernen?
Paragrimm
18.07.2021, 13:24
Ist es eigentlich möglich schon irgendwie Scripts hinzuzufügen? Und wenn nicht, woran hapert es?
tombom81
18.07.2021, 17:03
Ist es eigentlich möglich schon irgendwie Scripts hinzuzufügen? Und wenn nicht, woran hapert es?Guckstu hier:
https://www.nexusmods.com/elex/mods/64?tab=posts
Es hapert daran, dass kaum einer infos moddet.
Bzw. Spass beiseite, es handelt sich im wesentlichen um InfoCommands, die im Rahmen von Dialogen abgearbeitet werden.
Funktioniert aber auch ohne Dialogzeilen, wie du an den script snippets sehen kannst (have "more than one follower", etc.)
(Funktionen wie "DistanceToNearestMonster()" z.B. gibt es aber bei Piranha Bytes traditionell nicht.)
Hallo, ich würde gerne wissen, wie es möglich wäre, die Haardateien zu extrahieren und Perücken zu erstellen, um einige der Helme im Spiel zu ersetzen.
-
Hi, I would like to know how possible it would be to extract the hair files and create wigs with which to replace some of the helmets in the game.
Powered by vBulletin® Version 4.2.2 Copyright ©2025 Adduco Digital e.K. und vBulletin Solutions, Inc. Alle Rechte vorbehalten.