Release Elementare Bedürfnisse: Schlaf

Status
Für weitere Antworten geschlossen.
Endlich habe ich es geschafft, nach Tagen des Skriptens und Lernens, wie die Skriptsprache funktioniert. Ich bin zwar Programmierer, aber man muss sich ja immer wieder neu auf die Sprache (und in diesem Fall: auf ihre Beschränkungen) einstellen ;)
(Desweiteren habe ich nicht sooo viel Freizeit...)

Eigentlich wollte ich es als Gesamtpaket umsetzen, also Hunger, Durst und Müdigkeit in einem, aber ich entschied mich dann dafür, es einzeln zu machen - so kann ich viel besser auf jeden Teil eingehen und Verbesserungen vornehmen (denke ich *g*).
Und eigentlich wollte ich nur die Mod. "HungryThirstySleepy" etwas aufmotzen, was dann dazu führte, dass ich das ganze Teil komplett neu schrieb. Ein paar wenige Elemente sind noch drin, die ich übernahm (eigentlich nur die Art und Weise, wie ich die Effekte auf den Player ansetze) - alles andere ist von Grund auf neu und "auf meinem Mist gewachsen".

Elementare Bedürfnisse: Schlaf

Ohne groß um den Brei herumzureden, komme ich gleich mal zur Sache.

Elementare Bedürfnisse: Schlaf

Komplett neu überarbeitet und erweitert! V1.0
Stand: 23.04.2007

Wenn man lange genug in der Landschaft unterwegs ist, wird man irgendwann mal müde.
Die Zeit bis zu den ersten Müdigkeitssymptomen habe ich abhängig gemacht

von der Konstitution und von der Willenskraft (je trainierter Körper und Geist,
desto länger kann man sich wachhalten).
Es gibt 5 verschiedene Müdigkeitsphasen, die sich gegenseitig nach der Zeit
abwechseln. Dabei sind sie nicht in statische zeitliche Abstände unterteilt,

sondern diese Abstände hängen auch wieder mit den obigen Attributen zusammen.
Je trainierter Körper und Geist, desto länger kann man die nächste Müdigkeitsphase
zeitlich nach hinten verlagern.

Wer wissen will, wie genau dies Kalkuliert wird:

1. Müdigkeitsphase: 12 + ( Konstitution / 40 ) + ( Willenskraft / 40 )
2. Müdigkeitsphase: 2 + ( Konstitution + Willenskraft - 2 ) / 13
3. Müdigkeitsphase: 2 + ( Konstitution + Willenskraft - 4 ) / 16
4. Müdigkeitsphase: 2 + ( Konstitution + Willenskraft - 6 ) / 19
5. Müdigkeitsphase: 2 + ( Konstitution + Willenskraft - 8 ) / 22


Jede Müdigkeitsphase zieht den Attributen Geschicklichkeit, Konstitution, Willenskraft
und Stärke eine bestimmte Zahl Punkte ab:

Stufe 1: 2
Stufe 2: 4
Stufe 3: 7
Stufe 4: 11
Stufe 5: 16

Zusätzlich zu der reinen Zeit, die man wach sein muss, um müde zu sein, verändert
sich die Zeit, die man wach sein kann, ohne müde zu werden, auch, wenn man

