aliens

Show Posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Topics - Tiny Wisdom

Pages: [1]
1
OXCE Wishlists / Tiny Wisdom's wishlist
« on: July 18, 2022, 10:08:30 pm »
On my recent post introducing Snug Assortment of Little Things (SALT) to the the Work In Progress sub-forum I mentioned that some rulesets and script hooks were missing in order for it to be considered 100% feature-complete.

The scripts have already been addressed here:
The rulesets are as follows:
  • Remove the INFO button completely (not the same as hidePediaInfoButton & oxceDisableStatsForNerds).

    Rationale: The INFO button still shows up even if hidePediaInfoButton and oxceDisableStatsForNerds are used (it'll just say it's disabled).

  • Add requiresSell and requiresSellBaseFunc.

    Rationale: We already have requiresBuy and requiresBuyBaseFunc. It makes logical sense to have the opposite action.

    Example: Prevent the selling of Snakemen and Chryssalids without research. Said research would allow them to be sold (while possibly triggering related missions) or properly disposed of (at cost).

  • Require a facility to be built adjacent to another facility (not the same as requiresBaseFunc).

    Rationale: For facilities that directly require another facility to operate.

    Example: Alien Containment facilities must be built adjacent to Alien Life Support Systems facilities.

  • Allow a facility to change the services provided by another facility.

    Rationale: For facilities with multiple operating modes.

    Example: General Stores built by itself provide 50 storage but Warehouses (which also provide storage) can set the storage provided by adjacent General Stores to zero (0).

  • [DONE] Require a Commander for the final mission.

    Rationale: The ultimate craft is required, why not the ultimate soldier?

    Example: If the difficulty of acquiring a Commander is increased (soldiersPerCommander), not requiring said Commander for the final mission makes the increase in difficulty pointless.

  • Require physically transferring loot from mission sites.

    Rationale: Loot magically teleports back to the base, let's introduce logistics giving another reason to have X-COM crash sites (e.g. aliens can shoot down crafts carrying loot).

    Example: When a crash site/alien base is cleared, whatever loot can fit is transported back with the craft and automatically deposited into the base stores upon arrival. Whatever loot can't fit is left behind to be picked up later by a craft with carry capacity (changing the crash site/alien base icon to a collection site icon).

  • [REJECTED] Add X-COM crash sites.

    Rationale: The alien capacity to 100% destroy X-COM craft is a bit suspect.

    Example: In a world based on scarcity where aliens actively hunt X-COM craft (which may or may not be carrying loot), being able to recover some of your losses might be a matter of balance.

    Reference: [WIP] [Suggestion] Solar's wishlist

  • Add alien rescue missions/ambushes.

    Rationale: Aliens crash but don't signal for help?

    Example: When an alien crash site is created, one alien ships within a certain radius of the crash site is randomly selected to land and provide support. This could be used as a way to penalize taking too many turns.

  • [REJECTED] Allow manual control of base defenses.

    Rationale: Pew-pew.

    Reference: Base Defense Mechanics
P.S. Note, I have marked the items that were previously rejected in the past. I am only mentioning them again to "add my vote".

P.P.S. Also, this isn't quite a request to add to add these features as there's probably a reason why some things aren't possible, but, just in case...

2
What is Snug Assortment of Little Things?

Also known as OpenXcom Extended with SALT.

Snug Assortment of Little Things is a lightweight yet comprehensive canon-friendly overhaul of the original experience.

In addition to at least 1 global option and 33 fixed user options, it consists of:

Spoiler:
5 first-party mods by OpenXcom
32 second-party mods by Snug Assortment of Little Things
14 third-party mods by Various Authors
Why is it unreleased?

While it's 99% done and playable, the addition of a few rulesets and script hooks are needed for the remaining 1%.

