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 - Avarlia

Pages: [1]
1
Help / Need help with soldier transformation into playable aliens.
« on: August 19, 2019, 01:22:29 am »
Hi there!

Dug up X-Com: UFO defense yesterday and thought: Why not add aliens to your team. Maybe renegade aliens?

This turned into, "why not transforming Soldiers into Alien Soldiers?" (Which seemed easier at first glance)

I've looked into this: https://openxcom.org/forum/index.php/topic,6331.0.html

And came up with this:

Code: [Select]
soldierTransformation:
  - name: STR_Create_Alien
    listOrder: 1
    producedSoldierType: STR_REPTOID
    producedSoldierArmor: REPTOID_ARMOR0
    keepSoldierArmor: false
    createsClone: false
    needsCorpseRecovered: false
    allowsDeadSoldiers: true
    allowsLiveSoldiers: true
    allowsWoundedSoldiers: true  # adding these guys too, if we want to sack them
    allowedSoldierTypes:
      - STR_SOLDIER
    forbiddenPreviousTransformations:
      - STR_Create_Alien
    requiredMinStats: # The minimum stats a soldier must have in order to be eligible for this project, defaults to all 0 so any soldier is eligible
      tu: 0
      stamina: 0
      health: 0
      bravery: 0
      reactions: 0
      firing: 0
      throwing: 0
      strength: 0
      psiStrength: 0
      psiSkill: 0
      melee: 0
    requiredItems: # A list of items that must be consumed from the base's stores in which you start this project, the default empty list means no items are used
      #STR_REPTOID_CORPSE
    cost: 50000 # The cost of the project in dollars
    transferTime: 0 # Soldiers can be put in a transfer back to the base where they started if this parameter is greater than the default of 0 hours. New clones or resurrected soldiers are automatically given a transfer to the base with a default of 24 hours.
    recoveryTime: 0 # The amount of wound recovery time a soldier is given after this project completes and the transfer, if any, is completed. The default value is 0 days.
    flatOverallStatChange: # A direct change to the soldier's overall stats when undergoing this project, can be positive or negative - tu: 5 means the soldier will gain 5 max time units, while tu: -5 means the soldier will lose 5 max time units. The default of 0 means no change.
      tu: 0
      stamina: 0
      health: 0
      bravery: 0
      reactions: 0
      firing: 0
      throwing: 0
      strength: 0
      psiStrength: 0
      psiSkill: 0
      melee: 0
    percentOverallStatChange: # A percent change to the soldier's overall stats when undergoing this project, can be positive or negative - tu: 5 means the soldier will gain an extra 5% of their max time units, while tu: -5 means the soldier will lose 5% of their max time units. The default of 0 means no change.
      tu: 0
      stamina: 0
      health: 0
      bravery: 0
      reactions: 0
      firing: 0
      throwing: 0
      strength: 0
      psiStrength: 0
      psiSkill: 0
      melee: 0
    percentGainedStatChange: # A percent change to the soldier's stats, but instead of taking a portion of the overall stats, this only applies to the stats they've trained up from their initial values, can be positive or negative - firing: -100 means the soldier will lose all of the firing accuracy they trained since joining, while firing: 10 means they gain 10% of the amount they trained over their initial values. The default of 0 means no change.
      tu: 0
      stamina: 0
      health: 0
      bravery: 0
      reactions: 0
      firing: 0
      throwing: 0
      strength: 0
      psiStrength: 0
      psiSkill: 0
      melee: 0
    useRandomStats: false
    lowerBoundAtMinStats: true
    upperBoundAtMaxStats: false
    upperBoundAtStatCaps: true
extraStrings:
  - type: en-US
    strings:
      STR_Create_Alien: "Create Alien"

I hoped it would be easy (again) and that this (above) would work, of course it didn't work...

Code: [Select]
[18-08-2019_23-47-02] [FATAL] A fatal error has occurred: Segmentation fault.
[18-08-2019_23-47-03] [FATAL] 0x585c30 OpenXcom::CrossPlatform::stackTrace(void*)
[18-08-2019_23-47-03] [FATAL] 0x586fb0 OpenXcom::CrossPlatform::crashDump(void*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)
[18-08-2019_23-47-03] [FATAL] 0x41c850 signalLogger(int)
[18-08-2019_23-47-03] [FATAL] 0x9192b0 OpenXcom::UfopaediaStartState::think()
[18-08-2019_23-47-03] [FATAL] 0x7ff94990c5e0 _C_specific_handler
[18-08-2019_23-47-03] [FATAL] 0x7ff949921080 _chkstk
[18-08-2019_23-47-03] [FATAL] 0x7ff9498e9e90 RtlRaiseException
[18-08-2019_23-47-03] [FATAL] 0x7ff94991fde0 KiUserExceptionDispatcher
[18-08-2019_23-47-03] [FATAL] 0x7ae840 OpenXcom::RuleSoldier::getMinStats() const
[18-08-2019_23-47-03] [FATAL] 0x89d060 OpenXcom::Soldier::calculateStatChanges(OpenXcom::Mod const*, OpenXcom::RuleSoldierTransformation*, OpenXcom::Soldier*)
[18-08-2019_23-47-03] [FATAL] 0x4a4c70 OpenXcom::SoldierTransformationState::initTransformationData()
[18-08-2019_23-47-03] [FATAL] 0x4a7ad0 OpenXcom::SoldierTransformationState::SoldierTransformationState(OpenXcom::RuleSoldierTransformation*, OpenXcom::Base*, OpenXcom::Soldier*, std::vector<OpenXcom::Soldier*, std::allocator<OpenXcom::Soldier*> >*)
[18-08-2019_23-47-03] [FATAL] 0x49f830 OpenXcom::SoldiersState::lstSoldiersClick(OpenXcom::Action*)
[18-08-2019_23-47-03] [FATAL] 0x6d5c00 OpenXcom::TextList::mouseClick(OpenXcom::Action*, OpenXcom::State*)
[18-08-2019_23-47-03] [FATAL] 0x5a18a0 OpenXcom::InteractiveSurface::handle(OpenXcom::Action*, OpenXcom::State*)
[18-08-2019_23-47-03] [FATAL] 0x6d5900 OpenXcom::TextList::handle(OpenXcom::Action*, OpenXcom::State*)
[18-08-2019_23-47-03] [FATAL] 0x657c90 OpenXcom::State::handle(OpenXcom::Action*)
[18-08-2019_23-47-03] [FATAL] 0x59ee70 OpenXcom::Game::run()
[18-08-2019_23-47-03] [FATAL] 0x41c8c0 SDL_main
[18-08-2019_23-47-03] [FATAL] 0x91adc0 console_main
[18-08-2019_23-47-03] [FATAL] 0x91aee0 WinMain
[18-08-2019_23-47-03] [FATAL] ??
[18-08-2019_23-47-03] [FATAL] ??
[18-08-2019_23-47-03] [FATAL] 0x7ff947e47bc0 BaseThreadInitThunk
[18-08-2019_23-47-03] [FATAL] 0x7ff9498ece50 RtlUserThreadStart
[18-08-2019_23-47-05] [FATAL] OpenXcom has crashed: Segmentation fault.

So, I'm not really sure what to do and appreciate any help/hints

I did look for similar threads, but didn't find anything satisfying...

Thank you!

Side node: If recruiting playable aliens is easier than transforming soldiers into aliens, I will take that too. Seriously thou I have no idea where even to start with this error.

Pages: [1]