Author Topic: XML questions and answers  (Read 18162 times)

Offline Cinth

  • Core Member Mark II
  • *****
  • Posts: 2,527
  • Resident Zombie
Re: XML questions and answers
« Reply #120 on: January 29, 2016, 05:05:43 PM »
Just buff Flak Turrets back to where they were.  100% sure all Blaze Turret complaints stop.
Quote from: keith.lamothe
Opened your save. My computer wept. Switched to the ST planet and ship icons filled my screen, so I zoomed out. Game told me that it _was_ totally zoomed out. You could seriously walk from one end of the inner grav well to the other without getting your feet cold.

Offline keith.lamothe

  • Arcen Games Staff
  • Arcen Staff
  • Zenith Council Member Mark III
  • *****
  • Posts: 19,506
Re: XML questions and answers
« Reply #121 on: January 29, 2016, 05:07:03 PM »
Just buff Flak Turrets back to where they were.  100% sure all Blaze Turret complaints stop.
Now we know how all those AI ships coming out of a wormhole feel...
Have ideas or bug reports for one of our games? Mantis for Suggestions and Bug Reports. Thanks for helping to make our games better!

Offline Misery

  • Arcen Volunteer
  • Core Member Mark V
  • *****
  • Posts: 4,108
Re: XML questions and answers
« Reply #122 on: January 29, 2016, 05:09:56 PM »
Could be worse.

Could be bigger Blaze Turrets.

We already have those.....

Blaze Turrets ARE the bigger one.  The blue version that fires 2 bolts.  The red weaker ones are Blaze Cannons.

I could always put the Turrets back to where they used to be, where they fired 4 of those shots in a spread.... it's tempting.  Weren't those fun?

Offline Cinth

  • Core Member Mark II
  • *****
  • Posts: 2,527
  • Resident Zombie
Re: XML questions and answers
« Reply #123 on: January 29, 2016, 05:16:23 PM »
I enjoyed having to bait the damned things to shoot one way as I sprinted the other way  :P
Quote from: keith.lamothe
Opened your save. My computer wept. Switched to the ST planet and ship icons filled my screen, so I zoomed out. Game told me that it _was_ totally zoomed out. You could seriously walk from one end of the inner grav well to the other without getting your feet cold.

Offline ptarth

  • Arcen Volunteer
  • Hero Member Mark III
  • *****
  • Posts: 1,147
  • I'm probably joking.
Re: XML questions and answers
« Reply #124 on: January 29, 2016, 05:21:44 PM »
Hey Keith, while you are around, can you take a quick look at this? See attached image. The shots all being given the same instructions and should be in a nice line, but as you can see they start deviating and it only gets worse. My guess is that rounding precision in position, angle, and speed is causing the deviance. Does that seem to be the case to you? Or is there something else going on that might be driving it?

Code is a series of small angle changes in a sequence of small steps.
Note: This post contains content that is meant to be whimsical. Any belittlement or trivialization of complex issues is only intended to lighten the mood and does not reflect upon the merit of those positions.

Offline keith.lamothe

  • Arcen Games Staff
  • Arcen Staff
  • Zenith Council Member Mark III
  • *****
  • Posts: 19,506
Re: XML questions and answers
« Reply #125 on: January 29, 2016, 05:26:57 PM »
Hmm, it's probably due to the length of time between frames not being fixed. Which kind of works out to a precision issue, yes, but I don't think it's something that's fixed by using double-precision instead of single-precision floating point.

It's something I could investigate, with a test case.
Have ideas or bug reports for one of our games? Mantis for Suggestions and Bug Reports. Thanks for helping to make our games better!

Offline ptarth

  • Arcen Volunteer
  • Hero Member Mark III
  • *****
  • Posts: 1,147
  • I'm probably joking.
Re: XML questions and answers
« Reply #126 on: January 29, 2016, 06:15:11 PM »
That makes a lot of sense. Most small change iterations I've seen do it, but I'm also running on a older monitor, which doesn't have the snazzy refresh rates  others have. Here is bullet_pattern code that does it for me. Just stick it on a weapon system of your choice. It doesn't have to be this long, but I made it this way to see if it was a looping issue.

Code: [Select]
          <bullet_pattern name="SnakeShot2">
<bullet angle="0" speed="200" shot_type="TorchRed" relative="true" shot_is_not_stopped_by_hitting="true">
<loop iterations="15" take_pants_off_head="true">
<change self_scale="1"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<wait time="0.15"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<wait time="0.15"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<wait time="0.15"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<wait time="0.15"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<wait time="0.15"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<wait time="0.15"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<wait time="0.15"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<wait time="0.15"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<wait time="0.15"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<wait time="0.15"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<wait time="0.15"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<wait time="0.15"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<wait time="0.15"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<wait time="0.15"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<wait time="0.15"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<wait time="0.15"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<wait time="0.15"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<wait time="0.15"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<wait time="0.15"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<wait time="0.15"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<wait time="0.15"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<wait time="0.15"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<wait time="0.15"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<wait time="0.15"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<wait time="0.15"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<wait time="0.15"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<wait time="0.15"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<wait time="0.15"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<wait time="0.15"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<wait time="0.15"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<wait time="0.15"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<wait time="0.15"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<wait time="0.15"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<wait time="0.15"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<wait time="0.15"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<wait time="0.15"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<wait time="0.15"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<wait time="0.15"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<wait time="0.15"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<change angle="5" relative="true" speed="0" time="0.10"/>
<wait time="0.15"/>
</loop>
</bullet>
  </bullet_pattern>


My brilliant observation of the morning is that I can grep my local wiki doc html files to look for things I'm trying to find rather than use find in chrome.
Note: This post contains content that is meant to be whimsical. Any belittlement or trivialization of complex issues is only intended to lighten the mood and does not reflect upon the merit of those positions.