kämpft. Hierbei ist es abhängig, wie viele Gegner getötet werden UND wie lange man
in dem Kampf verwickelt war. Da es aber nicht möglich ist, genau festzustellen,
wie lange man tatsächlich gekämpft hat, habe ich es davon abhängig gemacht, indem
in periodischen Abständen geprüft wird, ob man in einer Kampfhandlung Lebensenergie
verloren hat oder nicht. Die periodischen Abstände sind von der Länge her abhängig
von der Konstitution und von der Timescale, in der gespielt wird - ebenso läuft auf
diese Weise ein Timer mit, der die Müdigkeit im Kampf erst nach einer bestimmten
Zeit "freischaltet". Das heißt, wenn man es schafft, einen Gegner in wenigen
Augenblicken zu erledigen, kann es sein, dass man keinen Deut müder wurde, dadurch.
Diese Zeit ist ebenfalls von der Konstitution und der Timescale abhängig.
Den Faktor "Timescale" musste ich gezwungenermaßen mit einbringen, da viele Spieler
auch verschiedene Geschwindigkeiten des Ingame-Zeitablaufs bevorzugen. Jemand, der
einen langsameren Zeitablauf spielt, ist praktisch in der Lage, viel mehr zu kämpfen,
als jemand, der zum Beispiel mit der normalen Geschwindigkeit von Oblivion spielt
(Zeit vergeht 30mal schneller, als real). Das hieße, dass jemand mit einem schnelleren
Tagesablauf viel weniger müde durch die Kämpfe würde, als jemand, der beispielsweise
auf Realzeit spielen würde.
Ich habe es nach folgender Formel (hoffentlich gut) ausbalanciert:

Müdigkeit pro Intervallprüfung mit positivem Ergebnis:
(( 50 / Konstitution ) / timescale ) / 3
Müdigkeit pro getötetem Gegner:
Getötete gegner * (( 50 / Konstitution ) / timescale )

Bisher konnte ich das nur mit der Timescale 1:12 testen, aber theoretisch sollte es gut
funktionieren, da ich die Formeln tabellarisch überprüft habe. Aber es kommt natürlich
immer auf das Spielgefühl an. Also, wenn jemand Erfahrungen in anderen Timescales gemacht
hat, bin ich sehr an Feedback interessiert ;)

Die Müdigkeit loswerden kann man natürlich auch.
Dazu muss man nicht mehr tun, als sich ein Bett suchen und schlafen. Anders, als in
manchen anderen Mods kann man wirklich JEDES Bett verwenden, egal ob aus Vanilla Oblivion
oder hinzugemoddete Betten (da ich eine Möglichkeit bastelte, ohne Skripte auszukommen,
die an Betten angefügt werden müssen). Wieviel Schlaf man jetzt braucht, hängt davon ab,
wie müde man ist und wie hoch die Konstitution ist. Je trainierter der Körper, desto
weniger Schlaf benötigt man. Grob geschätzt kann man sagen, dass man ungefähr halb so
viele Stunden schlafen sollte, wie die Dauer, die man wach ist. Je nachdem, wie gut

die Konstitution ist, kann das mehr oder weniger stark variieren.

Wer genau dafür interessiert, was für eine Formel ich dafür entwickelte:
geschlafene Stunden * 1.5 + ( Konstitution / 100 )

In dieser Version ist es auch möglich, Tränke zu nehmen, die die Konstitution und/oder
Willenskraft erhöhen. das hat zur Folge, dass man länger wach bleiben kann, allerdings
nur für eine stark begrenzte Dauer. Ich weiß nicht genau, wie stark die Tränke in
Oblivion sind (verwende selber nie welche), aber wenn dringender Bedarf besteht, schaue
ich mal, dass ich eine Art Aufputschtrank ins Spiel bringe.

Kurzer Hinweis: Unbedingt eine Bettrolle mitführen! ;)(entsprechende Mods sind zahlreich zu haben)

-Guardian of R'lyeh 2007
Bei Fragen, Kommentaren stehe ich gerne hier bereit oder per email
guardian.of.rlyeh@email.de

Downloadlink: http://scharesoft.de/joomla/index.php?option=com_remository&Itemid=27&func=fileinfo&id=645
 
Zuletzt bearbeitet:
Respekt für deine Arbeit! :)

Weds dann gleich mal ausgiebig testen und die Idee die 3 Bedürfnisse einzeln anzubieten ist auch sehr geil - so kann man sich alles schön aussuchen.
 
Links is up! :)

Edit: Habe doch gleich selber einen kleinen Bug entdeckt....24 Stunden schlafen bringt momentan nix - hatte ich zwar berücksichtigt, aber die Formel dazu funzt nicht - muss ich nochmal rüberschauen - da komme ich aber erst morgen zu. Ansonsten gibt es noch ein paar logische Inkonsistenzen, die aber keine großen Probleme machen sollten.
 
