Author Topic: Ethereal's wishlist  (Read 10548 times)

Offline Yankes

  • Commander
  • *****
  • Posts: 3322
    • View Profile
Re: What do I expect from OXCE in the future.
« Reply #15 on: October 28, 2020, 06:02:08 pm »
How?

Offline Ethereal

  • Commander
  • *****
  • Posts: 684
    • View Profile
Re: What do I expect from OXCE in the future.
« Reply #16 on: October 28, 2020, 06:57:20 pm »
There is no effect. Check with yourself. If it works for you, then I'm wrong and I'm a fool. I will try to experiment further. But if you think that I understand scripts, then I assure you that I am not.

Offline Yankes

  • Commander
  • *****
  • Posts: 3322
    • View Profile
Re: What do I expect from OXCE in the future.
« Reply #17 on: October 28, 2020, 07:09:33 pm »
Simply saying "Does not work." do not give me any information what could go wrong, you could simply not enable this mod or innocrecy edited this script or any other thing. You need say what you exactly did and what result is.

Offline Ethereal

  • Commander
  • *****
  • Posts: 684
    • View Profile
Re: What do I expect from OXCE in the future.
« Reply #18 on: October 28, 2020, 09:15:14 pm »
Yes, I made a mistake and installed "reaction_weapon" in the wrong place. I tried again - it works. One problem... I wrote that I also need a silent weapon script. I tried to duplicate it and there I have already set "reaction_weapon" with a new tag "WEAPON_NO_REACT".

Code: [Select]
    reactionUnitReaction:
      - offset: 1
        code: |
          var ptr RuleItem weaponRuleset;
          var int weaponNoReact;

          reaction_weapon.getRuleItem weaponRuleset;
          weaponRuleset.getTag weaponNoReact Tag.WEAPON_NO_REACT;

          if neq 0 weaponNoReact;

            set reaction_chance 0;

          end;

          return reaction_chance;

Where is the mistake?

Offline Yankes

  • Commander
  • *****
  • Posts: 3322
    • View Profile
Re: What do I expect from OXCE in the future.
« Reply #19 on: October 28, 2020, 10:00:19 pm »
In script there are two values that point to different game objects, one is `reaction_weapon` and second one is `weapon`.
`weapon` is battle item that was used in original action that caused reaction
`reaction_weapon` is battle item that is used by unit that is reacting.

This mean this second script need use original weapon that was used and check on it how reactions should behave.
This mean you need have change line to:
Code: [Select]
          weapon.getRuleItem weaponRuleset;
this mean getting item rule set config from that item.

Offline Ethereal

  • Commander
  • *****
  • Posts: 684
    • View Profile
Re: What do I expect from OXCE in the future.
« Reply #20 on: October 28, 2020, 10:15:38 pm »
You obviously don't understand me. Here's what happens in the complex:

Code: [Select]
    reactionUnitReaction:
      - offset: 1
        code: |
          var ptr RuleItem weaponRuleset;
          var int weaponCannotReact;

          weapon.getRuleItem weaponRuleset;
          weaponRuleset.getTag weaponCannotReact Tag.WEAPON_CANNOT_REACT;

          if neq 0 weaponCannotReact;

            set reaction_chance 0;

          end;

          return reaction_chance;

    reactionUnitReaction:
      - offset: 1
        code: |
          var ptr RuleItem weaponRuleset;
          var int weaponNoReact;

          reaction_weapon.getRuleItem weaponRuleset;
          weaponRuleset.getTag weaponNoReact Tag.WEAPON_NO_REACT;

          if neq 0 weaponNoReact;

            set reaction_chance 0;

          end;

          return reaction_chance;

  tags:
    RuleItem:
      WEAPON_CANNOT_REACT: int
      WEAPON_NO_REACT: int

I need both effects.
WEAPON_NO_REACT - doesn't work. Where is the mistake?
« Last Edit: October 28, 2020, 10:17:55 pm by Ethereal »

Offline Yankes

  • Commander
  • *****
  • Posts: 3322
    • View Profile
