Portal-Zone Gothic-Zone Gothic II-Zone Gothic 3-Zone Gothic 4-Zone Modifikationen-Zone Download-Zone Foren-Zone RPG-Zone Almanach-Zone Spirit of Gothic

 

Page 4 of 21 « First 123456781115 ... Last »
Results 61 to 80 of 410
  1. View Forum Posts #61
    Dea
    Join Date
    Jul 2007
    Posts
    10,168
     
    Lehona is offline
    Quote Originally Posted by Sektenspinner View Post
    I did not read the documentation of the package but, you seem to create a new view every time your Inicjalize_Window function is called. You open some of those views, and you close some of them, but you never act on the same view. A view that is opened will never be closed. Try something like this:

    Code:
    func void Inicjalize_Window(){
        var int Slash_key;
        if (MEM_KeyState (KEY_SLASH) != KEY_PRESSED) {
            return;
        };
        
        if (Window_on == FALSE){
            _SkillWindow = Print_CreateView (1000, 1000, 7000, 7000);
            Print_SetViewTexture (_SkillWindow, "kartka_menu.tga");
            Skill_Window_on ();
            Window_on = true;
        } else {
            Skill_Window_off();
            Window_on = false;
        };
    };
    I would expect this code to crash when opening the view, saving, restarting Gothic and pressing Shift. This has to be fixed somehow, for example via an INIT_* function.
    For this problem constants are perfect, just save the pointer in a constant

    Code:
     const int _SkillWindow = 0;
    
    func void Inicjalize_Window(){
        if (!viewPtr || !Window_on) {
           _SkillWindow = Print_CreateView (1000, 1000, 7000, 7000);
        };
        var int Slash_key;
        if (MEM_KeyState (KEY_SLASH) != KEY_PRESSED) {
            return;
        };
        
        if (Window_on == FALSE){
            Print_SetViewTexture (_SkillWindow, "kartka_menu.tga");
            Skill_Window_on ();
            Window_on = true;
        } else {
            Skill_Window_off();
            Window_on = false;
        };
    };
    Everytime Gothic is restarted, the constant is initialized with '0', therefore a new is created in Inicjalize_Window().
    Last edited by Lehona; 16.07.2011 at 13:18.

  2. Visit Homepage View Forum Posts #62
    Apprentice edeksumo's Avatar
    Join Date
    Apr 2011
    Location
    Poland
    Posts
    35
     
    edeksumo is offline
    Thanks you very much it's working.

  3. View Forum Posts #63
    Ehrengarde Gottfried's Avatar
    Join Date
    Mar 2006
    Posts
    2,512
     
    Gottfried is offline
    I would prefer to load the texture after the view was created. (Print_LoadTexture isn't that fast and should be used carefully )
    Code:
    if (!_SkillWindow) {
        _SkillWindow = Print_CreateView (1000, 1000, 7000, 7000);
        Print_SetViewTexture(_SkillWindow, "kartka_menu.tga");
    };
    In fact, all of the view functions are quite primitive and should be updated soon. (Eg. there is no function to destroy a view or to set the intro and outro animation..)

    WfG Gottfried

  4. Visit Homepage View Forum Posts #64
    Apprentice edeksumo's Avatar
    Join Date
    Apr 2011
    Location
    Poland
    Posts
    35
     
    edeksumo is offline
    I'll check this but I've got last question whether it is possible to texture or letters were visible on the texture?

  5. View Forum Posts #65
    now also in your universe  Milky-Way's Avatar
    Join Date
    Jun 2007
    Posts
    13,296
     
    Milky-Way is online now
    Quote Originally Posted by edeksumo View Post
    I'll check this but I've got last question whether it is possible to texture or letters were visible on the texture?
    I am not quite sure what you are talking about. It is possible to use any texture, so there may be letters on it as well.

    I attached a file showing an example. In original size, the text is legible.
    Attached Thumbnails Attached Thumbnails text.jpg  

  6. Visit Homepage View Forum Posts #66
    Apprentice edeksumo's Avatar
    Join Date
    Apr 2011
    Location
    Poland
    Posts
    35
     
    edeksumo is offline
    I'm talking about write something on texture by function PrintScreen.

  7. View Forum Posts #67
    Dea
    Join Date
    Jul 2007
    Posts
    10,168
     
    Lehona is offline
    Quote Originally Posted by edeksumo View Post
    I'm talking about write something on texture by function PrintScreen.
    Try it? And try to change the order, that might help maybe.

  8. View Forum Posts #68
    Drachentöter Redmatix's Avatar
    Join Date
    Nov 2009
    Location
    Die Pfalz
    Posts
    4,882
     
    Redmatix is offline
    mal ne frage, könnt ihr von jedem fueture ein bild machen? Weil ich bin im scripten eine niete, denoch würde ich gerne alle funktionen sehen

  9. View Forum Posts #69
    Sword Master
    Join Date
    May 2009
    Posts
    909
     
    Umfi is offline
    Ich habe einen Bug entdeckt.
    Undzwar:

    Ich printe über einen Frametrigger mit PrintScreen(); etwas auf den Bildschirm. Wenn ich dann aber PrintS_Ext(); im Dialog aufrufe färbt sich der PrintScreen()-Text auch mit der Farbe aus der PrintS_Ext() und wenn dann der PrintS_Ext()-Text verschwunden ist wird der PrintScreen()-Text auch komplett transparent.
    Der PrintScreen()-Text soll aber bleiben wie er ist, also sich nicht färben oder transparent werden.

    Mfg Umfi

  10. View Forum Posts #70
    Ritter Der Ahnungslose's Avatar
    Join Date
    Nov 2009
    Location
    wo der Brunnen aus der Mitte entsprang
    Posts
    1,048
     
    Der Ahnungslose is offline
    Code:
    func void Hook_oCNpc__DoDropVob() {
        const int oCNpc__DoDropVob = 7622096; //0x744DD0
        HookEngine(oCNpc__DoDropVob, 6, "EVT_NPCDROPVOB");
    };
    
    func void EVT_NpcDropVob() {
        var c_npc slf; slf = MEM_PtrToInst(ECX);
        var c_item itm; itm = MEM_PtrToInst(MEM_ReadInt(ESP + 4));
        PrintS(cs4(slf.name, " ließ '", itm.name, "' fallen"));
    };
    Ich hätte das gerne mal für Gothic I ausprobiert. Wäre jemand so freundlich und würde mir den Hexwert const int oCNpc__DoDropVob und die Byte-Länge für Gothic I raussuchen bitte? Vorausgesetzt das könnte überhaupt gehen für G1. Wasbrauche ich dafür alles? Die Enginehooks und Ikarus, oder auch LeGo?

  11. View Forum Posts #71
    Ehrengarde Gottfried's Avatar
    Join Date
    Mar 2006
    Posts
    2,512
     
    Gottfried is offline
    Quote Originally Posted by dennis15 View Post
    mal ne frage, könnt ihr von jedem fueture ein bild machen? Weil ich bin im scripten eine niete, denoch würde ich gerne alle funktionen sehen
    Um das Paket zu nutzen werden nicht wirklich großartige Scriptkenntnisse vorrausgesetzt und bei fast allen Features gibt es konkret nichts zu sehen. (Oder willst du einen Screenshot von einer Datei die ich mit den BinaryMachines erstellt habe )
    Quote Originally Posted by Umfi View Post
    Ich habe einen Bug entdeckt.
    Stimmt. Mir ist das auch irgendwann mal aufgefallen, hatte es aber ganz vergessen.. Bei der nächsten Version wirds behoben sein, danke für den Hinweis

    MfG Gottfried

  12. Visit Homepage View Forum Posts #72
    Exodus Sektenspinner's Avatar
    Join Date
    Jul 2004
    Location
    Karlsruhe
    Posts
    7,827
     
    Sektenspinner is offline
    Quote Originally Posted by Der Ahnungslose View Post
    Code:
    func void Hook_oCNpc__DoDropVob() {
        const int oCNpc__DoDropVob = 7622096; //0x744DD0
        HookEngine(oCNpc__DoDropVob, 6, "EVT_NPCDROPVOB");
    };
    
    func void EVT_NpcDropVob() {
        var c_npc slf; slf = MEM_PtrToInst(ECX);
        var c_item itm; itm = MEM_PtrToInst(MEM_ReadInt(ESP + 4));
        PrintS(cs4(slf.name, " ließ '", itm.name, "' fallen"));
    };
    Ich hätte das gerne mal für Gothic I ausprobiert. Wäre jemand so freundlich und würde mir den Hexwert const int oCNpc__DoDropVob und die Byte-Länge für Gothic I raussuchen bitte? Vorausgesetzt das könnte überhaupt gehen für G1. Wasbrauche ich dafür alles? Die Enginehooks und Ikarus, oder auch LeGo?
    Adresse 0x6A10F0 und 6 passt als Befehlslänge.
    Für Spieler:
    Velaya # Velaya in English # Exodus Demo # Irrwichtel
    Tools für Modder:
    DiaDepp # DOPA-PARTER # zSlang
    Scripte für Modder:
    Ikarus Skriptpaket # Floats # Broadcasts

  13. View Forum Posts #73
    now also in your universe  Milky-Way's Avatar
    Join Date
    Jun 2007
    Posts
    13,296
     
    Milky-Way is online now
    Da hat mir Sektenspinner noch etwas rausgesucht. Ein Hook für das Einsammeln / Aufsammeln von Items.
    Code:
    //	----- Item einsammeln -----
    func void Hook_oCNpc__DoTakeVob() {
    	const int oCNpc__DoTakeVob = 7621056; //0x7449C0
    	HookEngine(oCNpc__DoTakeVob, 6, "EVT_NPCTAKEVOB");
    };
    
    func void EVT_NpcTakeVob()
    {
    	//	----- an den NPC und das item kommen -----
    	var c_npc slf; slf = MEM_PtrToInst(ECX);				// der NPC, der das Item einsammelt
    	var C_ITEM itm; itm = MEM_PtrToInst(MEM_ReadInt(ESP + 4));		// Pointer auf das Item
    	//	----- an den NPC und das item kommen -----
    	
    	//	----- stimmt das item? -----
    	if (!Hlp_IsValidItem (itm))
    	{
    		return;
    	};
    };

  14. View Forum Posts #74
    Ritter Der Ahnungslose's Avatar
    Join Date
    Nov 2009
    Location
    wo der Brunnen aus der Mitte entsprang
    Posts
    1,048
     
    Der Ahnungslose is offline
    Quote Originally Posted by Sektenspinner View Post
    Adresse 0x6A10F0 und 6 passt als Befehlslänge.
    Danke, wird gleich ausprobiert.

  15. Visit Homepage View Forum Posts #75
    Clockwork Origins Bonne6's Avatar
    Join Date
    Jun 2004
    Location
    Erlangen
    Posts
    11,371
     
    Bonne6 is online now
    Habt ihr jetzt eigentlich vor das Schildsystem so zu lassen oder wird das noch auf eine Variante ohne Aivars umgebaut? Bei mir geht's so naemlich nicht, weil ich alle Array-Slots voll hab und schon mehrfach nutze teilweise ^^

  16. View Forum Posts #76
    Ritter Der Ahnungslose's Avatar
    Join Date
    Nov 2009
    Location
    wo der Brunnen aus der Mitte entsprang
    Posts
    1,048
     
    Der Ahnungslose is offline
    Quote Originally Posted by Sektenspinner View Post
    Adresse 0x6A10F0 und 6 passt als Befehlslänge.
    Quote Originally Posted by Der Ahnungslose View Post
    Danke, wird gleich ausprobiert.
    Es geht leider nicht! Ich hatte das hier probiert (in OwnFuncs.d):

    Code:
    func void Hook_oCNpc__DoDropVob() {
        const int oCNpc__DoDropVob = 6951152; //0x6A10F0
        HookEngine(oCNpc__DoDropVob, 6, "EVT_NPCDROPVOB");
    };
    
    func void EVT_NpcDropVob() {
        var c_npc slf; slf = MEM_PtrToInst(ECX);
        var c_item itm; itm = MEM_PtrToInst(MEM_ReadInt(ESP + 4));
        PrintScreen ("test", -1,-1, "Font_Old_10_White_Hi.tga", 1);
        //PrintS(cs4(slf.name, " ließ '", itm.name, "' fallen"));
    };
    und in meiner Startup:

    Code:
    FUNC VOID INIT_WORLD ()
    {
    	INIT_Sub_Newcamp		();
    	INIT_Sub_Oldcamp		();
    	INIT_Sub_Psicamp		();
    	INIT_Sub_Demontower 	();
    	INIT_Sub_Freeminecamp	();
    	INIT_Sub_Surface 		();
    	//LeGo_Init(LeGo_AI_Function);
    	//LeGo_Init(LeGo_All);
    
    	var string INIT_TEST;
    	if(!STR_Len(INIT_TEST))	//Gothic wurde neu gestartet (sonst wäre der String befüllt)
    	{
            INIT_TEST = "y";
    		//	----- Hooks setzen -----
    		Hook_oCNpc__DoDropVob ();				//Item droppen
    
        };
    
        B_InitMonsterAttitudes ();
    	B_InitGuildAttitudes();
    
    };
    Und in meiner Gothic.src (Auszug):

    Code:
    ikarus\Ikarus_Const_G1.d
    ikarus\EngineClasses_G1\*.d
    ikarus\Ikarus.d
    ikarus\Floats\*.d
    
    //////////
    // LeGo //
    //////////
    
    LeGo\AI_Function.d
    LeGo\FrameFunctions.d
    LeGo\Random.d
    LeGo\BinaryMachines.d
    LeGo\Interface.d
    LeGo\Dialoggestures.d
    LeGo\Focusnames.d
    ikarus\Enginehooks.d
    
    LeGo.d
    ikarus\OwnFuncs.d
    
    STORY\NPC\*.D
    
    STORY\MISSIONS\DIA*.D
    
    STORY\STARTUP.D
    Es kommt wieder der Error Do.Stack (line 81) Fehler. Ich weiß nicht mehr weiter. Alternativ zu der Enginehooks.d hatte ich auch mal die LeGo/HookEngine.d geparst mit gleichem negativen Ergebnis. Hat noch wer eine Idee, oder soll ich aufgeben?

  17. View Forum Posts #77
    Lehrling Der Novize's Avatar
    Join Date
    Jun 2011
    Location
    nur auf der Durchreise...
    Posts
    23
     
    Der Novize is offline
    Hallo,
    erst einmal großes Lob, das Paket ist wirklich toll.

    Und schon die erste Frage, es mag zwar angesichts der vielen Skriptfragen etwas trivial wirken, aber mir ist aufgefallen, dass der Npc einen Schild am Arm immer exakt verkehrt herum hält.
    (also unten ist oben und so weiter, die Seiten stimmen)

    Ich wollte fragen ob es dafür eine elegantere Skript-Lösung gibt, oder ob ich zwei meshes erstellen soll und ihm sagen wann er welches zu benutzen hat?

    Beste Grüße

    Novize

  18. View Forum Posts #78
    Ehrengarde Gottfried's Avatar
    Join Date
    Mar 2006
    Posts
    2,512
     
    Gottfried is offline
    Quote Originally Posted by Bonne6 View Post
    Habt ihr jetzt eigentlich vor das Schildsystem so zu lassen oder wird das noch auf eine Variante ohne Aivars umgebaut? Bei mir geht's so naemlich nicht, weil ich alle Array-Slots voll hab und schon mehrfach nutze teilweise ^^
    Ja, das sollte in nächster Zeit machbar sein (Lehona hat schon eine Basis dafür geschaffen)
    Quote Originally Posted by Der Novize View Post
    Ich wollte fragen ob es dafür eine elegantere Skript-Lösung gibt, oder ob ich zwei meshes erstellen soll und ihm sagen wann er welches zu benutzen hat?
    Ja, das ist derzeit noch ein Problem. Man wird vermutlich nicht drum herum kommen für jeden Schild zwei Meshes anzufertigen, wird dann aber so gelöst sein dass das System intelligent genug ist um das zweite Mesh anhand des Namens von selbst zu finden. (Eine Möglichkeit wäre zB. Mesh.3ds und Mesh_E.3ds, wobei das '_E' für 'Equipped' stehen würde)

    MfG Gottfried

  19. View Forum Posts #79
    Serima Fisk2033's Avatar
    Join Date
    Dec 2010
    Location
    Dresden
    Posts
    5,418
     
    Fisk2033 is offline
    Ich werd versuchen es in meine 2te Mod einzubringe. Sieht echt alles toll aus.. Danke!

    Und brauch ich bzw. ist da eine Animation für das schild dabei?


  20. View Forum Posts #80
    Ritter Der Ahnungslose's Avatar
    Join Date
    Nov 2009
    Location
    wo der Brunnen aus der Mitte entsprang
    Posts
    1,048
     
    Der Ahnungslose is offline
    Wäre jemand so freundlich und würde mir mit IDA die Adressen und Bytelängen für Gothic I für folgende Aktionen raussuchen?

    Waffe ziehen (in Standardtastenbelegung Leertaste)
    Status/Charakterbildschirm öffnen (in Standardtastenbelegung "S")
    Logbuch öffnen (in Standardtastenbelegung "L")
    Schnellzugriff auf Karte (in Standardtastenbelegung "M")
    nach vorne laufen (Pfeiltaste oben)
    rückwärts laufen (Pfeiltaste unten)

    Wenn ich wüsste, wie ich das IDA zu benutzen habe, würde ich es auch selbst machen, aber leider habe ich keine Ahnung, wie ich damit umzugehen habe.

    Eine kurze Einführung in die Bedienung von IDA würde alternativ ebenso eine Hilfe sein.

    Ich wäre sehr dankbar.

Page 4 of 21 « First 123456781115 ... Last »

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
Impressum | Link Us | intern
World of Gothic © by World of Gothic Team
Gothic, Gothic 2 & Gothic 3 are © by Piranha Bytes & Egmont Interactive & JoWooD Productions AG, all rights reserved worldwide