So habe deinen MOD mal ein Zeit lang getestet. An sich bin ich mit dem Punkt zufrieden, wann die Müdigkeit einsetzt.

Allerdings verstehe ich dein System nicht ganz, um die Müdigkeit wieder wegzubekommen. Hatte Müdigkeit Stufe 2 und nachdem
ich 4 Tage (!) durchgeschlafen hatte, und ich danach immer noch auf Stufe 2 war, habe ich es aufgegeben und deinen MOD wieder deaktiviert :?
 
*g* jaaa....wahrscheinlich hast du dann immer 24 Stunden am Stück geschlafen? Das ist etwas, was ich selber noch gefunden hatte, als ich ein paar Sachen austestete. Wenn man schläft, muss man drei verschiedene Möglichkeiten abfangen.
1. Man geht ins Bett und steht am gleichen Tag wieder auf.
2. Man geht ins Bett und steht am nächsten Tag wieder auf, wobei die Dauer des Schlafes aber < 24 Stunden ist
3. Wie 2, aber >= als 24 Stunden.

An der dritten Varante scheint noch ein Haken zu sein - das muss ich mir heute nochmal anschauen.
 
Habe zuerst 10, dann gleich nochmal 4, dann nochmals 4 und dann 2 und dann nochmal 4. Es war immer noch da :lol:
 
what? oha....habe doch alles nochmal getestet....das ist nicht gut....gar nicht gut....nene....das muss ich jetzt gleich selber nochmal testen (muss gleich noch zur Arbeit, danach sind wir unterwegs - komme leider erst heute Abend erst dazu, mich nochmal ranzusetzen - aber die Sache muss ich nochmal austesten jetzt...)

Edit: mmh....da scheint wirklich noch was quer zu laufen....da testet man es noch ausgiebig, bevor man´s hochlädt und dann tauchen da noch Sachen auf...tse....gut, dass es noch als Beta deklariert ist *Heiligenschein anknips*
 
Zuletzt bearbeitet:
*hrhr* :lol:

na du machst das schon! ich muss jetzt erstmal meinen ersten eigenen MOD fertig kriegen :D
 
Da wird sicher ne Variable nicht richtig zurückgesetzt....werde mich erst heute Mittag damit auseinandersetzen können - eventuell erst heute Abend :(

(das wurmt und verfolgt mich jetzt den ganzen Tag hindurch....*g*)
 
*lol* ich kenne das, bin gerade zu müde meinen MOD fertig zu machen und verschiebe das jetzt.

Also, warte gespannt auf deinen Fix. Nacht :)
 
aber man muss sich ja immer wieder neu auf die Sprache (und in diesem Fall: auf ihre Beschränkungen) einstellen
jepp - und ganz besonders muss man sich darauf einstellen, dass die Funktionen teilweise falsch dokumentiert sind oder so dokumentiert ist, wie sie "eigentlich" arbeiten sollten - was sie dann aber letztlich nicht tun.

Ich habe gerade mal locker über das Script geschaut und denke, dass da noch etwas berücksichtigt werden muss. Falls ich da was übersehe oder falsch verstehe, korrigier mich.

---

Das ist ein QuestScript und die laufen (Gott sei Dank) nicht bei jedem Frame, sondern werden normalerweise "nur" alle 5 Sekunden abgefeuert, es sei denn, man erzählt dem mit fQuestDelayTime etwas anderes.

Du Benutzt aber eine Abfrage auf den MenuMode 1012 (also das sleep/wait menu), was dazu führt, dass dein Script kurze Schlafphasen in den meisten Fällen nicht registrieren wird. Probier mal aus, was passiert, wenn Du mehrfach hintereinander 1-3 Stunden schläfst.