Re: What do I expect from OXCE in the future.
« Reply #21 on: October 28, 2020, 11:06:13 pm »
In this case you duplicated yaml nodes, you have two with same name: `reactionUnitReaction`, yaml only allow one node with same name.
To fix it you need remove second one `reactionUnitReaction:`

It should look like:
Code: [Select]
    reactionUnitReaction:
      - offset: 1
        code: |
          var ptr RuleItem weaponRuleset;
          var int weaponCannotReact;

          weapon.getRuleItem weaponRuleset;
          weaponRuleset.getTag weaponCannotReact Tag.WEAPON_CANNOT_REACT;

          if neq 0 weaponCannotReact;

            set reaction_chance 0;

          end;

          return reaction_chance;
      - offset: 2
        code: |
          var ptr RuleItem weaponRuleset;
          var int weaponNoReact;

          reaction_weapon.getRuleItem weaponRuleset;
          weaponRuleset.getTag weaponNoReact Tag.WEAPON_NO_REACT;

          if neq 0 weaponNoReact;

            set reaction_chance 0;

          end;

          return reaction_chance;

  tags:
    RuleItem:
      WEAPON_CANNOT_REACT: int
      WEAPON_NO_REACT: int

but you can even reduce it more, because both script could be done at once:
Code: [Select]
    reactionUnitReaction:
      - offset: 1
        code: |
          var ptr RuleItem weaponRuleset;
          var int weaponCannotReact;
          var int weaponNoReact;

          weapon.getRuleItem weaponRuleset;
          weaponRuleset.getTag weaponCannotReact Tag.WEAPON_CANNOT_REACT;

          if neq 0 weaponCannotReact;

            set reaction_chance 0;

          end;


          reaction_weapon.getRuleItem weaponRuleset;
          weaponRuleset.getTag weaponNoReact Tag.WEAPON_NO_REACT;

          if neq 0 weaponNoReact;

            set reaction_chance 0;

          end;

          return reaction_chance;

  tags:
    RuleItem:
      WEAPON_CANNOT_REACT: int
      WEAPON_NO_REACT: int

Offline Ethereal

  • Commander
  • *****
  • Posts: 684
    • View Profile
Re: What do I expect from OXCE in the future.
« Reply #22 on: October 28, 2020, 11:49:49 pm »
but you can even reduce it more, because both script could be done at once:

Thank you for help. Both functions now work. Thank you very much!

Online Meridian

  • Global Moderator
  • Commander
  • *****
  • Posts: 9047
    • View Profile
Re: What do I expect from OXCE in the future.
« Reply #23 on: February 20, 2021, 10:49:36 am »
1) For the convenience of modification, it is better to have a built-in option than a script.
2) I just need different, types of soldiers to have restrictions on the use of certain types of weapons. For example, Snipers cannot use rocket launchers.
5) For cargo ships, so that they can transport UFO components, ship weapons and armor. Everything that the landing ship does not need to transport.
6) I know, but ... it's just a dream.

1/ Use scripts. Ruleset is convenient for you, but it is inconvenient for us. Once script support is added for something, adding hardcoded ruleset attributes is harder to do, harder to maintain and can break existing scripts.

2/ I know it from other games, e.g. Xcom2012, but I think it is total bullshit.

I can hold a sniper rifle,
my grandmother can hold a sniper rifle,
Britney Spears can also hold a sniper rifle.

I am not going to implement limits on who can hold what.

What if I just killed an enemy who had a sniper rifle and want to steal it and abort the mission... I cannot?

I can imagine modding accuracy on specialized weapons for untrained people... so that Britney Spears has only 5% accuracy with a sniper rifle, but I'm not going to disallow her using it.

5/ Same argument. If an item fits into the ship's cargo space, I'm not going to disallow loading it.

Also, why are we even talking about this? If you need to transfer something from one base to another, just send it via Transfers... cargo ships in Xcom are useless and I don't see any reason to implement them.

6/ No.

Online Meridian

  • Global Moderator
  • Commander
  • *****
  • Posts: 9047
    • View Profile
