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

 

Seite 3 von 3 « Erste 123
Ergebnis 41 bis 53 von 53
  1. Beiträge anzeigen #41 Zitieren
    banned
    Registriert seit
    Jan 2009
    Ort
    Oberösterreich
    Beiträge
    2.393
     
    Moe ist offline
    Hat sich erledigt, der Fehler lag wo cryp ihn vermutet hat.

  2. Beiträge anzeigen #42 Zitieren
    banned
    Registriert seit
    Jan 2009
    Ort
    Oberösterreich
    Beiträge
    2.393
     
    Moe ist offline
    Noch ein kleines Problem. Beim Heilungszauber aus G1 werden die Spruchrollen nicht verbraucht, woran könnte das liegen?

    Code:
    //-------- Spell Commands --------
    // SPL_DONTINVEST 		= 	0;		// Es können keine weiteren Manapunkte investiert werden. Erst durch CTRL loslassen geht der Spell ab
    // SPL_RECEIVEINVEST	= 	1;		// Wirkung durchgeführt, es können weitere Invest kommen, zB.bei Heal nach jedem Pöppel
    // SPL_SENDCAST			= 	2;		// Starte den Zauber-Effekt (wie CTRL loslassen), automatischer Abbruch
    // SPL_SENDSTOP			= 	3;		// Beende Zauber ohne Effekt
    // SPL_NEXTLEVEL		=	4;		// setze den Spruch auf den nächsten Level
    
    const int	SPL_HEALING_HP_PER_MP		=	10;	// Heal (HP pro Mana)
    const int 	SPL_HEALING_MANACOST = 1;
    
    
    instance SPELL_HEAL_G1(C_Spell_Proto)
    {
    	time_per_mana = 250;
    	spellType = SPELL_NEUTRAL;
    	targetCollectAlgo = TARGET_COLLECT_CASTER;
    	canTurnDuringInvest = 0;
    	targetCollectRange = 0;
    	targetCollectAzi = 0;
    	targetCollectElev = 0;
    };
    
    func int spell_logic_Heal(var int manaInvested)
    {
    	if((self.attribute[ATR_HITPOINTS] < self.attribute[ATR_HITPOINTS_MAX]) && (self.attribute[ATR_MANA] >= SPL_HEALING_MANACOST))
    	{
    		self.attribute[ATR_MANA] -= SPL_HEALING_MANACOST;
    		Npc_ChangeAttribute(self,ATR_HITPOINTS,SPL_HEALING_HP_PER_MP);
    		return SPL_NEXTLEVEL;
    	};
    	return SPL_SENDSTOP;
    };

  3. Beiträge anzeigen #43 Zitieren
    Ehrengarde Avatar von mud-freak
    Registriert seit
    Dec 2005
    Beiträge
    2.199
     
    mud-freak ist offline
    Zitat Zitat von Moe Beitrag anzeigen
    Noch ein kleines Problem. Beim Heilungszauber aus G1 werden die Spruchrollen nicht verbraucht, woran könnte das liegen?
    Ich bin ein bisschen verwirrt. Ich habe ein paar Fragen:
    1. Das ist der Heilungszauber aus Gothic 1?
    2. Also nicht die Fremdenheilung aus dem Zauberpaket?
    3. Warum schreibst du dann in diesen Thread? (Die letzten Posts hatten übrigens auch nichts mit dem Zauberpaket zu tun. Blink und Entriegeln sind beide nicht teil des Zauberpakets und haben jeweils eigene Threads hier im Forum.) Das verwirrt ein wenig.
    4. Das Skript, das du gepostet hast kommt so direkt aus Gothic 1?
    5. Ist deine Absicht, den Zauber in Gothic 2 zu laufen zu bringen?

    Mit der Annahme, dass du alle Fragen mit Ja beantwortest, wäre noch mehr Code nötig dir zu helfen. Z.B.
    • Welche Animation wird verwendet? Wenn Animationen für instante Zauber für Aufrechterhaltungs- oder Aufladezauber verwendet werden, werden diese nicht vernünftig abgeschlossen.
    • SPL_SENDCAST ist notwendig, um den Zauber erfolgreich abzuschließen = Spruchrolle wird entfernt.
    • Hast du auch Einträge in die Spell_ProcessManaRelease vorgenommen? Dort müssen Aufrechterhaltungs- und Aufladezauber mit SPL_SENDCAST eingetragen sein.

  4. Beiträge anzeigen #44 Zitieren
    banned
    Registriert seit
    Jan 2009
    Ort
    Oberösterreich
    Beiträge
    2.393
     
    Moe ist offline
    1. Nein, das ist HealOther umgemünzt auf HealSelf eben so wie in G1.

    2. Siehe 1.

    3. Sorry.

    4. Siehe 1.

    5. Ja.

    Es wird die Aufrechterhaltungs Ani aus G1 benutzt.

    Eintrag in Spell_ProcessManaRelease ist vorhanden.

    Ich habe gerade herausgefunden, dass die Spruchrolle sehr wohl verbraucht wird, aber nur wenn man nach Zaubern kein Mana mehr hat. Wenn man noch Mana übrig hat, aber schon voll geheilt ist, dann bleibt die Spruchrolle im Inventar.

    edit: Dasselbe ist auch bei der Fremdenheilung.
    Geändert von Moe (27.11.2019 um 11:02 Uhr)

  5. Beiträge anzeigen #45 Zitieren
    Ehrengarde Avatar von mud-freak
    Registriert seit
    Dec 2005
    Beiträge
    2.199
     
    mud-freak ist offline
    Zitat Zitat von Moe Beitrag anzeigen
    Nein, das ist HealOther umgemünzt auf HealSelf eben so wie in G1.
    Ah, das war mir nicht bewust. Ich hätte dabei vllt nicht FremdenHeilung als Vorlage genommen, weil der weder ein Aufrechterhaltungszauber ist noch auf den Spieler selbst angewand wird.



    Zitat Zitat von Moe Beitrag anzeigen
    Nein, das ist HealOther umgemünzt auf HealSelf eben so wie in G1. [...] Es wird die Aufrechterhaltungs Ani aus G1 benutzt. [...] Eintrag in Spell_ProcessManaRelease ist vorhanden. [...] Ich habe gerade herausgefunden, dass die Spruchrolle sehr wohl verbraucht wird, aber nur wenn man nach Zaubern kein Mana mehr hat. Wenn man noch Mana übrig hat, aber schon voll geheilt ist, dann bleibt die Spruchrolle im Inventar.
    Siehe zweiter Punkt meiner zweiten Liste. Du brauchst in dem Skript das SPL_SENDCAST



    Zitat Zitat von Moe Beitrag anzeigen
    edit: Dasselbe ist auch bei der Fremdenheilung.
    Wie meinst du das? Fremdenheilung aus dem Skriptpaket ist doch ein instanter Zauber.




    EDIT: Verwende mal SPL_RECEIVEINVEST anstatt SPL_NEXTLEVEL.
    Geändert von mud-freak (27.11.2019 um 11:41 Uhr)

  6. Beiträge anzeigen #46 Zitieren
    banned
    Registriert seit
    Jan 2009
    Ort
    Oberösterreich
    Beiträge
    2.393
     
    Moe ist offline
    Bei SPL_RECEIVEINVEST passiert dasselbe wie bei SPL_NEXTLEVEL.

    Bei SPL_SENDCAST ist es kein Aufrechterhaltungszauber mehr.

  7. Beiträge anzeigen #47 Zitieren
    Ehrengarde Avatar von mud-freak
    Registriert seit
    Dec 2005
    Beiträge
    2.199
     
    mud-freak ist offline
    Zitat Zitat von Moe Beitrag anzeigen
    Bei SPL_RECEIVEINVEST passiert dasselbe wie bei SPL_NEXTLEVEL.
    Nimm dir am besten Mal einen bestehenden Aufrechterhaltungs- oder Aufladezauber aus Gothic 2 als Vorlage. Kopier ihn dir und ändere ihn Stück für Stück ab. Wie gesagt ist die Animation auch ausschlaggebend dafür, ob der Zauber als Aufrechterhaltungs- oder Aufladezauber funktioniert. Aus dem Zauberpaket kannst du dir z.B. den Manasucht-Zauber als Vorlage nehmen. Bei dem funktioniert das ganze ja.

  8. Beiträge anzeigen #48 Zitieren
    banned
    Registriert seit
    Jan 2009
    Ort
    Oberösterreich
    Beiträge
    2.393
     
    Moe ist offline
    Okay, ich hab es.

    So funktionierts:

    Code:
    const int	SPL_HEALING_HP_PER_MP		=	10;	// Heal (HP pro Mana)
    const int 	SPL_HEALING_MANACOST = 1;
    
    
    instance SPELL_HEAL_G1(C_Spell_Proto)
    {
    	time_per_mana = 250;
    	spellType = SPELL_NEUTRAL;
    	targetCollectAlgo = TARGET_COLLECT_CASTER;
    	canTurnDuringInvest = 0;
    	targetCollectRange = 0;
    	targetCollectAzi = 0;
    	targetCollectElev = 0;
    };
    
    func int spell_logic_Heal(var int manaInvested)
    {
    	if((self.attribute[ATR_HITPOINTS] < self.attribute[ATR_HITPOINTS_MAX]) && (self.attribute[ATR_MANA] >= SPL_HEALING_MANACOST))
    	{
    		self.attribute[ATR_MANA] -= SPL_HEALING_MANACOST;
    		Npc_ChangeAttribute(self,ATR_HITPOINTS,SPL_HEALING_HP_PER_MP);
    		return SPL_RECEIVEINVEST;
    	};
    	if (self.attribute[ATR_HITPOINTS] >= self.attribute[ATR_HITPOINTS_MAX])
    	{
    		return SPL_SENDCAST;
    	};	
    	return SPL_SENDSTOP;
    };

  9. Beiträge anzeigen #49 Zitieren
    Ehrengarde Avatar von mud-freak
    Registriert seit
    Dec 2005
    Beiträge
    2.199
     
    mud-freak ist offline
    Zitat Zitat von Moe Beitrag anzeigen
    Okay, ich hab es.
    Super! Danke fürs Teilen, das wird sicher den ein oder anderen Modentwickler freuen.

  10. Beiträge anzeigen #50 Zitieren
    Adventurer
    Registriert seit
    Sep 2013
    Beiträge
    66
     
    Vic7im ist offline
    Will it be possible to have this as a Ninja patch?

  11. Beiträge anzeigen #51 Zitieren
    Ehrengarde Avatar von mud-freak
    Registriert seit
    Dec 2005
    Beiträge
    2.199
     
    mud-freak ist offline
    Zitat Zitat von Vic7im Beitrag anzeigen
    Will it be possible to have this as a Ninja patch?
    Yes and no. While it's theoretically possible to create a patch, it is generally not a good idea to make new spells available to any mod. This introduces at best balancing issues, but may as well break the whole mod. Mod developers pour a lot of time and effort into balancing their work - I want to respect that, instead of causing them trouble.

    I created the First Mage Kit, which includes two spells. There I was very careful to mess with the game balance as little as possible.

  12. Beiträge anzeigen #52 Zitieren
    Einmalposter Avatar von UnRon
    Registriert seit
    Sep 2019
    Beiträge
    1
     
    UnRon ist offline
    Hi, Mud! It's a russian scenario man from mod on gothic 2 Nostalgy. Do you remember us?
    So, my question is about your spells and your works. Can you do some new spells exactly for our mod for payment? Just new abilities, 2-3. I will describe it for you. If you have Skype pls send it to me, we really want to add things to 1.1 version after released G2 Nostalgy 1.0

  13. Beiträge anzeigen #53 Zitieren
    Veteran Avatar von N1kX
    Registriert seit
    Aug 2018
    Ort
    Serov
    Beiträge
    643
     
    N1kX ist offline
    I'll leave it here again. A in mod dirty swamp . There is a spell SPL_Elevate. When using it together with the enemy, the mover did not rise from the ground and I flew out with a mathematical error.
    I couldn't repeat such a crash again.

    Code:
    Warn:  0 D: VOB: illegal call of vob::BeginMovement() from a collision notification callback .... <zVobMove.cpp,#1461>
    Warn:  0 =============================================== CALLSTACK : ============================================================== .... <zError.cpp,#474>
    Warn:  0 0023:00514D8E (0x0135FA44 0x089EE194 0x155D12F0 0x29DBD118) Gothic2.exe, zMAT4::operator=()+14 byte(s), P:\dev\g2addon\release\ZenGin\_dieter\zAlgebra.cpp, line 552+14 byte(s) .... <zError.cpp,#474>
    Warn:  0 0023:0061E527 (0x00000001 0x089EDF48 0x00000000 0xC27E13D6) Gothic2.exe, zCVob::EndMovement()+1111 byte(s), P:\dev\g2addon\release\ZenGin\_dieter\zVobMove.cpp, line 1764+100 byte(s) .... <zError.cpp,#474>
    Warn:  0 0023:00602E95 (0x00000001 0x00000000 0x08007038 0x0135FBC4) Gothic2.exe, zCVob::DoFrameActivity()+565 byte(s), P:\dev\g2addon\release\ZenGin\_dieter\zVob.cpp, line 2268 .... <zError.cpp,#474>
    Warn:  0 0023:006C87EB (0x0864BF18 0x00000000 0x00000000 0x0864BF18) Gothic2.exe, oCGame::Render()+331 byte(s), P:\dev\g2addon\release\Gothic\_ulf\oGame.cpp, line 2658 .... <zError.cpp,#474>
    Warn:  0 0023:70770FE1 (0x00400000 0x0152409B 0x0135FE70 0x00000000) SHW32.DLL, UnionCore::CUnion::DefineCRTVersion()+6513 byte(s) .... <zError.cpp,#474>
    Warn:  0 0023:00425E6E (0x0082F0EC 0x00000006 0x00090860 0x0864BF18) Gothic2.exe, CGameManager::Run()+1598 byte(s), P:\dev\g2addon\release\Gothic\_bert\oGameManager.cpp, line 767+47 byte(s) .... <zError.cpp,#474>
    Warn:  0 0023:0078188B (0x0000002C 0x00012601 0x00000000 0x00000000) Gothic2.exe, MainProg()+75 byte(s), P:\dev\g2addon\release\Gothic\_ulf\Phoenix.cpp, line 111 .... <zError.cpp,#474>
    Warn:  0 0023:00503270 (0x00400000 0x00000000 0x0152409B 0x00000001) Gothic2.exe, HandledWinMain()+928 byte(s), P:\dev\g2addon\release\ZenGin\_carsten\zWin32.cpp, line 1169 .... <zError.cpp,#474>
    Warn:  0 0023:00502DFD (0x0135FE74 0x00000000 0x0152409B 0x00000001) Gothic2.exe, WinMain()+141 byte(s), P:\dev\g2addon\release\ZenGin\_carsten\zWin32.cpp, line 1054+17 byte(s) .... <zError.cpp,#474>
    Warn:  0 0023:707721DA (0x3C428278 0x3C428278 0x3C428278 0x3C4E9E03) SHW32.DLL, UnionCore::CUnion::InitApp()+1658 byte(s) .... <zError.cpp,#474>
    Warn:  0 ======================================= UNHANDLED EXCEPTION OCCURED ====================================================== .... <zError.cpp,#474>

Seite 3 von 3 « Erste 123

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
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