Ich vermute, dass dein Script nur Schlafphasen zuverlässig erkennt, die länger als 4 Stunden sind. Bei kürzeren Schlafphasen halte ich das für Glückstreffer, weil das Script vielleicht gerade zufällig abgefeuert wurde.

---

Es gibt reichlich Leute, die mit der globalen Variable TimeScale herumspielen. Bei denen ist dann eine Ingame-Stunde nicht mehr 2 Minuten sondern irgendein beliebiger anderer Wert.

Es wäre vielleicht sinnvoll, diesen Wert mit in die Überlegungen einzubeziehen und sich mehr an die tatsächliche Spielzeit anzulehnen, als an die Ingame-Zeit.

---

Das selbe gilt auch anders herum. Es gibt z.B. Quests bei denen muss man warten und warten und warten ... Sei es, weil der Graf in Skingrad mich erst 24 Stunden auf eine Audienz warten lässt oder weil die Quest mit dem paranoiden Glathir sich am einfachsten lösen lässt, wenn man 3 x hintereinander einfach bis Mitternacht wartet.

Hinzu kommt, dass es genügend Spieler gibt, die auch noch aus anderen Gründen viel Warten.

Also wär´s IMO nicht schlecht, sich insgesamt unter Berücksichtigung der TimeScale an der verstrichenen Realzeit zu orientieren und nicht an der Ingame-Zeit.

---

Vampire kenne ich ja nur Büchern und Filmen. Aber die ich kenne, die schlafen alle am Tag. Im Game hab ich keinen Check von den Viechern, weil ich die immer nur umhaue, aber selbst nie einer war. Darum bin ich nicht sicher, ob es nun eine gute Idee ist, dass Vampire bei der Mod nicht schlafen müssen.
 
Zuletzt bearbeitet:
Sehr schön, gefällt mir, jedenfalls denke ich das - werde die Mod erst laden, wenn du den 24h-Bug gelöst hast.

Wirst du, wenn du den Hunger- und Durst-Teil auch fertig hast, auch eine "gemergte" Version rausbringen, die alle drei Bedürfnisse enthält?
 
Hallo Seidenweber, danke für die Resonanz :)
Nuja, mir war bewusst, dass ein Skript nur alle paar Momente abgearbeitet wird, aber ich ging davon aus, dass die Menumode 1012-Abfrage mindestens einmal abgearbeitet werden müsste (ansonsten, so sagte mir meine Logik, wäre diese Funktion vollkommen sinnlos...)
Muss ich mal ausgiebig austesten.
Eine andere Variante gibt es aber doch nicht, herauszufinden, ob der Spieler jetzt schläft oder nicht, ohne, dass man an jedes verfügbare Bett ein Skript hängt? (ich wollte das absichtlich nicht, um es auch für gemoddete Betten funktionstüchtig zu halten)
Die Frage, die ich mir auch stelle, ist, ob der PC als schlafend gilt, sobal das Menü 1012 offen ist oder erst dann, wenn er tatsächlich schläft?
Aber selbst, wenn nicht....ich bräuchte nur eine Variable zu setzen, sobald registriert wird, dass dieses Menü offen ist und nach dem Schließen bloß einen Vergleich der Vorher- und Nachherzeit anzustellen. Wenn er >= 1 Stunde differiert, dann hat man ne Stunde geschlafen. Prinzipiell mache ich das schon so, nur halt noch mit der Abfrage IsPCSleeping als weitere Kondition.

Was die Timescale angeht....mmh.
Gibt es dazu weitere Meinungen? Ich selber finde, dass es komplett nur die Ingame-Zeit berücksichten sollte, denn es wäre irgendwie ziemlich doof, dass da im Spiel 3 Tage vergingen, man aber nur wenige Minuten gespielt hat (durch das Warten). Ich denke mal, dass der überwiegende Teil der Spieler sich so eine Modifikation installieren werden, um noch einen Tick mehr Rollenspiel zu bekommen, was dann auch heißt, dass sie sich den Regeln des Rollenspiels beugen müssen und nicht solche Aktionen durchführen kann, wie mal eben schnell an einem Ort herumzustehen und 24 Stunden zu warten (spätestens nach 4-5 Stunden kämen die Leutchen mit den weißen Jacken, um einen da wegzutragen) :p

