nstgc Posted June 11, 2018 Share Posted June 11, 2018 I want to apply an effect after a full attack has been made. OnClear applies it after each attack, but if there are two weapons, then it fires twice. I don't want this. Link to comment Share on other sites More sharing options...
peardox Posted June 11, 2018 Share Posted June 11, 2018 (edited) Looking Wrote a reply, deleted it BRB Edited June 11, 2018 by peardox OK Fair warning has been applied I'm gonna move the domain to https://perspak.com early Feb but will keep all content There are reasons behind this move which basically boil down to unifying my release schedule My friends are welcome to play (I'll set you up your own areas if you desire them) Please note that this process is messy so may take a few weeks Link to comment Share on other sites More sharing options...
peardox Posted June 11, 2018 Share Posted June 11, 2018 OK - here you go - every event in statuseffects "EventValue": "None", "EventValue": "OnActivateAttack", "EventValue": "OnAllyKO", "EventValue": "OnApply", "EventValue": "OnAttacked", "EventValue": "OnBeforeAttackRollCalculated", "EventValue": "OnClear", "EventValue": "OnCriticallyHit", "EventValue": "OnDamaged", "EventValue": "OnDealsDamage", "EventValue": "OnEngagedByOther", "EventValue": "OnEngageOther", "EventValue": "OnEngageOtherBroken", "EventValue": "OnHealthPercentBelow", "EventValue": "OnHitOrCriticallyHit", "EventValue": "OnHostileEffectExpired", "EventValue": "OnInterval", "EventValue": "OnLaunchesAttack", "EventValue": "OnMissed", "EventValue": "OnPostAttackRollCalculated", "EventValue": "OnPrimaryAttackHit", "EventValue": "OnRest", "EventValue": "OnScoringCriticalHit", "EventValue": "OnScoringGrazeHitOrCriticalHit", "EventValue": "OnScoringHitOrCriticalHit", "EventValue": "OnScoringKill", "EventValue": "OnSecondaryAttackHit", "EventValue": "OnUnconscious", "EventValue": "OnWeaponChange", "EventValue": "OnWoundAdded", "EventValue": "StartsAttackingSameTargetAsAlly", OK Fair warning has been applied I'm gonna move the domain to https://perspak.com early Feb but will keep all content There are reasons behind this move which basically boil down to unifying my release schedule My friends are welcome to play (I'll set you up your own areas if you desire them) Please note that this process is messy so may take a few weeks Link to comment Share on other sites More sharing options...
nstgc Posted June 12, 2018 Author Share Posted June 12, 2018 @Pear OK - here you go - every event in statuseffects --snip-- I used grep and uniq to get a list like that. However, none of those seem to do what I need them to do. I was hoping that that was something I was missing, or that I could create my own event type. Link to comment Share on other sites More sharing options...
peardox Posted June 12, 2018 Share Posted June 12, 2018 My only suggestion here is to script it bit looking thru that lot there's no script. Possibly - and I'm guessing here - you could attach a script to the item(s) as I know (but ain't explored scripting yet) that items have scripting to check if it's a two-handed and skip the first one with a zero ID for the first and a resolve hit via a global if you want accumulated damage. That's my best guess unless BMac steps in and sets us right. Soz dude - I'm working on a completely diffo part of modding tomoz so thought I'd stick my best (uneducated for items) ideas in. I will get to items + scripting next week so hopefully I'll have better help then if you're still stuck on this one OK Fair warning has been applied I'm gonna move the domain to https://perspak.com early Feb but will keep all content There are reasons behind this move which basically boil down to unifying my release schedule My friends are welcome to play (I'll set you up your own areas if you desire them) Please note that this process is messy so may take a few weeks Link to comment Share on other sites More sharing options...
peardox Posted June 12, 2018 Share Posted June 12, 2018 Here are the script verbs I've found so far (there will be more) - note these are only from Quests in design/conversations/* recursed If you find something hopeful here tell me what to look at and I'll try to work it out Try the conversationbundles if you wanna get really screwed up (starting to understand them) Boolean AlwaysFalse() Boolean AreGuidsSameGameData(Guid, Guid) Boolean AreGuidsSameObject(Guid, Guid) Boolean CallGlobalConditional(Guid) Boolean CanGiveMoney(Int32) Boolean CanUseAbility(Guid, Guid) Boolean CharacterIsBusyInInteration(Guid) Boolean CharacterIsInRangeForInteraction(Guid) Boolean CompareGlobals(String, Operator, String) Boolean CrewMemberHasPersonality(Guid, Guid) Boolean DidImportLegacySave() Boolean FullSailWillRam(ShipDuelParticipant) Boolean HalfSailWillRam(ShipDuelParticipant) Boolean HasAbility(Guid, Guid) Boolean HasAnyCrewJobAmount(ShipCrewJobType, Operator, Int32) Boolean HasAnyCrewJob(ShipCrewJobType) Boolean HasClass(Guid, CharacterClass) Boolean HasConversationNodeBeenPlayed(Guid, Int32) Boolean HasCrewJobAmount(ShipCrewJobType, Operator, Int32) Boolean HasCrewJob(ShipCrewJobType) Boolean HasLAX1() Boolean HasLAX2() Boolean HasMoneyPlayer(Operator, Int32) Boolean HasOngoingActionOfType(ShipDuelParticipant, ShipDuelActionType) Boolean HasOngoingAction(ShipDuelParticipant) Boolean HasPackage(ProductPackage) Boolean HasQuestStarted(Guid) Boolean HasShipDuelAdvantage(ShipDuelParticipant) Boolean HasStatusEffect(Guid, Guid) Boolean HasSubClass(Guid, Guid) Boolean InteractionSelectPartyMemberAbility(Int32, Guid) Boolean InteractionSelectPartyMemberClass(Int32, CharacterClass) Boolean IsActionValid(ShipDuelParticipant, ShipDuelActionType) Boolean IsActive(Guid) Boolean IsAnyCompanionActiveInParty() Boolean IsAnyCrewCount(Operator, Int32) Boolean IsAnyWeaponEquippedInPrimarySlot(Guid) Boolean IsArmorEquipped(Guid) Boolean IsAtShipRetreatDistance() Boolean IsAttributeScoreValue(Guid, AttributeType, Operator, Int32, Boolean) Boolean IsBackerBeta() Boolean IsBackground(Guid, Background) Boolean IsCharacterStealthed(Guid) Boolean IsCompanionActiveInParty(Guid) Boolean IsCompanionActiveInPartyOrPresent(Guid) Boolean IsCompanionRelationship(Guid, Guid, RelationshipThreshold) Boolean IsCrewCount(Operator, Int32) Boolean IsCrewJobRanks(ShipCrewJobType, Operator, Int32) Boolean IsCulture(Guid, Guid) Boolean IsCurrentHullHealthValue(Participant, Operator, Int32) Boolean IsCurrentHullHealthValue(ShipDuelParticipant, Operator, Int32) Boolean IsCurrentlyDaytime() Boolean IsCurrentlyNighttime() Boolean IsCurrentSailHealthValue(ShipDuelParticipant, Operator, Int32) Boolean IsCurrentTime(Operator, Single) Boolean IsDead(Guid) Boolean IsDeity(Guid, Guid) Boolean IsDisposition(Guid, Rank, Operator) Boolean IsDistance(Guid, Guid, Operator, Single) Boolean IsEncounterActive(Guid) Boolean IsEncounterBiome(Guid) Boolean IsGender(Guid, Gender) Boolean IsGlobalValue(String, Operator, Int32) Boolean IsHealthPercentage(Guid, Operator, Single) Boolean IsHostileToPlayer(Guid) Boolean IsInActiveScene(Guid) Boolean IsInCombat() Boolean IsInScene(Guid, Guid) Boolean IsInVolume(Guid, Guid) Boolean IsItemCount(Guid, Operator, Int32) Boolean IsItemEquipped(Guid, Guid) Boolean IsLastVolleyDamageAmount(ShipDuelParticipant, ShipDuelDamageType, Operator, Int32) Boolean IsLegacyHistoryValue(String, Operator, Int32) Boolean IsLevel(Guid, Operator, Int32) Boolean IsMapVisibility(MapType, MapVisibilityType) Boolean IsMonthAndDay(Int32, Int32) Boolean IsMoraleStatus(MoraleStateType) Boolean IsOCLInState(Guid, OCLState) Boolean IsPaladinOrder(Guid, Guid) Boolean IsPartySkillValueCount(Guid, Operator, Int32, Operator, Int32, Boolean) Boolean IsPlayerCrewMemberActive(Guid) Boolean IsPlayerShipAttribute(ShipAttributeType, Operator, Int32) Boolean IsQuestActive(Guid) Boolean IsQuestAddendumTriggered(Guid, Int32) Boolean IsQuestCompleted(Guid) Boolean IsQuestEndStateTriggered(Guid, Int32) Boolean IsQuestEventTriggered(Guid, Int32) Boolean IsQuestFailed(Guid) Boolean IsQuestOnNode(Guid, Int32) Boolean IsRace(Guid, Race) Boolean IsRaining() Boolean IsRangedWeaponEquippedInPrimarySlot(Guid) Boolean IsRangedWeaponEquippedInSecondarySlot(Guid) Boolean IsRangedWeaponInWeaponSetPrimarySlot(Guid, Int32) Boolean IsReputation(Guid, RankType, Int32, Operator) Boolean IsScheduleInteractingWithTimeSliceObject(Guid, Int32) Boolean IsScheudleTime(Guid, Int32) Boolean IsShipDeathType(ShipDuelParticipant, ShipDeathType) Boolean IsShipDistance(Operator, Int32) Boolean IsShipDrinkCount(Operator, Int32) Boolean IsShipExploded(ShipDuelParticipant) Boolean IsShipFoodCount(Operator, Int32) Boolean IsShipType(ShipDuelParticipant, ShipType) Boolean IsSkillCheckTokenCount(Operator, Int32) Boolean IsSkillValue(Guid, Guid, Operator, Int32, Boolean, Boolean) Boolean IsSubrace(Guid, Subrace) Boolean IsSunny() Boolean IsSupplyCount(ShipSupplyType, Operator, Int32) Boolean IsTeamRelationship(Guid, Guid, Relationship) Boolean IsTeamRelationshipToPlayer(Guid, Relationship) Boolean IsUserBeingPerceivedBy(Guid, Boolean) Boolean IsWeaponTypeEquippedInPrimarySlot(Guid, WeaponType) Boolean IsWeaponTypeInWeaponSetPrimarySlot(Guid, Int32, WeaponType) Boolean ObjectHasItemCount(Guid, Guid, Operator, Int32) Boolean OrlanGameOpponentResultIs(Result) Boolean OrlanGameOpponentWinning() Boolean OrlanGamePlayerResultIs(Result) Boolean OrlanGamePlayerWinning() Boolean OrlanGameRoundCountIs(Operator, Int32) Boolean PartyHasAbility(Guid) Boolean PlayerShipHasActiveUpgrade(Guid) Boolean ProgressionTableIsSubrace(Subrace) Boolean ShipDuelAIActionIs(ShipDuelActionType) Boolean ShipDuelIsFirstTurn() Boolean ShipDuelIsRelativeBearing(ShipDuelParticipant, ShipCombatRelativeBearing) Boolean ShipDuelIsTurn(ShipDuelParticipant) Boolean ShouldNotPlay() Boolean StrongholdIsCompanionAvaliable(Guid) Boolean StrongholdIsPrestigeValue(Operator, Int32) Void AbandonShipDuel(ShipDuelParticipant) Void ActivateObject(Guid, Boolean) Void AddAbility(Guid, Guid) Void AddAbilityWithPopup(Guid, Guid) Void AddCrewToRoster(Guid) Void AddExperience(Int32) Void AddExperiencePlayer(Int32) Void AddInjury(Guid, Guid, Boolean) Void AddInjuryToPartyWithAttributeCheck(Guid, Guid, Operator, Int32, Boolean) Void AddInjuryToPartyWithSkillCheck(Guid, Guid, Operator, Int32, Boolean) Void AddPlayerShipUpgrade(Guid, Guid) Void AddToParty(Guid) Void AdjustMorale(Int32) Void AdjustPartyFatigueWithSkillCheck(Int32, Guid, Operator, Int32) Void AdjustSupplyCount(ShipSupplyType, Int32) Void AdvanceQuest(Guid) Void AdvanceTimeByHours(Int32) Void AdvanceTimeByHoursNoRest(Int32) Void AdvanceTimeToHour(Int32) Void AIForceAttack(Guid, Guid) Void AIPathToObject(Guid, Guid, MovementType, Single) Void AIPathToPoint(Guid, Guid, MovementType) Void AISetBusy(Guid, Boolean) Void AISetScriptedBehavior(Guid, ScriptedBehaviorType) Void AISetScriptedUseObject(Guid, Guid) Void AIShipAction() Void ApplyDamageToPlayerShip(Int32, ShipDuelDamageType) Void ApplyLegacyHistoryToGame() Void ApplyRandomSevereInjuryToRandomCrew(Int32, Boolean) Void ApplySevereInjury(Guid, AfflictionGameData) Void ApplySevereInjury(Guid, Guid) Void ApplyStatusEffect(Guid, Guid) Void AreaTransition(Guid, PointLocation, String) Void Autosave() Void BlockForShipAI() Void CallGlobalScriptAfterTimePasses(Guid, Int32, Int32, Int32, Int32, Boolean) Void CallGlobalScript(Guid) Void ChangeTeam(Guid, Guid) Void ChangeWaterLevel(Guid, Single, Single) Void CharacterUseAbility(Guid, Guid) Void ClearConversationNodeAsRead(Guid, Int32) Void ClearPreviousAttackTarget(Guid) Void ClearSpecifiedGuids() Void Close(Guid) Void CompanionAddRelationship(Guid, Guid, Axis, Guid, Boolean) Void CompanionResolveRelationship(Guid, Guid, Boolean) Void ConsumeShipDrink(Int32) Void ConsumeShipFood(Int32) Void ContinueShipAction(ShipDuelParticipant) Void DealDamage(Guid, Single) Void DestroyWeaponInSlot(Guid, EquipmentSlot, Int32) Void DisplayLegacyHistoryWindow() Void DispositionAddPoints(Guid, Guid) Void EmergeStart(Guid) Void EncounterDespawn(Guid) Void EncounterReset(Guid) Void EncounterSetPlayerRelationship(Guid, Relationship) Void EncounterStopCombat(Guid) Void EndGame() Void EndShipDuel() Void ExitAmbientAnimation(Guid) Void FadeFromBlack(Single, Boolean, Boolean) Void FadeInGameObject(Guid, Single) Void FadeOutGameObject(Guid, Single, FadeOutBehavior) Void FadeToBlack(Single, Boolean, Boolean) Void FlipTile(Guid, Int32) Void FocusCameraOnPosition(Guid, Single) Void ForceRandomEncounterToAttack() Void GameCompleteSave() Void GameOver() Void GiveEncounterExperience() Void GiveItemAndEquip(Guid, Guid, Boolean) Void GiveItems(Guid, Int32) Void GiveItemsToObject(Guid, Guid, Int32) Void GiveItemsToShipConsumeQueue(Guid, Int32) Void GivePlayerMoney(Int32) Void GivePlayerShip(Guid) Void GiveSailorTales(Int32) Void GiveSailorTalesToCrewMember(Guid, Int32) Void GiveTriumph(Guid) Void HideScriptedInteractionPortaits() Void IncreaseWorldMapMapSize(Guid, Int32) Void IncrementGlobalValue(String, Int32) Void IncrementTrackedAchievementStat(TrackedAchievementStat) Void InteractionSelectPartyMemberAbility(Int32, Guid) Void InteractionSelectPartyMember(Int32) Void KillBarkstringOnSpeaker(Guid, Boolean, Boolean) Void Kill(Guid) Void KnockDown(Guid) Void LaunchAttackAtObject(Guid, Guid) Void LaunchRandomEncounter(Guid) Void LoadAudioBankPlayAudioEventAdvanced(Guid, String, String, String, String, String, Single, Boolean) Void LoadAudioBankPlayAudioEvent(Guid, String, String, Single, Boolean) Void LoadAudioBank(String) Void LoadEncounterMap(EncounterScenarioType) Void MarkConversationNodeAsRead(Guid, Int32) Void OpenCharacterCreation() Void OpenCrewRecruitment(Guid) Void Open(Guid, Boolean) Void OpenInn(Guid) Void OpenInventory() Void OpenRecruitment(Guid) Void OpenStore(Guid) Void OrlanGameReset() Void OrlanGameRollOpponent(Guid, Approach) Void OrlanGameRollPlayer(Guid, Approach) Void OrlanGameRoundOver() Void PartyMemberToBench(Guid) Void PlayConversationAnimation(Guid, Int32) Void PlayerShipActionFireCannons() Void PlayerShipActionReport() Void PlayerShipAction(ShipDuelActionType) Void PlayShipDuelAudioEvent(String, ShipDuelParticipant, Single, Boolean) Void PlaySoundAction(Guid, ChatterEventType) Void PointOfNoReturnSave() Void PopScriptedMusic(Single) Void PreloadScene(MapType) Void PushScriptedMusic(String, Single) Void RandomizeGlobalValue(String, Int32, Int32) Void RandomizeGlobalValueWithGlobal(String, Int32, String, Operator, Int32) Void RecruitCrewMember(Guid, Guid) Void ReduceAmmoByCannonCount(ShipCombatRelativeBearing) Void RemoveAbility(Guid, Guid) Void RemoveAllInjuries(Guid) Void RemoveFromPartyAndLeave(Guid) Void RemoveFromParty(Guid) Void RemoveItemsFromObject(Guid, Guid, Int32) Void RemoveItems(Guid, Int32) Void RemovePlayerMoney(Int32) Void ReplaceScriptedMusic(String, Single) Void ReputationAddPoints(Guid, Axis, Guid) Void ResetTriggerCharges(Guid) Void Rest() Void RestoreUnequippedItems(Guid) Void RevealDetectable(Guid, Guid) Void SaveLegacyHistory() Void ScreenShake(Single, Single) Void Seal(Guid) Void SealOpen(Guid, Boolean) Void SetActiveShip(Guid) Void SetBenchedPartyMemberBusy(Guid, Boolean) Void SetCharacterBusyInInteration(Guid, Boolean) Void SetCompanionConversationsEnabled(Boolean) Void SetEmbarkEnabled(Boolean) Void SetEndGameSlide(String) Void SetForbidden(Guid, Boolean) Void SetGlobalIfGlobal(String, Int32, String, Operator, Int32) Void SetGlobalValue(String, Int32) Void SetHealth(Guid, Single) Void SetInteractionImageFromData(Guid) Void SetInteractionImage(String) Void SetIsGuard(Guid, Boolean) Void SetIsHostile(Guid, Boolean) Void SetLegacyHistoryVariable(String, Int32) Void SetMapCanWait(Guid, Boolean) Void SetMetaTeamRelationship(Guid, Guid, Relationship) Void SetMinimalUIState(Boolean) Void SetMorale(Int32) Void SetOwned(Guid, Guid) Void SetPartyStealth(Boolean) Void SetPlayerBackground(Guid) Void SetQuestAlternateDescription(Guid, Int32) Void SetShipDuelRelativeBearing(ShipDuelParticipant, ShipCombatRelativeBearing) Void SetSkillCheckTokenBest(Guid) Void SetSkillCheckTokenWorst(Guid) Void SetTeamRelationship(Guid, Guid, Relationship) Void SetTimer(Guid, Single) Void SetTriggerEnabled(Guid, Boolean) Void SetWantsToTalk(Guid, Boolean) Void SetWeatherPattern(Guid, Boolean, Single) Void SetWorldMapIconEnabled(Guid, Boolean) Void ShipDuelCloseToBoard(ShipDuelParticipant) Void ShipDuelSurrender(ShipDuelParticipant) Void ShipNextTurn() Void ShowShipSIImage() Void SoulMemoryCameraEnable(Boolean) Void SpecifyCharacter(Guid, Int32) Void SpecifyCrewMemberWithExpression(Guid, Int32, Boolean) Void SpecifyCrewMemberWithJobThenExpression(ShipCrewJobType, Guid, Int32, Boolean) Void SpecifyRandomCrewJobMember(ShipCrewJobType, Int32) Void SpecifyRandomCrewMember(Int32) Void StartConversation(Guid, Guid, Int32) Void StartCutscene(Guid) Void StartFollowCamera() Void StartQuest(Guid) Void StartQuestWithAlternateDescription(Guid, Int32) Void StartScriptedInteraction(Guid) Void StartTimer(Guid) Void StopAudioEvent(Guid, String, Single, Single, Boolean) Void StopCombat(Guid) Void StopShipDuelAudioEvent(String, Single, Single, Boolean) Void StopTimer(Guid) Void TeleportAvailablePartyToLocation(Guid) Void TeleportDetectedPartyToLocation(Guid, Guid, Boolean, Single) Void TeleportObjectToLocation(Guid, Guid) Void TeleportPartyToLocation(Guid) Void TeleportWorldMapPlayerToLocation(Guid, Boolean) Void TradePlayerShip(Guid, Guid) Void TransferItemFromParty(Guid, Guid, Int32) Void TransferItem(Guid, Guid, Guid, Int32) Void TransferItemsToStash(Guid) Void TransferPlayerCrew(Guid, Guid) Void TransitionToOVSState(Guid, Guid) Void TriggerQuestAddendum(Guid, Int32) Void TriggerQuestEndState(Guid, Int32) Void TriggerQuestFailState(Guid, Int32) Void TriggerTopic(Guid, Guid, Guid, Boolean) Void TriggerTrap(Guid, Guid) Void TriggerTutorial(Guid) Void TriggerTutorial(Int32) Void UnequipItemInSlot(Guid, EquipmentSlot) Void Unlock(Guid) Void Unseal(Guid) Void WaitForShipAI() Void WaitForShipPlayer() Void WorldMapRespawn(WorldMapTransitMode) Void WorldMapSetVisibility(Guid, MapVisibilityType) OK Fair warning has been applied I'm gonna move the domain to https://perspak.com early Feb but will keep all content There are reasons behind this move which basically boil down to unifying my release schedule My friends are welcome to play (I'll set you up your own areas if you desire them) Please note that this process is messy so may take a few weeks Link to comment Share on other sites More sharing options...
BMac Posted June 12, 2018 Share Posted June 12, 2018 There's a conditional called "Boolean IsCastingWithPrimaryAttack(Guid)" that might be what you're looking for. The parameter should be the attacking character. There's also "Boolean IsFullAttack(Guid)" (same parameter). I'll make a note to write up some more info about the available scripts and how to use them. 1 Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now