Author Topic: Bugs & Crash Reports  (Read 1751153 times)

Offline Meridian

  • Global Moderator
  • Commander
  • *****
  • Posts: 9091
    • View Profile
Re: Bugs & Crash Reports
« Reply #390 on: April 22, 2016, 12:34:38 pm »
I tried to update corpses to Meridian's new rules, and looks like I f*cked up, changing good corpse definitions into bad ones. This is the reason for the lack of living captures. Damn it. Never-ending trouble with the whole corpses<>captures<>research intertwined web of obscure dependencies :/

OK, maybe I can describe the change as picture, not in words.
Hope it helps.

Really, the only thing you need to do is take 0.98b ruleset and review the "recover: false" flag on corpses.
That's it.


Offline Dioxine

  • Commander
  • *****
  • Posts: 5455
  • punk not dead
    • View Profile
    • Nocturnal Productions
Re: Bugs & Crash Reports
« Reply #391 on: April 22, 2016, 12:53:15 pm »
Thanks. That finally makes sense. So how the hell did I break it? I'm just too tired to try to second-guess. What to add in place of the question marks?

Battlecorpse:
- Recover: false
- Battletype: 11
- Recovery points: ??? (needed or not...?)

Geocorpse:
- Recover: true
- Battletype: ???
- Recovery Points: ???

Offline Meridian

  • Global Moderator
  • Commander
  • *****
  • Posts: 9091
    • View Profile
Re: Bugs & Crash Reports
« Reply #392 on: April 22, 2016, 02:14:00 pm »
First of all, there is no reason to make different battleCorpse and geoCorpse.... unless you want to recover a Muton when killing a Sectoid.

Same item can be used for battleCorpse and geoCorpse in most, if not all cases. Separate geoCorpse was introduced for 2x2 units basically.

If you decide to have them separately anyway, then the following should apply:

Battlecorpse:
- Recover: false/true # doesn't matter, it's not used
- Battletype: 11 # must be set to 11
- Recovery points: 777 # must be bigger than zero

battletype=11 and recovery points>0 is a MUST... otherwise nothing is recovered; dead or alive

Geocorpse:
- Recover: false/true # is now considered for dead aliens (not for live aliens)
- Battletype: ??? # doesn't matter
- Recovery Points: ??? # doesn't matter

Once everything passed geocorpse is recovered for dead aliens.
Battlecorpse is never recovered (unless they are both the same item of course).


Example 1:

Code: [Select]
items:
  - type: STR_SECTOID_CORPSE
    recoveryPoints: 5
    battleType: 11
armors:
  - type: SECTOID_ARMOR0
    corpseBattle:
      - STR_SECTOID_CORPSE
    corpseGeo: STR_SECTOID_CORPSE # this is optional, if left empty, the first corpseBattle will be used... only use this for 2x2 units IMO
units:
  - type: STR_SECTOID_ENGINEER
    armor: SECTOID_ARMOR0

In this case, both dead alien will be recovered (STR_SECTOID_CORPSE) and live one (STR_SECTOID_ENGINEER)

Example 2:

Code: [Select]
items:
  - type: STR_SECTOID_CORPSE
    recoveryPoints: 5
    battleType: 11
    recover: false # onlt change compared to example 1
armors:
  - type: SECTOID_ARMOR0
    corpseBattle:
      - STR_SECTOID_CORPSE
    corpseGeo: STR_SECTOID_CORPSE # optional
units:
  - type: STR_SECTOID_ENGINEER
    armor: SECTOID_ARMOR0

In this case, dead alien will NOT be recovered and live alien will be recovered (STR_SECTOID_ENGINEER)

Example 3:

Code: [Select]
items:
  - type: STR_SECTOID_CORPSE
    recoveryPoints: 5
    battleType: 11
armors:
  - type: SECTOID_ARMOR0
    corpseBattle:
      - STR_SECTOID_CORPSE
    corpseGeo: STR_MUTON_CORPSE