Edit: Thema Vampire: Das ließ ich komplett außen vor, weil ich denke, dass es bessere Realismus-Mods für Vampircharaktere gibt. Also ließ ich es der Kompatibilität halber komplett außen vor ;)

@Fellan: ob es ein gemergte Version geben wird? Ich denke schon, aber sie werden dennoch auch einzeln zur Verfügung stehen ;)

So....leider muss ich schon wieder los...heute Abend werde ich es mir nochmal genau anschauen und bestimmt schnell eine Lösung finden :)
 
aber ich ging davon aus, dass die Menumode 1012-Abfrage mindestens einmal abgearbeitet werden müsste (ansonsten, so sagte mir meine Logik, wäre diese Funktion vollkommen sinnlos...)
jo - so wie ich das sehe, ist die Funktion in Quest-Scripten auch mehr oder weniger sinnlos - bzw. zumindest keine zuverlässige Lösung für eine exakte Event-Steuerung (sofern man nicht fQuestDelayTime benutzt).

In Objekt-Scripten ist das aber eine recht performante Lösung, weil der Block ja nur rennt, solange das Menue offen ist und in der übrigen Zeit keine Recourcen verballert.

Die Frage, die ich mir auch stelle, ist, ob der PC als schlafend gilt, sobal das Menü 1012 offen ist oder erst dann, wenn er tatsächlich schläft?
Der Inhalt von MenueMode 1012 ist alleine kein geeigner Indikator, weil das Menue eine Doppelfunktion hat - eben Sleep und Wait. Das wird dir eher i.V.m. GetPCSleepHours und/oder IsPCSleeping weiterhelfen.
 
Tja...der Tag gestern hat dann doch sehr viel länger gedauert, als ich dachte und wünschte. Zuerst arbeiten (34 Kilometer Fahrradfahren plus ein paar Kilometer Fußwege (naja, das mache ich jeden Arbeitstag, also fünf Mal die Woche *gg*)), dann schnell Nahrung (Energie) aufnehmen, anschließend zu Verwandten zu Besuch sein, erst gegen 20 Uhr wieder daheim sein, essen, ausruhen....*seufz*....und morgen der Tag ist auch voll ausgebucht - ich hoffe, ich kann zumindest ein wenig Zeit reinschieben, um diese dummen Fehler auszubügeln...

Was ich an der Skriiptsprache noch sehr lustig finde: Der CS meckert ja bei vielen Sachen, aber wenn man eine Vergleichsoperation durchführt, die nicht existiert und über die man auch in der CS-Wiki nix findet, dann sagt er nix. Ich hatte STUNDEN damit zugebracht, jede einzelne Zeile meines Skriptes auseinanderzunehmen und zu analysieren, bis mir die fehlerhafte Zeile vor die Flinte kam, in der ich eine Vergleichsoperation durchführte, die lautete:
Code:
if Wert1 <> Wert2
Jede vernünftige Sprache versteht doch sowas?!? Aber neeeein. Keine Fehlermeldung, gar nichts. Das Skript bleibt dann einfach hängen und macht gar nichts mehr. Ich hätte mir jedes Haar einzeln raufen können, schließlich dachte ich mir noch beim Schreiben der Zeile "hoffentlich gibt es diese Operation überhaupt", aber da der CS nicht meckerte....nahm ich nicht das für mich blöd aussehende "!=" stattdessen *g*

jo - so wie ich das sehe, ist die Funktion in Quest-Scripten auch mehr oder weniger sinnlos - bzw. zumindest keine zuverlässige Lösung für eine exakte Event-Steuerung (sofern man nicht fQuestDelayTime benutzt).

Ich denke, ich werde die Sache mal mit den kürzeren Intervallen verwenden - ich muss die Intervalle ja nur dafür kurz verkürzen und danach wieder auf Standard erhöhen. Danke für den Tipp :)