Offline ptarth

  • Arcen Volunteer
  • Hero Member Mark III
  • *****
  • Posts: 1,147
  • I'm probably joking.
Re: XML questions and answers
« Reply #127 on: January 29, 2016, 06:29:37 PM »
I swore there was something in the wiki docs about time-based rather than refresh-rate based actions, but I can't find it. Am I misremembering? Anyone else recall or know what it was?
Note: This post contains content that is meant to be whimsical. Any belittlement or trivialization of complex issues is only intended to lighten the mood and does not reflect upon the merit of those positions.

Offline Cinth

  • Core Member Mark II
  • *****
  • Posts: 2,527
  • Resident Zombie
Re: XML questions and answers
« Reply #128 on: January 29, 2016, 06:43:42 PM »
No idea.

Would something like this work if you set the first shots path?

follows_previously_spawned_entity
Quote from: keith.lamothe
Opened your save. My computer wept. Switched to the ST planet and ship icons filled my screen, so I zoomed out. Game told me that it _was_ totally zoomed out. You could seriously walk from one end of the inner grav well to the other without getting your feet cold.

Offline keith.lamothe

  • Arcen Games Staff
  • Arcen Staff
  • Zenith Council Member Mark III
  • *****
  • Posts: 19,506
Re: XML questions and answers
« Reply #129 on: January 29, 2016, 09:46:50 PM »
On SnakeShot2, I did see the imprecision you saw (it's not a monitor-refresh-rate thing, btw, but rather sim frame rate; once our game sends the bits off to the video card it honestly doesn't care what happens to them or when), but if I did something very similar but not as broken up:

      <loop iterations="600" take_pants_off_head="true">
        <change angle="10" relative="true" speed="0" time="0.20"/>
        <wait time="0.15"/>
      </loop>

It seems to work fine. I'm not able to see any shots getting demonstrably "out of line". Possibly they would on lower framerates. You could perhaps make the changes coarser to deal with it should that come up.

Anyway, in general our engine is floating-point based and not fixed-frame-length and so there are limits to the precision. If you don't want to hit them, don't try so hard ;) If you want pixel-perfect motion the location-based patterns probably do a decent job of that, though getting a smooth arc there would be excessively painful.
Have ideas or bug reports for one of our games? Mantis for Suggestions and Bug Reports. Thanks for helping to make our games better!

Offline keith.lamothe

  • Arcen Games Staff
  • Arcen Staff
  • Zenith Council Member Mark III
  • *****
  • Posts: 19,506
Re: XML questions and answers
« Reply #130 on: January 29, 2016, 10:33:00 PM »
gibbering maddness ensues...
https://www.arcengames.com/mantisbt/view.php?id=18584
https://www.arcengames.com/mantisbt/view.php?id=18585
https://www.arcengames.com/forums/index.php/topic,18335.msg198033.html#msg198033
Ok, I think those are dealt with.

Quote from: zharmad
Also, this tag doesn't work:
            requires_firing_system_range_to_player_more_than_or_equal_to="[TRIGGER_DMIN]"
while this tag does:
            requires_firing_system_range_to_player_less_than_or_equal_to="[TRIGGER_DMAX]"

what about:
            requires_firing_system_range_to_player_greater_than_or_equal_to="[TRIGGER_DMIN]"
?
Have ideas or bug reports for one of our games? Mantis for Suggestions and Bug Reports. Thanks for helping to make our games better!

Offline zharmad

  • Hero Member Mark III
  • *****
  • Posts: 1,075
Re: XML questions and answers
« Reply #131 on: January 29, 2016, 10:55:07 PM »
requires_firing_system_range_to_player_greater_than_or_equal_to

I swear, every time I looked at the wiki in the last 24 hours it said more_than instead of greater_than, up until you mentioned it.

Okay, I'd have one really REALLY aggravating complaint, which is that commenting can really break your interpreter (especially multiline commenting. It's not helping.
« Last Edit: January 29, 2016, 11:57:53 PM by zharmad »

Offline ptarth

  • Arcen Volunteer
  • Hero Member Mark III
  • *****
  • Posts: 1,147
  • I'm probably joking.
Re: XML questions and answers
« Reply #132 on: January 29, 2016, 11:08:38 PM »
requires_firing_system_range_to_player_greater_than_or_equal_to

I swear, every time I looked at the wiki in the last 24 hours it said more_than instead of greater_than, up until you mentioned it.

I think he wrote a script to change parts of the wiki, at random, every few hours.
Note: This post contains content that is meant to be whimsical. Any belittlement or trivialization of complex issues is only intended to lighten the mood and does not reflect upon the merit of those positions.

Offline keith.lamothe

  • Arcen Games Staff
  • Arcen Staff
  • Zenith Council Member Mark III
  • *****
  • Posts: 19,506
Re: XML questions and answers
« Reply #133 on: January 29, 2016, 11:22:58 PM »
I think he wrote a script to change parts of the wiki, at random, every few hours.
Don't be ridiculous.

I delegated that.
Have ideas or bug reports for one of our games? Mantis for Suggestions and Bug Reports. Thanks for helping to make our games better!

Offline zharmad

  • Hero Member Mark III
  • *****
  • Posts: 1,075
Re: XML questions and answers
« Reply #134 on: January 30, 2016, 12:01:40 AM »
Well, it would help if the interpreter is also fussy on, e.g. not reading multi-line comments. I'm losing the motivation to stay up at 1am bug fixing what's otherwise perfectly fine code, except that your interpreter ignores the entire file.

You ain't getting nothing until you make me a proper debug tool. ;)