units:
  - type: STR_SECTOID_ENGINEER
    armor: SECTOID_ARMOR0

In this case, dead alien (sectoid) will be recovered (as muton: STR_MUTON_CORPSE) and live alien will be recovered (as STR_SECTOID_ENGINEER)
« Last Edit: April 22, 2016, 03:39:15 pm by Meridian »

Offline legionof1

  • Moderator
  • Commander
  • ***
  • Posts: 1900
  • Bullets go that way. Money comes this way.
    • View Profile
Re: Bugs & Crash Reports
« Reply #393 on: April 22, 2016, 06:59:47 pm »
A peculiarity has occurred. Dark one probe mission. Fairly certain i stunned more then just the imp. I also note that no corpses other then the 2nd imp where recovered.

Offline Arthanor

  • Commander
  • *****
  • Posts: 2488
  • XCom Armoury Quartermaster
    • View Profile
Re: Bugs & Crash Reports
« Reply #394 on: April 22, 2016, 08:35:55 pm »
After I compiled the newer executable a few days ago, I had that issue of not getting proper loot. I went and changed many of the corpses (those that are associated with loot, not the 2x2 units) in Piratez_Factions.rul to remove the "recover: false". I did nothing else and my game worked well. I looted dead people and captured live ones.

As far as I know, all Meridian did is change it so the game checks if a corpseGeo is recoverable before recovering it (default is recover: true, so unless you specify recover: false, it will be recovered). I did not change anything to the battle corpses (which in 0.98D have now all been set to recover: false, and presumably lead to the issue with the captures).

At this moment, I use 0.98D but I still use my old fixed  Piratez_Factions.rul and Piratez_Armors.rul from 0.98C. As I said above, the fix is simply to remove the "recover: false" from the items that are meant to be loot in the Piratez_Factions.rul of 0.98C (so the STR_SECURITY_CORPSE, STR_SECTOID_CORPSE, etc. All of those which used to be booty or armor parts.) Having tested it last night, it still works fine (loot dead people and capture live ones). I'd have to double check if I get both loot and captures, but it seems unlikely. My numbers add up properly in the debriefing stage, with number of looted equal to number of deads, then the captures are as expected.

Offline Dioxine

  • Commander
  • *****
  • Posts: 5455
  • punk not dead
    • View Profile
    • Nocturnal Productions
Re: Bugs & Crash Reports
« Reply #395 on: April 22, 2016, 09:41:42 pm »
Problems with corpses and live captures hopefully fixed. DL the new version (0.98D1). Special thanks to Meridian for help.

Offline Zharkov

  • Colonel
  • ****
  • Posts: 429
    • View Profile
Re: Bugs & Crash Reports
« Reply #396 on: April 22, 2016, 11:51:08 pm »
Typo

Offline Baldri

  • Sergeant
  • **
  • Posts: 18
    • View Profile
Re: Bugs & Crash Reports
« Reply #397 on: April 23, 2016, 02:05:09 am »
Topic: Siberian base, just again.

First of all I made it work. :D

On the bad side: I used Debug mode to research "Siberia Base investigation". So when the next month started I was able to start this very specific mission because the base spawned this specific way. Doublechecked and worked both times this way.

However when the base spawns without said technology being researched, which happened randomly the 3 other times, it ends in a CTD even if you research the technology afterwards when you visit it.  So when you do not have the base spawned by researching this technology it results in a CTD, no matter if you try this mission in the campaign or in a single battle. At least thats what happens to me. 

The changelog let me assume that you actually need this technology to spawn it at all and it will not spawn randomly anymore?

Offline The Think Tank

  • Captain
  • ***
  • Posts: 80
  • "If we can't see them, they can't see us!" - Rook
    • View Profile
Re: Bugs & Crash Reports
« Reply #398 on: April 23, 2016, 02:20:01 am »
Siberian Mission still doesn't work for me, sometimes I get an error message other times nothing at all.