In Objekt-Scripten ist das aber eine recht performante Lösung, weil der Block ja nur rennt, solange das Menue offen ist und in der übrigen Zeit keine Recourcen verballert.

Nuja, so, wie ich die Sache verstehe, rennt auch nur der Teil des Skriptes in dem Menu-Block, auch wenn das gesamte Skript einen Game-Mode beinhaltet - wäre ja auch irgendwie blöde - ansonsten würde man diese Block-Typen gar nicht brauchen und es mit einer IF-Abfrage behandeln können ("Wenn Menü offen, dann").

Der Inhalt von MenueMode 1012 ist alleine kein geeigner Indikator, weil das Menue eine Doppelfunktion hat - eben Sleep und Wait. Das wird dir eher i.V.m. GetPCSleepHours und/oder IsPCSleeping weiterhelfen.

Jau - die Sache mit der Doppelfunktion kam mir auf der Arbeit auch in den Sinn - deswegen also baute ich doch die Abfrage ein, ob der PC jetzt schläft oder nicht (war mir nicht mehr so richtig klar, wieso ich das machte) *g*.

@Fellan: Über Durst und Hunger muss ich mir noch weitere Gedanken machen - meistens fällt mir das ziemlich spontan ein und es funktioniert dann ziemlich gut ;)

Jetzt ist aber Schlafenszeit...bin seit 21 Stunden wach (mein persönlicher Schlafindikator sagt "Ihr seid müde und solltet ein Bett aufsuchen", "Intelligenz - 30%", "Willenskraft - 20%", "Konstitution - 60%". Questmarker gesetzt auf Schlafzimmer) ;)
 
Zuletzt bearbeitet:
Was ich an der Skriiptsprache noch sehr lustig finde: Der CS meckert ja bei vielen Sachen, aber wenn man eine Vergleichsoperation durchführt, die nicht existiert und über die man auch in der CS-Wiki nix findet, dann sagt er nix.
So einen Bock habe ich mir auch letztens geschossen. Danach habe ich ewig gesucht und schließlich ein rollback gemacht, weil ich den Kaffee auf hatte. Später habe ich den selben Fehler dann nochmal gemacht. Konnte ihn aber finden, weil ich nicht so viel geändert hatte.

Übrigens habe ich mir ein WordFile für UE gemacht. Vielleicht kannst Du das ja für einen Editor gebrauchen oder modifizieren. Es sei denn, Du bist ein Vi-Jünger. Dann biste ja sowie über ein Gedankeninterface mit dem Rechner verbunden und brauchst sowas natürlich nicht. *gg*

