Author Topic: Talk / Contact range.  (Read 3332 times)

DLPB_

  • Banned
  • *
  • Posts: 11006
    • View Profile
Talk / Contact range.
« on: 2016-04-13 21:32:39 »
The original game often sets the contact and talk range in the "init" of the field model (in this case, Cloud),  but from what i can see, it's ignored there. Is this the case with PSX too? It takes effect fine in "main"  - unless this is a Makou issue?
« Last Edit: 2016-04-13 21:35:49 by DLPB »

DLPB_

  • Banned
  • *
  • Posts: 11006
    • View Profile
Re: Talk / Contact range.
« Reply #1 on: 2016-04-13 21:46:15 »
False alarm.  It's just that the contact and talk range don't work like I thought.  It's very strange.  I mean, I can set Cloud to have a contact range of 5 (and then he can walk right up to the materia), but it takes a TALK range much greater to be able to pick it up - which makes no sense.

Unless the model size setting changes things.

edit

Nope, I was right.  Talk range works in init - but contact range (for Cloud in this case) has to be in main.  Why?
« Last Edit: 2016-04-13 22:09:48 by DLPB »

Kaldarasha

  • *
  • Posts: 2449
  • Prince of Model Editing
    • View Profile
Re: Talk / Contact range.
« Reply #2 on: 2016-04-13 22:29:00 »
Isn't the contact range responsible for the collision of the models?

DLPB_

  • Banned
  • *
  • Posts: 11006
    • View Profile
Re: Talk / Contact range.
« Reply #3 on: 2016-04-13 22:37:38 »
Isn't the contact range responsible for the collision of the models?

Yeah, but the point is - why do the talk and contact range differ with

a. Their range
b. Where they can be placed in script.  Contact setting cannot be placed in "init".

Zervox

  • *
  • Posts: 55
    • View Profile
Re: Talk / Contact range.
« Reply #4 on: 2016-04-20 12:09:52 »
Just going to take a stab guess.
in other games, contact range would be controlling factor for effects or behaviors/eg a fleeing frog in FFIX would run based on rules inside contact range, or lets say object starts floating when in contact range, then 'talk range would be the controlling setting for activating it(capturing frog, activating floating object)

where they can be set depends on how the code was made I guess, init would usually be set after main(as a C/C++ example), this however when in regards to many script implementations seen in other games, init is the first called, then main is called as the primary setter.

regarding Cloud, is it possible that the order of calls to the script is
init - set some values
sets other default values(assuming contact range is set based on parameters, one which could be as you said, model size)
main - rest here to override defaults

I have no clue about any core stuff in Final Fantasy games in this degree, just thinking implementation wise seen in other games which has had source available.
and yes, this sounds like a horrible way to do things, but hey, lots of games has really weird code running around in them.

DLPB_

  • Banned
  • *
  • Posts: 11006
    • View Profile
Re: Talk / Contact range.
« Reply #5 on: 2016-04-20 12:17:03 »
It's very inconsistent and there is no way that the range should change.  It's more likely extremely poor design.,