Offline Dioxine

  • Commander
  • *****
  • Posts: 5455
  • punk not dead
    • View Profile
    • Nocturnal Productions
Re: Bugs & Crash Reports
« Reply #399 on: April 23, 2016, 03:01:45 am »
It's actually a Mansion error. Darn. I fixed the case though...

Here's from the save:

Code: [Select]
missionSites:
  - lon: 1.4835298641951802
    lat: -1.1693705988362006
    type: STR_LOC_EMANSION
    deployment: STR_LOC_SIBERIA
    id: 1
    texture: -11
    secondsRemaining: 684000
    race: STR_FLOATER_MANSION
    detected: true

It behaves like the region for mansion was wrongly defined... but it isn't... wtf...

Offline Yglorba

  • Sergeant
  • **
  • Posts: 48
    • View Profile
Re: Bugs & Crash Reports
« Reply #400 on: April 23, 2016, 05:13:26 am »
I'm still experiencing the Siberia base crash, too, in 0.98D1.  Not sure if you need another save, but I attached one just in case (shortly before the mission appears.)

This save was in a game that was played in earlier versions until shortly before the mission appeared, of course, so if the fix wouldn't affect an immediately-upcoming mission, that could be the reason.

Offline The Think Tank

  • Captain
  • ***
  • Posts: 80
  • "If we can't see them, they can't see us!" - Rook
    • View Profile
Re: Bugs & Crash Reports
« Reply #401 on: April 23, 2016, 06:26:10 pm »
It's actually a Mansion error. Darn. I fixed the case though...

Here's from the save:

Code: [Select]
missionSites:
  - lon: 1.4835298641951802
    lat: -1.1693705988362006
    type: STR_LOC_EMANSION
    deployment: STR_LOC_SIBERIA
    id: 1
    texture: -11
    secondsRemaining: 684000
    race: STR_FLOATER_MANSION
    detected: true

It behaves like the region for mansion was wrongly defined... but it isn't... wtf...

I found something strange, supposedly I did not do the Siberia research before going to that mission, recently the research popped up, I did it and was able to go on the mission without a problem. So it might be an issue of it showing up prematurely.

Offline Dioxine

  • Commander
  • *****
  • Posts: 5455
  • punk not dead
    • View Profile
    • Nocturnal Productions
Re: Bugs & Crash Reports
« Reply #402 on: April 23, 2016, 06:47:55 pm »
So at least Siberia proper works. Now we only have an issue with some Mansions masquerading as Siberia mission... Let's see if it keeps up or my fixes solved the problem.

Offline Arthanor

  • Commander
  • *****
  • Posts: 2488
  • XCom Armoury Quartermaster
    • View Profile
Re: Bugs & Crash Reports
« Reply #403 on: April 23, 2016, 06:56:59 pm »
I just noticed the cyberdisc corpses have changed:

Code: [Select]
  - type: CYBERDISC_CORPSE_1X
    name: STR_CYBERDISC_CORPSE
    weight: 80
    floorSprite: 100205
    invWidth: 0
    invHeight: 0
  - type: CYBERDISC_CORPSE_2X
    weight: 80
    floorSprite: 100206
    invWidth: 0
    invHeight: 0
    battleType: 11
    recoveryPoints: 3

Shouldn't it be:

Code: [Select]
  - type: CYBERDISC_CORPSE_1X
    name: STR_CYBERDISC_CORPSE
    weight: 80
    floorSprite: 100205
    invWidth: 0
    invHeight: 0
    battleType: 11
    recoveryPoints: 3
  - type: CYBERDISC_CORPSE_2X
    weight: 80
    floorSprite: 100206
    invWidth: 0
    invHeight: 0
    recover: false

Offline Dioxine

  • Commander
  • *****
  • Posts: 5455
  • punk not dead
    • View Profile
    • Nocturnal Productions
Re: Bugs & Crash Reports
« Reply #404 on: April 23, 2016, 07:52:24 pm »
Yes. Thanks...