Code:
/L12"Oblivion TES4" TES_LANG Line Comment = ; File Extensions = OBL
/Open Brace Strings =  "("
/Close Brace Strings = ")"
/Indent Strings = "Begin" "Else"
/Unindent Strings = "End" "EndIf" "Else"
/Open Fold Strings = "If" "ElseIf" "Else"
/Close Fold Strings = "ElseIf" "Else" "EndIf"
/C1"Funktionen" STYLE_FUNCTION
Activate AddAchievement AddFlames AddItem AddScriptPackage AddSpell AddTopic AdvancePCLevel AdvancePCSkill Autosave
CanHaveFlames CanPayCrimeGold Cast CloseCurrentOblivionGate CloseOblivionGate CompleteQuest CreateFullActorCopy
DeleteFullActorCopy Disable DisableLinkedPathPoints DisablePlayerControls Dispel DispelAllSpells Drop DropMe DuplicateAllItems DuplicateNPCStats
Enable EnableFastTravel EnableLinkedPathPoints EnablePlayerControls EquipItem EssentialDeathReload EvaluatePackage
ForceActorValue ForceCloseOblivionGate ForceFlee ForceTakeCover ForceWeather
GetActionRef GetActorValue GetAlarmed GetAmountSoldStolen GetAngle GetArmorRating GetArmorRatingUpperBody GetAttacked GetBarterGold GetBaseActorValue GetButtonPressed GetClassDefaultMatch GetClothingValue GetCombatTarget GetContainer GetCrime GetCrimeGold GetCrimeKnown GetCurrentAIPackage GetCurrentAIProcedure GetCurrentTime GetCurrentWeatherPercent GetDayOfWeek GetDead GetDeadCount GetDestroyed GetDetected GetDetectionLevel GetDisabled GetDisease GetDisposition GetDistance GetDoorDefaultOpen GetFactionRank GetFactionRankDifference GetFactionReaction GetFatiguePercentage GetForceRun GetForceSneak GetFriendHit GetFurnitureMarkerID GetGameSetting GetGlobalValue GetGold GetHeadingAngle GetIdleDoneOnce GetIgnoreFriendlyHits GetInCell GetInCellParam GetInFaction GetInSameCell GetInWorldspace GetInvestmentGold GetIsAlerted GetIsClass GetIsClassDefault GetIsCreature GetIsCurrentPackage GetIsCurrentWeather GetIsGhost GetIsID GetIsPlayableRace GetIsPlayerBirthsign GetIsRace GetIsReference GetIsSex GetIsUsedItem GetIsUsedItemType GetItemCount GetKnockedState GetLOS GetLevel GetLockLevel GetLocked GetNoRumors GetOffersServicesNow GetOpenState GetPCExpelled GetPCFactionAttack GetPCFactionMurder GetPCFactionSteal GetPCFactionSubmitAuthority GetPCFame GetPCInFaction GetPCInfamy GetPCIsClass GetPCIsRace GetPCIsSex GetPCMiscStat GetPCSleepHours GetPackageTarget GetParentRef GetPersuasionNumber GetPlayerControlsDisabled GetPlayerHasLastRiddenHorse GetPos GetQuestRunning GetQuestVariable GetRandomPercent GetRestrained GetScale GetSecondsPassed GetSelf GetShouldAttack GetSitting GetSleeping GetStage GetStageDone GetStartingAngle GetStartingPos GetTalkedToPC GetTalkedToPCParam GetTimeDead GetTotalPersuasionNumber GetTrespassWarningLevel GetUnconscious GetUsedItemActivate GetUsedItemLevel GetVampire GetWalkSpeed GetWeaponAnimType GetWeaponSkillType GetWindSpeed GoToJail
HasFlames HasMagicEffect HasVampireFed
IsActionRef IsActor IsActorAVictim IsActorDetected IsActorEvil IsActorUsingATorch IsAnimPlaying IsCellOwner IsCloudy IsContinuingPackagePCNear IsCurrentFurnitureObj IsCurrentFurnitureRef IsEssential IsFacingUp IsGuard IsHorseStolen IsIdlePlaying IsInCombat IsInDangerousWater IsInInterior IsInMyOwnedCell IsLeftUp IsOwner IsPCAMurderer IsPCSleeping IsPlayerInJail IsPlayerMovingIntoNewSpace IsPlayersLastRiddenHorse IsPleasant IsRaining IsRidingHorse IsRunning IsShieldOut IsSneaking IsSnowing IsSpellTarget IsSwimming IsTalking IsTimePassing IsTorchOut IsTrespassing IsTurnArrest IsWaiting IsWeaponOut IsXBox IsYielding
Kill KillAllActors
Lock Look LoopGroup
Message MessageBox ModActorValue ModAmountSoldStolen ModBarterGold ModCrimeGold ModDisposition ModFactionRank ModFactionReaction ModPCAttribute ModPCFame ModPCInfamy ModPCMiscStat ModPCSkill ModScale MoveTo
PayFine PayFineThief PickIdle PlaceAtMe PlayBink PlayGroup PlayMagicEffectVisuals PlayMagicShaderVisuals PlaySound PlaySound3D PositionCell PositionWorld PreloadMagicEffect
RefreshTopicList ReleaseWeatherOverride RemoveAllItems RemoveFlames RemoveItem RemoveMe RemoveScriptPackage RemoveSpell Reset3DState ResetFallDamageTimer ResetHealth ResetInterior Resurrect Rotate
SameFaction SameFactionAsPC SameRace SameRaceAsPC SameSex SameSexAsPC Say SayTo ScriptEffectElapsedSeconds SelectPlayerSpell SendTrespassAlarm SetActorAlpha SetActorFullName SetActorRefraction SetActorValue SetAlert SetAngle SetAtStart SetBarterGold SetCellFullName SetCellOwnership SetCellPublicFlag SetClass SetCombatStyle SetCrimeGold SetDestroyed SetDoorDefaultOpen SetEssential SetFactionRank SetFactionReaction SetForceRun SetForceSneak SetGhost SetIgnoreFriendlyHits SetInCharGen SetInvestmentGold SetItemValue SetLevel SetNoRumors SetOpenState SetOwnership SetPCExpelled SetPCFactionAttack SetPCFactionMurder SetPCFactionSteal SetPCFactionSubmitAuthority SetPCFame SetPCInfamy SetPCSleepHours SetPackDuration SetPos SetQuestObject SetRestrained SetRigidBodyMass SetScale SetShowQuestItems SetSize SetStage SetUnconscious SetWeather ShowBirthsignMenu ShowClassMenu ShowDialogSubtitles ShowEnchantment ShowMap ShowRaceMenu ShowSpellMaking SkipAnim StartCombat StartConversation StartQuest StopCombat StopCombatAlarmOnActor StopLook StopMagicEffectVisuals StopMagicShaderVisuals StopQuest StopWaiting
TrapUpdate TriggerHitShader
UnequipItem Unlock
VampireFeed
Wait WakeUpPC WhichServiceMenu
Yield
/C2"Befehle" STYLE_COMMAND
Begin
Else ElseIf End EndIf
Float
GameMode GetAV
If
Long 
MenuMode
OnActivate OnActorEquip OnActorUnequip OnAdd OnAlarm OnAlarmVictim OnDeath OnDrop OnEquip OnHit OnHitWith OnKnockout OnLoad OnMagicEffectHit OnMurder OnPackageChange OnPackageDone OnPackageStart OnReset OnSell OnStartCombat OnTrigger OnTriggerActor OnTriggerMob OnUnequip
Ref Return
ScriptEffectFinish ScriptEffectStart ScriptEffectUpdate Scriptname Set Short
To
/C3"Operators" STYLE_OPERATOR
!
< <=
> >=
= =>
| ||
& &&
 
