On 30/09/2011 4:05 PM, James Paige wrote:
On Fri, Sep 30, 2011 at 12:46:49PM -0700, Adam Perry wrote:
Oh shooooooot, I was thinking that "read attack data" was an actual thing :(

Nope, I was confused if I said it was. Read enemy data exists, but was a
bad idea.

Can it be an actual thing? Please? I will implement it all by myself.

No. a "read anything data" command of any kind is a bad idea, and I
deeply regret any existing command that works that way.

A command that loads a specific piece of data is tolerable, because the
underlying data format can change without requiring the plotscripting
command to do unfortunate backcompat mumbo-jumbo.

Adam, just to clarify, the "read enemy data" command is the moral equivalent of doing something like this:

   void* theEnemy = ...;
int enemyHP = *(((int*)theEnemy) + 23); //I know the HP is 23 * sizeof(int) bytes in, and assume it will never change

I think it seemed like a good idea at the time, but we all know that hindsight is 20:20.

To maintain compatability in the future, the command will have to change to something like:

   IF index = 23 THEN
     RETURN enemy.HP
   ELSE IF index = 12 THEN
     RETURN enemy.sprite
   ELSE ...

Anyway, the only actual "read enemy data" I am using is the command
list.

The command list?
Oh, the attacks that an enemy can do?

Hrmm... That is going to change massively when I do
http://rpg.hamsterrepublic.com/ohrrpgce/Plan_for_enemy_AI_improvements

I will expose enemy elemental resists via a separate command
altogether.

Yeah, if it is a separate command it should be okay :)

---
James

On Fri, Sep 30, 2011 at 11:39 AM, Adam Perry<[email protected]>  wrote:
Semi-relatedly, I'm also planning to add a command to expose elemental
resistances for enemies. I'm trying to use
http://hamsterrepublic.com/ohrrpgce/nightly/ohrrpgce-source-nightly.zip,
though, and it doesn't actually have yesterday's changes. (I'd use SVN
directly, but I'm running into proxy issues.)

More relatedly, are there plans to change the inner workings of read
enemy data? This doesn't matter too much for a potential "enemy
elemental resist as int" implementation, which can be changed if the
other is, but it might affect my plans for the script I'm working on.


On Fri, Sep 30, 2011 at 9:23 AM, Adam Perry<[email protected]>  wrote:
On Fri, Sep 30, 2011 at 8:53 AM, James Paige<[email protected]>  wrote:
On Thu, Sep 29, 2011 at 08:13:10PM -0700, Adam Perry wrote:
On Thu, Sep 29, 2011 at 7:56 PM, Ralph Versteegen<[email protected]>  wrote:

On 30 September 2011 08:34, James Paige<[email protected]>  wrote:
On Thu, Sep 29, 2011 at 11:55:26AM -0700, Adam Perry wrote:
On Thu, Sep 29, 2011 at 11:26 AM, Adam Perry<[email protected]>  wrote:
I'd like to add in a few more plotscripting commands, but I'm not sure
what files need to be changed. The obvious one is plotscr.hsd, and I'm
sure I can figure out what to do there, but what other files are
involved?

I'm not looking to do anything complicated; just getters/setters for
things like door position and enemy attacks.


Actually, some research shows that enemy attacks are already exposed
(albeit via the arcane "read enemy data" command). So that's one down.

Yes, the "read enemy data" commands are unfortunately arcane, and will
be a backcompat pain in the future.

I had been thinking recently: let's not support read/writeenemydata
for anything other than the provided constants. If you haven't used
them, and I haven't used them, and Mogri hasn't used them, then we can
be nearly sure that noone has.

But I just wrote a script using them extensively...

Did you use any data index numbers other than the 11 documented in
http://hamsterrepublic.com/ohrrpgce/docs/plotdict.xml#about-readenemydata
?

Here's the list of undocumented things I'm using so far:
   3, attackdata:target class
   4, attackdata:target setting
   12, attackdata:chain
   13, attackdata:chain rate
I am also likely to use several more since I'm essentially pulling in
attack data to use in a custom battle system.

I'm okay rewriting this part if you have a somewhat immediate plan for
exposing attack data.


_______________________________________________
Ohrrpgce mailing list
[email protected]
http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org

_______________________________________________
Ohrrpgce mailing list
[email protected]
http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org


--
- Mike Caron
_______________________________________________
Ohrrpgce mailing list
[email protected]
http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org

Reply via email to