Re: What do I expect from OXCE in the future.
« Reply #24 on: February 20, 2021, 10:50:47 am »
3) And I have 3 interceptors and 4 transports on each base. And more recently, another +cargo ship.
4) I haven't seen such scripts yet. And it's not about restoring morale. Example: Mouton-never panics, only berserk end psi control. Sectoid-never berserk, only panic end psi control. Ethereal-never psi control, only panic or berserk.

3/ Done. Use right mouse click to move a craft up in the list.

4/ Done.

Code: [Select]
units:
  - type: STR_SECTOID_SOLDIER
    canPanic: true
    canBeMindControlled: true
    berserkChance: 0
  - type: STR_MUTON_SOLDIER
    canPanic: true
    canBeMindControlled: true
    berserkChance: 100
  - type: STR_ETHEREAL_SOLDIER
    canPanic: true
    canBeMindControlled: false
    berserkChance: 33

Offline Ethereal

  • Commander
  • *****
  • Posts: 684
    • View Profile
Re: What do I expect from OXCE in the future.
« Reply #25 on: February 20, 2021, 12:32:54 pm »
Also, why are we even talking about this? If you need to transfer something from one base to another, just send it via Transfers... cargo ships in Xcom are useless and I don't see any reason to implement them.

Cargo ships in Xcom Very helpful. Great advantage in speed and cost of delivery. Well, these are the problems of the modmaker, how to implement it correctly. Strictly speaking, in my modification I created such a situation that cargo ships are vital. It looks monstrous and there is a possibility of flying on a mission in a transport with aveational fuel instead of ammunition, but need to be careful.

3/ Done. Use right mouse click to move a craft up in the list.

4/ Done.

Thank you very much for the work!

Offline Ethereal

  • Commander
  • *****
  • Posts: 684
    • View Profile
Re: What do I expect from OXCE in the future.
« Reply #26 on: February 20, 2021, 09:19:56 pm »
2/ I know it from other games, e.g. Xcom2012, but I think it is total bullshit.

I can hold a sniper rifle,
my grandmother can hold a sniper rifle,
Britney Spears can also hold a sniper rifle.

I am not going to implement limits on who can hold what.

What if I just killed an enemy who had a sniper rifle and want to steal it and abort the mission... I cannot?

I can imagine modding accuracy on specialized weapons for untrained people... so that Britney Spears has only 5% accuracy with a sniper rifle, but I'm not going to disallow her using it.

I agree with you. The system of bonuses / penalties in weapons for the type of infantry is much better.

Offline Ethereal

  • Commander
  • *****
  • Posts: 684
    • View Profile
Re: What do I expect from OXCE in the future.
« Reply #27 on: February 27, 2021, 07:16:47 am »
As far as I know, at the moment we do not have tools for regulating the number of simultaneously conducted "alienMissions" and their maximum number. We also know that at the beginning of the month at least 2 missions are generated.

My suggestion is to create such tools. Options that would regulate the maximum and minimum number of missions, depending on the difficulty level and the duration of the game. In addition, RETALIATION missions need to be categorized separately. That is, the total number of missions = regular missions (RESEARCH, HARVEST, ABDUCTION, BASE, TERROR, INFILTRATION, SUPPLY) + monthly generated missions without UFOs + RETALIATION.

Online Meridian

  • Global Moderator
  • Commander
  • *****
  • Posts: 9047
    • View Profile
Re: What do I expect from OXCE in the future.
« Reply #28 on: February 27, 2021, 08:49:47 am »
Number of generated missions at the beginning of the month is fully under your control via mission script.

Provoked retaliations are limited to one per region.

Offline Ethereal

  • Commander
  • *****
  • Posts: 684
    • View Profile
Re: What do I expect from OXCE in the future.
« Reply #29 on: February 27, 2021, 09:09:06 am »
I'm not talking about that. RETALIATIONS are already actively generated, since they depend, basically, on the activity of the player. I looked at the save and often from the entire array of missions, only 2-3 were not RETALIATION.

As a matter of fact, I would like to know exactly the mission generation periods, the number of possible and simultaneously current missions. And how does it depend on the level of difficulty?