Zuletzt bearbeitet:
Bin zwar kein "vi-Jünger" *g*, aber so Editoren benötige ich nicht....auch wenn Syntax-Highlighting manchmal ne nette Sache ist ;)

Mir fiel nochwas zum Thema "Warten" ein. Ich denke, ich gehe da eine Kompromisslösung ein, zumindest eine leichte: Da man beim bloßen Warten ja keinen Deut körperliche Arbeit verrichtet, kann ich es ja so machen, dass man beim Warten nicht so schnell müde wird, als würde man die Zeit herumlaufen und anders tot schlagen. Allerdings wird man dadurch noch immer keine 24 Stunden warten können, ohne, dass man müde danach ist.
Ich denke da an den Faktor von 0.2, um den man langsamer müde wird + ( Konstitution + Willenskraft / 500 ). Das hieße, dass, wenn man die beiden Attribute voll ausgeschöpft hat, man beim Warten um den Faktor 0.6 langsamer müde werden würde. Auf 24 Stunden gesehen wären das locker 14,4 Stunden, die man länger wach sein könnte.

EDIT:
UPDATE:
- 24-Stunden-Bug (hoffentlich) gefixed ;)
- Erkennungsrate der geschlafenen Stunden drastisch erhöht

auf TESS ist die aktuellste Version.
Schare wird noch benachritigt :)
 
Zuletzt bearbeitet:
  • Like
Reaktionen: corpse
Status
Für weitere Antworten geschlossen.