Jump to content


Photo

[solved] How to collect ground piles at specific location?


10 replies to this topic

#1 argent77

argent77
  • Modders
  • 723 posts
  • Gender:Male

Posted 28 July 2017 - 05:02 AM

For a quest I'm planning to add a trapdoor (a big one) on the ground of an existing map. This map also contains several creatures that could leave items on the ground after their destruction. It would look strange if these piles were still available at locations that are not accessible anymore (e.g. floating in mid-air) when the trapdoor is open, so I want to move all of them to a safe location.

I've noticed the script action CopyGroundPilesTo() that can be used to create a copy of all ground items of a map at a specific location. Is there a way to accomplish the same without creating copies of the items?


Edited by argent77, 29 July 2017 - 12:59 PM.


#2 Gwendolyne

Gwendolyne
  • Members
  • 152 posts
  • Gender:Male
  • Location:France

Posted 28 July 2017 - 05:58 AM

Never tried with EE but I remember having tested this action in ToB a long time ago: it did not copy the ground items but move them to the new coordinates.


CARPE DIEM...



In progress : Menace sur le Royaume de Diamant Éternel

#3 Avenger

Avenger
  • Modders
  • 3725 posts
  • Gender:Male
  • Location:Hungary

Posted 28 July 2017 - 06:43 AM

If there are any other piles in the room, they will be moved, so this is probably not optimal for you.



#4 argent77

argent77
  • Modders
  • 723 posts
  • Gender:Male

Posted 28 July 2017 - 07:50 AM

Never tried with EE but I remember having tested this action in ToB a long time ago: it did not copy the ground items but move them to the new coordinates.

Did you do something special?

I've tested it in classic and EE BG2. In both games it does exactly what the name suggests - creating copies of the items from existing ground piles.

BG2 is using this action on occasion, but only to transport items from one map to another. It works fine in these cases as long as source maps are made inaccessible afterwards (such as done with the initial ToB area after arriving at the Pocket Plane).
 

 

If there are any other piles in the room, they will be moved, so this is probably not optimal for you.

It's not optimal, but the only solution (I know of) to take care of ground items. It would be great if it were possible to address ground piles individually.

 

Apart from that, the map is not very big and there is no real need to drop items intentionally somewhere on the map, so it shouldn't be a real issue. Main problem however is the encounter with hostile creatures who happen to stand right next to or above the trapdoor.

 

Hmm, maybe using CopyGroundPilesTo() and DestroyGroundPiles() together with a temporary move to a dummy map and back via cutscene may help. I have to try it out. It would be an ugly hack though, that I'd rather avoid.


Edited by argent77, 28 July 2017 - 07:51 AM.


#5 Ardanis

Ardanis

    A very GAR character

  • Modders
  • 2557 posts
  • Gender:Male
  • Location:Saint-Petersburg, Russia

Posted 28 July 2017 - 10:41 PM

It would be great if it were possible to address ground piles individually.

 

Not possible, period.


"Uguu~ Boku Ayu."

Before you start breaking wall tiles with your bare fists, ask yourself first - do you truly need it?

#6 argent77

argent77
  • Modders
  • 723 posts
  • Gender:Male

Posted 29 July 2017 - 12:11 PM

Hmm, maybe using CopyGroundPilesTo() and DestroyGroundPiles() together with a temporary move to a dummy map and back via cutscene may help. I have to try it out. It would be an ugly hack though, that I'd rather avoid.

 

It seems to work fairly well in BG2EE, when executed in a cutscene. The script works like this:
- Fade out screen
- CopyGroundPilesTo("dummy map",[x.y])
- DestroyGroundPiles()

- Move party to dummy map
- CopyGroundPilesTo("source map",[x.y])
- Move party back to source map

- Fade in screen

It helps greatly that map transitions in EE games don't show any kind of loading screens. I would still prefer a solution that doesn't require switching maps though, since this procedure is not perfect. Background music and sfx are interrupted when you switch maps, so it might still be noticeable that something is not as it seems.



#7 Roxanne

Roxanne

    Modder

  • Modders
  • 1626 posts
  • Gender:Female
  • Location:Auckland, NZ

Posted 29 July 2017 - 12:31 PM

 

Hmm, maybe using CopyGroundPilesTo() and DestroyGroundPiles() together with a temporary move to a dummy map and back via cutscene may help. I have to try it out. It would be an ugly hack though, that I'd rather avoid.

 

It seems to work fairly well in BG2EE, when executed in a cutscene. The script works like this:
- Fade out screen
- CopyGroundPilesTo("dummy map",[x.y])
- DestroyGroundPiles()

