@wayward/types 2.15.4-beta.dev.20260408.1 → 2.15.4-beta.dev.20260410.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (23) hide show
  1. package/definitions/game/game/doodad/IDoodad.d.ts +12 -3
  2. package/definitions/game/game/entity/Entity.d.ts +1 -0
  3. package/definitions/game/game/entity/skill/SkillManager.d.ts +1 -0
  4. package/definitions/game/game/inspection/infoProviders/doodad/DoodadFireSource.d.ts +20 -0
  5. package/definitions/game/game/milestones/MilestoneManager.d.ts +3 -0
  6. package/definitions/game/language/dictionary/Message.d.ts +459 -458
  7. package/definitions/game/mod/ModInformation.d.ts +2 -0
  8. package/definitions/game/mod/ModManager.d.ts +2 -0
  9. package/definitions/game/save/upgrade/versions/beta2.15.4/beta2.15.4-dev20260409.d.ts +12 -0
  10. package/definitions/game/save/upgrade/versions/beta2.15.4/beta2.15.4.d.ts +12 -0
  11. package/definitions/game/ui/Ui.d.ts +0 -1
  12. package/definitions/game/ui/input/Bindable.d.ts +7 -8
  13. package/definitions/game/ui/screen/screens/game/static/Stats.d.ts +1 -0
  14. package/definitions/game/ui/screen/screens/game/static/stats/component/StatComponent.d.ts +1 -0
  15. package/definitions/game/ui/screen/screens/menu/component/RealTimeTickSpeedRow.d.ts +18 -0
  16. package/definitions/game/ui/screen/screens/menu/menus/mods/ModRow.d.ts +2 -0
  17. package/definitions/game/ui/screen/screens/menu/menus/newgame/TabMultiplayer.d.ts +3 -1
  18. package/definitions/game/ui/screen/screens/menu/menus/pause/GameSettingsMenu.d.ts +2 -2
  19. package/definitions/test/suite/unitTests/game/game/milestones/MilestoneManager.spec.d.ts +13 -0
  20. package/definitions/test/suite/unitTests/game/mod/ModInformation.spec.d.ts +13 -0
  21. package/definitions/test/suite/unitTests/game/mod/ModManager.spec.d.ts +13 -0
  22. package/definitions/test/suite/unitTests/game/ui/screen/screens/menu/menus/mods/ModRow.spec.d.ts +13 -0
  23. package/package.json +1 -1
