Hornete Posted February 5, 2021 Share Posted February 5, 2021 (edited) Hey, this is just a small little thread that lists all the engine functions in the game(Stuff like Transform, AnimState, SoundEmitter are defined in the engine). I'll try my best to keep this up to date and I hope you find it useful. AnimState Spoiler AddOverrideBuild AnimDone AnimateWhilePaused AssignItemSkins BuildHasSymbol ClearAllOverrideSymbols ClearBloomEffectHandle ClearDefaultEffectHandle ClearOverrideBuild ClearOverrideSymbol ClearSymbolBloom ClearSymbolExchanges CompareSymbolBuilds FastForward GetAddColour GetBrightness GetBuild GetCurrentAnimationFrame GetCurrentAnimationLength GetCurrentAnimationTime GetCurrentFacing GetHue GetInheritsSortKey GetMultColour GetSaturation GetSkinBuild GetSortOrder GetSymbolAddColour GetSymbolHSB GetSymbolMultColour GetSymbolOverride GetSymbolPosition Hide HideSymbol IsCurrentAnimation IsSymbolOverridden OverrideBrightness OverrideHue OverrideItemSkinSymbol OverrideMultColour OverrideSaturation OverrideShade OverrideSkinSymbol OverrideSymbol Pause PlayAnimation PushAnimation Resume SetAddColour SetBank SetBankAndPlayAnimation SetBloomEffectHandle SetBrightness SetBuild SetClientSideBuildOverrideFlag SetClientsideBuildOverride SetDefaultEffectHandle SetDeltaTimeMultiplier SetDepthBias SetDepthTestEnabled SetDepthWriteEnabled SetErosionParams SetFinalOffset SetFloatParams SetHatOffset SetHaunted SetHighlightColour SetHue SetInheritsSortKey SetLayer SetLightOverride SetManualBB SetMultColour SetMultiSymbolExchange SetOceanBlendParams SetOrientation SetPercent SetRayTestOnBB SetSaturation SetScale SetSkin SetSortOrder SetSortWorldOffset SetSymbolAddColour SetSymbolBloom SetSymbolBrightness SetSymbolExchange SetSymbolHue SetSymbolLightOverride SetSymbolMultColour SetSymbolSaturation SetTime SetUILightParams SetWorldSpaceAmbientLightPos Show ShowSymbol UseColourCube UsePointFiltering Transform Spoiler GetFacing GetLocalPosition GetPredictionPosition GetRotation GetScale GetWorldPosition SetEightFaced SetFourFaced SetFromProxy SetIsOnPlatform SetNoFaced SetPosition SetRotation SetScale SetSixFaced SetTwoFaced UpdateTransform SoundEmitter Spoiler GetEntity KillAllSounds KillSound OverrideVolumeMultiplier PlaySound PlaySoundWithParams PlayingSound SetMute SetParameter SetVolume MiniMapEntity Spoiler CopyIcon SetCanUseCache SetDrawOverFogOfWar SetEnabled SetIcon SetIsFogRevealer SetIsProxy SetPriority SetRestriction Light Spoiler Enable EnableClientModulation GetCalculatedRadius GetColour GetDisableOnSceneRemoval GetFalloff GetIntensity GetRadius IsEnabled SetColour SetDisableOnSceneRemoval SetFalloff SetIntensity SetRadius LightWatcher Spoiler GetLightAngle GetLightValue GetTimeInDark GetTimeInLight IsInLight SetDarkThresh SetLightThresh Physics Spoiler CheckGridOffset ClearCollidesWith ClearCollisionMask ClearLocalCollisionMask ClearMotorVelOverride ClearTransformationHistory CollidesWith ConstrainTo GeoProbe GetCollisionGroup GetCollisionMask GetHeight GetMass GetMotorSpeed GetMotorVel GetRadius GetVelocity IsActive IsPassable SetActive SetCapsule SetCollides SetCollisionCallback SetCollisionGroup SetCollisionMask SetCylinder SetDamping SetDontRemoveOnSleep SetFriction SetLocalCollisionMask SetMass SetMotorVel SetMotorVelOverride SetRestitution SetRigidBodyEnabled SetSphere SetTriangleMesh SetVel Stop TEMPHACK_DisableSleepDeactivation Teleport TeleportRespectingInterpolation Follower Spoiler FollowSymbol SetOffset WaveComponent Spoiler Init SetWaveEffect SetWaveMotion SetWaveParams SetWaveSize SetWaveTexture VFXEffect Spoiler AddParticle AddParticleUV AddRotatingParticle AddRotatingParticleUV ClearAllParticles EnableBloomPass EnableDepthTest EnableDepthWrite FastForward GetNumLiveParticles InitEmitters SetAcceleration SetBlendMode SetColourEnvelope SetDragCoefficient SetFollowEmitter SetGroundPhysics SetIsTrailEmitter SetKillOnEntityDeath SetLayer SetMaxLifetime SetMaxNumParticles SetRadius SetRenderResources SetRotateOnVelocity SetRotationStatus SetScaleEnvelope SetSortOffset SetSortOrder SetSpawnVectors SetUVFrameSize SetWorldSpaceEmitter DynamicShadow Spoiler SetSize Enable Pathfinder Spoiler AddWall GetPathTileIndexFromPoint GetSearchResult GetSearchStatus HasWall IsClear KillSearch RemoveWall SubmitSearch Network Spoiler GetNetworkID GetUserID GetUserFlags GetPlayerColour IsPlayingWithFriends IsBorrowed GetClientName AddUserFlag SetConsecutiveMatch IsConsecutiveMatch SetPlayerEquip SetPlayerSkin SetPlayerAge SetClassifiedTarget RemoveUserFlag IsServerAdmin GetPlayerAge Map Spoiler Important Note: Some of these are actually defined on the LUA side of the game, so keep that in mind SetMinimapOceanEdgeColor0 IsVisualGroundAtPointDebug GetTileCenterPoint SetMinimapOceanEdgeParams1 SetOceanTextureBlendAmount SetMinimapOceanEdgeNoiseParams GetIslandAtPoint InternalIsPointOnWater GetNodeIdAtPoint SetWaterfallFadeParameters GetRandomPointsForSite GetStringEncode SetOverlayColor2 SetImpassableType CalcPercentLandTilesAtPoint SetOceanTextureBlurParameters SetClearColor Finalize IsVisualGroundAtPoint CanTerraformAtPoint SetNavSize IsDeployPointClear SetSize CanDeployMastAtPoint FindRandomPointInOcean GenerateBlendedMap GetTileAtPoint GetWorldSize GetNearestPointOnWater SetOverlayColor1 ResetVisited SetOceanNoiseParameters0 SetMinimapOceanEdgeFadeParams SetWaterfallNoiseParameters0 CalcPercentOceanTilesAtPoint GetPlatformAtPoint SetUndergroundRenderLayer SetOverlayLerp SetMinimapOceanEdgeShadowParams AddRenderLayer IsPassableAtPointWithPlatformRadiusBias IsSurroundedByWater CanDeployRecipeAtPoint IsOceanAtPoint RegisterGroundTargetBlocker GetNavStringEncode CanDeployAtPointInWater Replace IsFarmableSoilAtPoint IsOceanTileAtPoint CanDeployAtPoint IsGroundTargetBlocked GetEntitiesOnTileAtPoint CanTillSoilAtPoint CanDeployWallAtPoint SetOceanEnabled RepopulateNodeIdTileMap CanDeployPlantAtPoint SetPhysicsWallDistance CanPlantAtPoint IsAboveGroundAtPoint TileVisited CanPlowAtPoint IsValidTileAtPoint CollapseSoilAtPoint CanPlaceTurfAtPoint SetMinimapOceanEdgeShadowColor RegisterDeployExtraSpacing RegisterTerraformExtraSpacing IsPassableAtPoint VisitTile RetrofitNavGrid SetMinimapOceanTextureBlurParameters SetOceanNoiseParameters2 GetNodeIdTileMapStringEncode SetMinimapOceanEdgeParams0 SetMinimapOceanEdgeColor1 SetUndergroundFadeHeight GetSize SetOverlayColor0 SetOceanNoiseParameters1 SetTransparentOcean Fill GetTileCoordsAtPoint SetNodeIdTileMapFromString SetTileNodeId GetTileXYAtPoint GetTile SetNavFromString SetWaterfallNoiseParameters1 SetMinimapOceanMaskBlurParameters SetTile SetOverlayTexture FindNodeAtPoint SetFromString NodeAtPointHasTag RebuildLayer IsPointNearHole CanPlacePrefabFilteredAtPoint TheSim Spoiler AbortFileExistsAsync AddBatchVerifyFileExists AdjustFontAdvance AtlasContains CanReadConfigurationDirectory CanWriteConfigurationDirectory CheckPersistentStringExists CleanAllMods ClearAllDSP ClearDSP ClearFileSystemAliases ClearInput CopyLegacySessionToSlot CreateEntity DebugPause DebugPushJsonMessage DebugStringScreen DecodeAndUnzipString DecodeKleiData DownloadMOTDImages DumpMemInfo DumpMemoryStats EnsureShardIndexPathExists ErasePersistentString FindEntities FindEntities_Registered FindFirstEntityWithTag ForceAbort GenerateNewWorld GetAnalogControl GetBuildDate GetClientModsDownloading GetClipboardData GetDataCollectionSetting GetDebugPhysicsRenderEnabled GetDebugRenderEnabled GetDigitalControl GetEntitiesAtScreenPoint GetEntityAtScreenPoint GetFPS GetFileModificationTime GetGameID GetGroundViewDirection GetLightAtPoint GetLocalSetting GetMOTDQueryURL GetModDirectoryNames GetMouseButtonState GetNumLaunches GetNumberOfEntities GetPersistentString GetPersistentStringInClusterSlot GetPosition GetRealTime GetSaveFiles GetScreenPos GetScreenSize GetServerModsDownloading GetSetting GetSoundVolume GetStashedPlayInstance GetSteamAppID GetSteamBetaBranchName GetSteamIDNumber GetStep GetTick GetTickTime GetTimeScale GetUserHasLicenseForApp GetUsersName GetWindowSize GetWorkshopVersion HasEnoughFreeDiskSpace HasPlayerSkeletons HasWindowFocus HideAnimOnEntitiesWithTag Hook IsBorrowed IsDLCEnabled IsDLCInstalled IsDataCollectionDisabled IsDebugPaused IsKeyDown IsLoggedOn IsNetbookMode IsPlaying LoadFont LoadKlumpFile LoadKlumpString LoadPrefabs LoadUserFile LockModDir LogBulkMetric LuaPrint MemTrackerPop MemTrackerPush OnAssetPathResolve OpenDocumentsFolder OpenSaveFolder PauseFileExistsAsync PreloadFile PrintLoadedTextureInfo PrintTextureInfo Profile ProfilerPop ProfilerPush ProjectScreenPos QueryServer QueryTopMods QueryWorkshopModName QueueDownloadTempMod Quit RegisterFindTags RegisterPrefab RemapSoundEvent RenderOneFrame ReportAction RequestPlayerID Reset ReskinEntity SendGameStat SendHardwareStats SendJSMessage SendProfileStats SendUITrigger SetActiveAreaCenterpoint SetAmbientColour SetCameraDir SetCameraFOV SetCameraPos SetCameraUp SetDLCEnabled SetDataCollectionSetting SetDebugCameraRotation SetDebugCameraTarget SetDebugPhysicsRenderEnabled SetDebugRenderEnabled SetErosionTexture SetHighPassFilter SetInstanceParameters SetListener SetLowPassFilter SetMOTDTarget SetMemInfoTrackingInterval SetMemoryTracking SetNetbookMode SetPersistentString SetPersistentStringInClusterSlot SetRenderPassDefaultEffect SetReverbPreset SetSetting SetSoundVolume SetTimeScale SetUIRoot SetVisualAmbientColour SetupFontFallbacks ShouldInitDebugger ShouldPlayIntroMovie ShouldWarnModsLoaded ShowAnimOnEntitiesWithTag SpawnPrefab StartDownloadTempMods StartFileExistsAsync StartWorkshopQuery StashPlayInstance Step StopAllSounds SubscribeToMod ToggleDataProfiler ToggleDebugCamera ToggleDebugPause ToggleDebugTexture ToggleFrameProfiler TogglePerfGraph TryLockModDir TurnOffReverb UnloadAllPrefabs UnloadFont UnloadPrefabs UnlockModDir UnregisterAllPrefabs UnregisterPrefabs UpdateDebugTexture UpdateDeviceCaps UpdateWorkshopMod UserChooseDirectory ValidateHeap VerifyFileExistsAsync VerifyModVersions WorldPointInPoly ZipAndEncodeString TheNet Spoiler AddToWhiteList AllowConnections Announce AnnounceDeath AnnounceResurrect AnnounceVoteResult AutoJoinLanServer Ban BanForTime BeginServerModSetup BeginSession CallClientRPC CallRPC CallShardRPC CancelCloudServerRequest CleanupSessionCache DeleteCluster DeleteSession DeleteUserSession DeserializeAllLocalUserSessions DeserializeUserSession DeserializeUserSessionInClusterSlot DiceRoll Disconnect DoneLoadingMap DownloadServerDetails DownloadServerMods EncodeUserPath GenerateClusterToken GetAllowIncomingConnections GetAllowNewPlayersToConnect GetAutosaverEnabled GetAveragePing GetBlacklist GetChildProcessError GetChildProcessStatus GetClientMetricsForUser GetClientTable GetClientTableForUser GetCloudServerId GetCloudServerRequestState GetCountryCode GetCurrentSnapshot GetDefaultClanAdmins GetDefaultClanID GetDefaultClanOnly GetDefaultEncodeUserPath GetDefaultFriendsOnlyServer GetDefaultGameMode GetDefaultLANOnlyServer GetDefaultMaxPlayers GetDefaultPvpSetting GetDefaultServerDescription GetDefaultServerIntention GetDefaultServerLanguage GetDefaultServerName GetDefaultServerPassword GetDefaultVoteEnabled GetDeferredServerShutdownRequested GetFriendsList GetIsClient GetIsHosting GetIsMasterSimulation GetIsServer GetIsServerAdmin GetIsServerOwner GetItemsBranch GetLanguageCode GetLocalUserName GetNetworkStatistics GetPVPEnabled GetPartyChatHistory GetPartyTable GetPing GetPlayerCount GetPlayerSaveLocationInClusterSlot GetServerClanID GetServerClanOnly GetServerDescription GetServerEvent GetServerFriendsOnly GetServerGameMode GetServerHasPassword GetServerHasPresentAdmin GetServerIntention GetServerIsClientHosted GetServerIsDedicated GetServerLANOnly GetServerListing GetServerListingFromActualIndex GetServerListingReadDirty GetServerListings GetServerMaxPlayers GetServerModNames GetServerModsDescription GetServerModsEnabled GetServerName GetServerPVP GetSessionIdentifier GetUserID GetUserSessionFile GetUserSessionFileInClusterSlot GetWorldSessionFile GetWorldSessionFileInClusterSlot HasPendingConnection IncrementSnapshot InviteToParty IsClanIDValid IsConsecutiveMatchForPlayer IsDedicated IsDedicatedOfflineCluster IsNetIDPlatformValid IsNetOverlayEnabled IsOnlineMode IsSearchingServers IsVoiceActive IsWhiteListed JoinParty JoinServerResponse Kick LeaveParty ListSnapshots ListSnapshotsInClusterSlot LoadPermissionLists NotifyAuthenticationFailure NotifyLoadingState OnPlayerHistoryUpdated PartyChat PrintNetwork RemoveFromWhiteList ReportListing Say SearchLANServers SearchServers SendLobbyCharacterRequestToServer SendModRPCToClient SendModRPCToServer SendModRPCToShard SendRPCToClient SendRPCToServer SendRPCToShard SendRemoteExecute SendResumeRequestToServer SendSlashCmdToServer SendSpawnRequestToServer SendWorldResetRequestToServer SendWorldRollbackRequestToServer SendWorldSaveRequestToMaster SerializeUserSession SerializeWorldSession ServerModCollectionSetup ServerModSetup ServerModsDownloadCompleted SetAllowIncomingConnections SetAllowNewPlayersToConnect SetBlacklist SetCheckVersionOnQuery SetClientCacheSessionIdentifier SetCloudServerInitiatorUserId SetCurrentSnapshot SetDefaultClanInfo SetDefaultFriendsOnlyServer SetDefaultGameMode SetDefaultLANOnlyServer SetDefaultMaxPlayers SetDefaultPvpSetting SetDefaultServerDescription SetDefaultServerIntention SetDefaultServerLanguage SetDefaultServerName SetDefaultServerPassword SetDeferredServerShutdownRequested SetGameData SetIsClientInWorld SetIsMatchStarting SetIsWorldResetting SetIsWorldSaving SetLobbyCharacter SetPartyServer SetPlayerMuted SetSeason SetServerPassword SetServerTags SetWorldGenData StartClient StartCloudServerRequestProcess StartServer StartVote StopBroadcastingServer StopSearchingServers StopVote SystemMessage Talker TruncateSnapshots TruncateSnapshotsInClusterSlot TryDefaultEncodeUserPath UpdatePlayingWithFriends ViewNetFriends ViewNetProfile Vote TheInputProxy Spoiler AddVibration ApplyControlMapping CancelMapping EnableInputDevice EnableVibration FlushInput GetInputDeviceCount GetInputDeviceName GetInputDeviceType GetLastActiveControllerIndex GetLocalizedControl GetOSCursorPos HasMappingChanged IsAnyControllerActive IsAnyControllerConnected IsAnyInputDeviceConnected IsInputDeviceConnected IsInputDeviceEnabled LoadControls LoadCurrentControlMapping LoadDefaultControlMapping MapControl RemoveVibration SaveControls SetCursorVisible SetOSCursorPos StartMappingControls StopMappingControls StopVibration UnMapControl TheShard Spoiler GetDefaultShardEnabled GetSecondaryShardPlayerCounts GetShardId IsMaster IsMigrating IsPlayer IsSecondary SetSecondaryLoading StartMigration FontManager Spoiler RegisterFont PostProcessor Spoiler SetColourCubeData SetColourCubeLerp SetColourModifier SetDistortionFactor SetDistortionRadii SetEffectTime SetLunacyEnabled SetOverlayBlend SetOverlayTex SetPostProcessingEnabled EnvelopeManager Spoiler AddColourEnvelope AddFloatEnvelope AddVector2Envelope TheInventory Spoiler CancelGetAllItems CheckClientOwnership CheckOwnership CheckOwnershipGetLatest GetAllUnlockedAchievements GetClientGiftCount GetCurrencyAmount GetFullInventory GetKleiPointsAmount GetLocalCookbook GetLocalPlantRegistry GetOwnedItemCount GetOwnedItemCountForCommerce GetUnopenedEntitlementItems GetUnopenedItems GetVirtualIAPCurrencyAmount GetWXP GetWXPLevel HasDownloadedInventory IsAchievementUnlocked IsDownloadingInventory LookupSkinname SetAchievementTempUnlocked SetCookbookValue SetItemOpened SetLocalVanityItems SetPlantRegistryValue StartGetAllItems MapLayerManager Spoiler CreateRenderLayer ReleaseRenderLayer SetMinimapColor SetPrimaryColor SetSampleStyle SetSecondaryColor SetSecondaryColorDusk RoadManager Spoiler AddControlPoint AddSmoothedControlPoint BeginRoad GenerateQuadTree GenerateVB IsOnRoad SetStripEffect SetStripTextures SetStripUVAnimStep SetStripWrapMode Some of these functions may not be so clear in what their use is. So you can ask me and i'll try to figure out what the function is used to do and let you know too : ). Edited July 15, 2022 by Hornete Updated again 10 9 Link to comment Share on other sites More sharing options...
penguin0616 Posted February 6, 2021 Share Posted February 6, 2021 (edited) Can you explain every single function in depth please? Edited February 6, 2021 by penguin0616 3 1 Link to comment Share on other sites More sharing options...
Thomas Die Posted February 7, 2021 Share Posted February 7, 2021 =) Link to comment Share on other sites More sharing options...
VouMorrer Posted February 8, 2021 Share Posted February 8, 2021 Thank you, @Hornete ! i've been having some trouble to understand what functions do when i find them being called in the code. can you please tell me where are they defined, so i can try to understand by myself what each one do? i imagine some of them are defined somewhere out of modder's reach, right? 1 Link to comment Share on other sites More sharing options...
Hornete Posted February 8, 2021 Author Share Posted February 8, 2021 1 minute ago, VouMorrer said: Thank you, @Hornete ! i've been having some trouble to understand what functions do when i find them being called in the code. can you please tell me where are they defined, so i can try to understand by myself what each one do? i imagine some of them are defined somewhere out of modder's reach, right? All of these functions (except for some Map functions) are defined in the engine which uses C++. Theres no way to look in the engine code and if you do find a way to crack open the engine code that probably breaks some Terms of service you can ask me what functions you're having trouble understanding and I'll help you out. 1 Link to comment Share on other sites More sharing options...
Bigfootmech Posted February 16, 2021 Share Posted February 16, 2021 Haha, I wish I found this earlier. But maybe I wouldn't have understood it then :p. Great list! Link to comment Share on other sites More sharing options...
Wonderlarr Posted February 24, 2021 Share Posted February 24, 2021 Weird thing, it seems that AnimState:SetPercent doesn't wanna work for me, the game treats it like it's nil and crashes. Link to comment Share on other sites More sharing options...
Hornete Posted February 24, 2021 Author Share Posted February 24, 2021 13 hours ago, TheSkylarr said: Weird thing, it seems that AnimState:SetPercent doesn't wanna work for me, the game treats it like it's nil and crashes. How are you using it? and what's the specific crash? Link to comment Share on other sites More sharing options...
Wonderlarr Posted February 28, 2021 Share Posted February 28, 2021 On 2/24/2021 at 9:47 AM, Hornete said: How are you using it? and what's the specific crash? Ah oops, that was my bad! SetPercent definitely works, I was just using it when the animation it was manipulating wasn't loaded. Link to comment Share on other sites More sharing options...
. . . Posted April 2, 2021 Share Posted April 2, 2021 do you know ones for TheCamera ? 1 Link to comment Share on other sites More sharing options...
Hornete Posted April 2, 2021 Author Share Posted April 2, 2021 (edited) 23 minutes ago, --- -.- said: do you know ones for TheCamera ? TheCamera isnt an engine class. Its defined on the lua side, You can find the functions for it in scripts/cameras/followcamera.lua Edited April 2, 2021 by Hornete 1 Link to comment Share on other sites More sharing options...
Friendly Grass Posted July 7, 2021 Share Posted July 7, 2021 (edited) adding a couple I noticed didn't make it onto the list: MapExplorer Spoiler ActivateLocalMiniMap EnableUpdate LearnAllMaps LearnRecordedMap RecordAllMaps RecordMap RevealArea Label Spoiler Enable SetColour SetFont SetFontSize SetText SetUIOffset SetWorldOffset MiniMap Spoiler AddAtlas AddRenderLayer ClearRevealedAreas ContinuouslyClearRevealedAreas DrawForgottenFogOfWar EnableFogOfWar IsVisible RebuildLayer SetEffects ShowArea ToggleVisibility Edited July 20, 2021 by Friendly Grass 1 Link to comment Share on other sites More sharing options...
chientrm Posted November 4, 2021 Share Posted November 4, 2021 Hi @Hornete, I want to ask which function can I use to get chat messages or to register Announcement event? Link to comment Share on other sites More sharing options...
Wonderlarr Posted December 10, 2021 Share Posted December 10, 2021 (edited) It looks like SoundEmitter:SetMute() isn't used in the base game, does this mute all sounds played by that entity instance? Edit: yes it does, it take a boolean and mutes if true. Edited January 14, 2022 by TheSkylarr Link to comment Share on other sites More sharing options...
dydhyh Posted January 14, 2022 Share Posted January 14, 2022 Can you explain every single function in depth please ? such as params and return... 1 Link to comment Share on other sites More sharing options...
Hbulat35 Posted February 7, 2022 Share Posted February 7, 2022 (edited) it seems that AnimState:GetBuild doesn't work. And does anyone know where is entity functions like AddTransform and what others there? Edited February 7, 2022 by Hbulat35 Link to comment Share on other sites More sharing options...
Wonderlarr Posted May 13, 2022 Share Posted May 13, 2022 Are Label and Image engine functions? They seem to fall in line with a lot of the other things listed here. Link to comment Share on other sites More sharing options...
cooooooool Posted December 24, 2022 Share Posted December 24, 2022 Thank you very much. Can you explan the EnvelopeManager? i can not understand it and how it works. Link to comment Share on other sites More sharing options...
IronHunter Posted December 24, 2022 Share Posted December 24, 2022 8 hours ago, cooooooool said: Thank you very much. Can you explan the EnvelopeManager? i can not understand it and how it works. Envelopes are used by particle emitters similar to a timeline. It scales off the lifespan of the particles. Color is essentially a table of colors that it'll tween to over time Where as vector2 is used for x, y scale which is tweened over time. Float is currently unused but originally was used for scale before vector2 took over. I highly recommend looking at particle emitters prefabs for more info on how to set them up as I cannot recall off memory. But essentially you cannot have multiple envelopes with the same name. However multiple emitters can reuse the same envelopes. As a result prefabs delete their envelope generation after they are created once. Link to comment Share on other sites More sharing options...
cooooooool Posted January 3, 2023 Share Posted January 3, 2023 On 12/25/2022 at 3:29 AM, IronHunter said: Envelopes are used by particle emitters similar to a timeline. It scales off the lifespan of the particles. Color is essentially a table of colors that it'll tween to over time Where as vector2 is used for x, y scale which is tweened over time. Float is currently unused but originally was used for scale before vector2 took over. I highly recommend looking at particle emitters prefabs for more info on how to set them up as I cannot recall off memory. But essentially you cannot have multiple envelopes with the same name. However multiple emitters can reuse the same envelopes. As a result prefabs delete their envelope generation after they are created once. OK,thanks very much. Link to comment Share on other sites More sharing options...
rawii22 Posted February 26, 2023 Share Posted February 26, 2023 For anyone who wants to be able to do this on their own computer, try a snippet like the following from inside a mod: for k, v in pairs(GLOBAL) do if string.match(k, "^The.*") then print(k) GLOBAL.dumptable(GLOBAL.getmetatable(v)) end end This is what my brother and I have used to get the functions belonging to the "The" objects. We like to call them the 'The'-functions . For printing more stuff, you should be able to do some variations of the following in the console: dumptable(TheWorld) --You can replace "TheWorld" here for anything you find interesting dumptable(_G) --This will be massive, a lot of random stuff to sift through dumptable(getmetatable(TheWorld)) --In case you're really curious 2 Link to comment Share on other sites More sharing options...
Hornete Posted February 26, 2023 Author Share Posted February 26, 2023 12 hours ago, rawii22 said: For anyone who wants to be able to do this on their own computer, try a snippet like the following from inside a mod: for k, v in pairs(GLOBAL) do if string.match(k, "^The.*") then print(k) GLOBAL.dumptable(GLOBAL.getmetatable(v)) end end This is what my brother and I have used to get the functions belonging to the "The" objects. We like to call them the 'The'-functions . For printing more stuff, you should be able to do some variations of the following in the console: dumptable(TheWorld) --You can replace "TheWorld" here for anything you find interesting dumptable(_G) --This will be massive, a lot of random stuff to sift through dumptable(getmetatable(TheWorld)) --In case you're really curious If you really want to make this fancy I would suggest using Lua's 'debug.getinfo' function to single out C++ functions only (It takes a function as a parameter and returns a table of info, the 'what' field in the returned table tells you if it's a Lua or C function). Currently your code only takes into account objects that start with 'The', and dismisses that not every 'The' function is defined/initialized in the engine 1 1 Link to comment Share on other sites More sharing options...
rawii22 Posted February 26, 2023 Share Posted February 26, 2023 (edited) 4 hours ago, Hornete said: If you really want to make this fancy I would suggest using Lua's 'debug.getinfo' function to single out C++ functions only (It takes a function as a parameter and returns a table of info, the 'what' field in the returned table tells you if it's a Lua or C function). Currently your code only takes into account objects that start with 'The', and dismisses that not every 'The' function is defined/initialized in the engine I'll definitely have to try that out! I didn't know about that... Out of curiosity, which functions are you referring to when you say "not every 'The' function is defined/initialized in the engine"? I haven't come across one that was defined in the Lua side... (unless I just can't remember one right now...) (Also yeah, I know my code is limited to the "The" objects, but that's just 'cause that's what my brother and I needed at the time. We were mostly tinkering with stuff relating to TheNet ) Edited February 26, 2023 by rawii22 Link to comment Share on other sites More sharing options...
Hornete Posted February 26, 2023 Author Share Posted February 26, 2023 2 minutes ago, rawii22 said: I'll definitely have to try that out! I didn't know about that... Out of curiosity, which functions are you referring to when you say "not every 'The' function is defined/initialized in the engine"? I haven't come across one that was defined in the Lua side... (unless I just can't remember one right now...) 'TheCamera', 'TheFrontEnd', 'TheInput' come to mind for me. Link to comment Share on other sites More sharing options...
rawii22 Posted February 27, 2023 Share Posted February 27, 2023 4 hours ago, Hornete said: 'TheCamera', 'TheFrontEnd', 'TheInput' come to mind for me. Ahh! I see, those are the ones that I didn't see in my own 'The' function list. I was wondering why they didn't show up using my script. I guess I never knew they existed until recently because I didn't need to mess with them. I'll look into the files to learn more about them! 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