- Move party to dummy map
- CopyGroundPilesTo("source map",[x.y])
- Move party back to source map

- Fade in screen

It helps greatly that map transitions in EE games don't show any kind of loading screens. I would still prefer a solution that doesn't require switching maps though, since this procedure is not perfect. Background music and sfx are interrupted when you switch maps, so it might still be noticeable that something is not as it seems.

 

I have used the trick with an intermediate dummy map and cutscene on a number of occasions in my EET mod - not related directly with ground piles but similar purpose - in order to *hide* larger operations of item/creature exchange and removal. My experience is pretty much the same, they work well in BG2EE/EET, you will notice that something is going on but not what. I have not found any better solution I could share.

Just - do you need to move the whole party for your purpose? Is maybe just one sufficient while you play some effects on the rest of the party and assure that those stay visible? In one of my scenes I have a small side area on the same map which is not accessible from the normal search area and I jump just Player4 for there to do manipulations in the dark and then jump him back afterwards. (?may not work with ground piles?)

My scenes take place in silent areas, so I never noticed the sounds problem. In any case you have the fade in/fade out effect and - depending on complexity of manipulation - a black screen in between. Even the vanilla game seems to have no better solutions (see SoD Boarskyre Bridge cutscenes or the Final SoD shadow thieves ambush).


Edited by Roxanne, 29 July 2017 - 12:40 PM.

The Sandrah Saga

another piece of *buggy, cheesy, unbalanced junk*


#8 argent77

argent77
  • Modders
  • 723 posts
  • Gender:Male

Posted 29 July 2017 - 12:58 PM

Just - do you need to move the whole party for your purpose? Is maybe just one sufficient while you play some effects on the rest of the party and assure that those stay visible? In one of my scenes I have a small side area on the same map which is not accessible from the normal search area and I jump just Player4 for there to do manipulations in the dark and then jump him back afterwards. (?may not work with ground piles?)

 

Moving one character seems to work, too. But I would still have to move all party members to fixed locations to avoid having them stand near the trapdoor by accident. Switching maps is required in my case though, since CopyGroundPilesTo() can only be called from the active map (would be nice if ActionOverride() could override areas too).

Btw, it looks like you can even preserve current background music if the dummy map uses the same songs as the source map.

 

I think this solution is now good enough for my purposes. I'll mark this topic as "solved".
 



#9 CamDawg

CamDawg

    Seven billion ton robot monster

  • Gibberling Poobah
  • 9250 posts
  • Gender:Not Telling

Posted 29 July 2017 - 01:32 PM

Heh. I've always thought PPG's unofficial motto of "inconveniencing the Infinity Engine" was a good description of modding, and it's solutions like this that reinforce my belief further. :)


I came here with a simple dream: a dream of killing all humans. And this is how it must end? Who's the real seven billion ton robot monster here? Not I. Not... I.


#10 Ardanis

Ardanis

    A very GAR character

  • Modders
  • 2557 posts
  • Gender:Male
  • Location:Saint-Petersburg, Russia

Posted 29 July 2017 - 02:42 PM

In any case you have the fade in/fade out effect and - depending on complexity of manipulation - a black screen in between. Even the vanilla game seems to have no better solutions (see SoD Boarskyre Bridge cutscenes or the Final SoD shadow thieves ambush).

 

Oh, these two were nothing compared to the first bridge cutscene :D


"Uguu~ Boku Ayu."

Before you start breaking wall tiles with your bare fists, ask yourself first - do you truly need it?

#11 Roxanne

Roxanne

    Modder

  • Modders
  • 1626 posts
  • Gender:Female
  • Location:Auckland, NZ

Posted 29 July 2017 - 10:38 PM

 

In any case you have the fade in/fade out effect and - depending on complexity of manipulation - a black screen in between. Even the vanilla game seems to have no better solutions (see SoD Boarskyre Bridge cutscenes or the Final SoD shadow thieves ambush).

 

Oh, these two were nothing compared to the first bridge cutscene :D

 

I can imagine. It is like a magician needs to to it:

The hardest work is to conceil the hard work that is going on. (Anyone remembers the initial BGT transition from BG1 to BG2 - you started it, went out for a coffee and coming back you were hoping it had finished - you never knew because there was a blank screen during the process and either you later saw the light or not.).

Modders who tried their own hands at those things can really appreciate it - while many players just recognise the little imperfections and nag at them.


Edited by Roxanne, 29 July 2017 - 10:39 PM.

The Sandrah Saga

another piece of *buggy, cheesy, unbalanced junk*




Reply to this topic



  


1 user(s) are reading this topic

0 members, 1 guests, 0 anonymous users