@@ -545,7 +545,10 @@ export declare enum DoodadTypeGroup {
545
545
  Anvil = -9994,
546
546
  Well = -9993,
547
547
  Hitch = -9992,
548
- GatheredPlant = -9991,// Special case for plants that need to be gathered to get the "main resource"
548
+ /**
549
+ * Special case for plants that need to be gathered to get the "main resource"
550
+ */
551
+ GatheredPlant = -9991,
549
552
  FireSource = -9990,
550
553
  LitTorch = -9989,
551
554
  LightDevice = -9988,
@@ -553,7 +556,10 @@ export declare enum DoodadTypeGroup {
553
556
  * This is set for lit torches, candles, and jack-o'-lanterns specifically
554
557
  */
555
558
  LightSource = -9987,
556
- LitStructure = -9986,// Prevents pick up while lit
559
+ /**
560
+ * Prevents pick up while lit
561
+ */
562
+ LitStructure = -9986,
557
563
  LockedChest = -9985,
558
564
  Scarecrow = -9984,
559
565
  Lighthouse = -9983,
@@ -563,9 +569,12 @@ export declare enum DoodadTypeGroup {
563
569
  Wheelbarrow = -9979,
564
570
  Altar = -9978,
565
571
  OpenFireSource = -9977,
566
- Unused = -9976,// <----------- Use this one
572
+ ResetsDecayWhenLit = -9976,
567
573
  ContainsFuelSource = -9975,
568
574
  CurseWard = -9974,
575
+ /**
576
+ * Used for plants with snow (so they don't spawn/spread/generate with snow already on them)
577
+ */
569
578
  CannotBeSpread = -9973
570
579
  }
571
580
  export declare enum DoorOrientation {
@@ -126,6 +126,7 @@ export default abstract class Entity<DescriptionType = unknown, TypeType extends
126
126
  * This is called clientside the first time the renderer seens the entity
127
127
  */
128
128
  onFirstRender(renderer: Renderer): void;
129
+ computeLights(): void;
129
130
  getCurrentMarker(): Readonly<MarkerDescription> | undefined;
130
131
  setMarkerIconHidden(hidden: boolean): void;
131
132
  /**
@@ -86,6 +86,7 @@ export default class SkillManager {
86
86
  setCore(skill: SkillType, value: number): this;
87
87
  setBonus(skill: SkillType, bonus: number): this;
88
88
  setBonuses(bonuses: Map<SkillType, number>): this;
89
+ reset(): this;
89
90
  /**
90
91
  * @returns Whether the skill of this human is more than or equal to a random number between `0` and the value of `check`.
91
92
  */
@@ -0,0 +1,20 @@
1
+ /*!
2
+ * Copyright 2011-2025 Unlok
3
+ * https://www.unlok.ca
4
+ *
5
+ * Credits & Thanks:
6
+ * https://www.unlok.ca/credits-thanks/
7
+ *
8
+ * Wayward is a copyrighted and licensed work. Modification and/or distribution of any source files is prohibited. If you wish to modify the game in any way, please refer to the modding guide:
9
+ * https://github.com/WaywardGame/types/wiki
10
+ */
11
+ import type Doodad from "@wayward/game/game/doodad/Doodad";
12
+ import { InfoProvider } from "@wayward/game/game/inspection/InfoProvider";
13
+ import type TranslationImpl from "@wayward/game/language/impl/TranslationImpl";
14
+ export default class DoodadFireSource extends InfoProvider {
15
+ private readonly doodad;
16
+ static get(doodad: Doodad): DoodadFireSource | undefined;
17
+ constructor(doodad: Doodad);
18
+ getClass(): string[];
19
+ get(): TranslationImpl;
20
+ }
@@ -16,6 +16,7 @@ import { Milestone, MilestoneVisibility } from "@wayward/game/game/milestones/IM
16
16
  import type MilestoneDefinition from "@wayward/game/game/milestones/MilestoneDefinition";
17
17
  import EventEmitter from "@wayward/utilities/event/EventEmitter";
18
18
  export interface IMilestoneEvents {
19
+ globalDiscoveryChange(bypassed: boolean): void;
19
20
  /**
20
21
  * @param milestone The milestone that is being updated
21
22
  * @param value The new value for this milestone
@@ -51,6 +52,8 @@ export declare class MilestoneManager extends EventEmitter.Host<IMilestoneEvents
51
52
  areUnlockableInMode(mode?: import("../options/IGameOptions").GameMode): boolean;
52
53
  isUnlockableInMode(milestone: Milestone, mode?: import("../options/IGameOptions").GameMode): boolean;
53
54
  reset(milestone?: Milestone): void;
55
+ isDiscoveryBypassed(): boolean;
56
+ setDiscoveryBypassed(bypassed: boolean): void;
54
57
  getDiscovered(milestone: Milestone): Array<string | number> | undefined;
55
58
  getDiscoveredResistsAndVulns(): Map<CreatureType, Set<DamageType>>;
56
59
  getDiscoveredResistsAndVulns(creatureType: CreatureType): Set<DamageType>;
@@ -441,463 +441,464 @@ declare enum Message {
441
441
  FireOverflowed = 429,
442
442
  FireOverflowedFireElemental = 430,
443
443
  FireSource = 431,
444
- FishingWithNoBait = 432,
445
- Floating = 433,
446
- FreshWater = 434,
447
- FromTheStill = 435,
448
- FuelIsRequired = 436,
449
- Gather = 437,
450
- GatherDestroy = 438,
451
- Gathering = 439,
452
- GhostNoActions = 440,
453
- GhostOf = 441,
454
- GoatHasNoMilk = 442,
455
- HackAway = 443,
456
- HandProtectionPreventedInjury = 444,
457
- HandsNotEffectiveFor = 445,
458
- Harvest = 446,
459
- Harvesting = 447,
460
- HasBeenHurtByATrap = 448,
461
- HasDecayed = 449,
462
- HasHitYouForDamage = 450,
463
- HasNoEffect = 451,
464
- HasSetTrapOffNoDamage = 452,
465
- HasSplit = 453,
466
- HelpGrow = 454,
467
- HitchAttempt = 455,
468
- HitchCreature = 456,
469
- HitchDisabled = 457,
470
- HitchInUse = 458,
471
- HitForDamage = 459,
472
- HitYouForDamage = 460,
473
- Hour = 461,
474
- Hours = 462,
475
- HurtHandsHittingWithoutWeapons = 463,
476
- HurtHandsWithNoTool = 464,
477
- IgnitedTorch = 465,
478
- Ineffective = 466,
479
- InjuredFromTrap = 467,
480
- InNeedOfRepair = 468,
481
- InteractingWithHasInjuredYouForDamage = 469,
482
- InvalidContainer = 470,
483
- IsInTheWayOfPickingUp = 471,
484
- ItemFromWater = 472,
485
- JoinedAServer = 473,
486
- Jump = 474,
487
- Killed = 475,
488
- KnowledgeHasIncreased = 476,
489
- LastPlaceYouLeftOff = 477,
490
- LearnedHowToCreate = 478,
491
- LikelyFailures = 479,
492
- Limited = 480,
493
- Lockpick = 481,
494
- MapCompletedNotOfThisArea = 482,
495
- MapDestroyed = 483,
496
- MapNearlyDestroyed = 484,
497
- MapNotOfThisArea = 485,
498
- MaterialsDestroyed = 486,
499
- MessageOfTheDay = 487,
500
- MetabolismSlowed = 488,
501
- Milk = 489,
502
- Mine = 490,
503
- Mining = 491,
504
- MissedWith = 492,
505
- MissedYouWith = 493,
506
- MovedItem = 494,
507
- MovedItemFailed = 495,
508
- MoveOverTrapButDoNotSetOff = 496,
509
- MultiplayerGamePaused = 497,
510
- MultiplayerGameResumed = 498,
511
- MultiplayerPlayerConnected = 499,
512
- MultiplayerPlayerDied = 500,
513
- MultiplayerPlayerDisconnected = 501,
514
- MultiplayerPlayerJoined = 502,
515
- MustBeEquippedToIgnite = 503,
516
- Mysteriously = 504,
517
- NearlyBurnedEquipmentProtectedYou = 505,
518
- NeedToStartTravelsOutside = 506,
519
- NeedWaterForBoat = 507,
520
- NightQuarter1 = 508,
521
- NightQuarter2 = 509,
522
- NightQuarter3 = 510,
523
- NightQuarter4 = 511,
524
- No = 512,
525
- NoAmmunitionForThatWeapon = 513,
526
- NoFireToStokeWith = 514,
527
- NoFishAtLocation = 515,
528
- NoGroundWater = 516,
529
- NoInkToDrawMap = 517,
530
- NoKindlingOrFuelItemsToStartFire = 518,
531
- NoKindlingToStartFire = 519,
532
- NoLongerFeelPainOfBeingBurned = 520,
533
- NoLongerFeelPainOfBeingFrostbitten = 521,
534
- NoLongerHostile = 522,
535
- NoMoreRoomInContainer = 523,
536
- NoPaperToDrawMap = 524,
537
- NoRequiredItemToFireWeapon = 525,
538
- NoReturnWithoutCompletingChallenges = 526,
539
- NoRoomForImprovement = 527,
540
- NoRoomForVehicle = 528,
541
- NoRoomToDrop = 529,
542
- NoRoomToSummon = 530,
543
- NotEnoughPurifiedWaterYet = 531,
544
- NotEnoughTreasureToReturn = 532,
545
- NothingTo = 533,
546
- NothingToGetFromThis = 534,
547
- NothingToHarvestFromThisGather = 535,
548
- NothingToSmother = 536,
549
- NothingUsefulToHarvestYet = 537,
550
- NoTinderToStartFire = 538,
551
- NotSuitableToPlant = 539,
552
- NoWaterInStill = 540,
553
- NPCMerchantNewInventoryDialogue1 = 541,
554
- NPCMerchantNewInventoryDialogue2 = 542,
555
- NPCMerchantNewInventoryDialogue3 = 543,
556
- NPCMerchantNewInventoryDialogue4 = 544,
557
- NPCMerchantStartingDialogue1 = 545,
558
- NPCMerchantStartingDialogue2 = 546,
559
- NPCMerchantStartingDialogue3 = 547,
560
- NPCMerchantStartingDialogue4 = 548,
561
- NPCMerchantWelcomeCredit = 549,
562
- NPCShipperShipToIsland = 550,
563
- NPCShipperStartingDialogue1 = 551,
564
- NPCShipperStartingDialogue2 = 552,
565
- NPCShipperStartingDialogue3 = 553,
566
- NPCShipperStartingDialogue4 = 554,
567
- NPCWelcome = 555,
568
- ObjectIsLocked = 556,
569
- ObjectIsLockedAttemptToBreakIt = 557,
570
- OfferAberrantFail = 558,
571
- OfferAberrantFailButTamed = 559,
572
- Open = 560,
573
- OpenClose = 561,
574
- OpenCollapse = 562,
575
- OverEatingLostStamina = 563,
576
- OverHydratingLostStamina = 564,
577
- Pack = 565,
578
- PaperTurnedToMush = 566,
579
- ParryTheBlow = 567,
580
- PetCreature = 568,
581
- PickAway = 569,
582
- PickUp = 570,
583
- PickUpExcrement = 571,
584
- PickUpTheItem = 572,
585
- Place = 573,
586
- PlacedItem = 574,
587
- PlacedItemFailed = 575,
588
- PlacedOnGround = 576,
589
- PlantedInGround = 577,
590
- PlantGatheredPlant = 578,
591
- PlantGatheringWillDestroy = 579,
592
- PlantHasResourcesToGather = 580,
593
- PlantHasResourcesToHarvest = 581,
594
- PlantHighlyFertile = 582,
595
- Planting = 583,
596
- PlantIsBare = 584,
597
- PlantIsFertile = 585,
598
- PlantIsInStage = 586,
599
- PlantIsNotFertile = 587,
600
- PlantIsSeeding = 588,
601
- PlantNotReadyToHarvest = 589,
602
- PlantReadyToGather = 590,
603
- PlantReadyToGatherNotMaximal = 591,
604
- PlantReadyToHarvest = 592,
605
- PlantReadyToHarvestNotMaximal = 593,
606
- PlayerHas = 594,
607
- PlayerHasCompletedChallengeRequirement = 595,
608
- PlayerHasWonChallenge = 596,
609
- Poisoned = 597,
610
- PoisonedLostHealth = 598,
611
- PoisonWorkedItsCourse = 599,
612
- PouredOut = 600,
613
- PouredOutOnYourself = 601,
614
- PouredWaterIntoStill = 602,
615
- PourHarmedPlant = 603,
616
- PourHealedPlant = 604,
617
- PourHealedPlantFully = 605,
618
- PourHealedPlantPartially = 606,
619
- PourIncreasedFertility = 607,
620
- Pouring = 608,
621
- PourOverWatering = 609,
622
- Prepare = 610,
623
- Prepared = 611,
624
- PreservedFood = 612,
625
- PurifiedWaterInBottom = 613,
626
- PurifiedWaterInStill = 614,
627
- RandomEventsFire = 615,
628
- ReduceLength = 616,
629
- RefusedToBeTamed = 617,
630
- Repair = 618,
631
- RequiredForDisassembly = 619,
632
- RequiresFireToBeLit = 620,
633
- RequiresYouToBeAround = 621,
634
- Resistant = 622,
635
- Rest = 623,
636
- Rested = 624,
637
- Resting = 625,
638
- RestingOnGroundNotEffective = 626,
639
- RestInterrupted = 627,
640
- RestInterruptedDamage = 628,
641
- RestInterruptedDying = 629,
642
- RestInterruptedLoudNoise = 630,
643
- RestInterruptedPain = 631,
644
- RestInterruptedStirring = 632,
645
- RestInterruptedTooCold = 633,
646
- RestInterruptedTooHot = 634,
647
- RestInterruptedUncomfortablyCold = 635,
648
- RestInterruptedUncomfortablyHot = 636,
649
- RestInterruptedWaterPoured = 637,
650
- RestLongTime = 638,
651
- RestModerateTime = 639,
652
- RestOnBoat = 640,
653
- RestShortTime = 641,
654
- RestTime = 642,
655
- ReturnedToCivilization = 643,
656
- ReturningToCivilizationSetOffAgain = 644,
657
- ReturnsToLife = 645,
658
- Reverse = 646,
659
- Ride = 647,
660
- Sailing = 648,
661
- ScrollMaster = 649,
662
- ScrollProvidedNoUsefulInsight = 650,
663
- Seawater = 651,
664
- SeemsToHaveDrawnEnergy = 652,
665
- SetTrapOffButNoDamage = 653,
666
- SetUp = 654,
667
- ShadowInTheWater = 655,
668
- SkillHasRaised = 656,
669
- Skills = 657,
670
- Sleep = 658,
671
- Sleeping = 659,
672
- SleepOnBoat = 660,
673
- Slept = 661,
674
- SlitherSuckerConstricts = 662,
675
- SlitherSuckerFailedToRemove = 663,
676
- SlitherSuckerFailedToRemoveOuch = 664,
677
- SlitherSuckerJumpedOnHead = 665,
678
- SolarStill = 666,
679
- SomethingInTheWayOf = 667,
680
- SomethingInTheWayOfButcherFirst = 668,
681
- SomethingInTheWayOfFire = 669,
682
- SomethingInTheWayOfFishing = 670,
683
- SomethingInTheWayOfPerforming = 671,
684
- SomethingInTheWayOfPlacing = 672,
685
- SomethingInTheWayOfReleasing = 673,
686
- SomethingInTheWayOfSummoning = 674,
687
- SomethingInWayOfClosingDoor = 675,
688
- SoothedTheirBurnInjuries = 676,
689
- SoothedYourBurnInjuries = 677,
690
- SortedByCategory = 678,
691
- SortedByCraftableOnly = 679,
692
- SortedByName = 680,
693
- SortedBySkill = 681,
694
- SortedByUnlockedTime = 682,
695
- StaminaIsFull = 683,
696
- StartedFire = 684,
697
- StartTravelInWater = 685,
698
- StarvingToDeath = 686,
699
- StatAmount = 687,
700
- StatChangeUnknown = 688,
701
- StatGained = 689,
702
- StatIncreasing = 690,
703
- StatLost = 691,
704
- StatQuenched = 692,
705
- StatRegained = 693,
706
- StatSated = 694,
707
- SteppingOn = 695,
708
- Still = 696,
709
- StillHasNoWaterToPurify = 697,
710
- StillNoContainer = 698,
711
- StillTooColdToWork = 699,
712
- StirredUpClawWorm = 700,
713
- StirredUpCreature = 701,
714
- StoppedYourBleeding = 702,
715
- StopUsingVehicle = 703,
716
- SummonedGuardiansByDiggingTreasure = 704,
717
- SummonedGuardiansByLockpicking = 705,
718
- SummonVoidDwellerItem = 706,
719
- SummonVoidDwellerRinging = 707,
720
- SummonVoidDwellerShiver = 708,
721
- SunNotBrightEnoughToStartFire = 709,
722
- SwampWater = 710,
723
- Swimming = 711,
724
- TakenFromGroundBecomeTamed = 712,
725
- TeleportBlocked = 713,
726
- Teleported = 714,
727
- TheirFist = 715,
728
- TheirInventory = 716,
729
- ThePlant = 717,
730
- ThereIsNoContainerOnTheStill = 718,
731
- ThereIsNoSunToStartFire = 719,
732
- ThisCannotBeMilked = 720,
733
- Throw = 721,
734
- ThrownIntoDepths = 722,
735
- ThrownIntoObstacle = 723,
736
- ThrownIntoVoid = 724,
737
- TierGroup = 725,
738
- TileMakeCaveEntranceNearby = 726,
739
- TileMakeCaveEntrancePassable = 727,
740
- TileMakeCaveEntranceVoid = 728,
741
- Till = 729,
742
- Tilling = 730,
743
- TimeIs = 731,
744
- TimeIsDawn = 732,
745
- TimeIsDaytime = 733,
746
- TimeIsDusk = 734,
747
- TimeIsNighttime = 735,
748
- TimeIsSunrise = 736,
749
- TimeIsSunset = 737,
750
- ToFight = 738,
751
- TooDamaged = 739,
752
- TooExhaustedToJump = 740,
753
- Touching = 741,
754
- TrampledFire = 742,
755
- TrampledFireFail = 743,
756
- TrampledFirePartial = 744,
757
- TrampledIntoGround = 745,
758
- TrampleIntoGround = 746,
759
- Trampling = 747,
760
- TransmogrificationNoEffect = 748,
761
- TransmogrificationNotPossible = 749,
762
- Transmogrified = 750,
763
- TrapMissed = 751,
764
- TrapStoppedYou = 752,
765
- Traveling = 753,
766
- Treasure = 754,
767
- TreasureIsBlocked = 755,
768
- UiActionCannotUseInaccessibleItem = 756,
769
- UiActionCannotUseInThisSituation = 757,
770
- UiActionCannotUseNoItemHovered = 758,
771
- UiActionCannotUseNotInRange = 759,
772
- UiActionCannotUseOnThisIsland = 760,
773
- UiActionCannotUseRequiresCreature = 761,
774
- UiActionCannotUseRequiresDoodad = 762,
775
- UiActionCannotUseRequiresItem = 763,
776
- UiActionCannotUseRequiresNPC = 764,
777
- UiActionCannotUseRequiresVehicle = 765,
778
- UiDialogTradeIndicateTradeAlreadyTradedBuyDialogue1 = 766,
779
- UiDialogTradeIndicateTradeAlreadyTradedBuyDialogue2 = 767,
780
- UiDialogTradeIndicateTradeAlreadyTradedBuyDialogue3 = 768,
781
- UiDialogTradeIndicateTradeAlreadyTradedSellDialogue1 = 769,
782
- UiDialogTradeIndicateTradeAlreadyTradedSellDialogue2 = 770,
783
- UiDialogTradeIndicateTradeAlreadyTradedSellDialogue3 = 771,
784
- UiDialogTradeIndicateTradeTooMuchTradesDialogue1 = 772,
785
- UiDialogTradeIndicateTradeTooMuchTradesDialogue2 = 773,
786
- UiDialogTradeIndicateTradeTooMuchTradesDialogue3 = 774,
787
- UnhitchCreature = 775,
788
- Unknown = 776,
789
- Unlimited = 777,
790
- UnlockedChest = 778,
791
- UnpurifiedFreshWater = 779,
792
- UnpurifiedWaterInStill = 780,
793
- UnpurifiedWaterInTop = 781,
794
- Use = 782,
795
- UsingBareHands = 783,
796
- VehicleDefense = 784,
797
- VoidDwellerVanishes = 785,
798
- Vulnerable = 786,
799
- Water = 787,
800
- WaterGathering = 788,
801
- WaterPutOutFire = 789,
802
- WellIsDry = 790,
803
- WellIsFull = 791,
804
- WildGoatRefusedToBeMilked = 792,
805
- WorkingYourselfIntoExhaustion = 793,
806
- WorkingYourselfIntoExhaustionAndDrowning = 794,
807
- WorldContainer = 795,
808
- You = 796,
809
- YouAbsorb = 797,
810
- YouApplied = 798,
811
- YouAreAlready = 799,
812
- YouAte = 800,
813
- YouBeginResting = 801,
814
- YouCannotDoThatYet = 802,
815
- YouCanNowCombatTheTides = 803,
816
- YouCrafted = 804,
817
- YouDoNotFindTreasureYet = 805,
818
- YouDrank = 806,
819
- YouDropTheTorch = 807,
820
- YouEnchant = 808,
821
- YouEquip = 809,
822
- YouExude = 810,
823
- YouExudeSome = 811,
824
- YouExudeSomeReasonConflicting = 812,
825
- YouExudeSomeReasonMax = 813,
826
- YouExudeSomeReasonProperties = 814,
827
- YouFailedTo = 815,
828
- YouFailedToExtinguishedFireFully = 816,
829
- YouFailedToHeal = 817,
830
- YouFailedToHealOther = 818,
831
- YouFire = 819,
832
- YouGathered = 820,
833
- YouHarmTheCreatureByStoking = 821,
834
- YouHarvested = 822,
835
- YouHave = 823,
836
- YouHaveAlreadyLearned = 824,
837
- YouHaveBeenCut = 825,
838
- YouHaveCaged = 826,
839
- YouHaveCommanded = 827,
840
- YouHaveDied = 828,
841
- YouHaveHarmedOther = 829,
842
- YouHaveHealedOther = 830,
843
- YouHaveKilled = 831,
844
- YouHaveNotCommanded = 832,
845
- YouHaveReleased = 833,
846
- YouHaveSummoned = 834,
847
- YouHaveTamed = 835,
848
- YouHaveUncaged = 836,
849
- YouNoticeBecomeEnraged = 837,
850
- YouNoticeDying = 838,
851
- YouNoticeFertilityDecreasing = 839,
852
- YouNoticeFertilityIncreasing = 840,
853
- YouNoticeGrowing = 841,
854
- YouNoticeLavaCooling = 842,
855
- YouNoticeLavaHardening = 843,
856
- YouNoticePerish = 844,
857
- YouNoticePlantDamage = 845,
858
- YouNoticePlantRegenerated = 846,
859
- YouNoticeStumbleInjureItself = 847,
860
- YouNoticeTakeFromGround = 848,
861
- YouNoticeWoundsClosing = 849,
862
- YouOfferedToCreature = 850,
863
- YouOfferedToCreatureRejects = 851,
864
- YouOpen = 852,
865
- YouPacked = 853,
866
- YouPickedUp = 854,
867
- YouRefine = 855,
868
- YouReinforce = 856,
869
- YouRepair = 857,
870
- YouReturnFromCivilizationWith = 858,
871
- YourFist = 859,
872
- YourHands = 860,
873
- YourInventory = 861,
874
- YourIsland = 862,
875
- YouSeeALivingMushroomSpore = 863,
876
- YouSeeASkeletonCollapse = 864,
877
- YouSeeASlimeCombine = 865,
878
- YouSeeAZombieBleeding = 866,
879
- YouSeeCoolDown = 867,
880
- YouSeeDrop = 868,
881
- YouSeeEngulfFire = 869,
882
- YouSeeFireSpread = 870,
883
- YouSeeHelpingPlant = 871,
884
- YouSeeLay = 872,
885
- YouSeeLayingTrap = 873,
886
- YouSeeSpewLava = 874,
887
- YouSeeSpiderSpin = 875,
888
- YouSeeSpitAcid = 876,
889
- YouSeeSpringForth = 877,
890
- YouSeeSummon = 878,
891
- YouSeeSwampFlood = 879,
892
- YouSeeTrampling = 880,
893
- YouSetTheTrapOff = 881,
894
- YouStokeTheCreature = 882,
895
- YouSwapMainHandAndOffHand = 883,
896
- YouThrew = 884,
897
- YouTilled = 885,
898
- YouUnequip = 886,
899
- YouUsed = 887,
900
- YouViewTheItemsOn = 888,
901
- YouWhileTraveling = 889
444
+ FireSourceDescription = 432,
445
+ FishingWithNoBait = 433,
446
+ Floating = 434,
447
+ FreshWater = 435,
448
+ FromTheStill = 436,
449
+ FuelIsRequired = 437,
450
+ Gather = 438,
451
+ GatherDestroy = 439,
452
+ Gathering = 440,
453
+ GhostNoActions = 441,
454
+ GhostOf = 442,
455
+ GoatHasNoMilk = 443,
456
+ HackAway = 444,
457
+ HandProtectionPreventedInjury = 445,
458
+ HandsNotEffectiveFor = 446,
459
+ Harvest = 447,
460
+ Harvesting = 448,
461
+ HasBeenHurtByATrap = 449,
462
+ HasDecayed = 450,
463
+ HasHitYouForDamage = 451,
464
+ HasNoEffect = 452,
465
+ HasSetTrapOffNoDamage = 453,
466
+ HasSplit = 454,
467
+ HelpGrow = 455,
468
+ HitchAttempt = 456,
469
+ HitchCreature = 457,
470
+ HitchDisabled = 458,
471
+ HitchInUse = 459,
472
+ HitForDamage = 460,
473
+ HitYouForDamage = 461,
474
+ Hour = 462,
475
+ Hours = 463,
476
+ HurtHandsHittingWithoutWeapons = 464,
477
+ HurtHandsWithNoTool = 465,
478
+ IgnitedTorch = 466,
479
+ Ineffective = 467,
480
+ InjuredFromTrap = 468,
481
+ InNeedOfRepair = 469,
482
+ InteractingWithHasInjuredYouForDamage = 470,
483
+ InvalidContainer = 471,
484
+ IsInTheWayOfPickingUp = 472,
485
+ ItemFromWater = 473,
486
+ JoinedAServer = 474,
487
+ Jump = 475,
488
+ Killed = 476,
489
+ KnowledgeHasIncreased = 477,
490
+ LastPlaceYouLeftOff = 478,
491
+ LearnedHowToCreate = 479,
492
+ LikelyFailures = 480,
493
+ Limited = 481,
494
+ Lockpick = 482,
495
+ MapCompletedNotOfThisArea = 483,
496
+ MapDestroyed = 484,
497
+ MapNearlyDestroyed = 485,
498
+ MapNotOfThisArea = 486,
499
+ MaterialsDestroyed = 487,
500
+ MessageOfTheDay = 488,
501
+ MetabolismSlowed = 489,
502
+ Milk = 490,
503
+ Mine = 491,
504
+ Mining = 492,
505
+ MissedWith = 493,
506
+ MissedYouWith = 494,
507
+ MovedItem = 495,
508
+ MovedItemFailed = 496,
509
+ MoveOverTrapButDoNotSetOff = 497,
510
+ MultiplayerGamePaused = 498,
511
+ MultiplayerGameResumed = 499,
512
+ MultiplayerPlayerConnected = 500,
513
+ MultiplayerPlayerDied = 501,
514
+ MultiplayerPlayerDisconnected = 502,
515
+ MultiplayerPlayerJoined = 503,
516
+ MustBeEquippedToIgnite = 504,
517
+ Mysteriously = 505,
518
+ NearlyBurnedEquipmentProtectedYou = 506,
519
+ NeedToStartTravelsOutside = 507,
520
+ NeedWaterForBoat = 508,
521
+ NightQuarter1 = 509,
522
+ NightQuarter2 = 510,
523
+ NightQuarter3 = 511,
524
+ NightQuarter4 = 512,
525
+ No = 513,
526
+ NoAmmunitionForThatWeapon = 514,
527
+ NoFireToStokeWith = 515,
528
+ NoFishAtLocation = 516,
529
+ NoGroundWater = 517,
530
+ NoInkToDrawMap = 518,
531
+ NoKindlingOrFuelItemsToStartFire = 519,
532
+ NoKindlingToStartFire = 520,
533
+ NoLongerFeelPainOfBeingBurned = 521,
534
+ NoLongerFeelPainOfBeingFrostbitten = 522,
535
+ NoLongerHostile = 523,
536
+ NoMoreRoomInContainer = 524,
537
+ NoPaperToDrawMap = 525,
538
+ NoRequiredItemToFireWeapon = 526,
539
+ NoReturnWithoutCompletingChallenges = 527,
540
+ NoRoomForImprovement = 528,
541
+ NoRoomForVehicle = 529,
542
+ NoRoomToDrop = 530,
543
+ NoRoomToSummon = 531,
544
+ NotEnoughPurifiedWaterYet = 532,
545
+ NotEnoughTreasureToReturn = 533,
546
+ NothingTo = 534,
547
+ NothingToGetFromThis = 535,
548
+ NothingToHarvestFromThisGather = 536,
549
+ NothingToSmother = 537,
550
+ NothingUsefulToHarvestYet = 538,
551
+ NoTinderToStartFire = 539,
552
+ NotSuitableToPlant = 540,
553
+ NoWaterInStill = 541,
554
+ NPCMerchantNewInventoryDialogue1 = 542,
555
+ NPCMerchantNewInventoryDialogue2 = 543,
556
+ NPCMerchantNewInventoryDialogue3 = 544,
557
+ NPCMerchantNewInventoryDialogue4 = 545,
558
+ NPCMerchantStartingDialogue1 = 546,
559
+ NPCMerchantStartingDialogue2 = 547,
560
+ NPCMerchantStartingDialogue3 = 548,
561
+ NPCMerchantStartingDialogue4 = 549,
562
+ NPCMerchantWelcomeCredit = 550,
563
+ NPCShipperShipToIsland = 551,
564
+ NPCShipperStartingDialogue1 = 552,
565
+ NPCShipperStartingDialogue2 = 553,
566
+ NPCShipperStartingDialogue3 = 554,
567
+ NPCShipperStartingDialogue4 = 555,
568
+ NPCWelcome = 556,
569
+ ObjectIsLocked = 557,
570
+ ObjectIsLockedAttemptToBreakIt = 558,
571
+ OfferAberrantFail = 559,
572
+ OfferAberrantFailButTamed = 560,
573
+ Open = 561,
574
+ OpenClose = 562,
575
+ OpenCollapse = 563,
576
+ OverEatingLostStamina = 564,
577
+ OverHydratingLostStamina = 565,
578
+ Pack = 566,
579
+ PaperTurnedToMush = 567,
580
+ ParryTheBlow = 568,
581
+ PetCreature = 569,
582
+ PickAway = 570,
583
+ PickUp = 571,
584
+ PickUpExcrement = 572,
585
+ PickUpTheItem = 573,
586
+ Place = 574,
587
+ PlacedItem = 575,
588
+ PlacedItemFailed = 576,
589
+ PlacedOnGround = 577,
590
+ PlantedInGround = 578,
591
+ PlantGatheredPlant = 579,
592
+ PlantGatheringWillDestroy = 580,
593
+ PlantHasResourcesToGather = 581,
594
+ PlantHasResourcesToHarvest = 582,
595
+ PlantHighlyFertile = 583,
596
+ Planting = 584,
597
+ PlantIsBare = 585,
598
+ PlantIsFertile = 586,
599
+ PlantIsInStage = 587,
600
+ PlantIsNotFertile = 588,
601
+ PlantIsSeeding = 589,
602
+ PlantNotReadyToHarvest = 590,
603
+ PlantReadyToGather = 591,
604
+ PlantReadyToGatherNotMaximal = 592,
605
+ PlantReadyToHarvest = 593,
606
+ PlantReadyToHarvestNotMaximal = 594,
607
+ PlayerHas = 595,
608
+ PlayerHasCompletedChallengeRequirement = 596,
609
+ PlayerHasWonChallenge = 597,
610
+ Poisoned = 598,
611
+ PoisonedLostHealth = 599,
612
+ PoisonWorkedItsCourse = 600,
613
+ PouredOut = 601,
614
+ PouredOutOnYourself = 602,
615
+ PouredWaterIntoStill = 603,
616
+ PourHarmedPlant = 604,
617
+ PourHealedPlant = 605,
618
+ PourHealedPlantFully = 606,
619
+ PourHealedPlantPartially = 607,
620
+ PourIncreasedFertility = 608,
621
+ Pouring = 609,
622
+ PourOverWatering = 610,
623
+ Prepare = 611,
624
+ Prepared = 612,
625
+ PreservedFood = 613,
626
+ PurifiedWaterInBottom = 614,
627
+ PurifiedWaterInStill = 615,
628
+ RandomEventsFire = 616,
629
+ ReduceLength = 617,
630
+ RefusedToBeTamed = 618,
631
+ Repair = 619,
632
+ RequiredForDisassembly = 620,
633
+ RequiresFireToBeLit = 621,
634
+ RequiresYouToBeAround = 622,
635
+ Resistant = 623,
636
+ Rest = 624,
637
+ Rested = 625,
638
+ Resting = 626,
639
+ RestingOnGroundNotEffective = 627,
640
+ RestInterrupted = 628,
641
+ RestInterruptedDamage = 629,
642
+ RestInterruptedDying = 630,
643
+ RestInterruptedLoudNoise = 631,
644
+ RestInterruptedPain = 632,
645
+ RestInterruptedStirring = 633,
646
+ RestInterruptedTooCold = 634,
647
+ RestInterruptedTooHot = 635,
648
+ RestInterruptedUncomfortablyCold = 636,
649
+ RestInterruptedUncomfortablyHot = 637,
650
+ RestInterruptedWaterPoured = 638,
651
+ RestLongTime = 639,
652
+ RestModerateTime = 640,
653
+ RestOnBoat = 641,
654
+ RestShortTime = 642,
655
+ RestTime = 643,
656
+ ReturnedToCivilization = 644,
657
+ ReturningToCivilizationSetOffAgain = 645,
658
+ ReturnsToLife = 646,
659
+ Reverse = 647,
660
+ Ride = 648,
661
+ Sailing = 649,
662
+ ScrollMaster = 650,
663
+ ScrollProvidedNoUsefulInsight = 651,
664
+ Seawater = 652,
665
+ SeemsToHaveDrawnEnergy = 653,
666
+ SetTrapOffButNoDamage = 654,
667
+ SetUp = 655,
668
+ ShadowInTheWater = 656,
669
+ SkillHasRaised = 657,
670
+ Skills = 658,
671
+ Sleep = 659,
672
+ Sleeping = 660,
673
+ SleepOnBoat = 661,
674
+ Slept = 662,
675
+ SlitherSuckerConstricts = 663,
676
+ SlitherSuckerFailedToRemove = 664,
677
+ SlitherSuckerFailedToRemoveOuch = 665,
678
+ SlitherSuckerJumpedOnHead = 666,
679
+ SolarStill = 667,
680
+ SomethingInTheWayOf = 668,
681
+ SomethingInTheWayOfButcherFirst = 669,
682
+ SomethingInTheWayOfFire = 670,
683
+ SomethingInTheWayOfFishing = 671,
684
+ SomethingInTheWayOfPerforming = 672,
685
+ SomethingInTheWayOfPlacing = 673,
686
+ SomethingInTheWayOfReleasing = 674,
687
+ SomethingInTheWayOfSummoning = 675,
688
+ SomethingInWayOfClosingDoor = 676,
689
+ SoothedTheirBurnInjuries = 677,
690
+ SoothedYourBurnInjuries = 678,
691
+ SortedByCategory = 679,
692
+ SortedByCraftableOnly = 680,
693
+ SortedByName = 681,
694
+ SortedBySkill = 682,
695
+ SortedByUnlockedTime = 683,
696
+ StaminaIsFull = 684,
697
+ StartedFire = 685,
698
+ StartTravelInWater = 686,
699
+ StarvingToDeath = 687,
700
+ StatAmount = 688,
701
+ StatChangeUnknown = 689,
702
+ StatGained = 690,
703
+ StatIncreasing = 691,
704
+ StatLost = 692,
705
+ StatQuenched = 693,
706
+ StatRegained = 694,
707
+ StatSated = 695,
708
+ SteppingOn = 696,
709
+ Still = 697,
710
+ StillHasNoWaterToPurify = 698,
711
+ StillNoContainer = 699,
712
+ StillTooColdToWork = 700,
713
+ StirredUpClawWorm = 701,
714
+ StirredUpCreature = 702,
715
+ StoppedYourBleeding = 703,
716
+ StopUsingVehicle = 704,
717
+ SummonedGuardiansByDiggingTreasure = 705,
718
+ SummonedGuardiansByLockpicking = 706,
719
+ SummonVoidDwellerItem = 707,
720
+ SummonVoidDwellerRinging = 708,
721
+ SummonVoidDwellerShiver = 709,
722
+ SunNotBrightEnoughToStartFire = 710,
723
+ SwampWater = 711,
724
+ Swimming = 712,
725
+ TakenFromGroundBecomeTamed = 713,
726
+ TeleportBlocked = 714,
727
+ Teleported = 715,
728
+ TheirFist = 716,
729
+ TheirInventory = 717,
730
+ ThePlant = 718,
731
+ ThereIsNoContainerOnTheStill = 719,
732
+ ThereIsNoSunToStartFire = 720,
733
+ ThisCannotBeMilked = 721,
734
+ Throw = 722,
735
+ ThrownIntoDepths = 723,
736
+ ThrownIntoObstacle = 724,
737
+ ThrownIntoVoid = 725,
738
+ TierGroup = 726,
739
+ TileMakeCaveEntranceNearby = 727,
740
+ TileMakeCaveEntrancePassable = 728,
741
+ TileMakeCaveEntranceVoid = 729,
742
+ Till = 730,
743
+ Tilling = 731,
744
+ TimeIs = 732,
745
+ TimeIsDawn = 733,
746
+ TimeIsDaytime = 734,
747
+ TimeIsDusk = 735,
748
+ TimeIsNighttime = 736,
749
+ TimeIsSunrise = 737,
750
+ TimeIsSunset = 738,
751
+ ToFight = 739,
752
+ TooDamaged = 740,
753
+ TooExhaustedToJump = 741,
754
+ Touching = 742,
755
+ TrampledFire = 743,
756
+ TrampledFireFail = 744,
757
+ TrampledFirePartial = 745,
758
+ TrampledIntoGround = 746,
759
+ TrampleIntoGround = 747,
760
+ Trampling = 748,
761
+ TransmogrificationNoEffect = 749,
762
+ TransmogrificationNotPossible = 750,
763
+ Transmogrified = 751,
764
+ TrapMissed = 752,
765
+ TrapStoppedYou = 753,
766
+ Traveling = 754,
767
+ Treasure = 755,
768
+ TreasureIsBlocked = 756,
769
+ UiActionCannotUseInaccessibleItem = 757,
770
+ UiActionCannotUseInThisSituation = 758,
771
+ UiActionCannotUseNoItemHovered = 759,
772
+ UiActionCannotUseNotInRange = 760,
773
+ UiActionCannotUseOnThisIsland = 761,
774
+ UiActionCannotUseRequiresCreature = 762,
775
+ UiActionCannotUseRequiresDoodad = 763,
776
+ UiActionCannotUseRequiresItem = 764,
777
+ UiActionCannotUseRequiresNPC = 765,
778
+ UiActionCannotUseRequiresVehicle = 766,
779
+ UiDialogTradeIndicateTradeAlreadyTradedBuyDialogue1 = 767,
780
+ UiDialogTradeIndicateTradeAlreadyTradedBuyDialogue2 = 768,
781
+ UiDialogTradeIndicateTradeAlreadyTradedBuyDialogue3 = 769,
782
+ UiDialogTradeIndicateTradeAlreadyTradedSellDialogue1 = 770,
783
+ UiDialogTradeIndicateTradeAlreadyTradedSellDialogue2 = 771,
784
+ UiDialogTradeIndicateTradeAlreadyTradedSellDialogue3 = 772,
785
+ UiDialogTradeIndicateTradeTooMuchTradesDialogue1 = 773,
786
+ UiDialogTradeIndicateTradeTooMuchTradesDialogue2 = 774,
787
+ UiDialogTradeIndicateTradeTooMuchTradesDialogue3 = 775,
788
+ UnhitchCreature = 776,
789
+ Unknown = 777,
790
+ Unlimited = 778,
791
+ UnlockedChest = 779,
792
+ UnpurifiedFreshWater = 780,
793
+ UnpurifiedWaterInStill = 781,
794
+ UnpurifiedWaterInTop = 782,
795
+ Use = 783,
796
+ UsingBareHands = 784,
797
+ VehicleDefense = 785,
798
+ VoidDwellerVanishes = 786,
799
+ Vulnerable = 787,
800
+ Water = 788,
801
+ WaterGathering = 789,
802
+ WaterPutOutFire = 790,
803
+ WellIsDry = 791,
804
+ WellIsFull = 792,
805
+ WildGoatRefusedToBeMilked = 793,
806
+ WorkingYourselfIntoExhaustion = 794,
807
+ WorkingYourselfIntoExhaustionAndDrowning = 795,
808
+ WorldContainer = 796,
809
+ You = 797,
810
+ YouAbsorb = 798,
811
+ YouApplied = 799,
812
+ YouAreAlready = 800,
813
+ YouAte = 801,
814
+ YouBeginResting = 802,
815
+ YouCannotDoThatYet = 803,
816
+ YouCanNowCombatTheTides = 804,
817
+ YouCrafted = 805,
818
+ YouDoNotFindTreasureYet = 806,
819
+ YouDrank = 807,
820
+ YouDropTheTorch = 808,
821
+ YouEnchant = 809,
822
+ YouEquip = 810,
823
+ YouExude = 811,
824
+ YouExudeSome = 812,
825
+ YouExudeSomeReasonConflicting = 813,
826
+ YouExudeSomeReasonMax = 814,
827
+ YouExudeSomeReasonProperties = 815,
828
+ YouFailedTo = 816,
829
+ YouFailedToExtinguishedFireFully = 817,
830
+ YouFailedToHeal = 818,
831
+ YouFailedToHealOther = 819,
832
+ YouFire = 820,
833
+ YouGathered = 821,
834
+ YouHarmTheCreatureByStoking = 822,
835
+ YouHarvested = 823,
836
+ YouHave = 824,
837
+ YouHaveAlreadyLearned = 825,
838
+ YouHaveBeenCut = 826,
839
+ YouHaveCaged = 827,
840
+ YouHaveCommanded = 828,
841
+ YouHaveDied = 829,
842
+ YouHaveHarmedOther = 830,
843
+ YouHaveHealedOther = 831,
844
+ YouHaveKilled = 832,
845
+ YouHaveNotCommanded = 833,
846
+ YouHaveReleased = 834,
847
+ YouHaveSummoned = 835,
848
+ YouHaveTamed = 836,
849
+ YouHaveUncaged = 837,
850
+ YouNoticeBecomeEnraged = 838,
851
+ YouNoticeDying = 839,
852
+ YouNoticeFertilityDecreasing = 840,
853
+ YouNoticeFertilityIncreasing = 841,
854
+ YouNoticeGrowing = 842,
855
+ YouNoticeLavaCooling = 843,
856
+ YouNoticeLavaHardening = 844,
857
+ YouNoticePerish = 845,
858
+ YouNoticePlantDamage = 846,
859
+ YouNoticePlantRegenerated = 847,
860
+ YouNoticeStumbleInjureItself = 848,
861
+ YouNoticeTakeFromGround = 849,
862
+ YouNoticeWoundsClosing = 850,
863
+ YouOfferedToCreature = 851,
864
+ YouOfferedToCreatureRejects = 852,
865
+ YouOpen = 853,
866
+ YouPacked = 854,
867
+ YouPickedUp = 855,
868
+ YouRefine = 856,
869
+ YouReinforce = 857,
870
+ YouRepair = 858,
871
+ YouReturnFromCivilizationWith = 859,
872
+ YourFist = 860,
873
+ YourHands = 861,
874
+ YourInventory = 862,
875
+ YourIsland = 863,
876
+ YouSeeALivingMushroomSpore = 864,
877
+ YouSeeASkeletonCollapse = 865,
878
+ YouSeeASlimeCombine = 866,
879
+ YouSeeAZombieBleeding = 867,
880
+ YouSeeCoolDown = 868,
881
+ YouSeeDrop = 869,
882
+ YouSeeEngulfFire = 870,
883
+ YouSeeFireSpread = 871,
884
+ YouSeeHelpingPlant = 872,
885
+ YouSeeLay = 873,
886
+ YouSeeLayingTrap = 874,
887
+ YouSeeSpewLava = 875,
888
+ YouSeeSpiderSpin = 876,
889
+ YouSeeSpitAcid = 877,
890
+ YouSeeSpringForth = 878,
891
+ YouSeeSummon = 879,
892
+ YouSeeSwampFlood = 880,
893
+ YouSeeTrampling = 881,
894
+ YouSetTheTrapOff = 882,
895
+ YouStokeTheCreature = 883,
896
+ YouSwapMainHandAndOffHand = 884,
897
+ YouThrew = 885,
898
+ YouTilled = 886,
899
+ YouUnequip = 887,
900
+ YouUsed = 888,
901
+ YouViewTheItemsOn = 889,
902
+ YouWhileTraveling = 890
902
903
  }
903
904
  export default Message;
@@ -75,6 +75,8 @@ export declare class ModInformation implements IModInformation {
75
75
  getFileText(fileName: string): Promise<string | undefined>;
76
76
  get canPublish(): boolean;
77
77
  canLoad(fromModsMenu?: boolean, forMultiplayer?: boolean, count?: number): CanLoadState;
78
+ getActiveDuplicatePrecedenceState(): CanLoadState.LocalModPrecedence | CanLoadState.WorkshopModPrecedence | undefined;
79
+ private static compareDuplicateModPrecedence;
78
80
  save(): void;
79
81
  fillOutWorkshopMod(item?: IWorkshopItem): void;
80
82
  setState(state: ModState, force?: boolean, unloaded?: boolean): Promise<boolean>;
@@ -35,6 +35,8 @@ export default class ModManager extends EventEmitter.Host<IModManagerEvents> {
35
35
  protected setupMods(): Promise<void>;
36
36
  saveAll(): void;
37
37
  setupMod(folderName: string, modType: ModType, initialModState?: ModState): Promise<ModInformation | undefined>;
38
+ private normalizeDuplicateModState;
39
+ private static compareDuplicateModPrecedence;
38
40
  removeMod(mod: ModInformation, uninstall?: boolean): void;
39
41
  /**
40
42
  * Used by pro developers
@@ -0,0 +1,12 @@
1
+ /*!
2
+ * Copyright 2011-2025 Unlok
3
+ * https://www.unlok.ca
4
+ *
5
+ * Credits & Thanks:
6
+ * https://www.unlok.ca/credits-thanks/
7
+ *
8
+ * Wayward is a copyrighted and licensed work. Modification and/or distribution of any source files is prohibited. If you wish to modify the game in any way, please refer to the modding guide:
9
+ * https://github.com/WaywardGame/types/wiki
10
+ */
11
+ declare const _default: import("@wayward/game/save/upgrade/UpgradeVersion").IUpgradeVersionDefinition<unknown>;
12
+ export default _default;
@@ -0,0 +1,12 @@
1
+ /*!
2
+ * Copyright 2011-2025 Unlok
3
+ * https://www.unlok.ca
4
+ *
5
+ * Credits & Thanks:
6
+ * https://www.unlok.ca/credits-thanks/
7
+ *
8
+ * Wayward is a copyrighted and licensed work. Modification and/or distribution of any source files is prohibited. If you wish to modify the game in any way, please refer to the modding guide:
9
+ * https://github.com/WaywardGame/types/wiki
10
+ */
11
+ declare const _default: Record<string, import("@wayward/game/save/upgrade/UpgradeVersion").IUpgradeVersion>;
12
+ export default _default;
@@ -132,7 +132,6 @@ export declare class Ui extends EventEmitter.Host<IUiEvents> {
132
132
  protected onHideStackItemsHint(): void;
133
133
  protected onTooltipsToggle(): boolean;
134
134
  protected onFullscreen(): boolean;
135
- protected onToggleDevMode(): boolean;
136
135
  protected onReload(api: IBindHandlerApi): boolean;
137
136
  protected onReloadWithoutSaving(api: IBindHandlerApi): boolean;
138
137
  protected onToggleDevTools(): boolean;
@@ -254,14 +254,13 @@ declare enum Bindable {
254
254
  MenuSelect = 235,
255
255
  DeveloperInterfaceScaleUp = 236,
256
256
  DeveloperInterfaceScaleDown = 237,
257
- DeveloperToggleDeveloperMode = 238,
258
- DeveloperToggleDeveloperTools = 239,
259
- DeveloperReloadGame = 240,
260
- DeveloperReloadWithoutSavingGame = 241,
261
- DeveloperReloadAndContinueGame = 242,
262
- DeveloperReloadWithoutSavingAndContinueGame = 243,
263
- DeveloperReloadStylesheets = 244,
264
- DeveloperReloadTextures = 245
257
+ DeveloperToggleDeveloperTools = 238,
258
+ DeveloperReloadGame = 239,
259
+ DeveloperReloadWithoutSavingGame = 240,
260
+ DeveloperReloadAndContinueGame = 241,
261
+ DeveloperReloadWithoutSavingAndContinueGame = 242,
262
+ DeveloperReloadStylesheets = 243,
263
+ DeveloperReloadTextures = 244
265
264
  }
266
265
  export default Bindable;
267
266
  export declare enum BindableType {
@@ -40,6 +40,7 @@ export declare class Stats extends Component {
40
40
  setHuman(human: Human): this;
41
41
  private refresh;
42
42
  protected onMilestonesUpdate(): void;
43
+ protected onGlobalDiscoveryChange(): void;
43
44
  /**
44
45
  * Returns an object containing iterables for all stats that exist on the player and have a description,
45
46
  * separated by how a given stat should be displayed
@@ -40,6 +40,7 @@ export default abstract class StatComponent extends Component {
40
40
  private subscribe;
41
41
  refresh(): void;
42
42
  private onUpdateMilestone;
43
+ protected onGlobalDiscoveryChange(): void;
43
44
  protected onRemove(): void;
44
45
  /**
45
46
  * Returns the attached entity's `IStat` for this `StatElement`'s `Stat`.
@@ -0,0 +1,18 @@
1
+ /*!
2
+ * Copyright 2011-2025 Unlok
3
+ * https://www.unlok.ca
4
+ *
5
+ * Credits & Thanks:
6
+ * https://www.unlok.ca/credits-thanks/
7
+ *
8
+ * Wayward is a copyrighted and licensed work. Modification and/or distribution of any source files is prohibited. If you wish to modify the game in any way, please refer to the modding guide:
9
+ * https://github.com/WaywardGame/types/wiki
10
+ */
11
+ import { RangeRow } from "@wayward/game/ui/component/RangeRow";
12
+ export interface IRealTimeTickSpeedRowOptions {
13
+ refreshValue: () => number;
14
+ onFinish?: (value: number) => any;
15
+ }
16
+ export default class RealTimeTickSpeedRow extends RangeRow {
17
+ constructor({ refreshValue, onFinish }: IRealTimeTickSpeedRowOptions);
18
+ }
@@ -25,6 +25,8 @@ export default class ModRow extends CheckButton {
25
25
  shouldDisableButtonButtonsOnUnchecked(): boolean;
26
26
  insertMetadata(into: Component, mod: ModInformation, context: "tooltip" | "menu"): ModMetadataInserter;
27
27
  setEnabled(enabled: boolean, prompts?: boolean, changingAllStates?: boolean): Promise<boolean>;
28
+ private isTogglable;
29
+ private disableConflictingDuplicateMods;
28
30
  protected onToggle(checked: boolean): Promise<void>;
29
31
  private checkDependants;
30
32
  private checkDependencies;
@@ -13,6 +13,7 @@ import ChoiceList, { Choice } from "@wayward/game/ui/component/ChoiceList";
13
13
  import { RangeRow } from "@wayward/game/ui/component/RangeRow";
14
14
  import ChoiceListTurnMode from "@wayward/game/ui/screen/screens/menu/component/ChoiceListTurnModes";
15
15
  import { Tab } from "@wayward/game/ui/screen/screens/menu/component/Menu";
16
+ import RealTimeTickSpeedRow from "@wayward/game/ui/screen/screens/menu/component/RealTimeTickSpeedRow";
16
17
  import type NewGameMenu from "@wayward/game/ui/screen/screens/menu/menus/NewGameMenu";
17
18
  export default class TabMultiplayer extends Tab {
18
19
  readonly choiceSingleplayer: Choice<undefined>;
@@ -27,10 +28,11 @@ export default class TabMultiplayer extends Tab {
27
28
  readonly inputAllowTraveling: CheckButton;
28
29
  readonly inputAllowHardcoreRespawns: CheckButton;
29
30
  readonly maxPlayersRow: RangeRow;
30
- readonly tickSpeedRow: RangeRow;
31
+ readonly tickSpeedRow: RealTimeTickSpeedRow;
31
32
  private readonly menuRef;
32
33
  get menu(): NewGameMenu;
33
34
  constructor(menu: NewGameMenu);
34
35
  private onChangeMultiplayerMode;
35
36
  private onChangeTurnMode;
37
+ private updateTickSpeedRowVisibility;
36
38
  }
@@ -9,12 +9,12 @@
9
9
  * https://github.com/WaywardGame/types/wiki
10
10
  */
11
11
  import Button from "@wayward/game/ui/component/Button";
12
- import { RangeRow } from "@wayward/game/ui/component/RangeRow";
13
12
  import ChoiceListTurnMode from "@wayward/game/ui/screen/screens/menu/component/ChoiceListTurnModes";
14
13
  import Menu from "@wayward/game/ui/screen/screens/menu/component/Menu";
14
+ import RealTimeTickSpeedRow from "@wayward/game/ui/screen/screens/menu/component/RealTimeTickSpeedRow";
15
15
  export default class GameSettingsMenu extends Menu {
16
16
  readonly turnMode: ChoiceListTurnMode;
17
- readonly tickSpeed: RangeRow;
17
+ readonly tickSpeed: RealTimeTickSpeedRow;
18
18
  readonly copyGameSeed: Button;
19
19
  constructor();
20
20
  protected refresh(): void;
@@ -0,0 +1,13 @@
1
+ /*!
2
+ * Copyright 2011-2025 Unlok
3
+ * https://www.unlok.ca
4
+ *
5
+ * Credits & Thanks:
6
+ * https://www.unlok.ca/credits-thanks/
7
+ *
8
+ * Wayward is a copyrighted and licensed work. Modification and/or distribution of any source files is prohibited. If you wish to modify the game in any way, please refer to the modding guide:
9
+ * https://github.com/WaywardGame/types/wiki
10
+ */
11
+ import type { TestConfig } from "@wayward/test";
12
+ import type { IPaths } from "@wayward/test/interfaces";
13
+ export default function (_paths: IPaths, _config: TestConfig): void;
@@ -0,0 +1,13 @@
1
+ /*!
2
+ * Copyright 2011-2025 Unlok
3
+ * https://www.unlok.ca
4
+ *
5
+ * Credits & Thanks:
6
+ * https://www.unlok.ca/credits-thanks/
7
+ *
8
+ * Wayward is a copyrighted and licensed work. Modification and/or distribution of any source files is prohibited. If you wish to modify the game in any way, please refer to the modding guide:
9
+ * https://github.com/WaywardGame/types/wiki
10
+ */
11
+ import type { TestConfig } from "@wayward/test";
12
+ import type { IPaths } from "@wayward/test/interfaces";
13
+ export default function (_paths: IPaths, _config: TestConfig): void;
@@ -0,0 +1,13 @@
1
+ /*!
2
+ * Copyright 2011-2025 Unlok
3
+ * https://www.unlok.ca
4
+ *
5
+ * Credits & Thanks:
6
+ * https://www.unlok.ca/credits-thanks/
7
+ *
8
+ * Wayward is a copyrighted and licensed work. Modification and/or distribution of any source files is prohibited. If you wish to modify the game in any way, please refer to the modding guide:
9
+ * https://github.com/WaywardGame/types/wiki
10
+ */
11
+ import type { TestConfig } from "@wayward/test";
12
+ import type { IPaths } from "@wayward/test/interfaces";
13
+ export default function (_paths: IPaths, _config: TestConfig): void;
@@ -0,0 +1,13 @@
1
+ /*!
2
+ * Copyright 2011-2025 Unlok
3
+ * https://www.unlok.ca
4
+ *
5
+ * Credits & Thanks:
6
+ * https://www.unlok.ca/credits-thanks/
7
+ *
8
+ * Wayward is a copyrighted and licensed work. Modification and/or distribution of any source files is prohibited. If you wish to modify the game in any way, please refer to the modding guide:
9
+ * https://github.com/WaywardGame/types/wiki
10
+ */
11
+ import type { TestConfig } from "@wayward/test";
12
+ import type { IPaths } from "@wayward/test/interfaces";
13
+ export default function (_paths: IPaths, _config: TestConfig): void;
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@wayward/types",
3
3
  "description": "TypeScript declarations for Wayward, used for modding.",
4
- "version": "2.15.4-beta.dev.20260408.1",
4
+ "version": "2.15.4-beta.dev.20260410.1",
5
5
  "license": "MIT",
6
6
  "repository": {
7
7
  "type": "git",