Author Topic: What Hardcoded Limits Exist in Dyson?  (Read 6756 times)

DeathByNukes

  • Guest
What Hardcoded Limits Exist in Dyson?
« on: October 17, 2009, 01:40:23 AM »
What sorts of limitations are there in the Dyson demo?
I know there's some upper limit in agents per level and there can be no more than 24 enemy factions. I suspect there's a limit to number of agents in transit at once and I'm also wondering how the AI handles these limits.

I'm asking because I'm trying to make a large level but I've gotten random crashes during play. (some sort of out of bounds error, maybe ArgumentOutOfRangeException)
This is a level that caused a crash:
Code: [Select]
<?xml version="1.0"?>
<DysonSettings version="0.3">
  <colour r="255" g="250" b="235" />
  <dir name="ASTEROIDS">
    <dir name="MAXTREES" type="int" value="3" />
    <dir name="MINSENDDISTANCE" type="int" value="1600" />
    <dir name="MAXSENDDISTANCE" type="int" value="10000" />
  </dir>
  <dir name="AI">
    <dir name="MINTICK" type="int" value="16" />
    <dir name="MAXTICK" type="int" value="32" />
    <dir name="GRACE" type="int" value="60" />
  </dir>
  <dir name="GAME">
    <dir name="ENEMYFACTIONSMIN" type="int" value="24" /> <!-- any more and it crashes on startup -->
    <dir name="ENEMYFACTIONSMAX" type="int" value="24" />
    <dir name="BELTRADIUS" type="int" value="50000" />
    <dir name="BELTWIDTH" type="int" value="20000" />
    <dir name="ASTEROIDS" type="int" value="500" />
    <dir name="MINASTEROIDSEPARATION" type="int" value="1500" />
    <dir name="STARTINGSEEDLINGS" type="int" value="20" />
    <dir name="MAXASTEROIDNEIGHBOURDIST" type="int" value="6000" />
    <dir name="GREYSPROBABILITY" type="int" value="15" />
    <dir name="GREYSMIN" type="int" value="10" />
    <dir name="GREYSMAX" type="int" value="45" />
  </dir>



  <greeting text="Level 6: FREE SPACE."/>
  <greeting text=""/>
  <greeting text="Conquer this entire asteroid belt."/>
  <greeting text="Tree numbers are limited."/>

  <wintext text="Huge success!"/>

  <losetext text="You fail it!"/>
  <losetext text=""/>
  <losetext text="Your skill is not enough"/>
  <losetext text="See you next time"/>
  <losetext text="Bye bye!"/>

  <win if="team 1 owns all asteroids"/>
  <lose if="team 1 owns 0 asteroids"/>

  <!-- This one given to the player and has 50 seedlings -->
  <asteroid pos="51000,0" attribs="0.4,1,1" owner="1" trees="1,0" seedlings="50" static="false"/>

</DysonSettings>

Alex

  • Administrator
  • Ent
  • *****
  • Thank You
  • -Given: 3
  • -Receive: 14
  • Posts: 1,035
Re: What Hardcoded Limits Exist in Dyson?
« Reply #1 on: October 17, 2009, 09:46:21 PM »
I'm surprised you don't get crashes with 24 teams - I thought the max would be however many rows there are in the teams.png file. Try editing that to make it bigger and see if that works...

Rudolf

  • Administrator
  • Old Oak
  • *****
  • Thank You
  • -Given: 5
  • -Receive: 13
  • Posts: 669
  • Eufloria: Yes
Re: What Hardcoded Limits Exist in Dyson?
« Reply #2 on: October 18, 2009, 01:30:20 AM »
Can't wait to get the LUA stuff out :-D

Melly

  • Guest
Re: What Hardcoded Limits Exist in Dyson?
« Reply #3 on: October 28, 2009, 12:12:33 AM »
Another limit I found is on number of planted dyson trees, at least in a single asteroid. Edited a file to allow me to plant 99 trees in each asteroid. Started planting over and over until I reached around 70+ trees, I think, in a single asteroid and the game crashed.

Should this limitation only happen in a single asteroid, or is that a limit to all trees in the level?

Alex

  • Administrator
  • Ent
  • *****
  • Thank You
  • -Given: 3
  • -Receive: 14
  • Posts: 1,035
Re: What Hardcoded Limits Exist in Dyson?
« Reply #4 on: October 28, 2009, 01:12:00 AM »
I will investigate the crash at some point; there's no reason I can think of that it might happen.

adrolak

  • Guest
Re: What Hardcoded Limits Exist in Dyson?
« Reply #5 on: January 01, 2010, 08:51:33 AM »
What file did you edit to get the # of allowed trees edited? I wanna make it a tad higher then it is atm, ( 4 right? )

HKK

  • Guest
Re: What Hardcoded Limits Exist in Dyson?
« Reply #6 on: January 02, 2010, 12:56:22 AM »
What file did you edit to get the # of allowed trees edited? I wanna make it a tad higher then it is atm, ( 4 right? )
The number of trees per asteroid is a level-dependent variable. Even though there are many levels with a maximum of 4, that is not the only value. In the campaign level Badlands, for example, you can only build 1 tree per asteroid.

annikk.exe

  • Achiever
  • Ent
  • ****
  • Thank You
  • -Given: 0
  • -Receive: 4
  • Posts: 1,809
Re: What Hardcoded Limits Exist in Dyson?
« Reply #7 on: January 24, 2010, 01:28:42 AM »
I found planting more than about 200 trees on an asteroid induces a crash.  I assumed it was just the game trying to grab too much memory too quickly or something, heh.  I think I would almost have been disappointed if I couldn't crash it :P


Does anyone know if there is a limit to the number of If loops you can have in each While loop?

annikk.exe

  • Achiever
  • Ent
  • ****
  • Thank You
  • -Given: 0
  • -Receive: 4
  • Posts: 1,809
Re: What Hardcoded Limits Exist in Dyson?
« Reply #8 on: January 25, 2010, 06:01:46 AM »
I have discovered that putting beyond about 20 Ifs in a While loop generally causes things to stop working.  It seems better to use While to create delays between actions, and just use the sequential nature of Function Level Logic to sequence the events in your level.

So that is a hard limit, sort of.


Another I have discovered today is a hard limit on send range.  I don't seem to be able to get the send range of an asteroid below 500.  It seems like 500 is the minimum.