HeroEngine Forums
Welcome, Guest. Please login or Register for HeroCloud Account.
Pages: 1 [2]

Author Topic: NON-UPDATE RElated: "Bring Instances Here" Destroys Dynamic instances  (Read 4684 times)

ToY-Krun

  • General Accounts
  • *
  • Posts: 677
  • Support Volunteer
    • View Profile

Quote
He as just asking for a bit more specific information with your testing to make sure that they are not just hidden somewhere.

Yeah I understand, I didn't intend to come off as being rude  ::)

I'm dealing with several things at once atm.   

Following JRome90's "result" i was able to reproduce this as in his last attempt in the result.

Sorry If I seemed edgy.

Thanks

JGrant

  • HeroEngine
  • *****
  • Posts: 14
    • View Profile

No worries stress is inevitable.
Logged

ToY-Krun

  • General Accounts
  • *
  • Posts: 677
  • Support Volunteer
    • View Profile

I am able to repro the destruction of an entire area  ::)

I'm working on narrowing it down to exactly whats in the mix that's causing it.

There are several variables involved.

I've also discovered another possible bug using Switch To where you're no longer able to switch to the other area, but instead it simply moves your camera to the center of the other area without actually switching to it.

I'll try to get a repro on that as well.


Thanks

ToY-Krun

  • General Accounts
  • *
  • Posts: 677
  • Support Volunteer
    • View Profile

Not able to Switch To another area :
  was the result of not having Automatic Room Selection ticked.


Repro to force the issue in question:
1) Create a new area and go to the Edit instance.
2) Add dynamic object such as a stateful door etc
3) Raise a bit of the terrain just to add some change to the heightmap.
4) Add a Mirror/Water, adjust it a tad to make changes to it.
5) Create another area and Add it as a seamless area link to the first one.
6) Edit Offset of the adjacent area to match the position of the first.
7) Switch to area #2
8) Delete the existing heightmap (since we don't need it)
9) Select all instances of the first area  and "Bring Instances Here"

If the repro works, you will no longer have a heightmap, probably no mirror/water, and probably only
have the dynamic object/door left.

No additional rooms are involved.

*Edit*
if it matters, I selected each one at a time using ctrl + click.
Selected the heightmap first, then the mirror/water, then the door. (to avoid selecting the player char in case it caused an issue)

Thanks

ToY-Krun

  • General Accounts
  • *
  • Posts: 677
  • Support Volunteer
    • View Profile

Found the Issue I believe.

(when a door/dynamic object is involved in the move)
For some reason, when you switch to the new area, sometimes the "AutoMatic Room" is NOT ticked,
Or is getting turned off by one of the models being moved (possibly the door?) when it errors.

If it is not ticked, you will lose any heightmaps in the move, and possibly some objects as well.

You'll be left with the Door/dynamic object.

So the issue seems to hinge around "Automatic Room Selection" and dynamic objects.

To Repro that, just turn off Automatic Room Selection, then move everything as described above to the new area.

ToY-Krun

  • General Accounts
  • *
  • Posts: 677
  • Support Volunteer
    • View Profile

I'm working on a "Fix" for this via HSL in the $Edit override script E_EditHandlerClassMethods.

Basically, when nodes are "moved" to another area, they are copied first, the originals being destroyed in the process, and the copies than placed into the New area.

Whats happening with Dynamic models is the $edit system copies the object, destroys the old, and then doesn't know how to recreate the copy(or it fails making the copy period) since it has classes on it that it doesnt know what to do with (data classes glommed on etc, perhaps with replication involved)

It successfully finishes the copy process, destroying the originals, but when it begins creating the new versions for the new area, it will stop at the first node it doesnt know how to deal with, thus, you might get "some" heightmaps, but when it gets to a node it doesnt understand, it will place an Instance of that node, and hit an error and the whole process stops. leavel all subsequent heightmaps/models/nodes uncreated for the new area.

I believe this can be dealt with via the override, if so I'll share the code so that it can be used in the override, or migrated into the HE $Edit script itself at some point.  If you don't use so many dynamic models (almost all of ours are) then this isnt an issue.

keeperofstars

  • General Accounts
  • *
  • Posts: 998
    • View Profile
    • StarKeeper Online

Thanks, for the work toy-krun.

A quick side note there is a way to save areas and restore back to a point in time. If you need a fail over option, in the f5 tools you can have the area create a backup of itself. A sort of restore point. It's clunky and takes a while though, but i've restored several areas etc. after oh hecks that didn't go well when I try crazy scripts that affect things.
Logged
[img]http://screencast.com/t/x7btcSSyp3h0[\img]
Pages: 1 [2]