Author Topic: [Suggestion] Submodding "composite" data fields by their individual components  (Read 234 times)

Offline Solarius Scorch

  • Global Moderator
  • Commander
  • *****
  • Posts: 11705
  • WE MUST DISSENT
    • View Profile
    • Nocturmal Productions modding studio website
I think the main issue is that there are to many information in the same sentence. It is hard to make clear which part of the sentence is related to which idea.


Since there is no reason for the X-Com psiclone to not be "just as good", I would suggest dropping it to make space for a clearer description of the X-Com psiclones and go for something like:
"we will flood the market with our cracked Psiclones which will be immune to the disruption and, you know, [...]"

I am happy with this version. Thanks again!

I think I need some background, correct me anywhere that I'm wrong. By what I've read in the different exalt articles that mention it, I take it that the aliens are providing intentionally "defective" psiclones that do work or barely work, and require frequent replacement via different means (they create an addiction and/or they breakdown relatively soon, etc). Once XCOM becomes aware of this and understands how the devices work it can then provide a fully functional Psiclone that neither requires replacement nor produces an addiction. Is this the gist of what you're trying to describe in the article?

Not really. EXALT psiclones aren't defective, they do pretty much what they were intended to do. The addiction is likely a side effect, but it was turned into an asset by the EXALT elites who decided to use it to as leverage over their employees (I don't think the idea came from the hybrids, in my view they lack the intellectual potential for something like this). X-Com psiclones aren't really any better or safer, it's the same type of product with similar effects, it just works on a different wavelength or something to avoid getting dampened by X-Com counter-psionic machinery.

Gosh, I suppose some things should be polished, but at the moment I don't know where to start.

EDIT:

I'd like to report a bug I can't solve myself and I hope for some assistance.

When starting the Citizens vs. Monsters mission (STR_MONSTER_VS_MOB_JUNGLE), my briefing screen is broken - see attached. Everything else works just fine.

Attached a save with this mission active.

Offline CrazedHarpooner

  • Captain
  • ***
  • Posts: 97
    • View Profile
For what it's worth, loading the save in XCF 3.4.1 yields these screens. First one from the 'details' button when clicking on the site, 2nd from Osprey landing at the site.

Will check the github repo and see if I can spot anything.

Edit:
Downloaded all the files from the repo for the in progress 3.5 and I am unable to replicate the issue. It appears to be some missing string from the screenshot, but both US english and UK english work fine and it doesn't explain the different background image. Does the openxcom.log file show any issues that could be connected to this?

If you're using a local copy of the rulesets, perhaps check indentantion in alienDeployment.rul, it seems to be using default values for the background (BACK16.SCR) and the description string is using alienDeployment + _BRIEFING when it should be using STR_MONSTER_VS_MOB_BRIEFING as per what I see in the ruleset.
« Last Edit: November 04, 2024, 09:50:47 pm by CrazedHarpooner »

Offline zRrr

  • Sergeant
  • **
  • Posts: 31
    • View Profile
I'd like to report a bug I can't solve myself and I hope for some assistance.

When starting the Citizens vs. Monsters mission (STR_MONSTER_VS_MOB_JUNGLE), my briefing screen is broken - see attached. Everything else works just fine.

You have XComFilesMusic active, and it overrides bunch of mission briefings to replace music, like so:

Code: [Select]
  - type: STR_MONSTER_VS_MOB_JUNGLE
    briefing:
      music: DW_SHOCK
    music:
      - AS_2_AMBIENT_03

This probably replaces entire briefing data, not just music field, so oxce fills in what it can from deployment name and leaves everything else.

Look at dagon manors for same issue.




Offline CrazedHarpooner

  • Captain
  • ***
  • Posts: 97
    • View Profile
Just tested this
Code: [Select]
  - type: STR_MONSTER_VS_MOB_JUNGLE
    briefing:
      music: DW_SHOCK
and yup, that's exactly the cause.

Offline Solarius Scorch

  • Global Moderator
  • Commander
  • *****
  • Posts: 11705
  • WE MUST DISSENT
    • View Profile
    • Nocturmal Productions modding studio website
Well, that's it. Sorry about the trouble, people - I honestly didn't expect this!

I'd think this should not break briefings, but apparently I don't know what I'm talking about.
« Last Edit: November 05, 2024, 07:35:20 pm by Solarius Scorch »

Offline Leosky

  • Sergeant
  • **
  • Posts: 11
    • View Profile
that's a weird cause :o

Offline levi

  • Squaddie
  • *
  • Posts: 1
    • View Profile
I encountered the same issue when trying to make my own music submod. Is there a way to only edit the music field, or do I have to duplicate all the briefing data from the main mod? New to OXC modding.

Online Yankes

  • Commander
  • *****
  • Posts: 3331
    • View Profile
This is caused how yaml-cpp and engine handle this node,
I talked with Meridian about nodes like this and in some future we plan change it to behave as other similar ones,
one big drawback is it will be breaking change as some mods that used it to work correctly (probably unknowingly).

Offline Meridian

  • Global Moderator
  • Commander
  • *****
  • Posts: 9061
    • View Profile
Other examples of composite data fields:
- Position, MissionWave, MissionArea, TrajectoryWaypoint, TerrainCriteria, BriefingData, DeploymentData, ReinforcementsData, ArticleDefinitionRect, RandomizedItem, ExtendedItems, EnvironmentalCondition, VehicleDeploymentData, probably more

Similar issues (different reason):
- Element (in RuleInterface), probably more


This issue will be looked at after the RapidYML migration (https://openxcom.org/forum/index.php?topic=12283.0) is done.
So probably in 2-3 months.


We'll change the "simple" composite fields loading, e.g. Briefing Data.
Some very complicated composite fields may stay as they are, e.g. ReinforcementsData... to be analysed.

PS: this is technically a breaking change, without backwards-compatibility support... just saying that already at the beginning, so that nobody says I didn't warn you