OpenXcom Forum

OpenXcom => Suggestions => Topic started by: Thermite on May 13, 2020, 12:00:13 am

Title: Mirrorred sprites/mirrorred sprite functionality?
Post by: Thermite on May 13, 2020, 12:00:13 am
Something I noticed, and it bothers me, is that, in some missions in the XCF, some of the factory buildings have double doors, but those doors are treated as two individual doors, instead of double doors, so they always open to the same side, even when it doesn't make sense to. So I am proposing that tiles have a property to be rendered mirrored, including their behaviour during gameplay, so double doors can, not only be opened individually, but also be opened in a way that would, also, allow 2x2 units to move through it, since it is quite bothersome when you have enemies stuck inside warehouses that they could, easily, leave from in real life, just because the doors are wrong.
Title: Re: Mirrorred sprites/mirrorred sprite functionality?
Post by: Meridian on May 13, 2020, 12:04:55 am
Not feasible.

Please don't make me explain why, it's complicated.
Title: Re: Mirrorred sprites/mirrorred sprite functionality?
Post by: Thermite on May 13, 2020, 12:05:29 am
Not feasible.

Please don't make me explain why, it's complicated.

I would like to know, though...
:V
Title: Re: Mirrorred sprites/mirrorred sprite functionality?
Post by: Yankes on May 13, 2020, 07:03:08 pm
Reason is that you can have only two real walls per tile in OXC, and door are wall that toggle between two possible position of wall.
Title: Re: Mirrorred sprites/mirrorred sprite functionality?
Post by: Solarius Scorch on May 14, 2020, 11:34:32 am
Please report any such cases in XCF to me, it looks like a modding issue.
Title: Re: Mirrorred sprites/mirrorred sprite functionality?
Post by: Thermite on May 18, 2020, 03:35:12 am
Reason is that you can have only two real walls per tile in OXC, and door are wall that toggle between two possible position of wall.
But I don't want two doors in a single tile, but actually that any tile/wall can have their functionality and appearance mirrored.

So, for example, take this ASCII image:

*****
*+***
***+*
*****

It would look like this mirrored:

*****
***+*
*+***
*****

What I want, basically, is,if there is a tile/wall, it has a boolean value that will determine how it is rendered (isMirrored, for example). so instead of rendering like it normally would, it would be rendered as a mirror. It's functionality would also be mirrored, so instead of opening clockwise, the door would be opened anti-clockwise.
Title: Re: Mirrorred sprites/mirrorred sprite functionality?
Post by: Thermite on May 26, 2020, 03:29:09 am
Please report any such cases in XCF to me, it looks like a modding issue.

These are the doors officer!

Sorry, for being late.
Title: Re: Mirrorred sprites/mirrorred sprite functionality?
Post by: Thermite on May 26, 2020, 03:44:09 am
Not feasible.

Please don't make me explain why, it's complicated.

Did you see this Meridian?

But I don't want two doors in a single tile, but actually that any tile/wall can have their functionality and appearance mirrored.

So, for example, take this ASCII image:

*****
*+***
***+*
*****

It would look like this mirrored:

*****
***+*
*+***
*****

What I want, basically, is,if there is a tile/wall, it has a boolean value that will determine how it is rendered (isMirrored, for example). so instead of rendering like it normally would, it would be rendered as a mirror. It's functionality would also be mirrored, so instead of opening clockwise, the door would be opened anti-clockwise.

Also, to expand upon this instead of the door opening this way (see first attachment), it would open like this when mirrored (see second attachment).
Title: Re: Mirrorred sprites/mirrorred sprite functionality?
Post by: kevL on May 26, 2020, 05:46:12 am
The problem is that there aren't eastwall or southwall slots. There are only westwall and northwall slots.

trying to open a door so that it ends up on the east side of a tile (or the south side of a tile) would require some fairly major changes to the codebase.


If you see a wall that's on the east or south of a tile, it's either faked by a content-part or it's a west/north wall in the next tile over ...

once you start looking into MCD values regarding hinged doors and tileslots, this is very nontrivial,
Title: Re: Mirrorred sprites/mirrorred sprite functionality?
Post by: Meridian on May 26, 2020, 10:27:22 am
Did you see this Meridian?

Did I see what?
Title: Re: Mirrorred sprites/mirrorred sprite functionality?
Post by: kevL on May 29, 2020, 01:09:48 am
ps. The way to make double-width doors that allow 2x2 units to move through them is by using sliding doors instead of hinged doors. I suspect that customized sliding double doors could even be made to look like hinged doors (sprites) and approximately act like hinged doors (LoFTs). But they'd close at the end of each turn, like UFO doors ...

/untested
Title: Re: Mirrorred sprites/mirrorred sprite functionality?
Post by: Thermite on May 29, 2020, 07:42:28 pm
Did I see what?

The second quote
Title: Re: Mirrorred sprites/mirrorred sprite functionality?
Post by: Meridian on May 29, 2020, 08:13:40 pm
The second quote

Yes.
The answer is still the same, it's not feasible.
Title: Re: Mirrorred sprites/mirrorred sprite functionality?
Post by: Thermite on May 29, 2020, 09:01:47 pm
Yes.
The answer is still the same, it's not feasible.

Shit...
The original game is so impossible to modify, then?
Title: Re: Mirrorred sprites/mirrorred sprite functionality?
Post by: kevL on May 31, 2020, 01:07:56 am
The original game is so impossible to modify, then?

do you mean, is it technically impossible to modify

or, is it psychologically sacrosanct?

a: neither.


repos are available for download @Github
c++ tutorials are widely available on the web


get ready for ~50 complicated bugs that will be introduced as soon as you try to change this game mechanic ...