That said, I am not quite sure it's releasable. More specifically, I need clarification on licensing:

  • OpenXcom and derivatives are under GPL v3.

    If I package Snug Assortment of Little Things like X-Piratez, adding a user folder for the master mod, is the entire package now considered a derivative and under GPL v3?

    Note, I would not be compiling OpenXcom at all, just adding a user folder.
  • (Once again) OpenXcom and derivatives are under GPL v3.

    Are included mods like Aliens_Pick_Up_Weapons and Limit_Craft_Item_Capacities under GPL v3?
  • Snug Assortment of Little Things is a master mod.

    To make sure everything meshes, required first-party and third-party mods are bundled with appropriately adjusted metadata.yml files. There is a clear distinction between these mods in the file hierarchy:

    Spoiler:
    %HOMEPATH%\Documents\OpenXcom\mods\
    ├───[OpenXcom]_Aliens_Pick_Up_Weapons
    ├───[OpenXcom]_Limit_Craft_Item_Capacities
    ├───[OpenXcom]_TFTD_Damage
    ├───[OpenXcom]_UFOextender_Gun_Melee
    ├───[OpenXcom]_UFOextender_Psionic_Line_Of_Fire
    ├───[SALT]_Snug_Assortment_of_Little_Things
    │   ├───LastRuleset
    │   │   ├───Purchasing_and_Building_are_More_Complex
    │   │   └───Research_and_Manufacturing_are_More_Complex
    │   └───Ruleset
    │       ├───Aliens_Base_Invaders_Understand_Futility
    │       ├───Alien_Containment_Requires_Research
    │       ├───Alien_Items_Do_Not_Get_Phased_Out
    │       ├───Alien_Pacts_Are_Not_Forever
    │       ├───Armor_Conforms_to_Ufopedia
    │       ├───Base_Defense_Systems
    │       ├───Base_Defense_System_Response_Make_a_Difference
    │       ├───Country_Funding_Equalized
    │       ├───Coveralls_Described_in_Ufopedia
    │       ├───Craft_Speeds
    │       ├───Craft_Weapons_Balanced_on_a_Linear_Distribution
    │       ├───Difficulty_Level_Affects_Sell_Prices
    │       ├───Difficulty_Level_Starts_on_Veteran
    │       ├───Geoscape_Expanded
    │       ├───Handheld_Elerium-Based_Weapons_are_Heavier
    │       ├───Handling_Two-Handed_Weapons_With_One_Hand_is_Heavily_Penalized
    │       ├───Laser_Weapons_Balanced_Againist_Plasma
    │       ├───Plasma_Beams_Consume_Elerium
    │       ├───Promotions_Cost_Money
    │       ├───Promotions_Take_Time
    │       ├───Psionic_Skill_Affects_Devices_and_Weapons
    │       ├───Rank_Affects_the_Power_of_Handheld_Weapons
    │       ├───Region_Costs_Increased
    │       ├───Sectopods_Use_Lasers
    │       ├───Solider_Stats_Balanced_on_a_Linear_Distribution
    │       ├───Standard_Rockets_Shots_and_Weights_Adjusted
    │       ├───Standard_Weapons_Shots_Adjusted
    │       ├───Start_a_Few_Months_Earlier
    │       ├───Stunning_Affects_Morale
    │       └───UFO_Detection_Systems
    ├───[Various]_Accuracy_Penalty_When_Flying_by_Kzer-Za
    ├───[Various]_Armed_Civilians_by_Hobbes
    ├───[Various]_Celebrate_Diversity_by_Solarius_Scorch
    ├───[Various]_Chryssalid_Zombification_Doesn't_Always_Succeed_by_Dioxine
    ├───[Various]_Expanded_Terror_Reworked_by_hellrazor
    ├───[Various]_Expanded_Ubase_Reworked_by_hellrazor
    ├───[Various]_Extra_Explosions_by_Starving_Poet_&_Arathanor
    ├───[Various]_Improved_Hand_Objects_by_IvanDogovich
    ├───[Various]_Moar_Zer0_by_Solarius_Scorch
    ├───[Various]_Outworldy_Physics_by_Hobbes
    ├───[Various]_Self_Medkit_Use_by_N7Kopper
    ├───[Various]_UFOpaedia-friendly_Celatid_by_Kzer-Za
    ├───[Various]_UFO_Vanilla_Variants_by_hellrazor
    └───[Various]_Woundable_Reaper_by_Kzer-Za
    The mods folder is a meta-project/meta-repository (not a real project/repository as you cannot really license empty files) as such, the original license of each individual mod is respected:

    • OpenXcom mods under GPL v3 (??)
    • SALT project under ?? (I haven't decided yet....)
    • Various mods under ?? (Not all of them have licenses and would require some followups...)

    right?
Spoiler alert: I know anyone who replies regarding this section is probably not a copyright lawyer and that I should seek an actual lawyer for legal advice. I am just asking to gauge the waters and if it's too much of a hassle... oh well.

Forget the legalities for a bit, give us some details about the mod!

First-party mods are self-explanatory and are what I believe should objectively be in the base game.

Third-party mods are self-explanatory and are what I believe should subjectively be in the base game.

Second-party mods are more biased in intentions and could benefit from explanations. The emphasis is 99% on each mod being "a lightweight yet comprehensive canon-friendly overhaul". A summary of what was done is included at the top of each mod's metadata.yml file. For instance...

Craft_Speeds:

Spoiler:
Code: [Select]
#
# In the base game (xcom1) the Lightning is slower than the Firestorm,
# giving yet another reason not to use it.
#
# We flip the speeds and adjust the acceleration values shown in UFOpaedia
# (the latter which also affects the disengagement speed in piloted crafts).



Craft_Weapons_Balanced_on_a_Linear_Distribution:

Spoiler:
Code: [Select]
#
# In the base game (xcom1) some craft weapons either do too little damage
# or too much.
#
# We balance damage and accuracy on a linear distribution
# with increased minimums and decreased maximums,
# however, we peg range to UFO size.
#
# We reduce reload times where continuous fire is expected.
#
# We split craft weapons into types to delay planned obsolescence.
#
# We give every craft a built-in cannon as a measure of last resort.











I can also do likewise for the other second-party mods (as I'd like general feedback on the balance decisions I made) but does anyone even read these walls of texts?

References:

3
Subject: [y-script] How to detect when BattleActions are used by BattleTypes and then edit BattleUnit (regardless of outcome)?

Examples:

Example #1: If Aimed Shot is used by Heavy Laser, decrease attacker Stamina/Energy by 50% even if the shot misses or does 0 damage.

Example #2: If Panic Unit is used by Psi-Amp, decrease attacker Health by 50% even if the attempt fails.

Problems:

There isn't a script hook that directly does this.

hitUnit: Requires a unit to actually be hit. Even if I compromised here and required hits, Psi-Amps (for instance) don't trigger this event. Unless there's a way to simulate a hit?

awardExperience: Doesn't actually trigger until the end of the mission. Even if I compromised here and required successful outcomes, the event triggers too late.

newTurnItem: Can't detect when an item is used or change item use costs.

skillUseUnit: Items aren't skills. Unless I can hide the default item actions and replace them with skills that do the exact same thing (but then the skill menu would have to be used and that'd be misleading since they aren't actually psi skills)?

tryPsiAttackUnit: This gets Example #2 the furthest, however, you cannot edit the BattleUnit because attacker and victim are both ptr and not ptre (this is a trivial change at the code level afaik and I would like this change to be made, but it doesn't solve Example #1).

Solutions:

Other than changing things at the code level, I'm out of ideas.

I don't want to roll my own binaries so hopefully I missed an outside-the-box solution?

Pages: [1]